►
From YouTube: Spinnaker Project Showcase
Description
Join us for KubeCon + CloudNativeCon in Shanghai June 24 - 26 and San Diego November 18 - 21! Learn more at https://kubecon.io. The conference features presentations from developers and end users of Kubernetes, Prometheus, Envoy and all of the other CNCF-hosted projects.
A
Patience,
nothing
like
this.
So
thanks
everyone
for
coming
for
being
here
on
day,
zero
of
the
event
very
interested,
I'm,
very
curious
about
the
the
Jenkins's
llamo
plugin
I.
Guess
Djamel
is
going
to
be
a
thing
now,
we'll
see
what
that
evolves
to
Kousuke.
Obviously,
I
had
a
nice
time
not
having
to
do
much
of
a
show
of
hands
in
terms
of
who
knows.
Jenkins,
that's
asked
me.
A
If
I
can
do
so
with
my
neck
looking
backwards
at
this
screen,
that
I
can't
see.
But
let
me
just
at
the
high
level,
so
spinnaker
is
in
an
open
source.
As
you
can
read
there,
it's
a
multi
cloud.
Continuous
delivery
platform
that
well
tries
to
do
what
continuous
delivery
tries
to
do.
Obviously,
it's
been
around
for
a
decent.
While
it
came
out
of
a
bunch
of
internal
work
at
Netflix.
A
It's
now
an
open
source
project
led
by
Netflix
and
Google
and
a
whole
bunch
of
other
companies
who
contribute
to
it
before
I
dive
deeply
into
the
into
some
of
the
details
of
spinnaker
I'd
like
to
motivate
the
space
a
little
bit.
I
think
you
know,
CIN
CD
is
a
term
has
become
a
sort
of
generic
term
for
random
automation
that
you
do
between
checking
in
code
in
between
getting
to
production
and
I.
Think
that
you
know
when
we
talk
about
the
fact
that
spinnaker
focuses
heavily
on
the
application
release.
Part
of
the
cycle.
A
I
usually
use
a
diagram.
Something
like
this
to
try
to
motivate
what
that
means.
Typically,
I
think
if
we
think
about
what
happens
when
we
deploy
code
or
when
we
write
code
and
then
deploy
code,
there's
kind
of
mentally
two
common
types
of
processes
that
happen.
First
of
all,
you
know
I'm
writing
some
code,
I'm
checking
it
into
a
branch
or
I'm
doing
something
locally.
A
A
It's
usually
a
relatively
I
mean
side
affecting
you
write,
a
bunch
of
test
logs
and
so
on,
but
in
general
you
run
a
bunch
of
commands
and
you
do
some
optimization
for
parallelization,
but
if
it
goes
wrong,
it's
not
really
a
big
deal
when
you're
talking
about
actually
pushing
your
code
closer
and
closer
to
production.
There's
some
complex
branching
that
starts
to
happen,
and
so
the
dependencies
between
things
and
then,
of
course,
side-effects
start
to
get
increasingly
worse
like
if
you.
A
Without
breaking
too
much
and
I
think
that
kind
of
explains:
why
there's
you
know
what
some
of
the
challenges
are
in
getting
CD
right
in
organizations
or
even
in
teams?
On
the
one
hand,
you
want
it
to
be
safe
and
somewhat
standardized,
because
one
of
the
elements
of
things
that
make
it
unsafe
is
every
team
doing
something
in
a
very
different
way.
A
How
do
I
make
this
easy
to
set
up,
but
how
do
I
allow
operations
or
dev
ops
or
the
platform
team,
or
whatever
you
call
them
to
have
enough
safety
and
control
so
that
the
process
doesn't
break
all
the
time.
I
think
is
a
fundamental
challenge
of
building
good
tools
and
processes
in
this
space
and
so
there's
and
if,
when
we
break
that
down
or
if
we
look
at
how
spinnaker
breaks
that
down,
there's
really
three
parts
to
this
overall
problem.
A
A
How
do
I
understand
what's
running
in
production
or
what's
running
in
staging
right
now,
because
some
of
the
decisions
I
have
to
make
it
dependent
on
that
context
and
if
I
want
to
troubleshoot
I
really
want
to
understand,
really
well
what's
going
on,
so
that
might
be
more
application
management
and
then
there's
you
know,
deployment
best
practices.
Sure
I
can
write
a
Bluegreen
deployment
or
canary
deployment
with
East
EO
in
the
whole
bunch
of
yanil
and
if
I
could
have
a
bit
of
run
through
a
couple
of
slides
on
how
you
might
do
that.
A
But
it's
really
something:
I
would
rather
consume
as
a
prepackaged
item
than
have
to
write
this
myself
all
the
time,
especially
when
you
multiply
this
across
five
or
ten
teams.
If
they
all
try
to
implement
their
best
practices
themselves,
it
gets
a
little
messy
classic
example.
With
kubernetes,
you
call
cube
CTL
apply.
How
long
do
you
wait?
What
you
wait
for
what
you
check
to
make
sure
that
the
amyl
has
actually
landed
if
you
like
the
Yamal
has
launched,
but
that
doesn't
mean
that
the
yamo
has
landed
and
everybody's
reimplemented,
this
8
million
different
ways.
A
That's
clearly
something
you
want
a
tool
to
be
able
to
deliver.
For
you
a
whole
bunch
of
other
stuff,
not
gonna.
Do
the
whole
slide
run-through.
You
can
look
at
it
later.
Many
many
different
domain,
specific
challenges
around
sort
of
more
deployment
than
really
the
software
build
cycle,
and
you
really
would
like
your
tooling
to
do
this
well,
for
you
lots
and
lots
of
other
stuff.
Of
course
I
mean
going
back
to
the
what
we
just
heard.
A
We
want
to
do
a
lot
of
this
as
code
and
but
maybe
the
ownership
of
this
as
code
setup
is
shared.
It's
not
just
the
development
team
that
gets
to
control
their
entire
go
to
go
to
production,
but
there
is
some
kind
of
centralized
ownership,
a
part
of
this
as
well,
and
then
you
obviously
want
our
back.
That's
a
very
common.
You
know
you
need
to
be
able
to
lock
down
who
can
deploy,
what
to
which
environment,
etc,
etc.
So,
back
to
the
original
slide,
these
are
the
kind
of
challenges
that
spinnaker
tries
to
address.
A
A
I
really
think,
there's
a
great
opportunity
here
to
to
kind
of
come
together
and
do
lots
of
interesting
things
at
this
time,
so
maybe
to
motivate
the
to
go
a
little
deeper
into
the
question
of
what
it
means
to
actually
do
a
production
deployment.
Surely
that's
just
a
one
line
command
like
you
know,
g-cloud
run,
deploy
or
gate
push
Heroku,
or
something
like
that.
Well
sure,
that's
true
for
quite
a
few
platforms
and
obviously
kubernetes
tries
to
give
a
nice
application
developer
experience
here
as
well.
A
But
if
you
want
to
do
a
deployment
safely,
you're
typically
not
just
pushing
out
your
brand
new
binary,
sending
all
the
traffic
to
it
well
looks
like
it's:
okay,
great!
No,
that's
fine
for
I!
Think
for
80%
of
applications.
I
also
I
shouldn't
try
to
stand
here
and
over
complicate
things
unnecessarily.
The
reality
is
for
many
of
our
applications.
A
We
can
do
things
that
are
just
good
enough
and
we
shouldn't
necessarily
over
complicate
everything,
but
there
are
plenty
of
applications
where,
when
we
want
to
you
know
it's
not
a
good
idea
to
break
a
million
or
two
million
users
at
a
time,
it's
probably
better
to
maybe
break
ten
thousand
users
at
a
time
and
then
increasingly
gain
confidence,
and
so
these
kind
of
processes
are
the
things
the
red/black
is
a
spinnaker
term.
Bluegreen
is
what
you
might
use
commonly.
A
So
you
don't
just
get
the
as
code
benefit,
but
you
also
get
this
shared
level
of
management.
Of
something
like
this.
Let's
skip
over.
This
is
Anna,
looks
a
little
more
interesting
in
the
UI.
You
get
a
nice
overview
of
what's
running,
wear
some
kind
of
health
check,
information
and
so
on
and
so
forth,
and
then
a
bunch
of
these
nice
to
kind
of
nice
to
have
things
that
you
want
in
a
tool
that
really
focuses
on
application
deployment.
A
Things
like
the
ability
to
rollback
or
have
good
approvals,
automated
rollback
strategies
and
funky
things
like
execution
windows
which
are
maybe
Friday
afternoon
just
before
you
leave
the
office,
isn't
the
best
time
to
do
that
production
deployment,
which
of
course,
we've
all
done
because
yeah
we
all
want
to
get
home,
but
you
know
so.
You
can
have
a
tool
to
kind
of
prevent
some
of
this
craziness
when
it
goes
on
and
then
yeah
in
terms
of
like
deployment
strategies.
I
did
a
whole
talk
at
an
event
recently
about
various
types
of
safe
deployment.
A
Rollers
with
kubernetes
manifests
all
kinds
of
so
there's
lots
of
stuff
you
can
do.
Kubernetes
has
some
out-of-the-box
support,
but
there
are
many
more
complex
kind
of
cut
over
or
rollover
scenarios
that
you
can
have.
You
can
have
like
regular
Bluegreen,
where
you
switch
all
the
traffic
over
from
one
to
the
other,
but
you
keep
the
workload
you
can
do
it
in
a
rolling
fashion,
but
in
a
more
controlled
fashion.
You
can
have
canary
analysis
in
between
these
are
the
kind
of
traffic
patterns
that
spinnaker
supports
and
I
should
add
not
just
for
kubernetes.
A
Obviously
it's
a
multi
cloud
platform,
so
you
can
do
quite
similar
things
with
gasp
the
old-fashioned
VMs
that
you
still
happen
to
have
lying
around
that,
of
course,
nobody
has
anymore.
So
to
motivate
an
example,
a
nice
kubernetes
example
of
the
kind
of
things
that
you
want,
a
deployment
tool
to
do
for
you
I'm
going
to
breeze
through,
but
sets
of
manifest
changes
that
you
would
need
to
hand
script
if
you
like,
if
you
wanted
to
do
a
sto
based
canary
rollout,
now
I'm
not
going
to
explain
too
much
about
this.
A
A
Then
we
add
a
whole
bunch
of
configuration
to
add
a
canary
and
a
baseline,
and
we
do
some
traffic
splitting
over
there,
a
nice
fun
llamo
to
make
that'll
work.
Then
we
have
this
nice
intermediate
state
for
a
while,
and
we
do
some.
You
know
monitoring
and
we
have
a
look
at
that
and
then
we,
you
know
bump
it
up,
because
we
want
to
get
to
the
end
faster.
So
we
change
our
traffic
distribution.
A
So
another
yeah
mole
change
then
we're
at
this
intermediate
state
again
with
a
different
traffic
distribution,
and
then
we
decide
to
go
ahead.
So
then
we
have
to
get
rid
of
all
that
UML
again
and
then
we're
at
a
hundred
percent.
Then
we
do
an
update
to
our
deployment
object.
Then
we
roll
that
out.
That's
just
a
regular,
kubernetes
rollout
and
then
whoops.
That's
that's
not
how
it
ends
and
then
we're
done
and
so
yeah
can
all
be
done.
It's
all
cube.
A
A
You're
installing
and
scaling
9
or
10
micro
services
is
certainly
not
the
same
thing
as
scaling
a
single
war
file,
but
there's
a
lot
of
really
interesting
lessons
that
go
into
building
it
in
this
way,
and
it
allows
for
some
very
interesting
scaling
and
optimization
characteristics
and
I
think
it
in
many
ways.
It
predates
a
lot
of
what's
happening
right
now
in
the
ecosystem
as
we're
trying
to
break
down
CI
CD
into
individual
functional
components
and
figure
out
which
ones
we
actually
need
and
I
think
what's
interesting
to
see.
A
If
we
look
across
the
large-scale
kubernetes
users,
what
they
do,
they
don't
just
consider
spinnaker
to
be
a
monolithic
application
that
they
use
directly,
but
actually
a
whole
set
of
individual
components
that
are
often
used
kind
of
independently
of
each
other.
So
you
know
you
will
extend
something
by
using
maybe
the
orchestrator
to
run
a
bunch
of
orchestrations,
or
maybe
you
will
get
some
information
out
of
your
out
of
the
thing
that
tracks
your
what
your
environment
looks
like.
A
So
this
is
a
very
kind
of
modular
system
and
I
think
going
back
to
what
we're
trying
to
do
with
the
CDF
or
one
of
the
things
we're
trying
to
do
to
to
rethink
or
to
improve
how
we
do
this
is
an
open
community.
I
think
there's
a
lot
of
interesting
lessons
and
so
yeah.
So
you
get
in
this
from
a
slide
from
a
presentation
of
next.
A
You
can
do
lots
of
funky
things
like
charting
out
various
parts
of
your
architecture
and
backing
it
by
lots
of
different
types
of
data
stores,
and
so
you
can
run
for
five
six
thousand
once
a
day
through
this
thing
and
it'll
scale
to
that,
and
of
course
it
has
a
resource
footprint
that
grows
as
part
of
that,
but
you
can
totally
do
that,
which
is
I,
think
a
very
interesting
thing.
So.
A
Wait,
no.
This
is
okay,
blind
demos,
excellent,
so
spinnaker.
What
does
it
actually
look
like
so
you'll
have
to
excuse
me
as
I
look
back
at
this
screen
to
try
to
make
this
work,
so
we
have
an
application
here.
This
is
a
demo
application
in
fact,
I'm
walking
through
a
very
easy
to
check
out
tutorial
here,
there's
a
link
to
it
and,
if
you're
interested
in
trying
to
see
spinnaker
in
a
bit
more
detail,
I'm
just
going
through
this
walkthrough
I'm
a
bit
ahead
of
things
so
I
have
my
production.
Well,
let's
actually
scale
down.
A
I
have
my
production
setup
here
is
one
down
that
means
I
can
easily
roll
back
to
it.
I've
got
v2
currently
running.
We've
got
five
things.
Five
replicas
sets
here.
If
we
have
a
look
at
the
details,
I'm
not
going
to
click
into
this.
Now
it's
a
sort
of
simple
application
with
a
horrible
yellow
background.
Part
of
the
demo
is
to
change
that
and
then
I
have
a
bunch
of
pipelines
that
are
configured
to
take
it
through
this
process.
A
So
it's
a
three-step
deployment
and
the
nice
thing
about
splitting
this
out
into
different
pipelines
is
I
get
in
a
nice
different
metrics
for
each
one,
I
have
different
approvers
I
have
different
are
back,
but
I
can
chain
them
together
in
a
pretty
easy
way.
Nothing
hugely
surprising
about
that.
So,
as
we
can
see,
I
don't
really
like
this
white
back
this
yellow
background.
Let's
make
it
wider,
say
green,
something
like
that,
my
blind
VI
skills.
Let's
have
a
look,
commit
this
good
and
then
we're
going
to
build
it.
A
This
is
actually
using
cloud
build
on
the
back
end.
I'm
just
pushing
up
a
tarball
is
going
to
build
a
new
docker
image
and
then,
with
a
bit
of
luck,
when
the
wonderful
command
line
finishes,
we
will
see
that
it's
going
to
kick
off
a
new
pipeline
in
a
second.
So
this
is
set
up
to
trigger
off
a
push
to
GCR,
nothing
amazing.
A
Maybe
it
is,
and
if
the
demo
gods
are
with
me,
then
we'll
see
that
it'll
start
a
pipeline
and
then
we
should,
you
know,
push
this
new
thing
on
the
way
to
production.
There
we
go.
It's
already
started
very
nice,
showing
some
current
status.
While
we
wait
for
that
to
happen,
we
can
yeah
you,
so
you
can
see
I've
I've
written
out
my
my
logical
flow
here.
A
You
can
see
it's
a
back-end,
front-end
application,
so
we're
doing
some
things
in
parallel,
then
we're
joining
them
back
together
and
we
could
have
come
configured
a
whole
bunch
of
nasty
kind
of
on
failure,
handling
flows
here,
which
we
haven't
done.
Let's
go
back.
Let's
leave
this
still
running
Wow.
It's
almost
finished
well,
I'm,
not
gonna!
We'll
get
the
manual
judgment
in
a
second
I'm
not
going
to
take
you
all
the
way
through
this
demo
step-by-step,
because
I'm
sure
you've
seen
a
million
demos
like
this
before.
A
Suffice
it
to
say
it's
a-you
know,
there's
some
interesting
stuff
worth
looking
at
here
and
then
I
think
one
of
the
things
that's
kind
of
maybe
worth
pointing
out.
We
can
see
now
well,
we
got
the
new
version
running
and
staging
right
now,
which
I'm
testing
and
then
eventually
it'll
get
all
the
way
through
the
production
and
then
hopefully
that
background
will
go
and
be
nice
and
white.
So
let
me,
while
that's
running
in
the
background,
let
me
talk
a
little
on
time
way
fast.
A
A
What's
happening
right
now,
so
this
spinnaker
has
served
a
lot
of
companies
really
well,
and
you
know,
a
lot
of
teams
have
found
their
way
through
the
spinnaker
UI
directly
or
done
the
configures
code
version
and
put
pipelines
in
their
repos
and
so
on,
but
across
all
the
large
users
of
spinnaker
we've
seen
a
couple
of
patterns
and
that
we're
looking
to
address
as
a
community
right
now
and
the
first
two
are
really
around
scaling.
Operational
management
very
similar
to
the
the
Jenkins
is
code
motivation.
A
You
know
people
want
to
capture
this
as
an
easy
config
that
they
can
put
in
their
code,
and
they
also
want
to
make
it
easier
for
development
teams
to
get
bootstrapped
on
this.
So
typically,
what
you
want
is
when
the
development
team
starts
a
new
project.
Ideally,
you
want
them
to
go
to
some
nice
UI
or
to
use
some
command
line
or
whatever,
and
then
they
punch
in
a
few
you
know
variables
like.
Is
it
a
gold,
tier
application
or
a
silver
to
your
application?
A
Am
I
using
go
or
Java
or
Ruby
or
whatever,
and
then
everything
should
kind
of
be
set
up
for
you?
If
you
get
it
right,
like
you
have
a
repo,
you
have
a
bug
tracker.
You
have
a
continuous
delivery
pipeline
set
up.
You
have
some
CI
a
job
set
up,
I,
think
that's
where
many
companies
that's
where
we
see
they
want
to
go,
and
so
we've
embed
that
everything
in
Spinnaker's
api
a
bull
but
we've
invested
in
a
new
command-line
interface.
A
A
Spinning
already
has
templating
for
pipelines
internally,
but
it
it
does
a
bunch
of,
for
instance,
variable
resolution
on
the
backend
side
that
we
would
like
to
take
out,
and
so
the
experience
around
that
is
kind
of
being
sharpened
up
a
little
bit
so
that
you
have
a
nice
experience
where
you
can
design
a
pipeline
in
the
UI,
for
instance,
because
that's
actually
pretty
nice
to
initially
get
it
started.
I
think
one
of
the
my
personal
experience,
one
of
the
most
frustrating
parts
of
configures
code
is
the
initial
development
experience.
A
A
But
at
the
end
of
the
day,
it's
still
very
do
this
than
that,
then
do
something
else,
and
that's
ok,
but
one
of
the
things
that
especially
around
kubernetes
but
in
general,
in
fact
in
the
industry
we've
tried
to
get
away
from,
is
that
whether
we're
looking
at
terraform
or
whether
we're
looking
at
the
reconciliation
engine,
that's
inside
kubernetes
or
paluma,
or
lots
of
other
examples.
We're
trying
to
move
away
from
the
idea
of
say,
tell
a
system
do
this
than
that
and
do
something
else
too.
A
A
A
A
And
thus,
if
you
like,
if
you
take
the
original
state,
whether
you
modify
a
little
bit,
then
I
think
where
we're
trying
to
head
is
to
go
from
being
a
continuous
delivery
platform
to
a
declarative
delivery
platform.
And
what
that'll
give
us
is
it'll.
You
know
go
from
doing
application,
release
to
doing
simplified
application,
release
I.
A
All
of
these
there's
a
bunch
of
link
slides
here
that
you
will
share
these
slides,
so
you
can
click
on
any
of
these
and
tried
the
codelab
the
one
that
I
was
going
through
by
the
way,
if
you're
interested
in
trying
it
is
this
one
up
here
and
before
I
wrap
up.
Let's
see,
let's
see
how
our
demo
went.
Let's
see
what
we
end
up
getting
to.
Oh
we've
got
there's
still
a
pipeline
waiting
for
us.