WEBVTT

00:00.319 --> 00:03.855
>> Virtualization and
Cloud technology.

00:03.855 --> 00:06.555
The learning objectives
for this lesson are to

00:06.555 --> 00:09.225
describe Cloud deployment
and service models,

00:09.225 --> 00:11.800
explore Cloud
storage technology,

00:11.800 --> 00:14.655
and to differentiate
virtualization technologies.

00:14.655 --> 00:17.070
Let's get started. Now,

00:17.070 --> 00:18.420
we went over our
virtualization in

00:18.420 --> 00:19.735
a previous lesson
but we're going to

00:19.735 --> 00:22.035
get into it a little
bit deeper here.

00:22.035 --> 00:23.850
If you remember, we have two

00:23.850 --> 00:25.320
>> types of virtualization and

00:25.320 --> 00:28.215
>> these are the Type 1
and Type 2 hypervisors.

00:28.215 --> 00:31.290
The key thing to keep
in mind is that Type 1

00:31.290 --> 00:34.845
doesn't need a host operating
system but Type 2 does.

00:34.845 --> 00:36.795
With a Type 1 hypervisor,

00:36.795 --> 00:38.565
this is also known
as bare metal.

00:38.565 --> 00:41.030
You don't need a host
operating system because

00:41.030 --> 00:43.220
the hypervisor is
the operating system

00:43.220 --> 00:45.275
for that set of hardware.

00:45.275 --> 00:46.820
You take the hardware, you

00:46.820 --> 00:48.560
install the hypervisor
directly onto

00:48.560 --> 00:50.420
the hardware and
then you log into

00:50.420 --> 00:51.670
the system and configure

00:51.670 --> 00:53.000
your virtual
machines from there.

00:53.000 --> 00:55.070
This is usually done
via a web browser.

00:55.070 --> 00:57.990
Examples of this are
Microsoft Hyper-V,

00:57.990 --> 01:01.255
XEN, Proxmox, and VMware ESXi.

01:01.255 --> 01:04.050
Then we have Type 2 hypervisors.

01:04.050 --> 01:06.830
These do require an operating
system because they're

01:06.830 --> 01:08.330
just an application
that is installed

01:08.330 --> 01:11.105
inside of the operating system.

01:11.105 --> 01:13.085
An example of this
would be to take

01:13.085 --> 01:14.645
your Microsoft Windows machine,

01:14.645 --> 01:16.410
install VirtualBox on it,

01:16.410 --> 01:19.250
and then you can
install anything you

01:19.250 --> 01:21.065
want inside of a virtual machine

01:21.065 --> 01:23.030
that's handled by a VirtualBox.

01:23.030 --> 01:25.445
But whatever happens inside
that virtual machine,

01:25.445 --> 01:27.590
it doesn't do any
impact at all to

01:27.590 --> 01:30.475
your Microsoft Windows-based
operating system.

01:30.475 --> 01:32.955
Examples of Type
2 hypervisors are

01:32.955 --> 01:35.475
VirtualBox, VMware Workstation,

01:35.475 --> 01:40.320
and Parallels Workstation.
Structure Side Note.

01:40.320 --> 01:41.810
If you'd like to
get a hand on this

01:41.810 --> 01:43.400
and play with both of these,

01:43.400 --> 01:45.110
there are free versions of

01:45.110 --> 01:48.410
both Type 1 and Type 2 hypervisors
that you can learn on.

01:48.410 --> 01:50.030
For a Type 1,

01:50.030 --> 01:51.545
you can use Proxmox.

01:51.545 --> 01:54.200
You install Proxmox
on the PC and

01:54.200 --> 01:56.810
that will become the entire
virtual environment.

01:56.810 --> 01:58.670
You log onto it with
a web browser and

01:58.670 --> 02:01.015
you create the virtual
machines from inside there.

02:01.015 --> 02:04.490
We use this in a lot of areas
of my company and in fact,

