►
From YouTube: GitOps Happy Hour (Ep 5): Operators in a GitOps world
Description
Join Christian Hernandez, GitOps Extraordinaire, for a journey through how to achieve GitOps in any number of ways. The occasional Red Hatters and special guest will join us too.
A
Good
morning
good
afternoon
good
evening
and
welcome
to
another
episode
of
get
ops
happy
hour,
I
am
queer
short
principal
technical
marketing
manager
here
at
red
hat,
I'm
joined
by
my
fellow
principal
technical
marketing
manager,
or
are
you
senior
principal?
I
forget
what
you
are
now
dude
my
bad
joined
by
my
fellow
co-worker
christian
hernandez.
The
get
ops
extraordinaire
welcome
to
open
shift
tv
today
we're
going
to
be
talking
about
operators
in
a
git,
ops
world.
So
christian,
let's,
let's
tell
everybody
what
that
means.
B
Yeah
yeah,
let's
see
everyone
yeah
yeah,
so
by
the
way.
Thank
you
everyone.
For
last
time,
we
had
a
a
good
session,
get
ups
happy
hours,
a
special
kubecon
edition.
We
got
a
lot
of
good
feedback
right,
that's
nice!
To
get
all
the
the
talking
heads,
the
the
the
the
the
thinking
minds
behind
what
what
get
out
is
gonna,
be.
C
B
So
that
was
really
cool.
So
if
you
haven't
caught
that
go
ahead
and
go
to
the
youtube
channel
right,
you
can
see
all
previous
streams
there
and
yeah.
So
today
we're
kind
of
talking
about
operators.
B
This
kind
of
topic
came
up
in
my
head
here
because
anytime
I
talk
to
anyone
about
just
cloud
native
architecture
and
just
in
general,
there's
just
so
many
so
many
automation
tools
right.
There
are
tools
they're,
like
especially
when
you
talk
about
operators
and
openshift,
because
it's
like
well
like
what
do
I
need
operators,
I
have
helm
and
it's
like
well
what
why
do?
I
need
operators
if
I'm
using
get
ops
to
trigger
the
automation?
It's
just
there's.
B
There's
this
whole,
I
don't
say:
there's
like
like
venn
diagrams
right,
like
it's
like
a
it's
a
multi.
B
You
can
use
like
a
little
bit
of
everything.
How
does
that
all
fit
in
right?
So,
oh
and
by
the
way
chris,
I
know
chris
you're
you're
you're
drinking
an
ipa,
I'm
I'm
having
wine,
because.
A
Yeah
good
point:
yeah,
I'm
actually
drinking
cigar
city
brewing
from
my
favorite
brewery
in
florida.
It's
finally
up
here
in
michigan,
so
I
was
stoked
once.
A
B
B
Yeah,
that's
a
long
drive
yeah.
There
were
some
breweries
in
milwaukee
that
I
really
really
liked,
and
I
was
like
you
know
back
when
we
can
travel
that
I'm
like
man.
I
wish
I
wish
they
had
some
of
this
stuff
here
in
la
but
anyway,
back
to
the
topic
at
hand.
Right,
I
just
kind
of
want
to
say
we're
the
happy
hour
here
is
we
talk
a
lot
about
get
ops
and
how
you
know
get
ups
in
terms
of
like
no
not
like
miller.
A
A
B
I'm
a
faux
hipster,
so
you
know
only
microbreweries,
the
you
know
get
ups
by
pull
request
and
you
know
all
that
how
argo
and
you
know
a
lot
of
your
sync
tools.
Acm
flux,
does
a
lot
of
the
automation
for
you
right
so,
but
then
we
have
operators
and
if
you've
been
around
the
red
hat
ecosystem
have
been
been
around
openshift
a
while
all
we
do
is
talk
about
operators
right,
so
I
think
yeah.
B
I
think
it
would
be
a
good
time
to
talk
about
how
operators
fits
in
in
the
overall
get
ops
architecture
right.
So
I
do
have
presentations.
So
let
me
share
my
screen
here:
I'm
not
gonna,
I'm
not
gonna,
kill
you
guys,
oops.
Let
me
not.
B
Yeah,
I
don't
want
to
slide
you
to
death,
I
think
in
the
is
it
desktop
three
or
desktop
two.
What's.
A
A
Oh
so
it's
funny
story
like
you
might
notice.
If
you
haven't
watched
the
show
recently,
there's
no
flags
behind
me.
So
when
I
moved
my
desk
up
here,
yeah
like
I
wanted
to
rearrange
some
things
right.
I
wanted
to
put
the
tall
monitor
on
the
right
hand,
side
I
wanted
the
laptop
on
the
left,
hand,
side
and
yeah
it
completely.
Freaked
out
this
monitor
was
turned
like
a
90
degree
view.
A
C
A
A
B
Should
do
that
here,
so
you
got
you
guys,
you
see
the
presentation
right
these,
yes,
am
I
presenting
the
right
thing,
all
right
cool,
so
I'm
gonna
kind
of
talk
about
operators
from
an
overview
right.
So
I
know
you
guys
hopped
on
to
talk
about
get
ups,
but
first
I
think
we
need
to
talk
about
operators
right
and
what
operators
are
and
what
what
they
provide
right.
So
you
know,
if
you've
ever
been
to
any
of
these
streams
or
talked
to
anyone
at
red
hat.
B
This
shouldn't
be
new
to
you,
because
all
we
do
is
talk
about
operators
right.
So
the
idea
behind
the
operators
right.
It's
like
you,
want
a
cloud-like
experience
everywhere
right.
So
what's
what
is?
What
does
that
actually
mean
right
so
operator,
and
the
operator
framework
is
a
way
to
codify
operational
knowledge
right.
B
We
call
it
an
operator,
because
the
idea
is
operational
knowledge
we
want
to
codify
that
right
and
and
what
is
that
you
know
what
does
that
actually
mean,
and
I
think
andrew
right,
by
the
way,
if
any
of
you
haven't
caught
andrew's
shift
for
administrators
office
hours,
I'll.
B
Great
show
right
so,
but
I
think
I
think
andrew
kind
of
described
it.
He
described
it
on
the
show
as
well
very
perfectly
right
as
an
admin
right
or
as
as
a
devops
person
right.
Let's
take
a
simple
use
case.
If
you
spin
up
a
mysql
database
right,
if
you're,
if
you're
doing
that
over
and
over
and
over
and
over
again
right,
you
essentially
do
the
same
steps
all
the
time.
B
Specific
for
your
environment,
you
perform
the
same
steps
over
and
over
and
over
and
over
again
right
so
and
a
lot
of
the
ways
people
have
already
codified
that
right.
So
we
have
ansible
right.
I
think
ansible
has
a
very
large
ecosystem
that.
B
A
company
he
actually
built
a
company
around
that
before
red
hat
acquired
them,
and
so
you
know
a
lot
of
that
stuff's
already
codified.
So
we
want
to
kind
of
bring
that
into
kubernetes
native
way
right.
So
we
we've
already
codified,
I
think
people
say
operators
codified,
operational
knowledge.
I
think
people
have
already
done
that
and
I
think
companies
have
already
done
that.
I
mean
for
a
while
now
right,
like
even
before
ansible
existed.
B
I
did
things
with
puppet
and
chef
to
codify
a
lot
of
this
operational
knowledge
right
and
even
before,
then
people
would
just
fire
off.
I
remember
doing
solaris
administration
right.
It's
just
nothing,
but
a
bunch
of
shell
scripts
running
in
ssh
right.
So,
like
we've
already
kind
of
done
that
right.
B
So
we
kind
of
took
that
idea
and
put
it
in
a
kubernetes
native
way
right
and
it
really
is
to
deliver
applications,
automate
workflows
and
to
really
provide
a
sas
like
experience
for
end
users
right
so.
B
So
really
it's
you've,
you
take
the
knowledge
of
you,
know,
operators
and
operators
in
that
like
people
right
so,
like
an
actual,
you
know
either
an
sre
either.
You
know
devops
engineer
admin
guy.
They
know
how
to
set
something
up
right.
You
embed
that
knowledge.
You
take
that
knowledge
and
you
put
it
in
what
we
call
an
operator
and
an
operator
and
I'll
go
over
it.
A
little
bit
is
a
kubernetes
native
way
right.
We
took
the
principles
of
custom,
resource
definitions
and
put
a
controller
behind
it.
B
To
actually
do
something
right,
so
we
embed
the
knowledge
and
operator
and
operator
all
it
does.
It
manages,
deploys
and
automatically
things
like
deployments
staple
sets,
secrets,
config
maps.
Anything
you
want
anything
you
want
to
be
able
to
codify
you.
Can
it's
not
an
operator
right
and
so
really
what?
What
are
the
capabilities
right
for
in
in
the
sdk
right?
So
we
have
an
sdk
in
order.
You
know
in
order
to
easily
build
operators
right
so
like.
B
So,
like
everything
red
hat,
does
we
like
to
continuously
donate
things
to
the
open
source
community?
So
we
have
helm
right
so
like
so,
if
you're
already
having
helm,
charts
put
that
in
an
operator
you're
good
to
go
ansible
right.
So
for
you
for
you
admins
right,
so
you
admins
hold
a
special
place
in
my
heart,
because
I
was
the
former
admin
nsre.
So
it's
you
know.
I
understand
the
pain,
your
ansible
scripts.
B
D
B
So
don't
think
it's
like,
don't
think
it's
hard
right
so
like
if
I
can
yeah.
If
I
you
know,
I
just
took
out
my
ansible
scripts.
I
put
them
in
operator
and
you
know
minor
tweaking
and
they
just
work
right.
So
so
it's
very
very
extensible
and
then
for
anything
else.
You
just
have
go
laying
right.
So
that's
kind
of
like
the
catch-all,
I
would
say.
B
I
think
if
you
can
do
it
and
go
you
pretty
much,
do
it
anywhere
right
so.
A
A
Did
we
did
a
whole
thing
on
this
once
didn't
we
like
ants
will.
B
Offer
yeah
I.
B
B
A
Yeah,
no,
that
was
like
that
was
part
of
the
draw
right.
They
knew
they
were
working
on
answer
operators.
They
knew,
I
knew
a
lot
about
kubernetes,
so
it
was
like
we
need
to
hire
chris
yeah.
A
B
It
was
like
literally
something
like
that.
So
operators,
essentially,
like
I
said
before,
is
nothing
special
right.
So
if
you
are
in
the
kubernetes
world
cloud
native
world,
there's
something
called
a
custom
resource
definition
right,
so
very
high
level
right,
so
you
know
I
don't
want.
I
can.
Actually
you
can
actually
talk
the
whole
hour
about
just
crds
right,
but
custom
resource
definitions
essentially
extends
the
kubernetes
api
right.
So
when
you
do
something
like
cube,
ctl
get
pods.
B
That
pod
is
an
actual
object.
You
can
actually
extend
that
api,
so
you
can
do
cube.
Ctl
get
barf
right.
Yes,
we're
talking
about
spaceballs
earlier
on
the
chat.
Why
not
the
you
know
the
cube?
Ctl
get
barf
and-
and
you
can
have
the
kubernetes
api-
understand
that
right
or
you
can
say
you
know
same
same
thing
as
a
pod.
So
that's
what
a
custom
resource
is.
So
you
can
do
things
like
in
this
example.
Get
fcd
cluster
right.
B
What
an
operator
does
is,
you
know
you
can
have
a
custom
resource
and
a
custom
resource
definition,
but
kubernetes
doesn't
actually
do
anything
with
it
unless
you
have
a
controller
right
and
that's
what
kind
of
like
what
the
operators
is.
Is
that
an
actual
controller,
I
would
say
a
controller
on
steroids
right?
It
watches
the
events.
It
does
a
reconciliation.
B
It
does.
You
know
xyz
everything
it
needs
to
do
whatever
you
codified
in
it
right
and
then
the
operator
then
modifies
and
manages
the
kubernetes
native
resources
right
so
again,
deployments
staple
sets,
auto
scalers,
there's
nothing,
there's
nothing,
nothing
special
about
them
other
than
what
you've
written
in
the
actual
operator
or
what
the
isv
writes
in
there
there's.
You
know
we're
trying
to
build
an
entire
ecosystem,
around
operators
right
and
trying
to
get
our
isvs,
and
you
know
third-party
vendors
to
be
able
to
write
operators.
B
So
that
way
you
can
use
it
in
your
openshift
cluster
right.
So
so,
with
all
that
in
mind
right,
you
need
a
way
so
like
after
a
while,
you
have
you're
going
to
have
a
ton
of
operators
you're
going
to
have
operators
a
couple
of
operators
and
couple
of
operators.
B
You're
going
to
have
you're
going
to
have
operators
depending
on
other
operators,
so
we
need
so
this.
So
we
have
the
idea
of
the
operator
lifecycle
manager
right,
which
is
from
a
high
level,
an
operator
that
manages
operators
right.
So
it's
kind
of
like
a
a
layer,
a
layer
on
top,
so
just
from
a
a
quick
overview
right.
B
The
the
operator
lifecycle
manager
manages
the
lifecycle
of
your
operator
right,
so
you
can
say
hey
for
my
cluster.
I
want
my
operator
to
be
pinned
for
this
specific
cluster.
I
want
it
to
be
pinned
to
version
1.3
right,
so
you
can
have
it
and
then
1.3
the
operator
does
whatever
it
does.
If
there's
an
upgrade
to
that
operator,
you
can
choose
to
either
upgrade
it
or
stay
on
that
version
and
it's
kind
of
like
a
cascading
effect
right.
B
So
if
you
upgrade
your
operator
to
here
in
this
example
from
1.3
to
2.0,
then
your
operator
may
upgrade
to
other
components
right,
so
the
operator
may
upgrade
the
software
or
you
know
the
version
of
my
sql,
whatever
it's
managing
it'll
upgrade
it
right,
so
so
yeah.
So
you
have
so
you
have
operators
that
do
some
sort
of
automation.
You
have
the
operator,
lifecycle
manager
that
automates
the
automation,
and
so
we
also,
you
know,
have
the
operator
hub
right.
So
the
operator
hub,
you
know
just
kind
of
quick
commercial
here.
B
Is
you
know
away?
You
know,
for
you
know
it
was
launched
by
red
hat
for
way
for,
like
you
know,
you
know
red
hat
aws,
google,
whatever
to
be
able
to
publish
their
operators,
so
that
way
you
can
consume
them.
The
idea
is
in
any
kubernetes
cluster
right,
so
it's
not
necessarily
an
openshift
specific
thing,
but
you
know
any
kubernetes
cluster
can
use
an
operator,
and
so
the
operator
hub
is
integrated
directly
into
the
openshift
console.
D
A
B
I
actually
glad
you
brought
up
the
meta
operator
because,
like
my
example,
is
gonna
gonna
be
that
meta
operator
sort
of
thing,
so
so
so
yeah.
So
now
we
have
the
operator
hub.
So
then
you,
actually
you
know
you
the
royal
you.
B
If
you
have
an
operator,
you
can
actually
publish
a
community
operator
and
have
openshift
users
consume
that
right.
So.
B
Yeah,
maybe
tweak
it
yeah,
so
I
I
think
not
not
not
to
our
own
horn
here,
but
you
know
this
is
a
red
hat
channel.
If
you
you
know,
I
think,
like
the
quickest
startup,
the
quickest
startup
idea
could
be
like
basically,
oh,
hey,
we're
gonna,
publish
our
application
on
the
operator
hub
and
now
you're
exposed
the
entire
red
hat
customer
base.
B
Every
openshift
customer
ever
so
you
know
kind
of
just.
If
you
ever
think
of
an
idea,
it's
probably
a
good
for
an
operator,
it's
probably
a
good
idea
to
put
in
the
operator
hub.
So
this
next
slide,
I
think,
is
my
absolute
favorite
slide
ever
that
I-
and
this
is
a
slide-
that
one
of
our.
B
So
kind
of
just
in
summary,
right,
first
of
all,
I
just
want
to
enjoy
this.
This.
B
B
So,
operators,
right
so
like
you're,
codifying
operational
software
life
cycle
knowledge
right,
so
you're
essentially
doing
what
this
gif
is
doing
right.
This
is
like
you're,
putting
all
your
knowledge
into
it's
kind
of
the
evolution
of
I'm
going
to
replace
you
with
a
small
shell
script
right.
A
A
B
C
B
A
B
Fit
perfectly
right
so
so
operators,
you
codify
operational
knowledge,
built
on
kubernetes,
primitives
right
so
cr
days,
sdk
golang,
ansible
helm
as
chris
mentioned
sky's.
The
limit
currently
right.
B
You
know
there's
a
sdk
for
anything
now.
It's
meant
for
automating
applications
right,
so
it's
meant
for
automating,
deploying
application,
stacks
yeah,
but
openshift
kind
of
just
took
that
and
ran
yeah
right
see
and
the
entire
openshift
four
platform,
if
you
haven't
been
paying
attention,
is
built
on
operators,
so
even
the
platform
itself
installs
itself
and
manages
itself
with
operators
right.
So
there's
something.
A
B
The
cluster
operators,
the
ceo
and
the
cvo
right,
the
cluster
version
operator
that.
A
B
We
we
don't,
did
it
right
like
we're,
not
just
telling
you
we're
preaching
right,
we're
preaching
we're
practicing,
what
we're
preaching
and
then
to
manage
operators.
You
manage
it
with
all
olm
right,
so
you
don't
have
to
right.
You
can
obviously.
B
Yeah
yeah
so
like
you
can
either
manage
in
manually
or
you
can
manage
them
via
olm,
so
you
can
control
versions
and
upgrade
so
you
can
have
actually
a
little
bit
more
control
over
your
operators
that
way
right
and
it's,
and
it
gives
you
like
that.
Catalog
sas
experience
right.
B
You
know
give
me
click,
you
know.
Like
the
previous
example,
let
me
go
back
a
couple
slides.
You
know,
I
click
a
button
and
it
gives
me
an
xcd
cluster
right
so
like
that's
kind
of
like
the
sas
version
of
that
right,
so
so
cool.
So
if
you
want
to
find
out
more
about
operators
where
people
go
operator,
hub.io
operator.io
somebody.
A
A
B
B
Yeah
so
so
get
ups
and
operators
right.
So
it's
like
I
like
to
say
I
always
like
to
make
now
it's
just
like
peanut
butter
and
chocolate
right,
so
like
two
things
that
you
don't
think
should
go
together,
but
actually
work
together,
pretty
well
and
so
really,
like.
I
said
before,
there's
just
like
so
many
automation
tools
right
so
where
you
know
automation's,
like
everywhere,
automation's
everywhere,
there's
if
you
on
the
cncf
diagram.
If
you
see
that
poster
of
the
landscape.
D
B
Yeah,
it
seems
like
everyone's
trying
to
sell
you
some
sort
of
automation
right
so
there's
automation
in
the
face
everywhere.
So
I
I,
when
I
was
first
kind
of
dealing
with
get
ups,
exploring
this
this
this
this
buzzword
right,
I
kind
of
just
broke
it
down.
It's
like
what
are
you
know
like:
where
does
it
all
fit
like?
What
are
operators
really
right
so
like?
Let's
just
break
it
down
right?
So
an
operator
is
nothing
but
a
crd
right.
So
the
custom
resource
is
a
saved
in
yaml
right.
B
You
submit
a
yaml
to
kubernetes
cluster
right.
The
automation
is
triggered
by
the
ammo
right
so
by
the
cr
right.
I
can
either
so
I
have
an
operator
that
the
pods
are
managed
by
the
operator
right.
So
even
if
you
scale
the
deployment,
my
operator
will
go.
No,
no!
You
know
I
control
the
scale
right
so
like
so
all
the
automation
is
triggered
by
the
ammo
and,
like
I
said,
right,
changes
are
triggered
by
changing
the
ammo.
Other
changes
are
reconciled
right
so
like.
B
If
you
make
a
change
outside
the
operator,
the
operator
will
reconcile
that
say
no.
You
need
to
change
everything
with
me
so,
like
that's
kind
of
like
some
of
the
issues
I
had
with
openshift
four
coming
from
three
to
four,
it's
like
well,
I
modified
the
deployment.
Why
did
I
do
this?
It's
like
no
everything's
an
operator.
Don't.
B
B
You
yeah
exactly
yeah,
it's
yeah,
it's
a
hierarchically.
It's
it's
it's!
You
know
you're
going.
You
have
to
go
above
right,
but
one
of
the
cool
things
I
didn't
mention
in
the
other
slides,
but
with
operators
you
can
easily
replicate.
You
know.
If
you
have
the
same
cr
once
you
install
the
operator,
you
can
easily
replicate
that
to
many
clusters,
so
you
can
kind
of
like
rubber
stamp.
These
things.
B
B
And
the
sig
yeah
the
automation,
the
sync
tools
read
the
manifest,
which
is
the
ammo
changes
are
made
by
changing
the
ammo
and
pr
in
the
ammo
right.
So
as
as
you
see
like
there's
a
lot
of
similarities
between
how
you
manage
an
operator
and
how
you
would
manage
get
ops
right.
So
so
so
you
interface
with
the
operator
framework
or
just
like
the
operators
in
general
via
yaml
right.
So
it's
just
yaml
at
the
end
of
the
day.
Right
so.
A
B
Yeah,
it's
yeah,
it's
yam
all
the
way,
yeah
exactly
so.
If,
if
you're
operators,
it's
just
a
bunch
of
yaml
right,
I
think
that
fits
perfectly
in
with
get
ops
because
you're
just
storing
that
gamma
right.
So
so
so
the
question
is:
it's
not
if
it
operators
fit
into
the
gitops
workflow,
because
it
does
because
it's
just
yaml
right,
but
where
is
where's
the
point
of
demarcation
right
so
that
that's
that's
the
thing
right
so
should
you
save
all
the
manifests
that
your
operator
creates
like?
Should
you
save
the
deployment?
B
Should
you
save
the
secret?
Should
you
save
or
should
you
let
the
operator
handle
that
right
and
I
think
that's.
The
most
important
thing
is
like
not
if
operators
and
git
ops
works
together
because
they
do
is
like.
Where
is
your
point
of
demarcation
right,
so
operators
are
animal
driven
and
the
yama
for
the
operator
should
live
and
get
right,
and
I
think
that's
where
the
the
point
of
demarcation
is.
Is
this
yaml
right?
B
So
you
have
a
yaml
for
the
operator
that
it's
going
to
live
and
get,
and
you
pass
that
over
to
the
operator
and
then
you
let
the
operator
do
whatever
it
needs
to
do
with
that
yaml,
whether
you
know
the
you
know,
there's
a
there's
a
lot
of
there's
a
lot
of
ideas
around
okay,
like
when
you
deploy
a
kubernetes
cluster.
B
The
first
thing
you
do:
is
you
export
all
your
yaml,
you
put
it
in
git
and
that's
how
you
manage
your
cluster
if
you're
using
openshift
or
an
operator
driven
cluster
that
changes
right
because
you're
not
gonna
export
every
single,
every
single
yaml
file
right
every
single
configuration
you're
not
going
to
like
you
said
chris.
The
deployment
is
now
an
artifact
of
the
operator,
so
you're
not
going
to
save
the
deployment
you're
going
to
save
the
artifact
you're
going
to
save
the
the
operator
configuration
and.
B
The
higher
level
thing
right,
so
it's
it's
the
point
of
demarcation,
so
I
had
a
long
long
time
ago,
right
at
hashtag
last
job
right
at
last,
job
that
was
yeah
yeah,
exactly
yeah.
That's
what
I'm
saying
so,
I'm
reaching
back
right.
C
B
Where's
your
way
back,
we
had
kind
of
a
workflow
kind
of
like
a
similar
automation
where-
and
I
think
my
ex
boss
described
it
pretty
well
and
I
think
it
fits
here
is
like
you
have
a
pipe
right.
B
You
have
the
main
line
and
you
have
where
the
water
comes
out
of
the
faucet
right,
so
you
can
either
have
this
turned
on
and
this
turned
off,
or
this
turned
off
in
this,
like
you
need
to
you
control
the
flow
at
a
different
point
right.
So,
if
you're
going
to
turn
on
the
water,
you
have
to
leave
this
open.
B
If
you're
going
to
turn
on
the
water,
where
you
are,
you
have
to
leave
this
open
or,
if
you're
going
to
turn
on
the
water
here,
you
need
to
leave
this
open,
so
it's
depends
where
you
want
to
control
the
water
right,
the
water
flow.
So
I
hope
that
analogy
came
out
correctly.
If
my
experience.
B
Okay,
the
answer
is
watching.
I
apologize
if
I
butchered
that,
but
it's
it's
really
where
the
point
of
demarcation
is.
The
point
I
want
to
get
across
is
where
you
want
to.
You
know:
have
that
demarcation
right.
So.
A
Time
to
stop
and
ask
it
to
you:
must
a
developer
specify
each
used
crd
version,
like
group
version
kind
of
the
created
objects?
Whoa?
Oh,
let's
just
move
down
to
decide
on
which
kubernetes
version
the
operator
can
run
on
or
how
is
the
supported
cluster
version
managed.
So
that's
a
very
good
question.
B
A
B
They're
doing
that
that
alpha
thing,
because.
A
Right
like
if
you're,
if
you're,
using
like
what
is
it
1
15
you're
you've
got
an
alpha
crd.
If
you're
using
116
version
of
kubernetes,
you
have
the
the
the
ga
version
of
the
crds
so
or
crs.
So
you
can.
You
can
yeah
like
that
matters
right
like
if
you're
on
an
older
version
of
kubernetes,
you
kind
of
have
to
be
careful
with
that
right.
B
Yeah,
what
and
actually
this
is
you
know
this
is
kind
of
it.
You
brought
up
an
interesting
use
case
chris
and
by
the
way,
thank
you
for
asking
that
question,
because
it
kind
of
percolates,
right
kind
of
makes
you
think
right
where
you
can
have
with
a
combination
of
you
know,
get
ops
practices,
obviously,
but
to
customize
right.
So
where
you
can
have
like
the
template
and
customize
you
have
the
ansible
operator.
B
You
can
actually
have
like
a
generic
version
of
your
template
deployed
in
many
versions
of
your
clusters.
Now
I
think
we
only
support
n
minus
one,
and
just
like
in
general,
like
just
like
in
the
community
kubernetes
is
n
minus
one
right,
n,
n,
minus
or
n
minus
two.
I.
A
D
B
But
yeah
you
could
have,
you
could
have
multiple
versions
of
of
kubernetes
and
you
do
need
to
look
out
for
that.
Crd
version
right,
like
the
the
well
yeah,
what
they
call
the
the
gsv
right
or
the.
B
Group
version
yeah,
yeah
zvk.
There
we
go
so
yeah,
so
you
could
have
using
templating
using
you
know
like
customize
and
using
ansible.
You
can
kind
of,
like
you
said,
figure
out,
okay.
What
class
cluster
version
am
I
on
I'm
going
to
start
patching
some
of
these
so
that
way,
like
ingress,
just
graduated,
to
v1
right.
B
B
Thank
you
so
one
more.
This
is
the
last
slide
right
and
then
we'll
go
into
kind
of
just
a
little
little
hacking
on
the
command
line
here
right.
Other
things
to
consider
right
so
since
openshift
is
built
on
operators,
there's
just
like
other
things.
Now
you
need
to
consider
right
so,
like,
like,
I
was
saying
before
cluster
operators
in
the
cvo
right,
so
you
have
to
kind
of
think
about
where
you
know
where,
where
is
that
sword
and
where's
that
demarcation
line
right?
B
B
Yeah,
so
this
is
kind
of
like
a
teaser
right
machine,
config
operators
right.
So,
if
you've
worked
with
openshift,
you
know
that
we
have
a
machine,
config
and
machine
config
operators
right
so
and
machine
sets
right.
So
like
we
have
a
red
hat
core
os
machine
set
windows
containers
is
coming
by
the
way.
If
you
guys
don't
know,
not
only
am
I
the
get
ops
guy
on
our
team,
I
am
also.
B
A
D
D
B
B
As
you
know,
machine
configs,
you
can
have
like
a
hundreds
of
them,
so
we
have
something
called
a
machine,
config
pool,
which
is
a
aggregate
of
all
those
machine.
Configs
like
where
are
those
stored
right?
Do
you
get
up
to
those
there's
just
so
much
to
consider
in
an
operator
world
where
that
demarcation
is
it
kind
of
gets
a
little
hairy?
It
kind
of
gets
little
there's
a
venn
diagram,
multi.
D
B
Dimensional
ven
venn
diagram
right.
Is
that
what
I
would
like
to
say
so
yeah
so
like
I
promised
that
was
my
last
slide.
It's
any
any
questions
in
the
chat
that
we
can
get
to
before.
I
start
hacking.
A
So
I
kind
of
answered
this,
but
you
know
frank,
also
asks
so.
The
operator
framework
cannot
check
if
a
special
operator
version
can
run
on
the
kubernetes
cluster.
We
have
to
keep
the
operator
always
up
to
date
to
run
on
old
as
well
as
new
clusters.
So
this
is
an
interesting
question
again
frank.
Thank
you
for
it.
B
A
A
B
What's
what's
really
cool
about
the
operator
sdk
is
that
the
downward
api
is
available
to
you,
so
you
can
just
start
querying
the
the
kubernetes
api
really
really
easily.
I
do
it
probably
not
in
depth
as
you
can
do
it,
but
there's
like
this
whole.
You
got
the
once
you
get
the
the
sdk
downloaded
and
loaded
into
your
cluster.
You
have
access
to
the
kubernetes
api,
so
you
can
do
a
lot
of
fancy
things
and
I
think
a
lot
of
it
depends
on
your
ci
cd
process
right.
B
D
A
A
B
So
jp
dade
has
said
talking
about
sent
four.
So
yes,
I'm.
B
Force
one
t-shirt
right
because
I
am,
we
should
have
coordinated
our
t-shirts.
B
Yeah,
because
as
an
admin
right,
like
I'm,
a
c
linux
guy,
what's
really
one
of
my
favorite
things
about
openshift
that
I
don't
think
we
talk
about
enough.
We
kind
of
blanket
security
over
it,
but
really
yeah
that
wash
right
now.
B
As
yes,
because
we
have
the
sea
legs,
one
of
my
favorite
things
about
openshift
is
that
I
don't
have
to
think
about
sc
linux
right.
That
is
abstracted
away
from
me.
It
does
all
the
sc
linux
stuff
for
me,
whereas
in
the
past,
as
an
admin
actually
had
to
know
a
lot
of
se
linux,
I
don't
know
if
any
of
you
took
the
rhce
tests
version
five
version,
six
there's
a
lot
of
messy
learning
stuff
on
there
and
it's
like
yeah
yeah,
that's
the
exact
face.
I
made.
B
It's
not
that
it's
hard,
it's
just
like
something
else.
You
need
to
think
about,
and
just
another
nuance
right
where
that
now
that
has
abstracted
abstracted
from
you
know,
openshift,
and
I
think
that's
like
one
of
my
favorite
things
about
openshift
that
we
don't
talk
about
enough.
I
don't
think
is
that
openshift
abstracts
the
need
for
you
to
know
sc
linux,
so
your
developer
doesn't
need
to
even
worry
about
it.
You
don't
even
need
to
worry
about
it.
Sc
linux,
when
you're
running
openshift,
so
it's
kind
of
abstracted
for
me.
B
So
that's
yeah
kind
of
that's
pretty
cool.
So
yeah
stop
stop
disabling
us
linux.com!
Absolutely
we
do
not.
B
B
So
make
this
a
little
bigger,
so
I
have
a
cluster
here,
cube
ctl
and
this
is
a
fresh
cluster
get
nodes.
Is
it
still
up
all
right,
cool.
D
B
I
do
sort
by
workers,
but
I
don't
know
why
it
becomes
last
in
the
list
but
anyway,
so
I
have
three
masters
three
workers
I
just
installed
this
this
morning.
So
what
I'm
gonna
do
is,
let's
first
install
argo.
So
by
the
way
I
haven't
tested
this
on
yeah
yeah,
so.
D
B
This
might
not
work
so
I
apologize.
It's
been
one
of
those
weeks
where
it's
just
been
crazy.
Back-To-Back
meetings.
Chris,
I
don't
know,
I
know
you.
I
know
you
know
so
I
don't
have
to
complain
to
you
right.
It's
just
back-to-back
stuff.
I
haven't
been
able
to
test
this
on
4.6
if
it
works
on
4.5.
So
if
it
doesn't
work,
I
apologize
so
we'll
debug
on
the
fly
here.
So
let's
install
argo
first.
B
One
of
the
things
that
the
canadians
right,
the
the
get
ups
canadians
at
red
hive
say
that.
B
Friends,
yes,
yeah
yeah,
there's
a
lot
of
the
new
get
ops.
Language
is
shell,
because
you
just
basically
do.
A
A
A
D
D
B
Let's
do
this
watch
oc,
get
you
pods.
B
All
right
so
that'll
fire
running,
that's
running
cool,
so
that's
and
I'm
going
to
deploy
this
repo.
It
takes
a
while
for
this
repo
to
deploy
so
I'll,
deploy
it
first
and
then
I'll
talk
about
what's
going
on
here.
B
All
right
swing
all
right,
so
let's
do
octotree
by
the
way,
whoever
someone
on
the
channel.
B
So
so
yeah,
so
I
have
to
keep
clicking
around
right,
so
I
can
see.
C
B
So
I
have
so,
as
you
know,
argos
td
uses
a
concept
of
applications,
and
so,
if
I
could
go
over
here,
if
I
look
at
I'm
going
to
be
installing
the
efk
stack
right,
so
the
fk
stack
is
log.
A
B
Like,
like,
like
you
said,
it's
a
meta
operator,
so
so
it's
one
of
those
like
you
need
like
three
operators.
A
B
So
I
have
this
efk
application
that
basically
says
it's.
This
is
argo
cd
application.
It
says,
go
to
the
manifest
efk
install.
So
let's
go
here
manifest
efk
install.
A
B
Yeah
yeah,
that's
that
I
always
do
it
that
way.
So
by
the
way,
if
you
guys
know,
please
put
it
in
chat,
so
I
have
here
the
the
cluster
logging
operator
right.
I
have
this
instance,
which
is
basically
it
says:
I'm
gonna
use
a
storage
cast
gpt2,
so
it
says
to
use
base
right
so
in
this
base
directory.
B
C
B
The
operator
right
so
and
there's
this
implicit
namespace
right
so
like
you,
need
it
in
an
ancient
space,
so
I
didn't
mention
it
because
you
need
a
namespace
for
everything
nowadays
right.
So
I.
D
B
You
know
openshift
logging
right,
which
is
the
namespace
I
want
to
create.
I
need
another
namespace
for
the
to
the
actual
operator
for
the
actual
operator
to
live
there,
but
the
actual
magic
happens
is
first
in
the
operator
group
right.
So
I
need
an
elasticsearch
operator
group,
so
that's
that
here
right
so
I
say
all
right,
so
I'm
going
to
create
operator
group
for
elasticsearch
and
I
need
an
operator
group
for
there's
another
one
for
the
cluster
logging
right.
So
it
basically
says
for
this
operator.
B
I
want
to
target
this
namespace
and
then
once
I
have
that,
then
I
need
to
subscribe
to
the
operator
right.
So
then
I
have
a
subscription
right
so
subscription
just
says.
I
want
to
subscribe
to
this
particular
version
of
the
operator
right
because
your
operator
may
have
different
versions,
so
you
need.
A
B
Yeah
exactly
right,
so
then
you
have
so
then
that
could
be
so
your
channel.
That
could
be
something
you
either
do
it
ansible
or
if
you
do
it
customize,
you
can
do
it.
You
know
wherever
right,
but
that's
basically,
where
you
say
I
want
to
subscribe
to
this
particular
version
right
and
oh
yeah.
I
will
share
my
repo
link.
B
Yeah
yeah,
and
so
so
this
gives
me
so
basically,
as
you
can
see
here,
I
don't
have
anything
specific
like
well.
Let
me
go
back
to
base.
I
don't
have
anything.
B
I
wish
I
can
click
on
the
directory
anyways
I'll
treat
people.
I
wish
I
can
click
on
directory,
so
we'll.
B
So
we
don't
know
right
so
yeah,
so
I
have.
I
don't,
have
anything
in
here
specific
to
the
actual
deployments.
So,
if
notice
here,
everything
is
either
an
operator
group
a
subscription
or
the
namespace
right.
There's
there's
nothing
defining
like
oh
hey.
I
need
I'm
saving
my
deployments
and
my
deploy
or
my
deployment
configs
or
my
stateful
sets,
or
my
storage
or
yada
yada
yada
right.
D
B
B
A
B
A
A
Yeah
they're,
I
have
fifty.
B
C
B
B
The
so
yeah.
A
B
A
B
Sync,
let
me
try
to
sync
it:
let's
just
prune
it,
let's
just
manually
sync
it
another
operation
is
in
progress.
Oh,
I
probably
have
to
cancel
it.
A
B
Let's
go
back
here,
so
I
might
have
a
error
here.
I
have
it's
missing:
okay,
yeah!
This
is
so
by
the
way-
and
this
is
something
I've
been
trying
to
play
with.
If
you
saw
here.
This
is
something
I
might
talk
about
in
in
for
their
episodes.
I
have
a
sink
waves
right
because
there's
like
certain
things
that
need
to
happen
in
certain
orders
in
order
for
something
to
work,
that's
just
life
right.
It's
just
right,
just
life
in
I.t
in
general.
B
Right,
you
need
to
do
abc
before
you
do
d
and
that's
what
sync
waves
are
and
triggers,
and
things
like
that
and
I've
been
playing
around
with
that,
but
looks
like.
Let
me
just
delete
this
resource
here.
B
A
Joking
remember
back
in
the
old
days
yeah
I'm
just
going
to
delete
this
server.
People
would
freak
out.
B
Yeah
I
have.
I
have
yeah,
there's
there's
like
funny
stories
out
there,
where
it's
like
someone
unplugged
an
xbox
and
the
webster
website
went
down.
I
was
like
what.
A
A
D
A
A
B
Here
was
my
commit,
so
let's
see
here,
let's
see
what
it
looks
like.
Oh,
I
know
what
I
think
I
did
hold
on.
B
Eve
naughty
me:
oh
wait.
How
do
I
go
back
now?
I'm
stuck!
Oh
here
we
go
here.
We
go
again
there
we
go.
D
A
Yeah,
I
agree:
sync
them
apps,
which
one
yeah.
A
A
Which
is
it?
Which
component.
A
A
A
A
B
D
A
Remember
folks,
this
channel
is
designed
for
all
of
us
to
learn
together
right,
like
we
embrace
failure
on
this
channel,
because
if
we
don't,
if
we
don't
fail
and
learn
from
it,
like
nothing's,
perfect
in
life
right,
so
we
want
to
make
sure
we
give
you
a
very
real
experience,
and
this
is
going
to
show
you
how
to
troubleshoot
problems
later
we
don't,
we
do
it
live.
These
aren't
polished
demos
for
a
very
good
reason.
A
B
B
B
B
Well,
what's
what's
funny
braided
silver.
A
B
I
I
I
know
I
was
I
was
talking
to
her
about
like
because
I've
been
doing
a
lot
of
goal
line
lately
and
I
was.
B
B
Yeah,
so
let
me
let
me
actually,
I'm
gonna
cheat
a
little
bit
guys.
Sorry,
because
I
need
to
see.
A
B
Yeah,
so
that's
what
this
these
sync
waves
are
so
like.
If
I
have
oops
where's
shift
be
yeah,
I
have
a
sink
wave.
You
can
do
like
you
know.
It
starts
at
negative
20
and
goes
to
plus
20
right.
So
it's
kind
of
like
a
it's
kind
of
like
the
like.
B
Yeah
yeah,
so
so
yeah
so
like
zero
is
actually
the
highest
number
I
put
on
because
I
have
it
like
negative
five
negative
four,
so
it
should
just
work.
So,
let's
see
here,
I'm
gonna
cheat
a
little
bit
here,
tmp
just
to
see.
If
I
can
get
this
going,
I
need
to
figure
this
out
why
this
is
a
problem
on
4.6.
B
Yeah,
that's!
That's!
That's
exactly
that's
exactly
my
question,
so
I
guess
I
don't
know
who
asked
the
question
but
like
this
is
now
that
that's
that
same
issue
just
now
biting
me
in
the
butt.
Oh.
A
B
That
yeah,
I
do
ocp
space
logging.
D
D
B
Is
let's
go
back
to
this
guy
here.
B
A
A
A
A
If
you
go
to
your
browser's
setting
for
search
engines-
and
you
say
manage
them,
what
you
basically
do
is
you
know
you
create?
You
add
a
search
engine,
and
let
me
edit
this,
so
you
give
it
a
short
code
of
whatever
you
want.
You
know,
open
shift
or
ocp
is
what
we
use,
and
this
is
the
string
that
I
actually
use
in
that
field.
So
that
way,
every
version
that
gets
updated.
You
just
change
the
number
and
you
got
the
latest
docs
that
you're
searching.
A
B
Yes,
yeah
and
that's
that
last
little
bit
right
there
4.6,
so
I
always
yeah
like
so
every
release.
I
just
change
it.
C
B
B
Yeah,
so
this
is
well.
This
is
something
that
also,
I
think
I
may
switch
to
one
of
the
one
of
the
red
hat
canadians.
B
Yeah
well.
A
B
Yeah
yeah,
but
he
uses
a
job
which
is
which
is
nothing
more
than
a
shell
script,
which
is
why
we
exactly
which
is,
which
is
why
we
yeah
we
always
joke
that
bash
is
the
new,
a
git
ops
language
that
basically
just
loops
and
makes
sure
once
the
cr
is
available,
then
he
then
he
continues
on
with
the
deployment
here,
but
this
isn't
deleting.
I
wonder
why
I
probably
have
storage
issues
is
what
I'm
thinking,
because
if
I
do
oc
get
pv,
there's
no
persistent
volumes,
we'll
see
you
get
pvc
there's!
B
No
persistent
volume
claims
either
and
it
needs
storage.
Oh.
A
B
Yeah,
I
got
some
some
dangling
issues
here.
I
think
I
may
also
have
our
back
issues.
Let's
go
over
here.
A
B
I
hit
a
blocker
running
opm
yeah,
so
like
opm,
so
for
those
who
don't
know
is
opm
is
a
way
to
bundle
your
operators
right
because
you
have
an
operator
so
what
an
operator
when
you're
building
an
olm
into
olm,
you
need
to
build
like
all
the
metadata
right
so
like
when
someone
subscribes
to
version
one
of
my
operator.
It
goes
out
and
downloads
or
gets
the
this
particular
tag
of
this
particular
image.
B
Right
so
and
you
can
bundle
different
versions
right,
so
you
could
have
one
one
bundle
with
different
versions
depending
on
what
you
subscribe
to.
You
get
a
different
version
of
the
image
right.
So
so
that's
what
that's?
What
the
question
is
he's
talking
about
right
now
about
the
opm
bundle
in
tecton?
B
So
I
guess
what
you're
doing
is
so
we
need
to
see
any
folks
push
code,
okay,
so
you're.
So
I
guess
mr
santana
here
big
fan
of
your
music.
By
the
way
I
bet
he
never
hears
that
joke.
Never
it
tries
to
auto,
tries
to
automate.
So
when,
when
you,
when
you
push
the
code,
the
code
like,
I
guess,
compiles,
you
create
the
operator
and
then
you're
just
trying
to
automate
adding
that
bundle
into
the
new
bundle
into
the
operator.
I
guess
is
that
what
what
you're
doing.
B
A
A
B
Sso
you
want
dash
dash
insecure.
B
A
B
Oh
yeah,
it
was
a
fresh
cluster.
I
could
do
by
the
way
you
can
do
oc
get
co
and
you
get
the
cluster
operators.
B
B
C
B
B
Yeah,
I
know
we're
just
here:
progressing
goes
false.
That
means
there's
no
operators
progressing
and
you
know
available
equals
true,
so
so
yeah.
So
let's
do
argos,
cds,
ergo
cd,
app
get-
and
this
is
here,
tells
me
yeah.
So
it
tells
me
this
so
there's
there's
some
issue
with
order.
Order
of
operation
looks
like
it
doesn't
want
to
delete
it
for
whatever
reason.
B
And
I
believe,
we'll
see
project
open
shift,
oops,
let's
look
at
the
actual
openshift
blogging.
Oc
get
even
also
get
pods
and
see
here,
nothing,
okay,
good!
Oh
so
you
get
events.
D
B
Something
defaults:
let's
do
oc
delete.
D
A
C
B
Yeah,
so
I
subscribe
to
the
4.5
channel
instead
of
the
4.6
channel.
That's
why
I
may
be
having
trouble
so
what
so?
Okay!
So
let
me
back
up
and
I'll
I'll
explain
what's
happening
right,
which
we
probably
won't
see
this
work
within
the
next.
You
know
couple
minutes
that
we
have
left
here.
A
B
But
what
end
up
happening
so
when
you
subscribe
to
a
channel
and
it's
an
older
channel
and
and
you
and
there's
a
newer
version
and
so
like
all
these
things
like,
I
had
like
this
perfect
storm
that
just
happened
and
you
have
your
and
actually
andrew
pitt.
He.
He
warned
me
about
this
too,
so
I'm
just
gonna
kind
of
like
lang
didn't
warn
me
about
the
github
thing.
He
warned
me
about
this
error
coming
up
here.
So
let's,
let's
take
a
look
here.
Where
is.
B
It
it's
in
one
of
these.
Let
me
see
if
I
can
find
it
real
quick
so
like
you
can
have
your
your
operator
automatically
upgrade
right,
so
you
can
have
your
there.
We
go.
Install
approval
equals
automatic
right.
So
what
ends
up
happening
is
that.
B
B
B
So
it
was
waiting
that
time
that
upgrade
time
right,
so
it
and
it
went
ahead
and
installed
the
entire
operator
right
and
then
tried
to
upgrade
itself,
and
so
I
ended
up
with
the
race
condition.
So
anyway,.
D
A
B
So
cool.
A
A
A
No
great
show
there's
an
sop
for
this:
I'm
almost
certain
yeah
carlos
santana.
We
we
all
need
to
talk.
I
feel
like
with
what
you're
trying
to
do
so
I
nudged
scott
mccarty
and
dan
in
the
github
issue
you
opened
so
we'll
get
that
figured
out
anything
else,
christian
other
than
thank
you
audience.
We
appreciate
you
tuning
in.
B
Yeah
yeah,
thank
you
appreciate
you
tuning
in.
I
guess
you
can.
You
can
tweet
at
me
you
tweet
at
christianh814
or
find
me
on
github
it's
the
same
name.
I
use
the
same
name
across
everything,
so
so
yeah.
So.
B
A
Cool
well
good,
talking
to
you.
I
hope
you
all
stay
safe
out
there
and
we
will
catch
you
next
time.