2:14:39
2025-06-26 09:07:32
1:12:32
2025-06-26 09:11:34
6:42
2025-06-26 11:08:41
35:51
2025-06-26 11:24:37
38:41
2025-06-26 13:21:35
20:37
2025-06-26 15:06:35
51:46
2025-06-27 09:06:19
58:45
2025-06-27 09:06:25
36:01
2025-06-27 11:26:09
1:12:38
2025-06-27 13:45:09
Visit the Kubernetes Comprehensive 2-Day course recordings page
WEBVTT
-->
machine. So, I mean, is there a problem if I just, if I use this, this view here, right?
-->
Well, I, I see his, I've got it on another monitor. I'm looking at it. Yeah. Okay. Cool.
-->
I'm just going to go full screen on this and open if it will record audio. I'll just leave the mic
-->
open. Okay. Yeah, yeah. There's no, there's no kind of echo or anything. So that, I don't think
-->
allow on this on this site yeah yeah looking good so just a quick question so so when you when
-->
you design these these clusters i'm assuming that that the client already has a some type of container
-->
setup you go in and and create a cluster for it okay okay i understand nice sounds perfect
-->
Sounds good.
-->
I have not used mini-cube now.
-->
Okay, say again.
-->
Okay, yeah.
-->
Just a dash or just version.
-->
All right, quick question.
-->
How does mini-cube compare to other methods for installing
-->
kubernetes okay okay right now when you say toy cluster i'm assuming that's it's strictly for um
-->
what uh development training type clusters okay got you okay i haven't seen kind kind debt before
-->
no no not at this point okay and now what is the uh infrastructure as code component in
-->
yes i've in a manner of speaking right uh yes and just to be clear what i say i've worked with
-->
ancible i i i run ancible playbooks i i have not um i have not written
-->
playbooks right i have not i've not heard the term get ops before uh no okay okay makes sense
-->
So, including worker nodes and control plane nodes, looks like, I'm going to say four.
-->
Probably to be more easily manage storage, perhaps.
-->
That makes sense.
-->
So that would seem to say that there would be really no way that you could bring down a Kubernetes cluster completely and then bring it back up.
-->
Essentially correct?
-->
Yes.
-->
So just a quick question, how would something like AWS is EKS fit into this?
-->
Would that be considered an enterprise production?
-->
Gotcha.
-->
Okay, okay.
-->
A little bit, yes.
-->
Yeah.
-->
We're actually using K3S for some internal stuff.
-->
Really?
-->
Oh, wow.
-->
Just for why you may want to encrypt it.
-->
just for security purposes, I would imagine.
-->
I would take the same reason.
-->
Okay.
-->
And that's available only with Gateway API.
-->
Well, you wouldn't be able to access it.
-->
One thing.
-->
Shared resource virtual machines.
-->
Makes sense.
-->
Now, are we talking about Kubernetes components?
-->
Yeah, I would say that CD and API server, probably.
-->
Ah, right.
-->
I have not heard that term now.
-->
Pretty much.
-->
Are we going to go into that in more detail points?
-->
Okay.
-->
Yeah, I want to say CubeCTL version.
-->
So June 28, 26.
-->
looks like and right right need to upgrade kubernetes right so so you build the fresh cluster
-->
and then what what's the mechanism to cut over i guess i was going to ask so that would
-->
essentially result in a um no downtime upgrade it sounds like right um sure
-->
Sounds good. Sounds good. Okay. I am indeed.
-->
Say probably getting the pods and I believe you can see the age of the pods that way.
-->
I'm not sure. Okay. Yeah, Docker 28.1.1
-->
deleted and recreated, I would imagine. So this will use Container D as opposed to Docker.
-->
So yeah, I see Container D1.7.27 now?
-->
No, do we not need to specify the node here?
-->
Okay, there it.
-->
Yeah, okay.
-->
Will that show up with a Git node?
-->
A wide command?
-->
Yeah, that'd be a way to parse that.
-->
Yeah, I see it.
-->
No type equals test.
-->
Yes, indeed.
-->
Right.
-->
Okay.
-->
Well, so it's control plane, no type.
-->
That's interesting.
-->
I would have expected to see test.
-->
Yeah, it says control plane equals type equals test.
-->
Okay, yeah, see that.
-->
All right.
-->
Yeah, that's the one.
-->
Yep.
-->
Yeah, I won't need to use pseudo on any of this, I'm assuming.
-->
Yeah, I'll just kind of type all this out.
-->
That is right.
-->
Looks good.
-->
Write it out.
-->
All right.
-->
So it was created.
-->
It is pending.
-->
Zero of one containers running,
-->
looks like.
-->
Nodal, oh, I spelled it wrong initially.
-->
All right, so why is it in the pending status?
-->
Failed scheduling.
-->
Zero of one nodes are available.
-->
One node didn't match pods,
-->
Node Affinity. Yeah, so there's not a node available that matches something that it requires.
-->
So node selectors is set to node type equals fail. I'm not sure why that would be set that way.
-->
It almost seems like it's looking for a node that has a node type equal to fail, and there wouldn't be one.
-->
Is that accurate?
-->
I'll lose you?
-->
Yeah, it's an internet thing.
-->
Okay.
-->
Yeah, I'm just kind of looking, looking right.
-->
Okay.
-->
But it looked like it's called Nodal Selector.
-->
Yeah, so what I was thinking is, so it says zero of one nodes were available.
-->
One node did match pods, node affinity selector.
-->
So the node selector is a node type.
-->
fail, I mean, it almost seems like that. It's looking for a node that has a node type equal to fail.
-->
Okay. Test, I think, wasn't it? Yeah. Yep. Yep. They changed that to test. I believe. Will that? Will that
-->
do it or is there a different way to
-->
refresh it
-->
delete it okay
-->
and then apply
-->
no it still says pending
-->
okay yeah
-->
I get the labels for show
-->
labels
-->
forget the command
-->
T-Node type equals test
-->
that's
-->
yeah
-->
right the Kubernetes.io
-->
the same file
-->
and just change that
-->
to
-->
oh
-->
it's like we're
-->
running what do we want to describe it this way assigned to minicube yep hold the image
-->
nice beautiful um i would say to start out with describe the uh note
-->
right all right okay looks like uh down here client certificate that uh that uh
-->
there it looks like it's a different directory from what
-->
um seeing on your screen it says home student that many of you so we just want to uh well i i've
-->
tried copying just by um hitting enter that didn't work not after yep okay it's like a rsa
-->
encryption these guys right here yep i do see your um slide there kubernetes
-->
comprehensive two-day lesson to i.e. logging or something like that makes sense
-->
yeah right yep no resource quota limit range resource there it is two seconds there to
-->
get control back yes it is gone all right so this
-->
When applying this, it's going to, I'm assuming, create the App A namespace and then create the...
-->
Okay, sounds good.
-->
Was it the same for deployment set?
-->
Gotcha.
-->
Yep, so it will not automatically create that.
-->
It didn't create it.
-->
All right, so we should be able to...
-->
There it is.
-->
All namespace.
-->
It's running into that pod.
-->
So, yeah, deleting the namespace, deleted the pod as well.
-->
Yes, that's.
-->
be careful
-->
just a real quick question
-->
if the
-->
the app A
-->
namespace were to be recreated
-->
would the
-->
with the pot
-->
since it's a deployment with the
-->
would the pod recreate
-->
I'm guessing not
-->
okay that's right
-->
because it was part of that namespace
-->
okay
-->
the mouse turned off
-->
okay
-->
taints none
-->
pod
-->
equals true schedule so that is going to okay let's just describe it let's see
-->
I'm missing there we go okay all you said that's and that's present on all
-->
control plane notes right just create the app a okay untolerated taint
-->
Taint is not present on that, on that note.
-->
And now, just something you're going to,
-->
oh, cat the file.
-->
Yeah, so I could put the product something wrong.
-->
TheI version was good.
-->
Solarations.
-->
The pod operator.
-->
True, an indent wrong somewhere.
-->
Okay.
-->
Well, while you're doing that, can I do,
-->
can I look at something else in here
-->
or do you need something on my screen?
-->
Okay, okay.
-->
Schedule.
-->
Okay, that makes sense.
-->
All right, so we're going to try to run.
-->
Is it maybe something with the version is requiring it to, is this dot YML not, is it not happy with that?
-->
I wonder.
-->
Maybe it needs to be YAML, but not.
-->
No.
-->
Ah, add overwrite.
-->
Just at the end, do it overwrite.
-->
Okay, sweet.
-->
So I wonder if this API version here, if that needs to be like app, app slash B1, possibly.
-->
I'm seeing that we need to use that for versions.
-->
Okay.
-->
Oh, kind is supposed to be deployment, isn't it?
-->
No.
-->
What did I?
-->
No, that's see if I can fly out.
-->
yes okay sure looks a little better nice pod dash in s dash yeah yes i've described the note
-->
yeah it makes sense well uh yeah um if you don't want to if you don't want a pod running on on a control plane
-->
which is not something you would typically do I'm assuming or maybe that is a common development
-->
yeah absolutely is gone so as far as constraints for memory and CPU are we're going to get into
-->
how we can set those or okay okay okay jumping ahead this is great great info so far
-->
Definitely.
-->
Right.
-->
Makes sense.
-->
Absolutely.
-->
It's a MiniCube delete.
-->
MiniCube stock, yep.
-->
Yeah.
-->
You get all profiles.
-->
You get messages from that.
-->
I guess that's not important.
-->
Yeah, it's done that a couple of times, but I think it reconnects almost immediately.
-->
Yep, just wanted to kind of review that quickly.
-->
Payable to download open.
-->
I wonder if that's, is that an issue with the connection?
-->
Oh, that's right.
-->
Yeah, yeah, of course.
-->
Yeah, just mini-cubes.
-->
Yeah, okay.
-->
You'd think I'd be able to remember that.
-->
I'm filing it away in long-term memory here.
-->
Running, it's created.
-->
Something I'm not seen.
-->
All right, now I want to now see the events there,
-->
creation of the three pods.
-->
And that's just an abbreviation of deployment,
-->
I'm assuming, from three to four.
-->
That'd use it, scale down the deployment.
-->
imagine that's probably the same reference equals three right yeah describe them three
-->
successful delete i keep doing that keep this feeling um so deleting the deployment
-->
uh deletes the reference set okay okay so what exactly is is a headless service
-->
okay okay essentially the same except it's the kinds as a staple set right i think i got
-->
all that is that created this is this something zero one that's there's no uh it's a distinct name as
-->
supposed to the hash no get stable set no we can see it deleted um just one um just
-->
one question because i didn't um i didn't do a get state set command when they
-->
there were two would that have shown ready to of two okay and then the pods would be named
-->
dash zero dash one yeah yeah to zero we did the first one and you said that uh best
-->
practice is to scale to zero before deleting the statement set right sounds good perfect okay
-->
hello i can hear you okay now sounds good um pretty good
-->
Oh, okay, I got to jump the gun.
-->
So I guess that answers the question I was going to ask.
-->
It looks like it's doing one control plane, node, and two work.
-->
Well, there's multiple of the proxy and I'm not familiar with the kind net.
-->
So, yeah, it's just running certain pods on each, which I assume.
-->
is the result of Daimonset.
-->
We do want to call it
-->
Damonset yamil.com?
-->
I guess it doesn't really matter.
-->
So that would not work
-->
with a mini-cube cluster.
-->
That was, so we're using
-->
Prometheus
-->
and
-->
well, specifically
-->
in the
-->
Kubernetes clusters Prometheus.
-->
So we want to apply it first.
-->
Same
-->
concept.
-->
Apply that, yeah.
-->
Let's see, well, I can't wait that.
-->
Yeah.
-->
Ah, okay, so it's a, it's a timing thing.
-->
It needs to download image pool.
-->
At the very last line there,
-->
do you need to specify damon set the limit, okay.
-->
Yeah, yeah, create the last one there.
-->
Three ready.
-->
Hmm, right, just with one, one node.
-->
There's complete it.
-->
There are two art.
-->
And there it is.
-->
Yep.
-->
I'm trying to see where this will
-->
delete it.
-->
Oh yeah, seconds after finished.
-->
Yeah, I just realized I could have just updated the
-->
copied the file and updated it.
-->
updated instead of typing
-->
all that in. That's true.
-->
That's true.
-->
Oh, yeah. No, no doubt.
-->
I have typed a few of these, but
-->
not enough for it to be
-->
locked in.
-->
It's muscle memory.
-->
Okay.
-->
It's done.
-->
Pleated.
-->
Gone.
-->
Yeah, definitely good to
-->
I have that all of the time.
-->
Right.
-->
I would think that you would write it out somewhere.
-->
I'm not sure what would be the best way to do that.
-->
Logging event shipping, okay.
-->
Yeah, you know, you had a good point.
-->
It's good to type this, type this out.
-->
I think in my case, it's just, there's a delay.
-->
Sometimes there's a key press on failure.
-->
I forget what the particular schedule.
-->
represents. It's just started though. We'll create. Okay, now it's completed.
-->
The hash should change each time. So it'll only keep three in the
-->
pod left. So I'm assuming there's a you can add the TTL
-->
John Job as well
-->
Yeah, we'll see it rotate through
-->
But is there
-->
If you say didn't want to have these
-->
The three
-->
Completed
-->
Pods listed there
-->
Is there? Yep
-->
Mm-hmm
-->
Grated the new one
-->
JP
-->
And it shows it deleted the
-->
Original one
-->
Mm-hmm
-->
Okay, yeah
-->
That's pretty straightforward
-->
No questions.
-->
Nice.
-->
Always a fun topic.
-->
Assuming we'll need a new environment or one node.
-->
Wait and seek.
-->
I won't run it up at all right already.
-->
That's good.
-->
Cluster IP or Ingen X service.
-->
Port 80.
-->
Oh.
-->
And none.
-->
10.10.10.153.
-->
218.
-->
here might be under menu make it out here now oh yeah yeah oh yeah hmm it makes
-->
sense but yeah interesting um you didn't specify that 3784 that's that uh i guess automatically
-->
yeah that you mentioned that before that's okay like that right why is it doing that that's strange okay
-->
I might just have to
-->
It's like, oh, that's crazy.
-->
No, let me think it's finally there.
-->
It's no DNS.
-->
No labels.
-->
Yeah, name equals internet.
-->
Negative.
-->
This guy right here.
-->
App equals in.
-->
Yeah, it needs to be, I guess it needs to be the full,
-->
this needs to be the full, or vice versa.
-->
I found it.
-->
yeah that's what i'm actually in this um okay good you've got a screenshot there
-->
all right uh label nothing else changing there yeah okay so labels have been changed
-->
yeah yeah definitely oh yeah for sure okay yeah the selector is different it looks like
-->
oh no that's right yeah uh labels shows it
-->
none just yeah oh yeah there's there's endpoints three yeah copy my name there hey all right
-->
definitely deleted so before i do that or while i'm doing it i guess um the cluster IP portion of
-->
that that uh task there um just that that that the that's that they're just that that the that that
-->
that was just to show that that's not
-->
what the cluster IP is used for
-->
I was a second.
-->
Gotcha.
-->
Okay.
-->
Selector
-->
Nate.
-->
Yeah, that's right.
-->
Yeah.
-->
Yep.
-->
Yeah, I just realized that.
-->
I was trying to do a comparison between
-->
them, but yeah.
-->
I realized that
-->
we're using that EngineX
-->
pending.
-->
That would say is pending.
-->
What were you saying?
-->
Always want to type servo.
-->
It doesn't have a resource.
-->
Oh, yeah.
-->
Still pending.
-->
I'm not sure what's happened here.
-->
This doesn't seem to have created a...
-->
I don't know what it did.
-->
But yeah, it did...
-->
Oh, okay.
-->
Yeah.
-->
I was going to the wrong area.
-->
Okay.
-->
Okay, so just...
-->
We have an external IP.
-->
Okay.
-->
So what exactly...
-->
What did MiniCube Tunnel do again?
-->
Okay.
-->
That's awesome.
-->
Jackie,
-->
one to do Control V,
-->
and it just does different things every time.
-->
Not secure,
-->
but welcome to IngenX.
-->
5-4.
-->
Yeah, very nice.
-->
And no external IP.
-->
Let's see what the EngineX is running.
-->
And the EngineX service.
-->
Is there anything external IP?
-->
Yes, okay.
-->
Seems to be enabled.
-->
LLB, I wonder how, it's 49.
-->
We run a mini QIP again.
-->
Well, I'm assuming it'll show something different.
-->
Okay, I've got dot 50, the first one in the pool there.
-->
Yeah, so it's a metal LB system like, just a good.
-->
Nice.
-->
Yeah, that's nice.
-->
I did not realize you could do that.
-->
So we'd have to do dash capital A in this command here.
-->
It didn't bark at us.
-->
Running.
-->
Good?
-->
Okay.
-->
It is longer, but, so it's hyphen, hyphen with spaces around, around them.
-->
And this is going to, yeah?
-->
All right, so we just,
-->
We essentially just executed the NS lookup command inside the inside that pod.
-->
It sounds like that.
-->
I'll get described the pod, right?
-->
It's that way.
-->
Yeah.
-->
All right.
-->
Okay.
-->
No.
-->
Yeah.
-->
Okay.
-->
Sounds good.
-->
See you then.
-->
Okay.
-->
It seems pretty straightforward.
-->
I'll lose you?
-->
Yeah.
-->
I had a little blit there for about 30 seconds.
-->
So I didn't count.
-->
catch that last slide you're on uh yeah yeah looks like it okay it's like good to go okay so it's
-->
progress that's interesting they're gonna be I didn't look yeah they'll just so I mean I guess
-->
this does indicate that it was a job right is that right well no we do it
-->
rep for QTL. Um, so yeah, let's, it's like job here. Oh, yeah, I went back too far.
-->
Replica set. Hmm. Hmm. Oh, it makes sense. Yeah. But yeah. Oh, yeah. Oh, is it apply for this as well?
-->
Um, it's a service. Okay. Well, yep, I had not seen that before. Okay. Okay. Okay. Welcome to internet.
-->
Mm-hmm. And they're all, uh, all D-1.
-->
Mm-hmm. Usually pretty good at catching stuff as I go, so I think that's good.
-->
Read it. All right. So yeah, I was about to say, don't see an address. Is that working for it?
-->
Ingen X dot, example, crazy. All right. Something's a miss.
-->
Just to add it to the smile. Doing crazy stuff.
-->
Yeah, there it is.
-->
I can't find it.
-->
Yeah, it's there at the bottom.
-->
It's in this lookup, look at the host file.
-->
I guess it does.
-->
Oh, if we try it.
-->
Yeah, it's working.
-->
It's just, in this lookup doesn't look at the host file.
-->
I don't think that's different.
-->
I wonder if that's, yeah, it's trying to use HTTP.
-->
Or maybe it might be something else, but that's the person.
-->
No.
-->
Um,
-->
what was that?
-->
called service service ingress yeah cube system yeah specified cube system for it okay oh yeah yeah
-->
service not found but no external IP but it's in the default namespace i'm assuming that it needs to be um
-->
well i don't know okay so it does need to be in the same namespace as the um we wouldn't even need to
-->
I'm going to put in default, but would we even need to have the namespace definition here?
-->
So it's good practice.
-->
Yep, we have our endpoints.
-->
There it is.
-->
Good stuff.
-->
I'm assuming Cillium is not new.
-->
Do a stop and then we says there wasn't one, but safe.
-->
Do what was instructed this time.
-->
Looking good, node-wise.
-->
Tear that down.
-->
Disconnect there.
-->
It's wondering I was taking some time, but yeah.
-->
Okay.
-->
I don't have any questions right now,
-->
but kind of cogitate on this a bit,
-->
and I'm sure something will come off.
-->
Okay.
-->
Pretty much, pretty much none.
-->
Okay. Sounds good.
-->
Okay.
-->
Just, we're going to use the same Zoom session, I wonder?
-->
Oh, yes.
-->
I may have it for tomorrow.
-->
Sounds good.
-->
All right.
-->
Take care.
-->
Bye-bye.