02:04.490 --> 02:06.230
we have one Proxmox
server here that has

02:06.230 --> 02:08.570
12 VMs running at the same time.

02:08.570 --> 02:10.670
It's a lot easier to do that
than it would be to run that

02:10.670 --> 02:13.420
with a Type 2 such
as VirtualBox.

02:13.420 --> 02:16.760
But if you want to get
started with virtualization,

02:16.760 --> 02:19.400
it doesn't matter if you're
running Mac or Windows,

02:19.400 --> 02:21.980
or Linux, VirtualBox is
available for all of them.

02:21.980 --> 02:23.765
You can download VirtualBox at

02:23.765 --> 02:26.660
no cost and then
download the ISO of

02:26.660 --> 02:29.015
any operating system you
want and load that into

02:29.015 --> 02:32.255
a virtual machine that will
be handled by VirtualBox.

02:32.255 --> 02:33.740
This is a good way
if you're new to

02:33.740 --> 02:35.735
Linux and you'd like to
try it out, for example,

02:35.735 --> 02:38.780
you could download the
ISO of Mint or Ubuntu

02:38.780 --> 02:40.670
and then spool up a VM

02:40.670 --> 02:42.725
inside of your Windows
operating system.

02:42.725 --> 02:45.740
That way you could start
playing with it and get a hand

02:45.740 --> 02:47.195
on learning how to use Linux

02:47.195 --> 02:49.325
without having to give
up your Windows machine.

02:49.325 --> 02:51.890
By the way, links to both
of these are available

02:51.890 --> 02:54.870
in the supplemental
material for this course.

02:55.460 --> 02:58.225
Application virtualization.

02:58.225 --> 02:59.945
This is when a client

02:59.945 --> 03:02.585
accesses an app that
is hosted on a server.

03:02.585 --> 03:04.220
This is usually done using

03:04.220 --> 03:06.590
the web browser because
this is more familiar to

03:06.590 --> 03:09.440
end-users and also where

03:09.440 --> 03:12.410
most apps have been geared
towards being delivered.

03:12.410 --> 03:14.570
This allows for us to share

03:14.570 --> 03:16.160
a specific app from

03:16.160 --> 03:18.920
a single server through
the user's browser.

03:18.920 --> 03:21.815
Examples of this
technology would be App-V,

03:21.815 --> 03:23.940
XenApp, and ThinApp.

03:24.940 --> 03:29.600
Containers. The differentiator
between containers and

03:29.600 --> 03:31.490
virtualization is
that containers use

03:31.490 --> 03:34.480
a single base kernel for
all of the containers.

03:34.480 --> 03:38.740
The containers, they

03:38.740 --> 03:41.660
contain the minimum necessary
amount of libraries,

03:41.660 --> 03:43.655
apps, and files to function.

03:43.655 --> 03:45.710
Each container relies on

03:45.710 --> 03:48.320
the base kernel to run
and because of this,

03:48.320 --> 03:50.690
we get enormous
performance benefits.

03:50.690 --> 03:53.520
The most common example
of this will be Docker.

03:53.520 --> 03:54.770
If we're looking at the picture,

03:54.770 --> 03:57.440
we can see that all
three containers

03:57.440 --> 03:59.525
even though they're set up
for different purposes,

03:59.525 --> 04:01.760
rely on the base
operating systems kernel.

04:01.760 --> 04:03.035
If we were to have

04:03.035 --> 04:04.715
a Linux Ubuntu Server

04:04.715 --> 04:06.740
and then we put Docker
on top of that,

04:06.740 --> 04:09.350
each of the containers
that we create would

04:09.350 --> 04:13.170
rely on the base Ubuntu
kernel to function.

04:13.570 --> 04:16.100
This is a good breakdown of

04:16.100 --> 04:18.935
the differences between virtual
machines and containers.

04:18.935 --> 04:23.720
The virtual machine that is
depicted here is a Type II.

