►
From YouTube: Containers and VMs - A Practical Comparison
Description
Here's a great high level practical comparison between Virtual Machines and Containers.
For more information, please visit the VMware Enterprise PKS website: https://cloud.vmware.com/vmware-enterprise-pks
A
Hi,
my
name's
Steve
tickler
I'm,
a
director
of
systems,
engineering
in
VMware's
cloud
native
apps
business
unit,
and
this
light
board
session
is
around
the
conversation
of
virtual
machines
in
containers
and
so
I'm
gonna
do
a
little
compare
and
contrast
and
talk
about
how
they
may
be
perceived
the
same
but
they're.
You
know
fundamentally
different
technologies,
and
if
we
take
a
look
over
on
this
side,
this
would
be
the
virtual
machine
side
here.
A
If
we
take
a
look
at
the
VM
side,
we've
got
physical
infrastructure,
we
got
the
operating
system
and
then
we've
got
the
application
and
if
you
look
around
we're
where
the
interface
is
for
virtual
machines,
it's
really
down
down
at
this
level
down
here
where
here,
you
can
think
of
this
as
kind
of
the
virtual
machine
level
here
and
then
right
below
it.
It
obviously
runs
on
a
hypervisor.
A
So
what
that
means
is
that,
as
a
virtual
machine,
I've
got
a
limited
number
of
NICs
or
storage
interfaces
that
I
actually
have
to
talk
to.
So,
if
you
think
about
the
total
number
of
drivers
that
I
need
to
install
in
this
operating
system,
it's
actually
pretty
small,
because
there's
not
a
lot
of
permutations
down
at
the
VM
level.
Okay,
so
it
keeps
this
operating
system,
in
effect,
pretty
pretty
simple.
So
there's
you
know
really
kind
of
less
overhead
here,
so
to
speak
with
the
operating
system,
interacting
with
the
with
the
infrastructure.
A
A
These
should
all
be
things
that
you
know.
Most
of
us
are
very
familiar
with,
given
most
of
us
understand
server
virtualization
as
it's
obviously
very
mature.
Now,
so
that's
the
virtual
machine
what
it
presents
up
to
the
operating
system,
but
now,
let's
take
a
look
at
from
the
hypervisor
here
below.
What
does
the
hypervisor
do?
What
is
it?
You
know
it's
a
it's
quite
a
workhorse
on
its
own.
So
from
this
standpoint
it
has
to
be
responsible
for
interacting
with
all
different
types
of
NIC
cards
from
all
different
types
of
hardware.
A
Right
same
thing,
from
a
storage
perspective
right,
if
I
got
a
raid
adapter
in
there
or
whatnot
I
got
to
be
able
to
interact
with
that.
Speaking
of
raid
adapters,
I'm,
probably
going
to
need
some
sort
of
an
agent
that
actually
monitors
that
raid
card
or
monitors
hardware
in
the
actual
physical
host.
So
I'm
gonna
need
a
load,
a
bunch
of
agents
not
to
mention
maybe
some
kernel
modules
and
so
forth.
So
you
know
there's
a
lot
that
this
hypervisor
is
doing
and,
quite
frankly,
masking
from
the
operating
system
above
it.
A
So
here
we
are,
we
can
load
all
this
stuff
in
the
hypervisor.
We
can
kind
of
fill
it
up
with
what
we
need
to
while
maintaining
the
simplicity
here.
Okay,
so
that's
you
know
from
a
virtual
virtual
machine
standpoint.
You
know
this
is
obviously
this
is
kind
of
a
big
value
prop
we've
been
living
with,
for
you
know,
15
or
so
years
now.
A
Okay,
so
you
can
see
I
modified.
This
stack
just
a
little
bit.
I've
actually
slimmed
down
the
operating
system
here.
So,
in
effect,
what
I'm
going
to
do
is
I'm
gonna,
actually
load
the
docker
engine
in
this
operating
system
here,
and
what
that's
going
to
allow
me
to
do
it's
going
to
actually
allow
me
to
run
containers.
It
creates
a
space
where
each
container
can
run
individually.
Now
we
go
up
here
to
the
application,
so
you
know
a
large
benefit
of
containers
is
the
ability
to
package
up
a
lot
of
the
dependencies?
A
A
A
You
know
yeah,
it
doesn't
need
to
have
a
lot
of
the
OS
dependencies
if
we
go
up
into
this
sack,
I
need
to
go
over
and
figure
out
all
of
my
dependencies
up
here
for
this
application
to
interact
with
so
middleware
different
patching
levels,
packages
and
all
sorts
of
things.
I
got
to
figure
out
how
to
load
all
that
in
there
right
and
I
need.
A
Some
I
need
some,
probably
some
automation
over
here,
so
like
configuration
management,
so
things
like
ansible
and
chef
and
puppet
those
types
of
tools
load
in
all
these
dependencies
on
top
of
the
OS,
so
the
application
can
run
over
in
containers.
I
don't
need
that
I
can
package
up
all
those
dependencies
as
a
part
of
the
of
the
docker
file,
which
is
where
that
container
image
runs.
A
So
you
can
see,
there's
a
there's,
a
different
abstraction.
It
happens
at
a
different
States
down
here,
I'm
separating
myself
between
the
hardware
and
the
operating
system.
Here,
it's
more
of
an
operating
system,
abstraction
where
I'm
gonna
have
a
simplified
base,
OS
that
everyone
can
run
on,
and
then
you
can
run
all
sorts
of
different
containers.
So
now
what?
If
I
take
a
look
at
this
little?
What
about
this
relationship
here
between
this
operating
system
and
the
physical
infrastructure?
A
And
so
this
is
this
is
sometimes
seen
as
something
that
I
can
potentially
do
to
create
a
more
simplistic
environment,
but
I'd
argue
that
we
might
be
adding
some
complexity
here.
So
if
I
have
an
operating
system
that
needs
to
interact
with
physical
Hardware,
what
are
all
these
things?
I
need
to
do
that
I
demonstrated
over
here
like
what
the
hypervisor
is
doing
well.
I
have
a
probably
a
specific
NIC
car
in
a
specific
chip,
storage,
adapter
agents.
A
In
addition,
all
of
the
different
you
know
specific
NICs
and
drivers
and
the
sizing
right.
It's
fixed,
the
sizing
of
this
operating
system
is
fixed
on
the
infrastructure.
In
a
lot
of
cases,
you
know,
you'll
get
a
request
if
you're
the,
if
you're
on
the
virtualization
team,
that
hey
I
need
just
a
couple
VMs
to
do
a
quick.
You
know
test
in
this
case
when
I'm,
interacting
with
physical
infrastructure
I'm
gonna,
have
to.
In
effect,
you
know,
be
stuck
with
whatever
that
physical
size
is
so.
The
argument
and
I
realize
I
work
for
VMware.
A
You
know
we're
heavily
into
virtualization,
but
the
argument
I'm
gonna
make
is
that
there's
still
quite
a
bit
of
benefit
that
can
be
achieved
by
having
a
hypervisor
or
a
hypervisor
or
really
the
the
VMware
software
defined
data
center
under
here
and
this
virtual
machine
level.
Let's
take
this
container
host
operating
system,
let's
put
the
minimal
amount
of
drivers
and
and
technology
in
there
to
interact
at
the
virtual
machine
level
and,
let's
mask
all
the
other
hardware,
specific
stuff
with
a
hypervisor.