►
Description
Speaker: Vatsal Parekh
Track: Platform
DevConf.IN is a 2 day event for FOSS enthusiasts, sponsored by Red Hat India, held at Christ University campus, Bangalore on August 4th and 5th 2018
B
A
Good
morning
all
so,
this
is
a
bit
continuing
to
the
previous
talk
of
VMs
and
libvirt
and
the
KVM
world.
So
this
is
in
the
platform
track,
but
this
talk
also
covers
a
lot
about
kubernetes.
How
many
of
you
have
heard
about
cuban
artists?
Okay,
I,
guess
almost
everyone.
So
the
bottom
line
of
the
talk
is
running
virtual
machines
on
top
of
kubernetes
or
OpenShift,
rather
so
I.
A
My
one
of
the
interns
in
my
team
is
here
and
the
first
in
first
reaction.
I
was
pitching
this
project
to
him
and
was
they
were
like
why
why
someone
wants
to
do
that
running
VMs
on
top
of
kubernetes
Kuban?
It
is
as
a
core
is
meant
to
be
running
containers
and
it
started
from
the
cloud
native
world.
So
in
this
talk
we
would
go
towards
why
it
makes
sense
for
this
and
cover
what
are
the
parts
that
support
this
functionality
and
this
tool.
A
So,
let's
first
talk
a
bit
about
the
world
of
virtual
machines,
so
coming
from
the
bad
metal
world
like
let's
go
back
in
the
history,
if
we
go
to
1998
or
2000,
and
when
the
cloud
computing
started,
the
virtual
machines
change
the
world
like
they
were
the
fun
they
gave
us
isolations
like
coming
from
the
total
bare
metal
thing
it
gives
isolation.
It
gives
the
flexibility
security
like
they
were
scalable
like
you.
A
Can
you
can
scale
up
and
scale
down,
overshoe
machines
and
all
the
other
overt
features
and
all
the
other
versions
stuff
that
we
just
heard
in
the
previous
talk.
So
what
you
have
fun
right?
Isn't
it
well
kind
of
because
vm's
feels
like
24
Danish,
the
containers
are
the
new
world.
This
is
the
thing
we
have
been
hearing
so
for
the
people.
How
many
of
you
know
about
containers
like
everyone
knows
about
Cuba
and
is
but
about
the
the
the
layered
difference
of
it
between
the
VMS
and
the
containers?
A
So
this
is
a
typical
on
the
left.
This
is
the
typical
virtual
machine
installation
you
would
have.
You
would
have
your
infrastructure
hypervisor
KVM
vmware,
whatever
you
have
on
top
of
alt,
you
would
have
the
guest,
OS
and
bins
and
a
band
the
whole
stack
the
whole
nested
stuff
but
converging
to
the
new
world.
We
will
have
infrastructure
OS
and
then
we
will
have
our
container
engine,
for
example,
docker,
and
then,
on
top
of
that
in
the
containers
we
will
directly
have
our
bins.
A
So
that's
more
near
to
the
host
right
and
containers
like
they're,
very
easy
to
run
they're
very
quick
lightweight.
So
there
are
many
many
plus
points
of
the
containers
you,
you
might
have
seen
this
few
things,
containers
containers
everywhere
and
in
the
future
everything
is
kinda
nice.
If
anyone
wants
to
deploy
a
new
web
application,
is
anyone
who
won't,
who
will
still
stick
with
a
VM
stuff?
I?
Guess?
Probably
no-
and
everyone
is
it's
coming
with
the
new
kind
of
Google
Amazon
everybody's
embracing
the
cube
and
his
world.
A
So
containers
were
there,
but
the
new
game
changer
was
cube
and
is
you
can
run
a
docker
run
and
you
can
run
a
container
but
to
run
a
to
the
scale
to
run
in
a
production
level.
You
needed
orchestration
tool.
So
when
Cubans
came
in
20
14
2013
8
era,
it
became
the
game
changer.
It
people
start
adapting
it
more
and
embracing
the
containers
more
and
more.
A
So
this
is
the
slogan
that
I
feel
should
be
the
next
thing
running
everything
on
Cuba
this,
but
like
what
about
the
old
workload,
we
have
been
running
VMs
from
2000
2014,
16,
20,
18,
right
VMs
have
gotten
got
us
to
2018.
They
have
been
just
fine,
it's
working
for
us
and
now
you
suddenly
cook.
You
suddenly
say
that
containers
are
the
new
thing.
Continence
is
the
next
thing,
but
I
still
need
money
old
VMs.
How
do
you
do
that
I
mean
for
for
in
enterprise?
They
can't
just
go
and
convert
everything
to
containers.
A
I
mean
they
can
it
takes
time,
but
they
can't,
but
I
still
need
VMs.
There
are
no
much
windows
containers,
as
of
now
I
have
heard
of.
You
still
need
your
old
infrastructure
to
run
so
presenting
you,
the
q''-word,
the
emerging
path
for
the
best
of
the
both
worlds.
You
need
VMs,
you
need
containers,
so
Qbert
will
help.
You
run
VMs
on
top
of
containers,
but
why
VMs
on
container
VM
on
kubernetes?
So,
let's
see
few
of
the
use
cases
that
make
that
would
make
sense
for
this
project.
A
You
can
you
can
you
can
let
go
your
old
Vee,
overt
any
of
the
virtual
machine
stuff
and
simply
go
to
OpenShift
cuban
and
a
specific
thing
where
everything
is
containerized
right?
Even
your
VMs
containerized
this
this
this.
This
might
add.
This
might
sound
strange
but
we'll
see
how
it
can
go,
and
there
are
some
more
use
cases
you
can
find
off
your
own
yeah
make
sense,
maybe
yes
to
bring
VMs
to
cuba
and
this,
but
how
replace
VMs
with
containers
I
know.
A
So
the
simple
answer
is:
leave
running
libvirt
inside
a
container
running
inside
a
pod.
How
many
of
you
know
about
the
pod
like
Elias,
so
I
guess
everyone
has
already
tried
hands
on
at
least
once
with
kubernetes.
So
this
is
a
simple
answer
we'll
see
in
the
architecture
now,
so
what
we
need
to
do
is
this
is
the
API
service
where
we,
which
cube
CTL
command
context?
So
you
see,
alongside
with
that,
we
have
our
own
controllers.
So
inside
a
pod
there
will
be
a
word
launch
a
pod.
A
It
will
be
a
live
body
eventually
and
sim,
like
a
virtual
machine
as
a
base
is
a
live
body
process
running
like
you,
pass
the
image
of
the
virtual
virtual
machine
image
to
that
live
body
and
essentially
runs
the
VM.
Now.
What
we
need
to
do
in
Cuba
do
to
bring
it
to
the
Cuba
in
this
world.
We
simply
pass
it
the
image
and
let
it
run
inside
a
container
and
that
container
is
inside
a
pod
right.
So
this
pod
will
be
a
VM
object.
A
You
can
expect
the
same
things
to
be
to
be
in
the
kubernetes
world
as
well.
So
this
is
a.
This
is
a
spec
of
the
VM
which
you
can
create
once
you
have
the
qubit
installing
cuban
artists.
So
you
can.
You
can
see
that
so
I
have
a
new
kind,
which
is
virtual
machine.
You
might
have
seen
in
the
in
the
pod
you
like.
A
If
you
were
defining
a
pod,
you
will
do
kind
pod,
but
here
I
am
doing
a
kind,
virtual
machine
and
I'm
just
giving
the
name
metadata
in
the
metadata
and
the
spec
I
defined.
What
what
I
want-
and
this
is
a
networking
part
which
cubist
does
so.
This
is
simply
just
as
a
pod
you
had
powered.
You
had
replica
sets
every
every
like
every
other
cumulative
objects
was
there.
Now
you
have
one
more
kubernetes
object,
which
is
what
you
machine
and
how
does
it
be
VM
and
the
pod
sit
together.
A
So
VM
is
actually
a
pod.
I
mean
on
the
back.
It
runs
as
a
pod
right,
so
you
get
as
a
high
high
level
object.
The
virtual
machine
will
be
available
to
every
other
kubernetes
things,
so
meta
data
labels,
monitoring
and
all
the
other
kubernetes
ecosystem
stuff
will
be
available
to
the
I
mean
virtual
machine
will
be
available
to
every
other
object
in
the
qubits
ecosystem,
so
the
main
cubed
is
component.
Cubed
components
are
the
cubed
main
operator.
Apart
from
that,
we
have
containerized
data
importer.
A
So
if
you
were
to
bring
your
VM
data
like
you,
if
you
have
to
import
discs
to
touch
Qbert,
you
can
use
this
tool.
So
it's
basically
a
controller
which
runs
on
the
Cuban
taste
cluster
and
you
define.
Is
you
define
the
location
of
your
disc
as
a
notation
of
the
persistent
volume?
So
the
control
controller
will
see
that
there
is
a
disc
with
this
annotation
and
I
need
to
bring
the
data
from
the
location
that
you
define
and
dump
it
to
the
this
disk.
A
A
A
Then
we
have
one
more
interesting
component:
that's
V
V,
so
you
I
mentioned
about
the
mic
migration
path
to
a
more
cuba
at
this
world.
So
you
want
to
decommission
everything
you
had
on
the
old
infrastructure.
So
how
would
you
bring
everything
to
the
kubernetes
open
G?
So
that's
why
we
use
the
V
V.
You
can
bring
even
just
go,
give
the
credentials
and
location
to
the
vmware
path.
Vmware
cluster
select
the
virtual
machines
and
it
will
bring
every
virtual
machine
in
this
to
the
q''-word,
our
humanities,
so
the
disk
storage.
A
So
what
your
machines
are
as
a
storage
back-end,
we
use
the
persistent
volumes
and
the
cube
world
is
thing
and
the
good
part
of
being
in
the
Kuban
it
is
ecosystem.
Is
that
you
have
many
of
the
options
in
the
sense
you
can
you
if
you
are
in
the
Google
cloud,
if
you
are
running
cube,
but
on
Google's
key
kubernetes,
you
can
use
the
G
Series
if
an
Amazon
as
your
you
can
use
they're
discs
as
well,
and
if
you're
on
the
open
shift,
you
can
use
glass
surface
or
whatever
you
want.
A
So
there
are
many
options
you
can
use
for
the
storage.
So
you
that's
why
the
bringing
into
the
cubed
ecosystem?
It
gives
a
lot
of
plus
points.
So
the
PV,
the
persistent
volume,
is
one-to-one
map
with
a
VM
it.
You
can
define
the
option
to
be
to
be
mutable
or
immutable
and
the
last
point,
so
it
gives
a
benefit
of
having
a
wider
range
of
options
rather
than
having
to
being
minded
to
one
overt
or
the
one.
Vmware
specific
provide
a
specific
thing.
A
So
you
can
you
get
with
the
CDI.
You
can
simply
fetch
the
details
from
HTTP
endpoint
or,
if
you
want
to
pass
it
from
the
localhost
as
well.
There
are
some
options
in
the
working.
We
are
also
working
on
bringing
the
option
to
simply
upload
the
image
you
have
on
the
networking
part
you
can
use
you
can.
We
are.
We
are
walking
on
the
steel
part
where
you
can
define
your
VMs
with
the
services.
Just
like
you
do
with
VMs
with
the
other
pod
or
the
other
cloud
native
applications.
A
You
are
already
there,
and
so
you
can
also
SSH
to
a
VM.
Just
like
you
do,
and
the
old
bare
metal
world
right.
So
you
can
do
didn't
do
it
with
exposing
the
VM
using
a
service,
cube
and
a
service,
and
you
just
apply
a
label
and
you
expose
those
services.
So
then,
using
the
as
using
the
cluster
IP,
you
can
directly
ssh
to
that
vm.
A
We
are
also
working
on
integrations
of
C
cube
word
with
other
providers.
For
example,
you
can
you
want
this
to
be
a
provider
inside
a
manager
queue
it's
there,
you
can.
We
also
have
an
unstable
module
for
it.
You
want
aura-
or
you
want
to
play
with.
You
want
to
write,
play
books
that
create
VMs
or
play
with
the
VM
objects
inside
the
cube
word,
and
this
is
which
is
eventually
running
on
a
cube,
but
it
is
we
working
on
the
form
form
an
entity
reform
so
integrations
are
also
in
the
working
manager.
A
A
A
C
So
what
about
high
availability
of
VMs,
so,
let's
say
I-
need
our
application
to
replication.
So
you
have
said
you
told
that
you
have
one-to-one
mapping
off
the
storage
of
the
legacy
systems.
Ok,
so
what
about
the
you
can
say
you?
You
need
to
replicate
the
storage
as
well,
for
that
or
that
stories
is
mountable
to
one
to
many.
Ok,
so.
A
There
is
a
new
object
in
the
making
which
is
VM
replica
set
via
Marcy.
Ok,
so
that
will
be
mainly
for
the
for
the
what
you
say
that
will
be.
We
will
make
open
chip
template
for
that
and
that
template
you
can
create
VMs
after
then
template,
so
it
will
be
replicated
across
whatever
the
node
or
cluster
you
want
and
it
will
run
beams.
Multiple
VMs
of
the
same
disk
and
I
am
not
sure
about
one-to-one
map.
A
A
For
the
photo
for
the
network,
you
can
define
the
network
policy
in
the
vm
object
or,
if
you
don't
define
it
will
give
you
like,
the
pod
will
be
assigned
IP
and
you
can.
You
can
expose
that
IP
to
whatever
services
or
application
you
want,
and
this
the
VMS
so
in
a
qubit
is
well.
You
would
want
to
run
vs
when
you
are
actually
doing
the
stateful
application
inside
the
VM.
So
so
you
can
even
define
the
MAC
address.
D
You
hear
me:
yes,
okay,
so
we
have
it.
We
have
something
similar
product,
so
we
deployed
it
in
Cuban.
It
is
so
like
infrastructure-as-a-service.
So
when
you
are
saying
that
we
are
going
to
spin
up
a
VM
inside
that
kubernetes
or
openshift,
so
it
should
be
something
like
infrastructure-as-a-service
right
now.
D
A
The
VMS
we'll
get
to
IP
I
mean
the
VM
object
right,
which
will
be
running
eventually
inside
a
port
that
will
get
the
IP
the
same
way.
A
pod
gets
IP
inside
the
cuban
artists,
and
this
is
not
targeted
to
be
infrastructure-as-a-service.
Thing
like
this
is.
This
is
the
where
you
want
to
go
in
a
Cuban
and
is
a
cloud
native
world
and
still
have
your
VMs
the
same
way
you
were
having
previously,
but
has
the
ability
of
cube
the
larger
ecosystem
of
the
kubernetes
and
all
just
good
good
part
of
q-
with
the
VMS.
A
D
A
A
Can
expose
the
both
thing?
Okay,
we
have
a.
We
have
our
own
CLI
as
well
like
with
cute.
Just
like
cube
CTL,
you
can
use
the
word
CTL
as
well,
it
will
do
the
stuff
for
you
or
you
can
manually,
create
a
service,
cubes
it'll,
create
service
and
assign
what
type
of
IP
you
want
to
be
exposed,
and
it
will
do
it
for
you.
Thank.
D
A
Booting
booting
of
a
VM
takes
takes
time.
I
have
usually
seen
it.
It
takes
the
similar
time
inside
running
inside
a
container
as
well
like
that.
We
are
not
doing
anything
there.
It
just
running,
as
you
are
doing
it
previously,
you
can
there's
there.
There
are
certainly
some
features
we
we
are
providing
like
graceful,
restart
or
the
restart
policy
and
all,
but
there
is
no
difference
in
the
way
you
do
it
with
VM,
like
you
boot
up,
VM
or
shutdown,
the
restart
VM
it's
just
as
it
is
right.
A
Very
much
just
fine,
that's
that's
what
that's!
What
the
larger
part
of
the
theme
was
that
people
wants
to
move
to
containers,
but
you
might
still
want
to
have
your
VMs
right
for
the
stateful
apps.
So
that's
where
this
helps
when
you
are
moving
to
containers
for
the
faster
thing,
but
you
still
have
VM,
so
you
can
use
this
project
any
would
like
to
answer
some.
F
So
one
of
the
main
guidelines
of
Cobra
is
opposed
to
other
project.
Is
that
we
extend
kubernetes,
we
don't
change
kubernetes
for
the
purpose
of
VMs.
Only
if
you
think
about
containers,
then,
when
you're
moving
to
stateful
containers,
it's
not
really,
you
know
make
sense
in
Havana's
to
just
oh
I
want
you
know
more
memory.
I
can't
just
kill
it
and
rerun
it.
That's
how
stateless
right!
So
when
you
move
to
stateful,
you
really
need
to
change
the
runtime
configuration
and
kubernetes
doesn't
have
it
at
the
moment.
F
We
are
working
with
a
kubernetes
community
to
actually
allow
the
runtime
configuration
to
change.
It's
a
major
architectural
change
for
kubernetes,
but
it's
something
they
need
to
do
as
well
or
we
as
a
community
need
to
do
as
well
for
stateful
containers
and
that's
how
we're
gonna
scale
e,
for
example,
to
scale
up
and
and
hot-plug,
for
example,
memory
or
hot
black
cpu
by
changing
random
configuration
of
the
container
itself,
which
inside
there's
a
VM.
But
it's
a
main
principle
of
development
of
Cobert.
We
extend
kubernetes,
we
contribute
to
quality.
F
So
there's
a
question
earlier
about
high
availability.
Kubernetes
doesn't
have
fencing
support,
for
example,
if
a
node
is
disconnected,
we
have
no
idea.
What's
going
on
there
on
stateless
containers,
yeah
you
run
on
container
somewhere
else.
What
happens
so
a
stateful
one?
What
happens
if
there's
a
PVC
right
with
the
Postgres
database?
You
can't
allow
both
to
access
right.
It's
a
corruption
right
away,
so
we
extend
kubernetes,
which
happens
to
work
very
well
for
the
statehood
status.
That's.
A
E
A
A
F
So
this
is
actually
one
of
the
amazing.
You
know
features
that
we
got
out
of
extending
kubernetes,
so
you
need
to
def
KVM
right.
So
essentially
you
need
a
device
plug-in,
but
you
know
we
want
containers
to
have
device
plug-in.
We
want
to.
You
know,
connect
devices
to
containers
if
you
think
about
GPU
workloads
or
containers
they
need
to
get
into
the
GPU
so
by
using
the
Vice
plug-in.
We
actually
got
this
this
feature
into
kubernetes
and
we're
using
the
dead
back
to
to
use
that
you
know
pass
to
pass
to
DES
KVM.
F
For
example,
there
was
a
question
earlier
on
networking
same
thing
right.
You
get
a
single
IP
for
your
pod,
but
what,
if
you,
if
you
need
multiple
interface
right,
VMs
need
multiple
interfaces.
How
would
you
do
that?
You
wish
to
have
a
sorry,
o
v4
fast
networking,
for
example,
device
plug-in
which
again
contributed
to
kubernetes.
F
Is
what
it
needs
to
be
s
to
get
the
dev
KVM,
for
example?
Yes,
but
there's
also
work
in
progress
to
make
live
with
less
controlling
today,
live
with
like
likes
to
control
the
whole
host,
but
now
these
days
I
don't
need
to
control
the
horses.
I
have
kubernetes
doing
it.
I
just
need
liver
to
run
dat
VM.
So
there's
a
ongoing,
very
interesting
or
textual
change
to
liver.
It.
You
just
do
what
it
needs
to
do
for
a
single
VM
and
not
control
the
whole
world.
G
I
A
A
G
J
F
So
this
is
actually
one
of
the
amazing.
You
know
features
that
we
got
out
of
extending
kubernetes,
so
you
need
to
dedicate
vm
right.
So
essentially
you
need
a
device
plug-in,
but
you
know
we
want
containers
to
have
device
plug-in.
We
want
to.
You
know,
connect
devices
if
you
think
about
GPU
workloads
or
containers
they
need
to
get
into
the
GPU
so
by
using
the
vise
plugin.
F
We
actually
got
this
this
feature
into
kubernetes
and
we're
using
the
dead
back
to
to
use
that
the
you
know
pass
to
pass
to
Delft
KVM,
for
example,
there
was
a
question
earlier
on
networking
same
thing
right,
you
get
a
single
IP
for
your
port,
but
what,
if
you,
if
you
need
multiple
interface
right,
VMs
need
multiple
interfaces.
How
would
you
do
that?
You
wish
to
have
a
sorry,
o
v4
fast
networking,
for
example,
device
plug-in
which
again
contributed
to
kubernetes
is.
F
What
it
needs
super,
yes
to
get
the
dev
KVM,
for
example.
Yes,
but
there's
also
work
in
progress
to
make
liber8
less
controlling
today,
live
with
like
lights,
to
control
the
whole
host,
but
now
these
days
I
don't
need
it
to
control
the
horses.
I
have
kubernetes
doing
it.
I
just
need
liver
to
run
dat
VM.
So
there's
a
ongoing,
very
interesting,
a
potential
change
to
deliver
it.
You
just
do
what
it
needs
to
do
for
a
single
VM
and
not
control
the
whole
world.
Yeah.