►
From YouTube: Webinar: Commoditise Kubernetes with cluster-api
Description
Kubernetes wasn’t invented to become a new pet in your home, but more like the cattle on a ranch. It isn’t cute and lovely or something you treat like a family member. Kubernetes was made to work. In this talk, Gianluca demonstrates how to commoditize that work and simplify the process using cluster-api on bare metal.
Presenter:
Gianluca Arbezzano, Senior Staff Software Engineer @Packet
A
I'd
like
to
thank
everybody
for
joining
us
today,
welcome
to
today's
CN
CF
webinar
commoditize
kubernetes
with
cluster
API
I'm
Julius
Rosenthal
I'll
be
moderating
today's
webinar
and
we
would
like
to
welcome
our
presenter
Gianluca
Otto
Bassano
senior
staff
software
engineer
at
packet,
so
a
few
housekeeping
items
before
we
get
started
during
the
webinar.
You
cannot
talk
as
an
attendee.
There
is
a
Q&A
box
down
at
the
bottom
of
your
screen,
so
please
feel
free
to
drop
your
questions
in
there.
A
A
B
Thank
you
for
coming
and
thank
you
for
the
introduction,
so
I
have
to
say
that
I
don't
have
any
slides,
because
I
thought
that
there
are
many
of
them
about
class
ready,
I
already
and
how
it
works
and
why's
there.
So
I
recently
joined
packet
where
I.
My
first
task
was
to
take
the
class
for
AP
I
provider
that
we
have
and
bring
it
to
new
twist
new
life
and
move
it
from
v1
alpha
one.
That
was
the
first
version
for
the
plasterer
api
to
v1,
alpha
3.
B
That
is
the
the
newest
shiny
one
that
we
are
using
today
and
you
know
in
the
process
of
doing
that.
I
learned
a
lot
about
like
components
from
kubernetes
that
are
new
and
that
are
around.
How
do
you
provision
and
install
a
cluster,
and
how
do
you
manage
if
it's
life
lifecycle
when
running?
So
how
do
you
move
it
or
how
do
you
upgrade
it,
and
how
do
you
make
a
cluster
to
recognize
the
cloud
provider
where
it
is
in?
B
I'm
gonna
share
my
screen:
I'm
gonna
share
a
bunch
of
chrome
tiles
and
a
bunch
of
like
my
fights
and
did
I
have
locally
and
we're
gonna
I'm
gonna
I'm
gonna
walk
through
like
how
classful
API
is
made
in
this
way,
how
it
works
and
what
it
solved
and
I
hope
that
will
work
in
a
little
bit
more
interactive,
Whalen
or
different
way
than
what
we
use.
Usually
so,
and
those
tools
are
great.
B
I
delivered
one
one
talk
about
class
reveaied
a
few
weeks
ago
and
you
know
I
showed
like
a
demo
of
how
it
works
on
Azure
and
some,
but
I
thought
in
this
way
it
would
be
a
little
bit
more
dynamic
and
today
is
Friday,
and
here
is
like
7
p.m.
so
I'm,
almost
like
over
my
day,
so
I
thought
this
was
gonna,
be
like
a
little
bit
more
different
and
dynamic
with
other
people
from
the
community.
So
I
invite
you
to
use
the
Q&A
session
things
now
and
also
the
chat
I.
B
Am
them
open
nearby,
my
desktop
so
I
can
see
them
and
because
you're
gonna
be
able
to
pile
up
my
talk
and
in
the
meantime
did
you
know
you
figure
out
what
to
do
and
I'm
gonna.
You
know
give
you
a
brief
presentation
about
what
why
I
think
we
are
here
and
why
we
think
we
have
faster
API.
So
in
the
early
days
of
kubernetes,
it
was
not
that
easy
to
provision
the
tool,
because
it
is
made
of
a
lot
of
components
that
have
to
talk
with
each
other
and
provision.
B
B
We
find
kubernetes
in
almost
every
cloud
provider
in
almost
every
like
very
method
for
matter,
because
you
can
get
those
binaries
and
install
them
wherever
you
are,
you
can
place
them
to
work
with
each
other
and
that's
it
and
you
have
a
class
so
these
come.
It
looks
like
an
easy
job.
When
you
do
a
cube,
admin
join
or
a
cube
admitting
it,
but
there
is
a
lot
of
stuff
that
are
coded
there,
that
you
have
to
know.
B
For
example,
in
the
early
days
like
cloud
provider
like
Asia
and
AWS,
they
were
able
to
ingest
their
code
inside
the
kubernetes
api
server
inside
the
kubernetes
call
itself,
and
this
was
great
because
you
know
we
didn't
have
many
cloud
provider
at
the
time,
and
we-
and
in
this
way
you
didn't
have
to
do
like
much
more
visually.
So
them
you
don't
know
the
binary
and
you
get
the
cloud
provider
that
you're
looking
for.
But
this
was
like
10
years
ago
now
we
have
a
lot
of
different
cloud
providers.
B
We
have
a
lot
of
different
like
cluster,
that
runs
from
bare
metal
and
those
has
different
needs
and
we
can't
really
have
a
community
on
board
all
of
them,
and
you
know
in
the
core
kubernetes
organization,
because
that
would
be
too
much
for
the
maintainer
and
there
is
already
a
lot
of
work
that
has
to
be
done.
So
one
of
the
work
that
we
did
was
to
strip
out
like
the
the
concrete
implementation
of
the
cloud
provider.
We
call
it
CCM.
It
is
like
alpha
beta
management
and
the
cloud
provider
is
able
to
now.
B
You
know
ship
a
binary
that
act
in
a
concrete
way
with
the
cloud
provider
that
it's
on
so
and
that's
why?
In
the
cubelet,
you
can
do
something
like
that
external
cloud
provider.
You
can
do
platform
and
AWS,
and
so
on.
So
AWS
has
a
certain
measure.
R
in
there
will
be
moved
at
at
some
point
and
other
cloud
provider
that
has
their
own
implementation
of
the
CCM
and
the
CCM
is
that
stuff.
B
B
user,
but
it
also
worked
with
packet,
this,
the
company
I
work
for
and
with
Asia,
when
you
create
a
server
using
cube
admin,
cube
ADM,
you
will
notice
that
your
nodes
has
particular
labels
that
comes
out
of
the
box
and
our
cloud
provider
and
I'm
thinking
about,
like
the
instance
ID
and
thinking
about
the
subject
group
on
AWS
and
those
kind
of
stuff.
So
those
information
are
managed
by
the
cloud
provider
component
inside
kubernetes
and
as
I
said,
some
of
them
are
internally.
Other
are
external.
B
It
really
depends
on
the
popularity,
but
the
tendency
is
to
move
all
the
routes
so
and
provide
an
easy
way
to
install
them,
and
this
is
one
piece
of
the
puzzle.
Another
piece
of
the
puzzle
is
like
when
you
provision
a
cluster.
You
have
like
the
cloud
provider
itself,
so
you
have
a
situ
or
you
have
like
bare-metal
or
you
have
like
servers
and
whatever
you
can
think
about
those
stuff.
B
Are
those
types
of
ideas
have
their
own
API
and
you
have
to
provide
the
servers
that
you
need
to
join
in
in
a
cluster
and
this
piece,
like
the
the
actor
that
takes?
You
know
the
actor
that
takes
the
responsibility
to
make
a
server
that
just
have
a
bunch
of
binaries
installed
to
a
node
of
kubernetes
cluster
is
called
a
bootstrapper
and
a
cube.
Adm
is
one
bootstrapper,
because
cuba
DM
doesn't
really
care
about
how
you
spin
up
an
AC,
that's
something
that
you
have
to
give
to
them,
or
they
don't
care
about.
B
How
do
you
install
binaries
inside
servers?
You
have
to
provide
the
cube
CTL,
the
cube
admin
and
all
those
kind
of
stuff
they're
ready
to
be
used.
The
cube
ATM
just
states
a
bunch
of
information,
a
bunch
of
UML,
because
everything
is
driven
by
a
man
and
it
makes
like
cluster
out
of
it.
So
you
do
queue
ADM
in
it
and
it
starts,
and
you
do
cubed
join
and
join
clusters.
That's
what
it's
called
like
a
bootstrapper.
B
There
are
a
bootstrapper
for,
like
QAM
is
the
most
famous
one,
but
you
can
work
without
it
or
you
can
work
with
a
different
one.
So
you
probably
know
that
there
is
a
distribution
called
que.
Trae
3s,
that
is
like
a
small,
a
smallest
like
kubernetes
distribution,
and
it
doesn't
use
cube
ATM.
You
can
use
their
own
one,
but
and
that's
a
different
way.
So
you
have
a
different
bootstrapper.
B
That
is
not
like
you,
baby
em
and
after
that,
when
you
have
your
bootstrap,
but
when
you
have
your
cloud
provider,
it's
time
to
get
to
the
point
where
you
create,
if
you
choose
or
you
create
bit
from
machine
or
you
create
like
burn
metal
servers,
and
how
do
you
do
that
nowadays,
you
do
that
with
a
be
eyes
and,
oh
sorry,
it's
shaking
because
I
am
emotional,
so
I'm.
So
what
do
you
do
is
like
you?
You
have
to
provide
those
instances
and
who
gives
you
the
responsibility
who
holds
that
that
task?
B
It
really
depends
on
the
environment.
You
are
they
I,
think
until
like
we
had
class
or
API
the
more
the
one
of
the
most
easy
way
was
via
terraform
or
the
you
know,
configuration
management.
What's
the
problem
with
configuration
management,
the
problem
with
configuration
management
is
that
they
are
static,
even
if
they
try
to
be
as
most
dynamic
as
they
can.
B
They
suffer
this
a
limitation
that
ya
man
suffers
when
you
use
the
kubernetes
and
I
think
that
the
biggest
limitation
is
the
fact
that
you
can't
really
generate
the
UML
or
the
configuration
management
for
your
terraform
in
a
way
that
is
dynamic
as
it
should
be,
because
you
know
we
are
not
just
creating
like
a
bunch
of
servers.
We
are
creating
servers.
We
are
getting
a
piece
we
have
to
connect
those
ideas.
We
have
to
install
batteries,
it's
it's
a
long
process
and
kubernetes,
at
least
for
me.
B
So
that
I
think
that's
the
core
and
that's
a
lot
like
cluster
API
is
taking,
is
taking
that
concept
and
it
is
bringing
that
to
the
provisioning
of
full,
fully
working
cluster.
So,
let's
think
about,
let's
think
for
a
second
about
how
the
pod
works.
So
you
do
you
define
a
ml
or
you
write,
a
cue
CTL
create
command
and
you
press
the
button.
What
happens
is
that
it
gets
to
your
request,
gets
to
the
API
server
and
the
API
servers
like
store
the
request
and
the
cubelet.
B
You
know,
guess
their
guests
and
their
guest
gets
passed
to
the
CNI
and
the
CRI
and
the
container
gets
created.
This
is
very
simplistic,
but
that's
how
it
works
and
it
doesn't
work.
It's
not
a
flow
that
goes
like
end
to
end
without
any
like
issue
or
without
any
latency.
There
are
processes
that
are
asking
for
stuff
to
do
and
there
are
process
that
are
giving
work
to
do
so.
The
cubelet
asks
what
do
I
have
to
do
and
the
API
servers
or
you
I-
have
those
stuff
to
schedule.
B
So
do
you
have
place
and
the
culet
response
I'm
busy
sorry
I
can
get
them
because
it
requires
too
much
RAM
or
the
opposite.
No,
okay
I!
Can
they
I
can
take
that
because
I
have
so
much
from
you,
so
I'm
gonna
take
the
pod.
There
case,
I'm
gonna
place
it
on
my
own,
and
the
API
servers
keeps
our
consideration
loop
that
goes
over
and
over
and
keeps
watching
across
the
fleet
of
clusters
across
the
fleet
of
nodes
if
the
situation
is
under
control.
B
So
if
you
have
to
deploy
like
four
replicas
of
the
same
pod
via
deployment,
the
conciliation
loop
is
watching
over
the
cluster
like
asking
how
many
pots
do
I
have
and
if
the
cubelets
agrees
and
they
have
life
for
pause,
you're
good,
because
what
you
husk
for
it
is
what
you
get
but
stuff
make
or
round
or
temporary,
and
what
happens?
Maybe
a
pod
like
gets
all
amped
on
killed
and
you
have
to
replace
that.
So
it's
automatic,
because
it's
reconciliation
look,
so
you
don't
have
to
do
anything.
B
We
need
that
because,
like
docker
and
containers
and
cloud
provider
like
set
the
conversation
up
into
the
English
way,
you
don't
have
to
think
about.
Your
staff
has
a
you
know
friendly
pad,
but
you
have
to
think
about
them.
Like
has
a
kettle.
This
is
like
a
root.
Add
not
very
great
metaphor,
but
everybody
understand
that
and
so
in
this,
and
what
we
got
until
recently
was:
okay
I,
don't
care
anymore
about
virtual
machine,
maybe
because
I
have
a
cloud
provider
that
helps
me
with
that,
and
I
have
kubernetes
that
hides
this
complexity.
B
So
I
don't
care
that
much
about
the
hostname
of
my
server
I.
Don't
care
much
about
the
IPS
anymore,
but
we
started
to
care
about
kubernetes
clusters
and
that's
not
the
point
for
kubernetes
like
we
moved
our
focus
out
from
servers
to
kubernetes
clusters,
because
technology
wasn't
ready
to
simplify
that
process.
Yet
and
usually
the
complexity
is
where
we
get
stucked
like
years
ago.
B
Configuration
management
wasn't
so
popular
cloud
provider
wasn't
soap
opera.
So
we
were
used
to
have
like
a
bunch
of
servers.
We
was
giving
them
a
name
and
we
were
using
them
and
you
know
become
unreachable
and
they
break.
We
learn
along
the
way
that
there
is
a
better
way.
Now
we
have
a
be
eyes
and
that's
solved,
but
we
could
start
with.
Kubernetes
has
a
pet,
and
this
is
not
what
we.
B
What
we
really
want
has
a
community-
and
this
is
not
what
the
market
is
asking
for,
because
if
you
think
about
like
and
hazier
our
AWS
or
GCP
with
a
like
cluster
Appl
kubernetes
has
a
service
services.
They
they
keep
up
running
like
thousand
of
servers
thousand
of
kubernetes
clusters,
and
they
don't
give
them
a
name.
Maybe
it
looks
like
they
care
about
yours
in
particular,
but
I
don't
think
it's
true
right
for
them.
All
of
them
are
the
same,
and
all
of
them
has
to
work
in
some
way
and
I.
B
Don't
think
you
can
get
that
far
in
a
in
control
of
what's
happening
with
a
configuration
management
like
puppet
chef
or
terraform,
you
have
to
build
a
reconciliation
loop.
You
have
to
have
a
watcher
that
looks
at
the
situation,
understand
the
problem
and
fix
those
problems.
It's
it's
a
lot
like
robotics.
So
if
you
think,
if
you
have
a
robot
like
you,
you
saw
those
video
school
videos
from
people
that
were
subasta
dynamics
and
they
push
the
robots
and
the
robots
is
able
to
balance
by
themself
and
that's
how
I
reconciliation
loops
works
in
robotics.
B
Those
reconciliation
loop
are
very
very
fast
because
they
have
to
respond
in
a
reliable
way
in
kubernetes.
They
will
may
not
be
that
like
dynamic,
but
they
are
still
reconciliation
so
like
when
a
pod
gets
kicked
out
from
the
production
port
because
it
kills
it's
like
when
you
push
the
robot,
so
the
rubbers
just
shakes
and
gets
back
on
track
because
there
is
a
reconciliation
and
there
are
a
lot
of
sensors
that
you
know
the
reconciliation.
B
Has
those
sensors
what's
going
on
what's
going
on
and
it
calculates
the
response
and
the
responses,
maybe
I
have
to
balance.
You
know
the
weight
on
my
back
and
I
have
to
have
to
find
the
right
spot
to
stay
at
programming.
It's
the
same
is
the
same
concept
and
it's
very
cool
and
I
think
we
should
use
it
way
more
than
what
I
see
use
nowadays
in
programming,
and
so
that's
it.
So
don't
use
that
even
when
you
are
not
in
kubernetes
and
my
cluster
API
works
all
with
customers
definition.
B
B
There
is
a
project
that
makes
you
able
to
order
like
a
Domino's
Pizza,
the
Eclipse
ETL,
you
can
do
it,
you
still
create
and
you
place
your
order
and
it
gets
created
and
you
get
a
pizza
delivered
and
these
words,
because,
like
path,
services,
ingress
and
all
those
stuff,
they
are
resources
in
kubernetes
and
as
you
have
them,
you
can
create
your
own
one.
The
cluster
API
creates
a
bunch
of
them,
and
one
of
them
is
like
the
cluster
resource.
The
cluster
resource
represents
your
cluster
and
it's
made
by
a
bunch
of
machines.
B
So
machines
is
another
customers
whose
definition
provided
by
the
class
Radia
itself.
It
also
provides
other
stuff,
like
the
Machine
deployment,
that
works
a
little
bit
like
deployment
in
the
kubernetes
pods
land.
So
you
it
managed
neither
because
the
number
of
machines
that
you
have-
and
it
also
provides
like
bootstrap
templates-
that
QAM
boost
up
templates.
That
looks
it.
That
looks
like
a
lot
like
a
cube
atom
in
config,
but
it's
a
customer's
of
definition.
All
those
custom
reserved
definition
are
used
and
animated
by
what
is
called
a
controller.
B
So
when
you
create
a
pod,
nothing
really
happens
like
the
API
server
gets
recast
and
stores
the
request
and
triggers
an
event.
That's
it
if
there
is
nothing
looking
for
that
event.
Nothing
happens.
Luckily,
for
us,
the
kubernetes
maintainer
developed
a
pod
controller
and
the
controller
is
waiting
for
those
events
to
take
action.
In
our
case
for
the
pod,
it's
like
reaching
to
the
container
runtime
and
creating
the
containers
and
making
much
more
but
I'm
simplifying
here
behind
the
cluster,
the
cluster
customer
reserve
definition
and
behind
the
machine
customers
definition.
B
There
is
logics
that
reference
to
a
concrete
implementation
of
the
machine
that
your
cloud
providers,
ports
so
don't
think
about.
The
machine
has
like
the
API
documentation
for
an
AC
to
so
it
doesn't
have
feels
like
security
groups
or
subnets
or
operating
system
or
Yemen
role.
It
doesn't
have
that
because
that's
not
how
it
works.
It
would
be
too
long
to
support
all
the
cloud
providers,
so
the
the
cluster
has.
B
Has
that
so
AWS
has
the
AWS
machine
and
a
de
de
de
Bresse
cluster
Asia
has
the
Hydra
machine
and
the
header
cluster
CCP
has
its
own
packet
as
its
own
and
what's
the
responsibility
for
those,
the
responsibility
is
to
get
triggered
by
the
creation
of
the
class
rep
I
machine,
but
they
have
the
logic
to
actually
create
a
machine
on
the
cloud
provider.
So
that's
where
I
place
the
code
from
the
packet
API,
the
bucket
go
SDK
to
call
the
packet
API
and
create
a
server.
B
The
cluster
API
provider
AWS
in
the
machine
controller,
has
the
code
that
called
the
AWS
SDK
and
create
the
ac2
on
an
address
so
where
you
can
find
all
this.
Let
me
show
my
screen,
so
you
can
find
all
those
projects
on
github
like
the
cluster
API
is
inside
the
kubernetes
6.
But,
as
I
said,
the
responsibility
for
the
class
reveai
is
to
pilot
the
concrete
implementation
that
every
cloud
provider
provides.
B
So
it
doesn't
have
any
logic
tied
to
clear
oil
itself.
It
also
provides
a
CLI.
It
is
called
cluster
CTL
and
the
cluster
CTL.
The
cluster
color
helps
you
to
interact
with
the
creation
and
update
and
deletion
and
move
of
your
cluster,
as
I
told
you
every
cloud
provider
as
its
own
implementation
and
where
you
can
find
them
most
of
them
are
inside
the
same
organization.
B
So,
as
you
can
see,
when
you
look
for
in
the
in
the
kubernetes
6,
when
you
search
for
class
ready,
I
providers,
you
see
them
from
AWS.
We
share.
Has
your
OpenStack
GCP
docker
digitalocean
IBM
packet?
Those
are
the
one
that
are
there.
There
are
others
that
are
not
in
the
repository,
so
you
can
look
at
them
around.
If
you
use
the
file
provided
that
isn't
there
baby,
you
can
just
ask,
maybe
maybe
they
have
one.
B
So
how
does
it
work
like?
How
do
you
create
your
first
cluster
with
a
class
for
AP
I,
and
this
is
where,
where
the
stuff
starts
become
a
little
bit
meta
here,
because
you
need
to
have
a
kubernetes
cluster
to
do
that,
because,
as
I
told
you,
the
cluster
API
brings
the
flavor
of
the
of
kubernetes
into
the
cluster
provisioning
job.
So
it
means
that
you
have
to
be
in
the
cluster
you
have
to.
You
need
a
faster
and
yeah
I.
B
Don't
have
many
suggestion
about
how
to
do
that,
like
I,
think
I
can
tell
you
how
to
do
it
locally.
I
test
that
with
kind
so
I
create
a
kind
class
from
my
laptop
and
I
do
the
provisioning
of
new
clusters
from
that
kind
faster
you
can
use
mini
cube
or
you
have
to
spin
up
like
a
cluster
that
has
to
be
there.
I,
don't
don't
look
at
it?
B
It
has
a
single
point
of
failure
because
that's
a
problem
that
little
question
that
a
lot
of
people
do
and
like
the
problem
with
that,
is
it's
not
really
a
single
point
of
failure
either
kubernetes
cluster.
So
you
can
bring
it
up
with
all
the
scalability
and
resiliency
that
you
need,
so
you
can
have
a
multi
cluster
kubernetes
cluster
or
you
can
even
use
like
another
service
one
just
for
that
purpose.
B
So
let's
say
that
for
some
reason
like
like
this
plot
project
is
made
because
a
lot
of
services
are
using
kubernetes
cluster
and
they
want
to
have
a
lot
of
that
because
they
don't
want
to
have
the
develop
the
mindset
that
it
is
like
your
dog
or
your
cat,
and
you
can
really
get
out
from
it
very,
very
easy.
So
that's
why
you
know
we
have
that,
for
example
like
a
lot
of
SAS
offerings,
they
use
kubernetes
and
they
will
may
have
like.
B
We
may
need
their
to
create
like
a
kubernetes
cluster,
for
every
customer
they
have
or
for
every
region
or
seven
for
every
region,
because
you
have
redundancy.
So
it's
easy
to
get
like
to
a
point
where
you
have
like
20
25
clusters
and
those
25
clusters
has
to
be
like
updating
and
they
have
to
be
moved
and
they
have
to
be
stopped
and
they
F
be
migrated.
B
So
it's
it's
it's
a
lot
of
work
and
that's
why
they
be
like
in
this
way
so
yeah
you
have
to
you
need
to
have
one
in
some
way
so
find
a
way
to
have
one
that
is
reliable.
There
are
telephone
models
that
use
the
does
that
and
that's
cool
enough
when
you
have
one
you
install
the
cluster
CTL
and
the
cluster
CTL
I'm,
going
to
use
the
documentation
here
because
I,
like
the
you
know,
I
would
like
to
to
leave
you
with
concrete,
like
pointers
that
you
can
use
by
your
own.
B
So
this
is
the
commentation
for
the
you
know,
class
reveaied
project
and
I
click
on
the
session
should
is
the
class
to
see
a
lot
because
I
see
the
felicity
has
an
image
function
and
the
responsibility
for
the
unit
function
is
to
provision
a
vanilla,
kubernetes
cluster
and
make
it
smart
enough
to
be
the
father
of
all
your
kubernetes
clusters,
and
what
do
I
mean
with
that?
You
have
to
do
plasticity
in
it
and
tell
the
the
provisioner
that
you
need.
B
So
you
have
to
tell
okay
I
need
to
manage
my
cluster
on
AWS
or
I
need
to
manage
cluster
on
a
jewel
or
I
need
to
manage
cluster
on
multiple
cloud
providers
and
what
they
need
function
does
with
the
init
function.
Infrastructure
command
is
that
it
eating
stalls
like
resources
that
customers
of
definition,
managers
that
will
wait
for
the
creation
of
the
cluster.
B
So,
if
you're
wondering
about
like
how
the
packet
one
word,
for
example,
we
have
a
binary
that
is
called
manager
and
it
has
the
controllers
for
the
packet
machine
and
the
packet
cluster,
and
when
you
do
classes,
it
really
needs.
It
goes
to
the
cluster
API
provider.
It
looks
for
the
release
page
that
with
the
new
UI,
this
means.
B
Him
you
can
see,
that
is
a
long
like
ml.
That
has
custom
reasons
definition.
This
is
the
packet
class,
the
one,
but
it
also
deploys
the
deployment
and
the
deployment
deploys.
An
image
that
is
called
I
can
find
it,
but
it
is
called
eye
pockit
infrastructure
provider
and
19,
it's
a
binary.
So
it's
a
container.
This
is
the
one
and
that
container
contains
the
manager
that
is
capable
of
of
taking
the
direct
cast
for
a
machine
and
and
make
it
concrete
on
the
cloud
provider
that
you
are
targeting.
B
I'm
just
gonna
take
a
break
and
look
at
the
view
question
on
the
chance
to
see
if
I
can
hook
them
up
in
this
way.
So
I
won't
I,
know
the
bezel
red
cluster
in
27,
stupidest
system,
yeah,
I
think
some
of
a
part
I
get
a
big
question.
So
I
hope
that
some
of
it
go
with
that
later.
I
was
playing
castor
EP
a
couple
of
weeks
ago,
using
this
Center
as
a
provider
and
I
had
issues
with
which
happens.
But
what
bugged?
That's
sad
to
refer
with
the
city
of
blogging,
yeah.
A
A
B
And
I
told
you
those
are
nothing
more,
that
real,
like
pots,
so
I
can
I
can
tell
you
that
I
did
like
I
have
a
giant
cluster
and
I
installed.
I
did
like
the
cluster
city
air.
Here
we
need
infrastructure
packet.
I
already
did
that
for
my
cluster,
so
I
have
everything
I
need
installed
and
if
you
do,
chip
still
get
namespace.
B
You
see
that
you
have
more
namespaces
here
now,
so
you
don't
have
the
traditional.
Like
your
system,
Q
public,
the
folders
you
get.
Normally
you
have
more
stuff
and
those
stuff
are
coming
from
the
ml.
That
I
told
you.
So
my
suggestion
is
go
to
the
dish
we
share
one
and
in
there
in
the
release,
final
guitar,
patient,
github
and
download
that
and
have
a
look
at
what
at
what
they
install.
Usually
they
in
stone
like
their
provider
namespace.
B
So
what
you
can
do
here
is
to
do
like
get
pause
and
you
get
like
this
is
the
manager
that
I
told
you
about
if
you
do
loves
and
cluster
packet
system-
and
you
take
this-
that
you
see
that
there
are
like
two
containers
running.
So
if
you
look
for
the
manager,
one
which
is
you
there
are
blogs
and
those
logs
are
the
interaction
from
the
code
from
your
cloud
provider
to
the
cloud
provider
itself.
So
this
is
where
you
should
see
an
API
failure.
B
For
example,
if
you
place
a
secret
token,
that
is
wrong
and
the
manager
can
connect
to
the
cloud
provider.
That's
one
way
to
look
at
it
if
it
doesn't
work.
If
you
can
find
anything
useful
here,
my
second
tip
is
to
is
to
go
above
the
stack
and
see
okay,
so
this
doesn't
work.
What
I'm
supposed
to
do
here?
B
I
can
check
for
the
cluster,
so
I
don't
have
cluster
here,
but
I'm
supposed
that
you
have
yours
because
that's
what
you
find
cluster
and
you
get
the
machines
and
when
you
get
the
machines,
you
have
the
number
of
machines
that
that
you
HASC
for
and
they
have
status
and
they
have
error.
So
you
can
check
that
if.
B
The
logs
from
the
class
rep
I
measure
itself,
so
if
you
do
and
usually
I
mean
by
default,
it
is
in
the
namespace
copy
system,
and
this
is
a
controller
and
that's
the
controller
that
wastes
for
a
class
requests
and
tries
to
reach
the
concrete
provider
implementation
and
it
follows
the
life
cycle
that
is
described
very
well
in
the
documentation
in
their
documentation.
So
I
know
my
head
is,
but
they
have
pretty
graphs
like
this
one
that
are
very
good
to
understand.
B
So
if
you
go
in
the
developer
guide
and
you
open
the
controller's,
you
see
the
list
of
controllers
that
I
told
you
about.
So
you
have
the
bootstrap
one,
the
cube
admin,
one!
You
have
the
cluster,
you
have
the
machine,
you
have
the
Machine
sets.
You
have
the
Machine
deployment
machine
deployment
and
machine
set
up
the
equivalent
of
like
replica
set
and
deployment,
but
for
machines
you
have
a
machine
I'll
share
in
the
contraband.
B
So
my
feedback
is
to
look
for
them
and
figure
out
where
you're
stucked
another
stuff
that
I
do
is
like
I
get
I
do
get
secret
in
the
namespace,
where
I
created
the
the
class
itself,
because
at
some
point
in
the
lifecycle
of
the
creation,
you
are
supposed
to
get
secrets
here,
like
the
cube
config
or
the
CI
for
your
serve
for
your
cluster
and
so
on.
So
if
you
don't
see
them
there,
it
means
that
you
are
stuck
in
some
way
around
the
along
the
line.
So
yeah
I
mean
yeah
I.
B
Can
it's
a
hands-on
situation
right
now,
because,
as
I
say,
this
is
a
it's
a
it's,
not
a
bad
old
project.
But
it's
getting
a
lot
of
you
know
it's
a
it's
a
new
project.
It
is
getting
a
lot
of
like
traction,
and
it's
not
easy
for
the
cloud
providers
to
to
have
that
app
running
like
perfectly
and
I'm
saying
that,
because
even
the
packet
one
is
like
it
has,
it
needs
a
lot
of
work
and
love.
That
is
the
is
the
is
what
I'm
working
on
those
days
so.
B
If
I
look
at
the
epidemic
I
place
here
so
when,
when
you
do
cluster
CPL,
when
you
have
your
need-
and
everything
is
up
running-
you
can
do
cluster
CTL,
config
cluster
and
the
conflict
cluster
creates
the
cluster
itself,
so
you
have
to
give
it
doesn't
create
a
cluster.
It
creates
it
prints
out
that
the
ml
that
you
have
to
apply
so
I
think
I.
Did
it
so
I
have
it
my
roster
country,
yeah
I,
have
that
in
my
you
know,
history
as
well.
B
So
if
you
do
clusters,
if
you
had
come
to
classes
and
you
do
an
S
version-
that's
my
that's
my
dog
that
woke
up.
So
it's
getting
excited
most
classes
it
here
as
well.
So
if
you
heard
good
stuff,
that's
in
so
if
you
get,
if
you
do
this
command,
you
get
this
yeah
yeah.
You
get
this
error
because
you
have
to
pass
a
bunch
of
like
environment
variable
and,
as
you
can
see,
the
environment
variable
are
tight.
The
cloud
provider
that
you
are
looking
at
so
in
my
case
is
the
facility
because
pocket.
B
So
the
facility
is
where
you
place
your
cluster.
You
have
to
tell
the
node
type
you
have
to
take
the
operating
system,
the
policy
followed
by
range
of
IPs
and
SSH
key
and
so
on.
I
have
them
in
my
you
know,
n
file
that
I
can
sit
and
then
invite
and
find
so
as
I
do
that
command
again.
You
will
get
like
this
EMF
and
the
CML
contains
like
your
cluster
and
as
I
told
you
like,
you
have
the
cube
country,
the
cube
admin
comfy.
B
So
you
don't
have
those
creeps
to
do
manually
because
you're
any
I
already
have
the
packages
you
need,
but,
as
I
told
you
like,
we
are
in
the
early
days
or
our
journey
faster
API
provider.
So
we
supports
Ubuntu
and,
as
you
can
see,
you
get
like
the
you
get
like
commands
about
the
server
itself.
So
before
the
this
is
telling
like
what
do
I
have
to
do
before
the
cube
admin
command.
You
have
to
do
you
have
to
install
a
bunch
of
stuff,
that's
it.
B
What
do
I
have
to
do
after
the
cube
at
McMahon,
so
the
carpet
the
cube
admin
command,
depending
on
where
you
run
the
cube
admin
config,
it
can
be,
it
can
be
they
in
it
or
it
can
be
the
join.
So
in
this
case
that
you
had
been
counting
is
that
this
one
is
for
the
control
plan
one.
So
it
is
for
the
for
the
manager,
so
it
does
it
does
they
in
it.
B
You
can
see
that
I
have
a
cluster
here,
and
this
is
the
kind
cluster
from
the
cluster
VII
component.
So
there
is
no
reference
about
cloud
provider
stuff
here,
because
we
don't
need
them,
because
this
is
the
general
one.
The
packet
cluster
is
the
one
that
we
provide
has
a
cloud
provider,
and
you
can
see
here
something
that
is
concrete
from
the
cloud
provider
it
does.
It.
B
Machine
is
the
same,
so
machine
is
from
the
class
reveai
and
it
doesn't
give
you
anything
any
information
about
the
packet
machine
itself.
It
gives
you
information
about
how
the
the
cluster
api
should
look
at
your
machine
and
there
is
a
reference
to
the
bootstrap
and
I'm
referencing
it
to
the
cube
admin
confident
we
just
saw
before
and
I'm
referencing
it
to
the
infrastructure.
B
So
I'm
saying
oh
class
reveai
remember
that
this
machine
belongs
to
a
packet
machine
that
is
called
CNC,
f,
master,
zero
and
now
I
have
to
describe
how
the
target
machine
looks
like.
So,
as
you
can
see,
this
is
a
very
verbose
and
maybe
boring
task,
and
that's
why
we
have
the
cube
Caudill
conflict
provider
command.
B
You
cuddle,
config,
faster
command,
because
it
gives
you
this
that
we
played
it
gets
generated
for
you.
So
you
don't
have
to
look
at
it:
I'm
using
I'm,
showing
you
that,
because
I
think
it's
a
very
good
way
to
learn
how
to
troubleshoot
her
out
to
understand
how
it
works
and
if
you
have
to
change
something
you
have
to
open
this
file
because
maybe
the
generated
one
is
not
enough
or
because
maybe
you
have
to
install
something
that
you
know
it's
not
there.
B
We
gotta
fix
upstream
from
our
internal
API
working
like
today,
so
I'm
gonna
work
on
a
multi
master
stuff
next
week,
but
the
worker
can
be
deployed
not
have
a
single
machine
but
has
a
machine
deployment.
So
when
you
deploy
then
has
a
machine
deployment,
you
get
all
the
benefits
that
you
get
from
the
deployment
of
pods.
So
you
get
a
control
loop
that
bans
the
number
of
machines
and
checks
how
many
of
them
are
running
from
a
dimer
stuff?
B
How
many
of
them
are
stacked
and
try
to
keep
the
the
number
in
siege
as
we
have
like
15
minutes.
So
if
you
have
any
question
now
or
ever,
and
so
as
you
can
see,
when
you
create
a
deployment
you
have
to
the
plot,
you
have
you
can't
use
like
the
cube
and
income
fee
that
we
use
before,
because
you
need
a
template.
B
The
template
has
some
parameters
that
has
to
be
replaced
because
they
are
per
server
and,
as
you
can
see,
that
machine
template
has
like
in
this
case
they
have
the
same
concrete
information
about
the
cloud
provider.
So
you
have
the
operating
system.
You
have
the
billing
cycle,
you
have
the
facility
and
the
machine,
and
this
is
the
qrq
admin
competent
play
for
the
and,
as
you
can
see
it
doesn't
have,
it
does
have
the
same.
Pre
cube
admin
command
because
I
have
to
install
the
batteries.
B
This
is
an
improvement.
We
will
do
I.
Think
at
some
point.
We
will
have
images
that
you
can
use,
so
you
won't
have
to
do
with
runtime.
It
is
more
reliable,
safer,
faster
way
better,
but
for
now,
but
you
don't
have
first
command
convent.
That
is
something
that
we
have
in
the
tube
admin
comfy
for
the
manager.
We
have
that
because
we
have
to
deploy
what
I
told
you
is
the
CCM,
but
the
CCM
is
that
component.
That
I
told
you
at
the
beginning
that
identifies
the
cloud
provider.
B
Some
of
the
cloud
provider
like
AWS
adjure,
has
the
CCM
embedded
inside
the
cubelet
right
now.
This
is
not
something
that
kubernetes
is
doing
anymore,
because
there
are
too
many
of
them.
So
you
have
to
provide
the
CCM
to
the
installation
and
our
CCM
is
open
source.
Obviously,
and
it
is
currently
not
in
the
kubernetes
6
repository,
but
it
is
in
our
packet
host
repository.
So
if
you
are
a
packet
customer
and
your
wonder,
you're
wondering
how
should
I
identify
Micro.
Ladies
cluster
has
a
packet
cluster.
B
You
can
use
the
CCM
there
that
I,
don't
remember
the
name
now
en
yeah,
that
was
it
packet
CCM,
and
so
this
is
decision
and
like
technically.
This
is
not
tied
to
the
class
reveai.
This
is
a
binary.
This
is
a
mega,
a
controller
that
is
watching
over
nodes
and
it's
them
define
them
as
belonging
to
packet,
and
it
is
like
doing
custom
stuff,
the
declutter
by
your
needs.
Some
of
them
has
I
told
you
are
like
labeling
notes,
annotating
modes
and
so
on.
A
B
B
So
yeah,
what's
the
best
way
to
reach
out
to
the
community,
the
visa
select
channel
is
called
a
class
for
API
and
you
can
join
there
and
ask
questions
about
the
class
reveai
itself.
It's
not
really
really
ties
to
the
provider
itself.
There
are
provider
that
has
their
own
channel
in
the
kubernetes
slots,
so
you
can
jump
there
and
ask,
or
there
are
office
hours.
So
there
is
weekly
meeting
that
you
can
jump.
B
That
is
good.
So,
by
consequence,
I
think
that
doing
using
the
same
strategy
you
know
is
for
machine
will
go
for
a
long
time.
So
how
to
reach
out
to
me
if
you
have
any
questions.
So
this
is
my
website.
You
can
find
me
on
Twitter
the
same
name
and
I
do
time
to
time
like
session
like
this
one
on
Twitch
as
well,
with
the
same,
what
I
code
or
I
like
ramble
about
what
I'm
doing
so,
if
you
have
any
questions,
see
you
there
and
my
DMS
are
open,
otherwise,
David
there.
B
We
have
ten
minutes
to
go,
maybe
five,
because
I
think
time,
my
content,
my
content
are
over
and
yeah.
That's
it
I
hope
it
was
helpful
enough.
I
decided
to
go
in
this
way,
because
there
is
a
lot
of
code
a
lot
of
details.
But
if
you
are
approaching
class
reveai
and
you
just
look
at
the
documentation,
you
don't
get
that
deep
and
sometimes
to
get
that
deep.
B
You
have
to
implement
the
class
reveai
from
either,
but
that
should
have
work
that
way
and
so
I
hope
that
will
be
useful
for
you
as
soon
as
you
will
start
to
play
with
that
and
if
you,
if
you
are
in
pocket,
feel
free
to
reach
out
and
leave
a
comment
on
the
issues
there
are
issues
open.
So
if
you
leave
comments
and
we're
gonna
prioritize
tip
them
more
than
others
and
yeah,
that's
it.
Thank
you
for
coming.