04:23.720 --> 04:25.250
We can see that it has

04:25.250 --> 04:26.720
a host operating system and

04:26.720 --> 04:28.550
the hypervisor lays
on top of that

04:28.550 --> 04:32.060
and then we have a separate
virtual machine that

04:32.060 --> 04:33.920
has other three of them and each

04:33.920 --> 04:36.125
of them has their own guest OS,

04:36.125 --> 04:37.610
their own binaries,

04:37.610 --> 04:39.635
and libraries, and
their own applications.

04:39.635 --> 04:42.500
The advantage of a virtual
machine here is that all of

04:42.500 --> 04:45.140
those guest OSs
can be completely

04:45.140 --> 04:48.085
different from what the
host operating system is.

04:48.085 --> 04:49.430
For example, we could have a

04:49.430 --> 04:51.245
Windows host operating system

04:51.245 --> 04:53.285
and then we could
have a guest OS

04:53.285 --> 04:54.860
in one of the VMs that's Mac,

04:54.860 --> 04:56.570
and then another that is Linux,

04:56.570 --> 04:58.835
and then in the third,
it could be FreeBSD.

04:58.835 --> 05:00.230
It doesn't matter what

05:00.230 --> 05:01.850
the guest operating
systems are when

05:01.850 --> 05:03.790
we're using a virtual machine,

05:03.790 --> 05:06.685
however, on the container
side, it does matter.

05:06.685 --> 05:10.265
Whatever the
operating system is,

05:10.265 --> 05:12.020
all of the containers must be

05:12.020 --> 05:14.045
compatible with that
operating system.

05:14.045 --> 05:15.485
They all use the same kernel

05:15.485 --> 05:17.075
so they have to be compatible.

05:17.075 --> 05:19.600
We can see that we have
a base operating system,

05:19.600 --> 05:21.900
the Docker Engine
lays on top of that,

05:21.900 --> 05:23.974
and then we have three
separate containers

05:23.974 --> 05:26.210
that each contain their own app,

05:26.210 --> 05:28.580
their own binaries, and
libraries but again,

05:28.580 --> 05:32.640
refer back to the base
operating system's kernel.

05:33.940 --> 05:36.605
Cloud Deployment Models.

05:36.605 --> 05:40.040
The first we have is a public
Cloud or multi-tenant.

05:40.040 --> 05:41.450
This is offered over

05:41.450 --> 05:44.015
the Internet by a Cloud
service provider.

05:44.015 --> 05:47.120
It is shared by many
different users and

05:47.120 --> 05:49.040
all the resources
are spread across

05:49.040 --> 05:51.625
all of the clients of the CSP.

05:51.625 --> 05:54.000
Next, we have hosted private.

05:54.000 --> 05:57.320
This is when you're using a
third party but the service

05:57.320 --> 06:00.410
they're offering is only used
by you and your company.

06:00.410 --> 06:02.045
This gives you security benefits

06:02.045 --> 06:04.825
over a public Cloud version.

06:04.825 --> 06:07.360
Next, we have Private Cloud.

06:07.360 --> 06:09.845
This is where the
infrastructure is completely

06:09.845 --> 06:12.470
owned and operated by
a given organization.

06:12.470 --> 06:15.050
Because of this, the
security is much

06:15.050 --> 06:18.010
stronger than being
hosted by a third party.

06:18.010 --> 06:19.950
Then finally, we
have community Cloud

06:19.950 --> 06:21.830
which is where several
organizations share

06:21.830 --> 06:26.700
the cost of the hosted private
or totally private cloud.

06:28.580 --> 06:31.860
Cloud-related
business directives.

06:31.860 --> 06:35.525
Cost is important but
before you consider cost,

06:35.525 --> 06:37.700
you should consider
the confidentiality,

06:37.700 --> 06:41.290
the integrity, and the
availability of your data.

