>> Secure infrastructure design.
The learning objectives for this lesson are to
configure networks to achieve resiliency,
to create networks for scalability,
and to discover how automation
>> can aid us in networking.
>> Let's get started. Scalability is
your ability to expand
your network with
the changing needs of your organization.
For example, if you have
a sudden burst in traffic onto one of
your web servers and you needed
additional processing power and
memory to be able to handle that burst of traffic,
that would be an example of vertical scalability
where you could add that on the fly.
You could add additional processing power or memory
or even storage to an individual system.
With horizontal scalability, we are
adding additional servers that
are processing the same workload.
This is an example of clustering.
If we have three servers and one of them were to fail,
the other two would continue processing the workload.
Some examples of scalability
would be a Content Delivery Network.
This is when you had additional servers that are
delivering the same data to end users.
This is an example of horizontal scaling.
We can also use caching,
which makes copies of data that either doesn't
change often or maybe it never changes.
By doing this, we are
improving the load times for that data.
Resiliency. This enables you to
recover if a part or even your whole system were to fail.
How quickly you're able to do that,
is measured by how resilient you are.
You can offer high availability of resources so
that in the event
you have an increased demand or failure,
you're able to recover from it.
But by adding in these types of things,
we're increasing the complexity and the cost
and the overall management of our network.
If we add an additional servers
or a second wired connection,
that increases our costs,
but it also makes it harder for us to do our jobs.
We have to factor that in more building our plans.
We can use course of action orchestration.
These are automated responses to specific events.
When we need additional memory on the fly,
that memory can be added to
a specific system so that we can scale vertically.
We can also use distributed allocations,
which is where we spread workloads across
multiple units that are all working together.
Replication allows us to copy the data
to another location where it
can be used most effectively.
Lastly, we have clustering,
which is when we group servers
together to distribute the workload.
This allows us for failover.
When one of the servers dies,
the other servers in the cluster will continue working.
Virtualization. This is sometimes
something that can be complicated for some people,
so we're going to spend a little bit of time on it.
But virtualization at its core,
is simply running
multiple operating systems on the same computer.
Virtualization requires three main parts.
The first is the host hardware.
This is the actual computer that will be used for this.
The second is the hypervisor.
The hypervisor is the virtualization software that
manages how the virtual machines
interact with the hardware.
Lastly, we have our guest operating system,
our virtual machines, or instances.
If you're using a type 2 hypervisor,
which we'll get into in a moment,
you still have to have a base operating system on
the hardware to be able to serve up the virtual machines.
But if you're using a type 1, then you don't need that.
That brings us to the types of virtualization.
Type 1 is also known as bare metal.
It doesn't need an operating system installed on
the hardware so that you can install virtual machines.
It's often easier to understand
this by starting with type 2,
because that's what most people are
familiar with by maybe
using something like VMware Workstation or VirtualBox.
But with a type 2,
you have to install an operating system
first on the hardware,
say for example, Windows 10,
and then you install VirtualBox on top of that,
and then you create a virtual machine with
VirtualBox that allows you to run Linux, for example.
However, with type 1 hypervisors,
we eliminate the Windows 10 layer
and the hypervisor takes over for all that for us.
This is more efficient because
now we don't have to have resources
dedicated for the operating system.
The hypervisor can take that and give
it all back to the virtual machines.
Some examples of a type
1 hypervisor are: Microsoft Hyper-V,
XEN, Proxmox, and VMware ESXI.
Examples of type 2 would be VirtualBox,
VMware Workstation, and Parallels Workstation.
We can also use application virtualization.
This is when a client or user,
accesses an app that's hosted on a server.
This almost always takes
place through the user's browser.
This allows us to virtualize
specific applications that are served from
a single server and it's
served through the user's browser.
Some examples of this are Microsoft App-V,
XenApp, and ThinApp.
Containerization.
This is also known
as operating system-level virtualization.
But instead of a hypervisor,
it uses the system's kernel.
It creates a virtual environment
with the bare minimum needed parts for an app to run.
This allows us to have a performance
benefits because it doesn't need a hypervisor.
An example of containerization would be Docker.
Virtual desktop infrastructure.
Desktops are completely virtualized and ran from servers.
This separates the user from
a physical machine completely.
We have three deployment models.
The first is hosted.
It's provided by a third party.
Centralized is hosted within the enterprise itself.
Lastly, we have synchronized,
which allows for work to
continue even if you're disconnected.
This requires more local resources.
I remember back in the very old days,
we used to have terminals
that you might have seen some of
these with the green screens,
or even sometimes there were amber and all the work was
done on a server in the back,
and each person only got an actual terminal.
Then we shifted everything towards PCs,
and the work shifted towards being done on the local PC.
Now, we're shifting back to again,
because of the Cloud and
also this virtual desktop infrastructure,
shifting everything back to everything can be done on
another server or in the Cloud
instead of being done on the local computer.
It's a cyclical way of doing things.
We've been here before and
it doesn't necessarily mean that this way is
better or that having
everything on a local workstation is better.
It's just the nature of how
things change with the technology.
Here are some virtual desktop vulnerabilities.
We can have VM escape.
This is when you jump from
one virtual machine to another.
We can also have privilege escalation.
Once you're in one VM as
a regular user, by using exploits,
you can escalate your way up to become a privileged user.
We have live VM migration,
which is a feature that's built into
some hypervisors that allows for
that VM to be copied to
another server while it's still in use.
However, if it is not configured correctly,
an attacker could do the same thing
and copy it to another machine
so that they could get into it and use it for an attack.
We also have data remnants,
which are pieces of data that were left
behind from previous virtual machines.
Methods of automation.
This is automation in our Cloud deployments.
The first is bootstrapping.
This is an automated way to deploy an instance.
We may have scripts set up and that would
contain settings, and apps,
and things that we want to install
in that particular instance,
and with using bootstrapping,
we can have all that done automatically.
We also have auto-scaling,
which dynamically adjusts the resources
that we have based on the current need.
Going back to my example of we have a spike in
traffic and we maybe need to
add additional processing power and memory,
this can be done automatically.
Security orchestration, automation, and response.
This is an automated response to a security incident.
Incident response is usually
a long list of items that have to be
performed when a given threat is spotted.
But because these types of
situation cause a lot of stress,
it often makes things easy to skip.
We can create these into playbooks,
which are simply scripts that
are performed when an incident is observed.
SOAR can scan the threat data collected from
various sources and then run
the responses in these playbooks automatically for us.
Let's summarize what we went over in this video.
We discussed scalability,
both horizontally and vertically.
We discussed methods to achieve resiliency.
We also discussed automation and Cloud deployments.
Finally, we went over virtualization
and containerization.
Let's do some questions.
Example 1, what technology allows for
multiple redundant processing nodes they
share data with each other to accept connection?
Clustering. Example 2,
VMware, Proxmox, Xen,
and Hyper-V are all examples of
which type of virtualization.
Type 1 hypervisors. Question 3,
what is operating system virtualization also known as?
Containerization. Question 4,
adding additional resources to
a system such as processors,
memory, and storage is which type of scalability?
That is vertically or vertical scale.
I hope this lesson was helpful to you,
and I'll see you on the next one.