►
Description
Come join Zac and Fang, where we'll look at the https://github.com/K8sbykeshed/k8s-service-lb-validator test suite - and how it can be used to rapidly ascertain cluster networking health in a world of divergent service proxy implementations for K8s, and learn about sonobuoy plugin design !
A
Zach's
first
show
andrea,
live
it's
january,
the
19th
2022,
so
zach
take
it
away.
Everybody.
You
all
know
me
in
a
meme.
Let's
do
some
introductions
before
you
start.
If
that's
cool
glad
you
want
to
introduce
yourself.
Thank
you.
B
Okay,
cool
hi
guys
my
name
is
zach.
I'm
excited
to
be
here
in
so
many
ways
for
a
brief
self
introduction.
Previously,
I
have
worked
on
work
as
an
engineer
on
platforming
for
a
field
for
for
a
few
years
range
for
a
range
farm
deploy,
icd
automation,
monitoring
stuffs,
I'm
currently
working
in
the
tanzu
infrared
team,
working
on
the
kubernetes
networking
stuffs,
yeah
and
also,
I
think,
maybe
other
people
can
do
self-introduction
like.
C
B
Yeah
and
also
very
welcome
vlad
coming
here
previously
when
they
are
doing
this
project
doing
the
service
validator
kubernetes
service
manager.
We
got
a
lot
of
help
from
blood
to
run
this
web
data
on
using
using
sony
boy.
So
by
that
we
can
just
run
this
product
in
any
kubernetes
cluster.
Very
easy
awesome.
D
I
should
introduce
myself
then,
since
you
mentioned
me,
my
name
is
vladimir
vavian,
I'm
engineer
at
vmware
working
on
open
source,
stuff,
sona
boy.
I
think
we're
is
gonna
be
discussed
today,
which
is
one
of
the
projects.
I've
worked
on,
so
definitely
just
happy
to
be
here
and
add.
Whatever
I
can
add
to
the
discussion.
B
Cool
great
great
awesome,
cool
nice,
nice-
maybe
I
can
share
my
screen,
so
we
can
start.
A
Hey:
what's
up
arun,
I
see
people
are
starting
to
roll
in
looks
like
lou
braun
is
here,
hey
lebron
june
jen
is
here
all
our
friends
june,
jan
over
from
the
andrea
team
and
pera?
Is
here
and
I
know
pear,
had
an
interesting
question
we'll
get
to
your
question
in
a
little
bit
and
june.
Jen
can
help
answer
it
pair
about
the
ovs
nsx
stuff,
okay,
cool,
all
right
yep.
We
see
zach
I'll
turn
your
screen
on.
B
Okay.
First
of
all,
we
have
a
new
release.
You
can
see
my
screen:
okay,
cool
nice.
So,
first
of
all
we
have
a
new
release
of
entria,
which
is
1.5,
which
is
great.
B
A
Yeah
so
1.5
june
jen.
What's
the
if
you
want
to
leave
some
release,
notes
for
us
in
the
stream
about
any
new
features
that
are
interesting
worth
talking
about?
Let
us
know.
B
Okay,
this
this
is
one
kubernetes
ide,
which
I
use
to
visualize
the
components
inside
of
any
cognitive,
kubernetes
cluster,
which
is
very
useful,
I'm
not
sure
people
using
it,
but
I
want
to
share
this
yeah.
So
so,
if
you
open
lens
it
can,
if
you
have
the
good
config
file
on
your
local,
you
can
just
visualize
any
thing
inside
of
the
cluster.
B
A
Looks
like
a
couple
other
people
joined
so
zach.
We
only
see
lens
here
but
oh
looks
like
looks
like
eleanor
joined
eleanor.
Do
you
want
to
do
a
quick
introduction.
E
Excellent
thanks
for
having
me
I'm
eleanor
millman,
I'm
a
vmware
product
manager
and
I'm
here
today,
because
I
am
the
newish
sonobui
pm,
so
we're
product
manager.
So
we've
been
devising
what
we
think
is
a
pretty
exciting
santa
boy
strategy
and
maybe
we'll
get
to
discuss
that
a
bit
later.
D
E
A
B
A
F
So
I'm
john
schnaki,
I
work
with
eleanor
on
the
sonibui
team
and
happy
to
I'm
really
excited
to
see
what
you
all
built
as
a
sono,
buoy,
plugin
and
curious
to
see
how
we
can
help
and
kind
of
advertise
how
other
people
can
use
sonabooi
to
to
help
themselves
test
things.
A
B
Yeah,
okay,
thanks
for
joining
yeah,
so
using
lens
you
can
very
easy
to
to
to
to
to
see
what's
inside
of
the
cluster,
how
many
paws?
What's
a
config
map
deployments
going
on
staple
sets,
replica
sets
these
kind
of
things
yeah,
so
current
the
current
current
cluster
is
very
empty.
Actually,
so
this
is
just
for
testing,
so
I
have
three
four
four
parts:
four
nodes
running
and
there
are
some
pausing
in
there
yeah
try
it.
B
It's
very
useful
and
very
easy
to
use
how's
that
compared
to
octane
this,
this
one
is
id,
so
you
need
to
install
it
on
your
local
machine,
so
it's
not
opened
in
the
in
the
in
the
browser.
Oh
I
see
and
also
you
can
add
more
clusters
here.
If
you
have
more
different
good
config
files,
so
easy
to
switch
different
ones,
okay,
cool!
We
can
go
to
the
next
one.
B
Yeah
cool
yeah,
there's
article
about
five
combinations
trend,
trends
to
watching
2022.,
yeah,
so
kubernetes
as
a
platform
for
everything
I
I
do
want
to
call
out
the
second
one,
actually
so
kubernetes
and
machine
learning,
so
we
can
run
so.
Kubernetes
is
very
suitable
for
to
run
machine
learning,
workload,
workloads
on
the
on
the
crime
or
hybrid
or
public
clouds.
B
Very
popular
tool,
which
is
bento
ml,
which
is
very
interesting.
I
just
found
actually
it's
created
by
my
friend.
It's
got
a
thousand
of
stars.
You
can
yeah,
you
can.
If
you
want
to
run
machine
learning,
workflows
on
kubernetes
on
kubernetes
easily,
you
can
try
this
out.
A
B
I'm
very
I'm
not
very
specialized
in
machine
learning
workloads
so
yeah
it.
I
just
know
the
features
about
it
to
run,
to
run
the
workflows
very
easily
on
kubernetes.
So
so
you
don't
need
to
set
up
the
clusters
by
yourself.
It
can
do
automations
for
you
yeah
cool
yeah,
maybe
maybe
people
with
machine
learning
knowledge
you
can
can.
F
B
F
Do
you
know
has
been
to
ml
more
for
like
the
actual
workloads
themselves,
or
is
it
to
help
you
set
up
a
cluster
capable
of
running
machine
learning
apps
just
more
effectively
right
to
make
sure
you
have
the
right
hardware
in
place
and
that
sort
of
stuff
you.
B
Know
yeah:
I
think
this
is
a
good
question.
We
can
check
it
out
together
later,
I
think
should
be
for
both,
so
it
can
so
it
can
easily
to
automate
you
to
to
start
up
the
cluster
and
then
run
run
the
binaries
of
machine
learning
into
the
clusters:
cool,
cool,
cool;
okay,
let's
go
to
the
next
one,
there's
a
question
for
andrea.
A
Yeah,
so
pear
is
here
on
the
show
and
june
jen
if
you're
around,
so
he
was
asking
us
nsx
and
andrea
and
ovs.
A
So
how
do
those
three
technologies
work
together
so,
like
so
like
when
you
get
nsx
native
integration,
with
an
android
cni
like
what
what's
the
interface
there
like
is
nsx
using
ovs
under
the
hood,
to
help
with
anterior
related
stuff
and
to
monitor
traffic
and
to
do
all
the
stuff
that
we
put
on
top
of
it,
or
you
could
kind
of
answer
us
like
he
could
actually
answer
us,
asynchronously
zach
and
then
you
could
move
on
to
the
demo
so
that
we
get
going
with
stuff
because
there's
a
lot
of
people
here.
B
Okay,
cool
cool
cool
yeah,
let's
get
into
the
project,
so
so
the
project
name
is
kubernetes.
Service
validator
is
open,
source,
okay
and
amid
this
first
commit.
B
The
reason
why
we
recreated
this
tool
is
as
kubernetes,
gets
more
and
more
popular
and
it
gets
applied
to
different
cloud
providers
on
prime
hybrid
multicloud
on
different
networking
devices
like
switches
and
lots
of
core
networking
modules
involved
and
the
service
proxy
is
evolving
quickly.
So
currently
we
have
many
different
sync
eyes,
like
catechol,
entria,
celium
and
those
running
on
different
os,
like
linux
and
windows,
and
also
we
have
different
dns
like
coordinates
and
coupe
dns
different
service,
mesh,
linker
d,
stu
and
even
called
proxies
two.
B
I
think
I
think
it's
three
so
but
my
ipps
and
a
happy
table
which
makes
makes
this
very
hard
to
target
and
identify
networking
figures.
So
sometimes,
when
you
run
the
networking
e3
test,
it's
very
hard
to
target
the
exact
networking
problem
of
the
cluster.
So
you
don't
know
so
when
there
is
a
networking
issue,
you
don't
know
it's
because
of
pause
inside
of
the
same
node
has
a
connection
issue
or
pause
from
different
nodes
has
a
connection
issue.
B
A
Yeah
and
I'm
just
going
to
interject
there
that,
like
you
know,
we
found
that
there's
not
a
lot
of
exercising
of
the
service
proxy.
When
you
run
k8's
conformance
tests,
there's
a
little
bit,
there's
a
few
tests
like
5
or
6
out
of
300.
That
use
it
like,
I
think,
there's
one
of
them
as
a
session
affinity
test.
A
What
you
have
is
that
your
proxy
might
be
down
on
one
node,
but
not
on
another
and
things
work
on
in
one
place
and
not
on
the
other
and
so
on
and
so
forth.
You
might
have
slowness
with
that
cd
or
your
api
server,
and
so
we
always
see
this
with
customers
where
they
have
our
network
down
and
they
think
it's
dns
or
they
think
it's
services
or
they
think
it's
that
you
know.
A
Node
ports
aren't
working
correctly
or
whatever,
but
actually
it
might
have
something
to
do
with
pod
readiness
or
it
might
have
to
do
something
with
the
particular
node
that
they're
probing
things
from
like
one
particular
known
might
be
down,
and
so
it's
like
you
get
into
this
game
of
whack-a-mole,
where
you're
trying
to
test
three
things.
At
the
same
time,
the
network,
the
topology
of
the
cluster
and
a
bunch
of
other
stuff.
A
Yeah,
that's
all
you
ever
see.
Right
is
a
timeout.
So
so
that's
like
I
mean,
did
the
initial
prototype
of
this
demo.
Did
it
signed
network
about
a
year
ago
and
then
zach
has
actually
made
it
like
production,
ready
and
and
powered
it
by
sono
buoy?
Now
so
zach,
can
you
zoom
in
a
little
bit,
so
we
could
see.
What's
going
on
on
your
screen,
there
a
little
bit,
yes
sure
sure
yeah
beautiful,
all
right.
B
Yes,
yes,
yeah
thanks
for
that
jay,
okay
for
the
design
part
of
this
product,
we
want
to
ensure
it
will
be
run
very,
very
easy
to
run
and
also
ensure
to
cover
as
many
networking
solutions
as
possible,
different
clies
different
proxies
and
to
ensure
to
deliver
the
networking
validation
in
a
very
intuitive
and
visible
format.
B
Yeah.
We
can
think
about
this
product
as
a
sphere
which
compares
into
any
kubernetes
cluster
and
identify
the
networking
obstacles
so
yeah
so
for
the
visualization.
I
think
we
can
jump
into
into
this
metric
first,
so
we
can
see
each
part
if
they
can
connect
to
other
parts.
So
in
the
metrics,
if
it's
okay
or
if
it's
fail,
then
it
implies
the
connectivity.
B
Yeah,
so
currently,
so
currently
we
are
in
the
in
the
project
ci.
We
support
different
scenarios
and
proxies
accommodation,
networking,
networking
solutions
combination,
so
we
support
entria
proxy
and
the
chemical
with
cbpf
and
also
cool
proxy
in
ip
table
modes,
good
proxy
in
ipvs
mode,
and
also
sodium.
A
B
Yeah
yeah
and
we
have
developed
a
very
convenient
tool
to
to
aggregate
the
reports
from
different
ais.
We
can
see
if
the
testing
pass
on
different
networks,
networking
solutions
so
in
in
in
cdm.
We
can
pass
different
tasks
which
test
field
and
also
our
entry,
and
also
on
good
proxy,
which
test
passed
and
which
test
failed.
B
Yeah,
that's
that's!
That's
interesting
and
tricky.
Actually
later
I
will
show
you
what's
the
behavior
difference
between
iptv
and
ipvs
in
kubernetes
in
group,
proxy
iptable
has
has
some
behavior
different
than
expected
in
session
affinity.
Functionality
actually.
C
C
That
has
has
yeah
sorry
zach
actually
has
found
some
different
behavior
using
this
diagnosis
tools
and
they
behave
differently
and
we
can
use
this
tool
to
visualize
those
kind
of
unstandard
behavior.
B
Yeah
we
can,
we
can
correct
later
after
showing
the
product
together
to
audience.
So
so,
when
we
are
trying
to
test
in
the
existing
cluster
when
we
want
to
use
this
project
actually
we
will
not
not
touch
the
existing
pause
and
service
in
the
cluster.
We
know
when
we
run
the
project.
We
will
inject
the
testing
part
into
arsenals
in
the
cluster
and
create
and
create
the
services
we
want
to
test
in
the
cluster
like
cluster
ip
node
ports,
external
name
even
node
part
local,
these
services
yep.
A
Pod
stays
stationary,
we
spin
up
all
the
pods
and
then
we
move
the
services
in
and
move
them
out
right
and
the
nice
thing
about.
That
is
it's
fast
right
because
you
can
boom
boom
boom
boom
pole
over
and
over
again
and
you're,
not
sitting
there
and
exercising
at
cd,
and
all
these
other
things
that
you
don't
care
about
right,
you're,
not
testing.
How
long
you
don't
have
this
weird
two-minute
latency
between
tests,
so
all
these
running
about
ten
ten
five
minutes
at
this
point
right,
zach,
like
you've,
got
like
we've
got.
B
Yeah
actually
totally
just
eight
minutes,
yeah
five
to
ten
minutes
around
eight,
that's
right
totally
yeah.
A
B
B
B
Okay,
cool
so
inside
of
the
project
when
the
pause
and
service
are
set
up.
How
do
we
do
the
test
we
set
in
in
each
of
the
tasks
we
set,
the
it's
a
cluster
ip
service
or
node
port
service
to
to
to
support,
and
we
we
enable
pod
to
connect
with
each
other
using
agent,
using
the
connect
using
using
the
connect
command
to
to
reach
out
to
each
other
and
see
if
the
connectivity
is
is
successful
or
not,
and
then
we
generate
the
metrics.
B
Actually,
this
beautiful
metric,
this
beautiful
diagram
is
is
is
is
created
by
I
mean
yeah.
I
think
it's
it's
legit
yeah,
that
was
a
meme's
original
diagram.
He
made
nice
yeah.
A
B
Oh
I
mean
sending
me
the
tall
name,
we
can
find
they
don't.
I
think
it's
actually
actually
troll.
C
A
C
H
A
B
B
Oh
yeah,
okay,
let's
move
on
yeah.
So
after
we
run
the
test,
yeah
you'll
see
some
it's
a
validation,
metric
matrix.
It's
it
implies
the
connectivity
between
pause.
So
we
can
easily
see
if
the
connectivity
is
successful
or
not.
So
there
will
be
three
parts
expected
observe
and
the
comparison
it's
just
like
the
idea
of
kubernetes
right,
the
intent
and
the
reality
of
the
state,
so
the
intent
state
should
be.
B
We
should
be
all
the
part
can
connect
to
part
four
and
what
we
observe
is
auto
part
can
connect
to
part
four
and
connect
and
cannot
cannot
connect
to
other
parts,
which
is
what
we
expected.
So
all
the
so
there's
no
difference
between
is
expected
and
observed.
Observed
then
the
test
pass
yep.
B
We
have
the
same
logic
for
all
the
other
for
other
test
coverage
for
different
for
different
features
like
cluster
ip
session
affinity,
node,
port
traffic,
local
yeah
and
headless
label
hairpin
host
network.
So
we
use
this
methodology
to
test
all
the
features
and
to
generate
some
metrics,
so
the
user
can
easily
identify
the
problems
inside
of
the
cluster
which
functionality
is
not
working.
I.
A
Have
a
war
story
here:
we
just
got
out
of
a
long
customer
escalation
around
headless
services.
Recently
they're
really
tricky
because
there's
no
cluster
ip,
and
so
you
hit
a
you,
hit
a
headless
service
and
core
dns
is
load,
balancing
you
to
the
pods
and
so
being
able
to
diagnose
those
and
test
them,
especially
on
like
legacy.
A
B
Yeah
and
when
you
want
to
test
against
any
cluster,
it's
very
easy
to
run.
If
you
have
the
complete
file
on
your
local
and
if
you
can
run
group
cattle
on
your
local
to
fashion
information
forms
cluster,
you
can
always
run
this
project
and
you
can
get
better
reports
on
your
local
machine
with
visa
metrics,
okay
cool.
B
So,
for
the
remaining
part
of
this
demo,
I
will
go
through
the
code
structure,
go
through
the
repo
and
also
show
you
how
to
run
with
soundboy,
and
also
I
will
show
you
one
one
interesting
finding
of
with
this
project.
So
we
have
reproduced
one
ask
one
upstream
issue
to
which
is
about
the
ib
table
and
ipvs
modes
in
cool
proxy
is
different
behave
differently
for
session
affinity,
service,
okay,
cool,
so
moving
on,
let's
have
a
quick
code
walkthrough,
instead
of
the
ripple,
I
need
help
from
fong.
B
He
has
created
some
of
the
tests
and
also
we
have
here
to
to
force
integration
of
sonoboy
in
this
project.
So
yeah
fun.
Can
you
show
the
code
to
the
audience.
C
Sure
sure
I
can
take
over
things
that
can
share
my
yes.
A
So
thanks,
while
you're
switching
big
thanks
to
vlad
and
eleanor
and
john
for
supporting
us
in
trying
to
move
this
over
to
being
a
sono
buoy
plugin,
that's
important
to
us,
because
we
want
to
be
able
to
give
this
to
people
to
run
in
a
way,
that's
coherent
with
the
way
that
they
normally
run
conformance
tests.
You
know
like
for
us
if
we've
got
customers
and
we
tell
them
to
run
conformance
if
they
think
something's
wrong
and
we
they
we
use
sonobuoy
for
that.
So
they
you
know
between
buoy
and
crash
the.
E
And
it
I
just
say
that
the
direction
I've
got
dropping
sex.
I
want
to
get
this
in
the
direction
that
you're
doing
going
using
sauna
buoy
for
automated
cluster
validation
is
exactly
what
we're
hoping.
The
future
of
direction
of
sauna.
Buoy
will
be.
Sanabo
is
known
for
conformance
testing
and
that's
excellent,
but
we
think
it
has
a
wider
use
as
cluster
validation,
so
yeah
and
I.
B
F
F
So
you
can
just
say
you
know,
run
you
know
santa
buoy
run
mode,
networking
checks
or
something
like
that,
and
once
we
fine
tune
that
list
of
tests
it'll
be
easier
to
run
those
and
you
can
run
those
at
the
same
time
as
you're
running
these.
Or
unless
are
these
tests,
particularly
disruptive?
Or
can
you
run
other
tests
in
parallel?
At
the
same
time,.
C
Yeah,
so
maybe
let's
take
a
look
at
the
project
structure
about
service
manager,
and
I
will
take
a
button
up
approach
to
explain
how
the
things
are:
organized
and
structured.
C
At
the
bottom
level,
we
have
some
abstraction
about
different
types
of
kubernetes
objects,
including
containers,
non-container
part
namespace
services,
and
we
also
have
a
model
called
containers
and
each
each
class
can
be
converted
to
kubernetes
spec
and
finally,
there's
the
functions
for
those
objects
to
be
deployed
on
on
the
cluster
to
under
test,
and
we
have
those
entities
ready
and
we
have.
C
C
C
C
And
in
this
case
we
are,
we
can
experiment
the
test
for
the
whole
matrix
like
16
tests,
concurrently
in
an
efficient
way,
and
the
last
thing
I
want
to
show
is.
A
A
B
No,
we
just
do
the
concurrency
in
the
same
name
space
for
for
one
task,
so
we
cannot
concurrently
testing
multiple
features.
B
C
So
the
test
case
is
run
sequentially,
but
within
one
test
case
the
matrix
is
mutually
reachability
is
tested
with
four
workers
threats.
C
Yep,
okay,
yeah
all
right
nice.
In
the
end,
I
wanna
wanna
show
you
how
the
the
test,
the
test
case,
is
actually
written
and
so
remember
the
first.
We
are
using
the
end
to
end
framework
here
and
the
first
things
is
to
do
the
setup.
Every
test
case
goes
to
the
setup
and
we're
where
we
have
all
the
nodes
and
we
are
adding
part
to
each
node
so
for
if
we
have
four
nodes
and
after
the
text
setup
function
is
run,
we
will
expect
four
different
parts
here.
C
C
We
have
service
for
each
part
and
we
assert
they
are
reachable
from
one
port
to
another.
So
so
inside
here
we
are
looking
through
each
part
and
we
add
a
service
above
our
one
port
and
we
wait
for
the
service
to
be
ready.
C
That
means
the
service
have
an
end
point
to
its
corresponding
part,
and
after
that
is
done,
we
have
set
up
all
the
test
fixture
and
we
are
ready
to
assert
the
reachability
behavior
and
for
this
particular
particular
case
the
since
we
are
using
end-to-end
frameworks,
the
test.
The
assertion
is
here
right
and
we
are
creating
a
new
reachability
matrix.
I
D
I
didn't
realize
what
do.
A
D
C
K
H
A
All
right,
so
so,
by
the
way,
one
other
thing
fong
is
that
you
know
some
of
y'all
will
notice
these
from
the
e2es
upstream.
So
we've
taken
bits
from
the
e2es
upstream:
that's
how
we
do
the
probe
function
in
the
other
e2es
for
like
network
policies
and
stuff,
so
he's
like
borrowed
that
and
mashed
them
up
with
other
stuff
here.
So
some
of
you,
some
of
this
stuff,
might
look
familiar
to
all,
and
that's
that's
probably
why.
C
And
and
the
difference
from
the
upstream
could
be
we're
here-
we're
using
a
matrix
to
represent
the
visual
ability
which
can
be
better
for
diagnosis
problems,
yeah
purpose,
yep
yeah.
Let's
go
back
to
the
assertion
here.
We
are
asserting.
C
The
parts
can
be
reached
from
each
other,
one
from
each
other
using
its
cluster
ip
and
we're
expecting
true
here
right.
So
in
the
end,
in
the
end,
this
test
will
only
pass
if,
if
all
the
matrix
I
have
is
reachable
all
16
thoughts
is
shown.
C
All
right,
I
think
so
to
summarize
the
entities
that
like
because
so
thing
to.
C
There's
there's
a
print
summary
where.
C
Oh
actually,
no,
in
summary,.
A
So
when
they,
when
we
actually,
we
might
want
to
show
them
what
the
invocation
is
from
the
sonaboli
side.
Since
most
of
people
here
are
probably
going
to
be
users,
even
though
we
would
love
to
have
contributors,
and-
and
we
should
talk
about
that
like
how
people
can
help.
But
like
can,
we
show
them
the
sona
bowie
invocation
and
and
how
they
actually
get
that
visual
table
readout
that
a
meme
was
talking
about
out
of
it.
C
All
right,
I
think
we
said
I
can
summarize
like.
We
have
entities
that
represent
different
resources
to
be
test
and
we
have
all
the
tests.
I
we
we
exploited
the
antenna
frameworks
and,
and
we
have
in
the
main.task,
we
have
everything
set
up.
And
finally,
we
are
running
the
assertions
during
in
the
assess
functions.
C
All
right,
I
think,
that's
all
for
the
code
walkthrough,
maybe
I
can
hand
over
to
zach.
He
will
talk
about
how
we
integrate
with
the
sound
board.
B
Yeah
cool,
thank
you
yeah,
so
the
cool
logic
is,
we
are
running
different
tasks
against
the
different
features
and
compare
the
exact
and
expat
and
observe
metrics
and
to
to
identify
is
the
test
is
possible,
not
okay,
cool.
Let
me
share
my
screen
to
continue.
B
B
A
A
Just
the
right
one:
it's
right,
one:
okay,
cool,
adding
it
yeah.
We
got
you:
okay,
cool
cool,
cool.
B
Yeah-
let's
get
to
this
part,
sunnyboy
yeah,
very,
very
simple-
to
sound
about
team.
Actually,
so
I've
got
especially
vlad
have
gotta
through
how
to
set
this
up
and
help
help
us
to
understand
how
to
use
onboard.
So
currently
we
can
run
the
project
into
any
kubernetes
cluster.
If
you
have
the
config
file
on
your
local
machine,
so
we
can
use
so
we
can
use
sound
by
command
to
inject
two
parts
inside
of
the
cluster,
so
the
first
one
is
solid
board.
The
second
one
is
the
plugin
itself.
B
The
plugin
is
our
project,
so
we
will
run
the
binary
inside
of
this
part
yeah
and
if
it
will
run
by
itself
valid
it's
a
cluster
and
then
after
the
test
is
finished,
we
can
generate
the
terrible
of
the
results
and
then
kill
the
testing
pause
by
itself.
B
A
B
Thank
you
for
that.
Okay,
cool
yeah
because
youtube
there's
a
yeah,
so
just
sharing
the
window
instead
of
the
screen
yeah.
This
is
what
I
do.
Okay.
So
here
is
a
here's,
a
cluster,
here's
a
jumper
of
the
cluster,
so
we
can
see.
B
You
can
see
there
are
many
testing,
so
there
are
certain
parts
and
nodes
inside
of
this
cluster.
So
currently
we
want
to
test
the
stability,
the
networking
stuff
inside
of
the
cluster,
so
this
is
my
local
machine.
This
is
my.
This
is
my
local
machine.
I
just
have
the
group
config
file
on
my
local
and
I
can
use
the
group
ctl
quick
cuddle
command
to
get
the
resource
in
the
cluster
okay.
B
F
Absolutely
yeah
I
was
telling
vlad
I've
got
a
couple
of
small
ideas,
things
we
can
maybe
make
better,
and
maybe
he
can
elaborate
on
some
of
them,
but
happy
to
work
with
y'all
and
I'm
really
happy
to
actually
see
y'all
step
through
it.
I
was
curious
what
you
all
have
made.
So
thank
you.
E
B
Okay,
cool,
so
after
running
this
command,
we
have
two
parts
running
in
the
cluster.
You
can
see
that
which
is
one
one
of
them
is
called
soundboard
one
is,
one
of
them
is
called
sonobot
plugin
and
we
can
see
the
log
we
can
try
to.
B
Try
to,
oh,
my
god,
check
the
log
of
this
card.
A
A
It
works
and
x
doesn't
mean
it
doesn't
work
and
like
when
you
do
things
like
node
port
local
tests.
It's
interesting
because
you
know
you'll
see
x's,
but
it's
working
because
you,
you
just
don't
expect
certain
things
to
forward
traffic
and
other
ones
to
to
work
right
because
you'll,
if,
if
the
pod
is
on
another
node
you're,
not
gonna,.
B
Yeah
yeah
exactly
so
currently
is
testing
node
port
using
this
udp
protocol
and
previously
is
testing
node
port
with
ptcp
particle,
and
you
can
see
the
connectivity
between
paws
inside
of
the
this
cluster.
Exactly
is
this
cluster,
so
it
will
spin
up
some
other
some
of
the
parts
in
it.
You
can
see.
G
H
C
H
C
B
Running
inside
of
the
cluster,
and
they
are
doing
the
task
and
after
the
test
finish
see,
will
be
decommissioned
after
the
test
finish,
we
can
also
retrieve
the
report.
I
will
show
you
later
when
it
finish
yeah,
let's
let
it
run
and
in
the
meantime,
in
the
meantime,
let
me
show
you
how
to
how
to
run
local.
A
B
D
So
the
I
think,
the
question
that,
or
the
issue
that
john
wanted
to
bring
up
before
he
left
was
the
use
of
raw
output
as
opposed
to
a
structured
output
for
the
test
results,
so
I'm
guessing
you're
doing
raw
so
that
you
can
build
a
table
as
and
lay
out
the
column.
The
layout
that
you
have
with
the
table
is
that
is
that
why.
A
D
Know
I
mean
you
know
without
jumping
into
each
framework.
You
can
because
e2e
framework
is
basically
goes
testing
framework,
that's
all
it
uses,
and
with
that
you
can
output
json.
If
you
wanted
to
capture
it
in
a
structured
manner,
but
what
I
was
talking
about
is
actually
more
specifically
for
for
sona
boy.
D
A
D
No,
I
was
just
curious
if,
if
you
hadn't
gotten
it
to
a
point
where
you
were
also
using
sonoboard
to
get
to
the
to
the
table
layout.
C
Oh
yeah,
I
I
don't
think
yeah,
so
the
output
here
is
so
like
the
formatted
output.
Here
is
only
from
the
validator.
We
are
only
passing
the
the
done
file
once
it's
finished
and
pass
that
the
the
finish,
the
signal
to
the
sono
boy.
We're
also
wonder
if
there's
some
structural
way
that
songboy
can
accept
results
like
like
a
json
file
or
something
yeah
yeah.
C
D
What
that's
exactly
what
john
was
getting
to
is:
you
can
use
a
sonoboy
supports
a
structured
output
format.
D
So
if
you
wanted
to
encode
the
output
in
some
kind
of
way,
you
can
do
that
with
centerboard
j
unity.
A
D
Well,
you
could.
It
supports
the
out
of
the
box
which
supports
the
junit,
structured,
xml
and,
and
you
can
get
summary
output
from
that
and
it
can
walk
through
the
the
results.
But
you
could
do
your
own
structured
output,.
D
B
Yeah
yeah
yeah:
that's
that's
thanks
for
adding
it
yeah
we
do
need
to
actually.
Currently
we
are
just
parsing
the
the
the
output
file
and
to
identify,
if
the
result
passed
or
not,
we
did
not
include
the
metrics
into
the
result
of
soundboard
result,
but
but
the
people
can
still
check
the
the
output,
the
log
of
the
testing,
so
you
can
also
see
the
metrics
in
the
log
okay
cool.
B
After
it's
finished,
we
can
retrieve
the
result
and
see
what's
the
format
we
look
at
in
the
report,
let's
wait
for
it
for
a
few
seconds
for
a
few
minutes
and
let's
continue
to
the
demo.
B
We
also
write
on
local,
so
you
can
use
command.
Make
summary
to
have
a
refined
format
of
the
reports
and
also
you
can
use
make
summary
debug
to
write
on
a
local
machine
to
have
a
more
time
more
information
in
the
his
output.
B
So
if
you
just
to
want
to
write
in
a
very
in
a
very
boot,
a
simple
way,
just
use
makecast.
D
B
Okay
cool,
so
so
we
can
use
a
command
make
sonobiotree
to
repeat
the
result
of
the
testing
and
the
current
one
is
passed.
The
current
the
current,
the
current
one
is
passed.
We
saw,
we
can
see
the
detailed
log
in
your
local
machine
and
you
can
see
yeah,
oh
so
yeah
yeah,
it
seems
it
seems
it
seems,
like
a
result.
Folder
it's
in
the
dark,
folder.
A
E
B
Yeah,
yes,
that's
a
turbo,
but
in
the
command
made
founded
by
retrieve.
We
also
do
we
also
answered
on
the
terrible.
Oh
that's.
B
Yeah,
that's
all
fairly
new,
so
we
go
so
we
run.
We
run
this
on
by
retrieval
on
this
photo
right
and
all
the
information
will
show
up
here.
So
this
is
a
result.
B
This
is
outside.
Oh.
D
A
B
B
B
Yeah,
okay
cool.
We
have
right.
We
have
used
this
tool
to
test
against
the
the
cluster,
which
is
very
easy
to
run
because
the
use
makes
on
the
boy
run
and
make
sure
nobody
retrieve
to
get
back
to
get
back
the
result
yeah.
I
think
we
have
done
the
demo
of
this
project,
but
I
still
want
to
include
one
thing
which
which
is
very
interesting
funding
using
this
project
before
I
work
on
it.
B
I
I
I
never
know
about
this
issue
and
it's
hard
to
report
it
actually,
but
using
this
project
is
very
hard.
It's
very
easy
to
reproduce.
This
is
about
sessionfinity.
B
So
when
you
have
a
session
affinity
cluster
ip
service,
if
you
have
the
same
client
to
reach
to
the
class
cluster
ip
service
with
session
infinity,
the
result,
the
behavior
is
different
in
cool
proxy
ip
table
mode
and
ipvs
mode.
So
in
ip
table
mode,
the
session
affinity
is
attached
to
the
specific
port.
A
B
Oh
cool
cool
thanks
for
saying
that
when
the
same
client
reached
to
the
ib
table
mode
session,
a
cluster
id
service,
the
session
infinity
ware
will
be
attached
to
to
the
same
port.
B
So
so
the
request
from
same
pod
will
go
to
the
different
different
target
pod
using
different
port
number.
This
is
the
result
from
our
matrix.
B
We
expect
the
same
target
pause
for
all
spots,
but
it's
different.
So
this
time
we
have
different
targets,
so
each
part
goes
to
different
parts
target
pod
using
port
81
yeah.
This
is
iptable.
This
is
its
behavior,
but
if
we
are
using
iqes,
but
if
we
are
using
ipvs
when
we
establish
the
session
affinity
using
one
of
the
poor
ports
and
then
same
client
to
reach
out
to
the
same
class
id
service
using
another
port,
they
will
still
go
to
the
same
target
pod.
B
This
is,
this:
is
the
metrics
we
got
from
the
firm's
pool.
Let
me
use
port
80,
so
we
create
so
we
created
so
affinity
and
then,
when
we
use
port
81,
they
are
reaching
out
to
the
same
target.
Part
pause,
yeah.
A
A
B
Yes
exactly,
but
I
don't
think
it's
got
solved.
Maybe
we
just
need
to
update
some
documents
or
we
need
to
that's.
A
E
E
B
A
H
A
B
Yeah-
and
we
can
add
more
if
there
are
there
are
because
technologies
are
involving.
Maybe
there
will
be
more
sunlight
solutions.
A
B
Yeah
and
also
we
have
this
command
to
aggregate
the
result
from
different
from
different
scenarios,
so
we
can
see
if
the
thing
I
support
the
networking
feature
yeah
like
syrian
does
not
pass
the
notepad
trafficking.
Local
and
kapang
does
not
have
session
infinity
yet
which
need
to
be
fixed.
What.
B
B
A
All
right,
let's
yeah,
let's
file
some
issues
and
see
if
we
can
yeah.
So
I
suspect
every
service
proxy
is
going
to
have
varying
differences
with
tests.
But
if
you
know
but
yeah,
let's
yeah
that'll
be
cool.
We
can
file
some
issues
and
then
we
can
bother
you
and
gen
some
more.
B
A
My
mother-in-law
got
me
this
hat.
Do
you
all
like
it?
This
is
my
hat
for
the
show
he's
very
professional
as
zach
would
say:
okay
good
show
zach.
That
was
that's
really
that's.
I
really
appreciate
you
coming
on
and
doing
the
show
and
thanks
a
meme
for
mentoring
and
helping
these
folks
build
this
out
and
fong
han
thanks
for
not
sleeping
for
a
month,
while
you're
doing
another
job
and
helping
zach
along
the
way.
A
Yeah
yeah
nice
work,
nice
work.
So
next
we
need
to
yeah.
It's
like.
Let's
see
what
we
can
do
to
get
this
more
deeply
integrated
into
andreas
cni,
I
enter
a
ci,
somehow
yeah.
I
don't
know
june
jen
if
you're
still
on
the
show.
What
do
you
think
you
think
if
we
filed
an
issue,
we
could
start
running
this
as
part
of
andrea's
ci
jobs
and
outputting
the
results.
I
think
that
would
be.
A
We
would
really
like
to
do
that
if
it's
we're
planning
on
trying
to
get
this
integrated
with
the
sig
network
jobs
as
well.
I
mean
demoed
this
about
a
year
ago,
and
tim
hawkins
was
on
board
with
that,
but
we
we
always
like
to
put
things
in
andrea
first,
if
we
can
just
because
it's
a
really
good
proving
ground
before
we
go
full-on
upstream.
A
B
A
B
Okay,
cool
yeah-
let's
let's
put
a
here
thanks
for
thanks
all
for
joining
and
spending
time
with
us,
the
bell
theater
will
get
better
and
along
the
way
we
hope
we
can
get
your
help.
I
just
submit
pr's
issues
or
open
discussion
in
the
github
repo
for
this
project.
We
spend
time
and
we
open
source
it.
I
hope
it's
useful
to
the
community
and
last,
if
you
like
this
session,
please
click
the
like
button
subscribe
to
the
channel
and
even
turn
on
the
ring
bell
of
this
channel.