►
From YouTube: Debugging Kubernetes nodes without Docker
Description
Kubernetes Community Days Bengaluru'21
In 1.20 release Kubernetes has announced that it is going to deprecate docker as a container runtime. It is very convenient to debug containers running on Kubernetes nodes with docker!!. We are all going miss docker in Kubernetes. In this demo we will simply learn to use other container runtimes tools like crictl, ctr and nerdctl. We will use containerd as a container runtime and learn how to run containers, load images, debug k8s node containers, interacting with the Kubernetes CRI interface using the above mentioned container runtime tools.
Slides: https://drive.google.com/file/d/1m7bnJfuD6YkETxSfgwmZ38SX0xZVz5gZ/view
A
Hello,
everyone
welcome
to
the
talk
I
am
aditi.
I
work
at
vmware
on
tkg
platform
today
me
and
naveed
will
share
you
how
you
can
debug
kubernetes
note
without
using
docker.
So
first
question
that
comes
to
our
mind
is
why
we
need
this.
So
in
kubernetes
1.2
release
it
is.
It
was
announced
that
this
going
to
deprecate
dockasham
to
understand
what
docusim
is
and
how
the
deprecation
can
affect
you.
We
need
to
understand
how
kubernetes
communicates
with
container.
A
Runtimes
to
communicate
with
container
runtimes
kubernetes
uses
a
grpc
interface
called
as
container
runtime
interface.
Docker
shim
is
the
cri
implementation
for
docker,
which
is
maintained
by
kubernetes
community
kubernetes.
Only
duplicated
use
of
docker
as
a
container
runtime,
docker
images
and
docker
build
tool
will
work
same
as
before
as
they
follow
oci
image.
Spec.
A
If
we
use
dockersham
as
a
container
runtime,
the
request
from
a
cubelet
to
container
runtime
goes
through
many
levels
and
it
can
have
some
performance
implications.
The
second
reason
is
docker
is
a
complete
set
of
tools
that
provides
lots
of
functionalities
like
building
images.
Networking
storage
that
kubernetes
does
not
need.
A
A
A
A
A
You
can
also
run
you
can
also
use
debug
option
with
crictl
that
prints
the
whole
api
response
from
the
container
runtime.
A
A
Okay,
you
can
also
use
crictl
to
create
containers
pods
sometime.
It
happens
that
you
are
facing
some
issues
that
you
are
not
able
to
figure
out
this
from
cubelet
or
it
is
from
container
runtime
or
it
is
from
somewhere
else
so
to
debug
that
you
can
directly
create
container
containers
or
ports
with
container
runtimes
without
involving
cubelet
so
to
create
containers
and
bots
with
cricdl.
B
A
A
A
Option
so
this
is
all
about
cri
ctl.
Now
there
is
one
more
tool
called
as
nerd
cdl.
Now
now
we
will
walk
through
you,
how
you
can
use
not
cdl.
Thank
you.
C
Nerd
ctl
command
line
interface
has
same
us
as
of
docker,
so
users
can
use
nut,
ctl
and
docker
interchangeably.
As
you
can
see
on
the
screen.
These
are
the
different
command
groups
being
provided
by
netctl.
There
is
container
network
volume,
namespace
system
and
image
command
groups
and
all
the
functionalities
under
those
command
groups.
C
C
C
C
It
prints
you,
the
operating
system.
Details
cannot,
it
is
and
what
all
components
are
configured
in
your
server.
What's
the
storage
driver?
What's
the
c
group
driver
and
all
that
information
on
the
right
hand,
side,
I
am
going
to
run
nerd
ctl
events
command
that
you
can
run
to
monitor
the
events
that
are
happening
in
your
node.
C
C
C
You
can
also
look
at
the
logs
of
the
container
say
if
you
are
debugging
your
container
on
a
communities
node
and
you
want
to
inspect
what
are
the
locks
of
my
container.
You
can
use
third
city
locks
command,
as
you
can
see,
this
prints
the
output
in
exactly
the
same
fashion
as
the
docker
cli,
just
press,
ctrl
c,
to
close
that
nut
ctl
also
has
compose
commands.
So
I'm
going
to
use
this
composed
command
to
bring
up
a
mongodb,
nginx
and
flask
app.
C
C
C
C
C
C
C
C
C
You
can
also
list
all
the
exited
containers
here
with
psiphon
a
so
at
the
moment.
We
don't
have
any.
We
can
kill
a
container
as
well,
so
I'm
going
to
kill
this
container
and
psf
and
a
will
show
you
that
it
has
exited.