06:41.290 --> 06:46.145
Scalability. Are you able to
respond to business demands

06:46.145 --> 06:48.350
that cause you to have to scale

06:48.350 --> 06:51.790
upwards or in a horizontal
way without downtime?

06:51.790 --> 06:55.950
Resources. Do you need an
additional virtual machines,

06:55.950 --> 06:59.025
networking capacity,
stores or applications?

06:59.025 --> 07:02.260
Location. The Cloud allows for

07:02.260 --> 07:05.185
us to easily relocate
data or services

07:05.185 --> 07:07.420
anywhere around
the world but this

07:07.420 --> 07:09.640
brings up jurisdictional
issues that we will discuss

07:09.640 --> 07:12.700
later in another module
but keep in mind that

07:12.700 --> 07:14.260
this is something
you need to consider

07:14.260 --> 07:16.190
when you're choosing
a Cloud service.

07:16.190 --> 07:18.180
Finally, data protection.

07:18.180 --> 07:21.970
If it's not on your
corporate resources,

07:21.970 --> 07:25.760
you must consider additional
security requirements.

07:26.840 --> 07:29.790
Instructor Side
Note. I like to tell

07:29.790 --> 07:32.450
people there is no such
thing as the Cloud,

07:32.450 --> 07:34.190
is just someone else's computer.

07:34.190 --> 07:36.275
If you don't fully own

07:36.275 --> 07:37.445
the infrastructure that you're

07:37.445 --> 07:39.650
using for example
a private Cloud,

07:39.650 --> 07:42.695
then your data is just stored
on someone else's computer.

07:42.695 --> 07:44.585
You need to fully understand

07:44.585 --> 07:48.530
the security implications and

07:48.530 --> 07:49.610
the configurations that you're

07:49.610 --> 07:53.100
using when you're deploying
Cloud technology.

07:54.650 --> 07:57.855
Let's go over some
Cloud service models.

07:57.855 --> 07:59.950
To the left, we have on-site.

07:59.950 --> 08:02.585
This is where you
manage everything.

08:02.585 --> 08:05.585
Everything is controlled
and owned by you.

08:05.585 --> 08:07.325
The next step over to the right

08:07.325 --> 08:09.395
is Infrastructure as a Service.

08:09.395 --> 08:11.780
With this, you manage
the applications,

08:11.780 --> 08:13.775
the data, the runtime,
the middleware,

08:13.775 --> 08:15.470
and the operating system but

08:15.470 --> 08:18.380
the service provider
handles the virtualization,

08:18.380 --> 08:20.680
the servers, the storage,
and the networking.

08:20.680 --> 08:25.645
Next, we have Platform
as a Service.

08:25.645 --> 08:27.930
This is where you manage
the applications and

08:27.930 --> 08:29.420
the data but the
service provider

08:29.420 --> 08:31.060
handles everything else.

08:31.060 --> 08:33.240
Finally, we have Software as

08:33.240 --> 08:34.490
a Service where the service

08:34.490 --> 08:36.050
provider is managing everything.

08:36.050 --> 08:37.520
A good example of Software as

08:37.520 --> 08:39.200
a Service would be Salesforce.

08:39.200 --> 08:41.240
Salesforce sells you access to

08:41.240 --> 08:44.940
an application and they manage
everything on the backend.

08:45.860 --> 08:49.045
Let's discuss Cloud
storage models.

08:49.045 --> 08:52.400
The first one we want to
discuss is object storage.

08:52.400 --> 08:55.535
This supports Cloud-based apps

08:55.535 --> 08:56.960
that need access to documents,

08:56.960 --> 08:58.595
videos, and image files.

08:58.595 --> 09:01.020
Next, we have file-based
storage which is

09:01.020 --> 09:03.380
a hierarchical file
system that stores

09:03.380 --> 09:05.780
files by path that
includes attributes

09:05.780 --> 09:08.675
such as the owner and access
permissions of those files.

