►
Description
Ketch is an application delivery framework open source project. Ketch fixes the last mile deployment, implements an application context, and removes the complexities of cloud-native application deployments.
In this session, we will review Ketch in detail:
- Across any cluster
- Built for multi tenancy
- Removing the complexities of K*s
- Ketch beyond the deployment
The featured speaker for this session will be Bruno Andrade, Founder of Shipa.io, the corporate sponsor and main contributor of Ketch.
A
B
That
sounds
good,
so
thanks
thanks
for
having
me
today
and
as
mentioned.
B
The
goal
today
is
to
talk
a
little
bit
more
about
about
catch
and
give
a
little
bit
of
a
of
a
background
of
what
catch
is
about
and
how
it
can
help
as
part
of
your
delivery
process
and
the
the
reason
why,
if
we
step
back
a
little
bit
before
and
we
think
about
why
catch
was
created,
catch
was
created
by
and
and
is,
it
is
maintained
today,
mostly
by
by
shipa,
and
the
reason
why
we
we
started,
we
decided
to
open
source
catch
and
and
invest
the
resources
on
on
building
and
open
sourcing
cache,
as
a
platform
is
because,
if
you
look
at
the
way
application
delivery
has
been
structured
today
when
it
comes
to
kubernetes,
you
have
your
application
developer,
you
have
your
get
source
code,
maybe
gitlab
or
github.
B
For
example,
you
have
your
ci
pipeline,
which
most
of
the
the
organizations
today
they
have
multiple
ci
pipelines
in
place
and
now
your
developers
they
are
test
with
delivering
the
applications
into
your
different
kubernetes
clusters,
because
that's
also
reality
that
we're
seeing
where
most
organizations
as
they
start
getting
more
comfortable
with
kubernetes.
The
number
of
clusters
are
growing
and
when
what
we
see
and
what
we
learned
is
that,
when
you're
delivering
the
first
set
of
services,
the
first
few
applications,
it
is
okay,
I
mean
you
your
developers.
B
They
need
to
go
and
learn
how
to
create
deployment,
sets
helm,
charts
and
so
on.
But
for
the
first
few
applications
we
would
say
it's
it's
definitely
manageable.
To
do
these
deployments
and
the
integrations
and
incorporate
the
the
process
of
generating
your
charts
and
so
on
into
your
ci
pipelines
or
applications
can
be
delivered
across
your
kubernetes
clusters.
B
But
as
you
move
from
that
kind
of
day,
one
into
into
a
year
later
or
months
later,
what
is
happening
is
that
your
developers
are
really
getting
dragged
into
the
infrastructure
level,
where
managing
and
delivering
a
whole
lot
of
services
across
multiple
clusters
creates
a
lot
of
complexities
where
they
have
to
really
learn
what
helm
charts
are
deployment
sets
are
what
type
of
ingress
rules.
B
B
Take
that
component
that
helps
a
developer
to
actually
deliver
the
applications
and
focus
on
the
application
code
away
from
shipa
and
and
open
source
that
component
and
call
the
project
catch
and
and
the
way
we
structure
that
is
in
the
way
we
structure
and
think
about
it
is
catch
as
an
application
management
framework
and
and
how
that
works.
B
B
By
doing
so,
that
removes
the
complexity
of
creating
the
helm,
charts,
creating
deployments
as
having
your
developers,
focus
on
the
kind
of
infrastructure,
related
components
and
objects
that
kubernetes
requires,
but
now
focus
as
the
developer
or
shift
the
focus
from
the
developer
to
the
application
code,
where
support
to
can
area
application
logs,
focusing
on
the
application.
These
are
all
part
of
the
part
of
the
application
management
framework
so
and
enough
of
slides.
B
If
we
jump
into
the
interquick
demo
of
catch,
I
think
you
can
all
see
probably
my
screen
and
it
I
hope
it
is.
It
is
large
enough
what
we
have
is.
I
have
catch
installed
into
a
kubernetes
cluster
on
on
gk
and
even
though
I'm
using
gke
as
the
cluster
catch
is
not
tied
to
gka
specifically,
but
you
can
also.
You
can
also
run
catch
on
aks
on
premises,
eks.
B
B
So
you
can
have
that
up
and
running
and
available
here
in
your
terminal
and
for
catch
to
give
you
the
some
of
the
functionalities,
such
as
creating
c
names
and
certificates
automatically
and
attaching
to
it
and
so
on
and
supporting
the
different
ingress
controllers.
B
You
can
install
cert
manager
and
it
will
work,
for
example,
across
traffic
and
e-sto,
as
well
as
cluster
issuer
in
your
ingress.
That
will
help
catch
support,
the
your
ingress
controllers
and
as
well
as
some
of
the
functionalities
such
as
cname
addit
names,
certificates
and
others.
B
Today,
catch
works
with
both
istio
and
traffic
down
the
road
map
which
we're
going
to
cover
a
little
bit
later.
Catch
is
also
expanding
into
other
ingress
controllers
that
you
may
have,
but
these
are
the
two
that
we
the
catch
started
with
once
I
installed
these.
The
last
step
that
I
followed
was
basically
to
install
the
the
catch
controller.
B
The
catch
controller
will
create
the
crds
and
will
make
catch
available
in
your
cluster.
That's
it.
The
whole
install
process
actually
takes
you.
Basically
just
a
few
minutes,
no
more
than
three
minutes
to
to
get
it
up
and
running
so
I'll
run
I'll
run
through
two
examples.
B
B
B
B
B
So,
as
mentioned
before,
you
can
be
using
both
traffic
and
istio.
Today,
great
it's
successfully
added.
So
if
I
just
do
catch
pool
list,
for
example,
I'm
gonna
see
my
dev
pool
here,
which
again
catch
maps
a
pool
directly
to
your
namespace.
So
if
I
do
cubect
I'll
get
namespace,
I'm
gonna
see
a
namespace
called
catch,
slash
dev
that
we
just
created.
So
our
our
dev
pool
that
we're
going
to
use
on
catch.
It's
actually
directly
mapped
to
this
catch
dev.
B
That's
it
so
what
cache
is
going
to
do
is
sketch
is
going
to
download
the
image
and
cache
is
going
to
create
the
objects
that
are
required
in
your
cluster
to
run
that
image.
So
me,
as
a
developer,
I
don't
need
to
be
concerned
about
what
type
of
objects
what
type
of
deployment
sets
I
need
to
be
running
in
order
to
run
my
my
bulletin
board
application.
B
C
B
The
application
is
running
so
me
as
a
developer.
I
I
don't
have
to
deal
with
a
lot
of
the
complexities
that
kubernetes
brings
to
my
application
delivery,
but
I'm
focused
more
on
the
application
code.
Delivery
itself,
the
the
other
point.
So
that's
me
as
a
developer
defined
directly
from
my
cli,
but
we
understand
that
a
lot
of
deployments
that
are
driven
from
a
ceo
are
not
driven
from
a
cli
perspective
but
are
rather
driven
from
our
ci
pipelines
instead.
B
So
I
have
here
example
of
a
catch
application,
a
pod
info
application.
Basically
that
is
deployed
using
my
ci
pipeline
in
this
case
my
github
actions.
I
have
this
open
here
pod
info
and
it's
it
can
be
used
as
an
example.
B
I
basically
forked
this
application
from
stefan
stefan
created
pod
info,
as
as
a
simple
application
to
give
you
some
information
on
kubernetes,
the
the
web
apis
and
get
environment,
and
obviously
you
as
a
developer,
you
can
learn
how
to
use
it,
but
the
way
he
did
it
is.
He
gave
you
a
few
deployment
options
and
one
of
them
is
deploying
this
volume
for
application
using
a
helm
chart
and
if
you
look
at
the
helm
chart
that
he
created
here
as
an
example,
it
is
easy
easily
accessible
because
he
did
the
work
for
you.
B
But
if
you
were
a
developer
that
you
were
trying
to
get
deploy
your
different
services
that
you're
creating
every
day
here
are
the
things
that
you
would
need
to
learn.
For
example,
you
need
to
do
a
deployment
yamo,
so
your
deployment
sets
from
a
helm
chart
perspective
which
is
not
easy
to
create.
As
you
can
see,
your
ingress
rules,
your
services,
that
you
would
have
to
create
service
account
and
others
to
be
able
to
deploy
your
application
from
your
ci
pipeline.
B
B
B
It
builds
the
image
for
me
based
on
the
code
that
I
have
on
github.
It
checks
out
the
code.
It
builds
the
image
for
me.
It
holds
my
image
on
a
google
container
registry
publishes
the
image
there
and,
as
a
last
step,
what
it
is
actually
doing.
It's
it's
setting
up
catch
and
in
this
case
it's
installing
the
catch
cli
and
for
me
it
actually
what
it
does
is.
It
basically
creates
the
the
pool
it
adds
a
pool.
For
me
it
creates
an
application
and
it
applies
the
application.
B
B
I
already
have
that
application
created
here,
but
if
you
see
basically
github
actions
performs
all
these
objects
all
these
tasks
and
deploys
my
application
directly
inside
my
catch
instance.
So
now
your
ci
pipeline
it
it
is
much
simpler
and
cleaner.
B
From
a
developer
perspective,
I'm
focused
a
lot
more
on
my
application
code
delivery
itself
and
when
I
go
to
cache,
I
have
the
same
thing
here.
I
have
my
pod
info
that
was
deployed
by
by
github
actions,
and
I
can
access
location
directly
from
here
and
when
I
can
see
it
is
working
and
if
I
go
back
to
some
of
the
the
pod
info
information,
for
example,
if
I
want
to
get
version.
B
B
So
what
catch
is
going
to
do
is
catch
is
going
to
generate
the
certificate
for
you,
create
the
entry
point
in
your
ingress
and
attach
the
certificate
to
that
endpoint.
So
it
is
available
to
you.
You
can
do
that
the
same
way
directly
from
here
from
your
cli,
but
you
can
also
do
that
from
your
ci
pipeline,
so
the
whole
delivery
process
from
beginning
to
end
it's
exactly
the
same
and
and
it's
all
lined
up
from
from
a
cache
perspective.
You
have
more
control
of
your
applications,
such
as
from
from
an
application
perspective.
B
You
can
create
deploy,
get
info
on
your
applications,
see
everything
that
your
developers
are
are
deploying
start
and
stopping
the
apps.
But
one
of
the
things
you
can
also
do
is
actually
tell
catch
or
use
catch
to
automatically
generate
your
helm
charts
for
you.
Let's
say
I
deploy
my
application
using
catch,
but
now
I
need
to
customize
parts
of
my
deployment
right.
There
are
things
that
I
need
to
do
that.
I
need
to
leverage
helm
for
something
specific,
so
I
can
do
a
catch
app
export.
For
example.
B
Let
me
see,
let's
see
what
I
have
here,
actually
I'll
create
a
directory
called
charts.
Okay
and
I'm
gonna
do
catch
app,
export
pod
info
and
then
apps.
It
exported
my
application.
If,
if
I
go
into
my
apps,
I
can
see
my
my
pod
info
application
here.
B
And
I
can
see
all
the
all
the
information
that
I
need
to
be
able
to
sorry
to
be
able
to
deploy
my
application
to
deploy
my
application
directly
from
here.
B
Other
than
that,
you
also
have
the
different
controls
over
your
applications,
such
as
your
setting
environment,
environment
variables,
scaling
units
up
and
down.
So
now
you
don't
need
to
understand
how
to
do
that
directly
from
kubernetes
how
to
manage
your
pods
and
how
do
you
set
inject
environment
variables
into
your
pods
using
kubernetes?
B
We
are
working
on
new
versions
of
catch
where
we're
now
going
to
have
also
ken
air
deployments
available
application
logs
available
directly
from
catch
so
all
again
to
facilitate
the
developer's
life
on
the
apply
application.
But
we
again
encourage
you
to
be
able
to
to
test
catch
and
work
with
us,
and
if
you
are
looking
for
documentation,
you
can
go
directly
to
learn.the
catch.io
there.
You
can
find
detailed
documentation
on
managing
c
names,
your
application,
your
pools,
getting
your
applications
deployed
as
well
as
directly
from
our
website,
the
catch.io.
B
You
can
find
under
the
blog
session,
which
we
post
a
lot
of
content
on
how
to
integrate.
Caching,
to
github
actions,
for
example,
how
to
have
my
different
applications
deployed
and
more
so
I
think
that's
it.
I
hope
that
was
insightful
and
provided
some
information
on
catch.
What
the
project
is
about
and
how
we
can
help
you
get
your
applications.
Delivery
delivered
across
kubernetes
clusters.
B
A
A
A
B
B
You
can
download
you
can
use
catch
going
directly
to
github
on
cheap,
slash,
corp,
slash
catch,
that's
that's
where
you
can
find
catches
source
code,
but
if
you're
looking
at
installing
catch,
you
can
do
that
using
learn.the
catch.io
docs,
I
would
say:
that's
the
the
best
place
for
you
to
to
go
and
get
more
information
on
how
to
use
catch
and
install
it
in
your
cluster.
B
Yeah
that
that's
a
good
point,
we
have
actually
support
we,
our
engineering
team,
is
supporting
the
community
directly
on
github
with
issues
open
and
ideas,
but
we
also
have
a
a
slack
channel
that
is
available
as
well
to
answer
any
questions
and
you
can
find
the
link
to
this
live
channel
both
in
the
documentation
as
well
as
in
the
in
the
github
repository.
A
Very
cool
and
since
we're
a
pretty
small
group,
I've
also
updated
everybody's
talking
permissions.
So
you're
welcome
to
come
off
of
mute
and
just
start
start
talking.
Yeah.
C
I
have
a
question:
what
challenges
do
you
see
with
installing
and
running
catch
on
an
on-prem
kubernetes
instance
yeah.
B
No
thanks,
thanks
for
the
question
we
we
don't
oversee
challenges
as
as
long
as
you're,
following
the
documentation
that
is
available
here
in
learn.the,
cache.io
and
you're,
using
one
of
the
supported
ingress
controllers,
which,
on
the
current
version
of
catch,
is
supported
both
traffic
and
istio
more
to
be
added
later,
as
long
as
you
have
these
requirements,
it
shouldn't
be
an
issue
installing
on
your
own
premises,
kubernetes
or
or
manage
kubernetes
or
k3s,
for
example,
as
well.
C
Okay,
fair
enough:
how
does
it,
how
does
catch
coordinate
the
creation
of
certificates
with
internal
tools
that
the
company
has,
for
example,
certificate
issuance
tooling,
and
things
like
that.
B
Now
that's
a
good
question,
so
we
leverage
your
ingress
controller.
So
in
the
case
that
we
have
here,
excuse
me
on
the
demo
when
I
do
a
catch
cname
ad,
for
example,
and
I
passed
the
application.
What
cache
is
going
to
do
is
cache
is
going
to
connect
to
istio.
B
In
my
case,
I
have
easy
install
as
well
as
cluster
issuer
insert
manage
and
insert
manager
in
your
cluster,
so
cache
is
going
to
leverage
istio
and
your
cert
manager
attach
it
to
istio
to
generate
that
certificate
and
attach
so
we're
going
to
be
basically
leveraging
your
ingress
controller.
For
that.
C
A
B
No
thank
you
for
having
me
and
I
appreciate
everybody
joining
and
the
opportunity
of
talking
a
bit
more
about
catch
as
a
project
here
as
well.
Awesome.