09:08.675 --> 09:10.695
Then we have block storage,

09:10.695 --> 09:14.060
this supports high-performance
transactional apps

09:14.060 --> 09:16.590
like databases and finally,

09:16.590 --> 09:17.960
we have Blob Storage which

09:17.960 --> 09:19.760
supports storage of
large amounts of

09:19.760 --> 09:21.470
unstructured data and it's often

09:21.470 --> 09:24.330
used to store
archives and backups.

09:26.210 --> 09:29.305
Cloud storage databases.

09:29.305 --> 09:31.130
The first we have is relational.

09:31.130 --> 09:32.900
This is widely
implemented and is

09:32.900 --> 09:35.255
designed for ACID transactions.

09:35.255 --> 09:38.240
Then we have key value
which is designed

09:38.240 --> 09:41.265
to store and retrieve
large amounts of data.

09:41.265 --> 09:43.440
Next is in -memory.

09:43.440 --> 09:46.985
This is real-time access
to data for applications.

09:46.985 --> 09:49.480
Next is document which stores

09:49.480 --> 09:52.170
data in a
semi-structured manner.

09:52.170 --> 09:54.060
Finally, we have

09:54.060 --> 09:58.690
a wide-column which is a
type of NoSQL database.

10:00.760 --> 10:04.135
Finally, Cloud
storage databases.

10:04.135 --> 10:06.280
A graph supports millions of

10:06.280 --> 10:09.325
relationships between
highly connected datasets.

10:09.325 --> 10:11.765
A good example of
this is social media.

10:11.765 --> 10:13.740
Then we have time-series,

10:13.740 --> 10:16.150
this is focused on
supporting apps that

10:16.150 --> 10:18.670
analyze data and
changes that occur

10:18.670 --> 10:24.290
over time and it best represents
using time intervals.

10:24.290 --> 10:27.050
Finally, we have
ledger. This enables

10:27.050 --> 10:29.374
trusted and verifiable authority

10:29.374 --> 10:33.110
for banking transactions
and systems of record.

10:34.000 --> 10:37.160
Let's summarize what we
discussed in this lesson.

10:37.160 --> 10:39.140
We went over
virtualization technology

10:39.140 --> 10:40.565
and containerization,

10:40.565 --> 10:43.130
also discussed Cloud
deployment models

10:43.130 --> 10:44.765
and Cloud service models.

10:44.765 --> 10:47.320
Let's do some example questions.

10:47.320 --> 10:49.880
Question 1; Which type of

10:49.880 --> 10:53.940
storage model is best used
for backups and archives?

10:54.910 --> 11:00.610
Blob storage. Question 2;

11:00.610 --> 11:02.165
you have been asked to arrange

11:02.165 --> 11:03.650
a Cloud service model to

11:03.650 --> 11:05.600
support your
company's newest app,

11:05.600 --> 11:08.660
it will need database and
web support included,

11:08.660 --> 11:11.100
which service model do you need?

11:11.270 --> 11:14.430
Platform as a Service?

11:14.430 --> 11:17.300
Question 3; you
have been asked to

11:17.300 --> 11:19.430
set up a Cloud
infrastructure instance for

11:19.430 --> 11:21.485
your company that will be shared

11:21.485 --> 11:24.140
with another company
to help control costs,

11:24.140 --> 11:26.640
what type of Cloud is this?

11:26.720 --> 11:31.410
Community Cloud.
Finally, question 4;

11:31.410 --> 11:34.490
in which Cloud service model
would you receive access to

11:34.490 --> 11:36.020
the hardware and nothing

11:36.020 --> 11:39.360
else so that you could
configure it as needed?

11:40.280 --> 11:43.270
Infrastructure as a Service.

11:43.270 --> 11:45.110
Well, that brings
us to the end of

11:45.110 --> 11:47.820
this lesson, I'll see
you in the next one.

