Skip to main content

Kubernetes: Node Time Like Show Time

The title was initially 'Bring Back the Node', but I didn't think people would get the reference. Applause if you did!

Making a deployment in the previous post made a POD for our application to be hosted in.

($POD_NAME variable)

Pods are an abstraction that represent 1 or more containers and shared resources for them, like Volumes, what the page describes as

‘Networking, as a unique cluster IP address’ (Sounds exciting, like a distant relative of subnetting or vlans)

 and instructions on  how to actually run the containers.

A Pod can hold the application and something that is closely coupled to it. The example given is a Node.js app and the data to be read by it.

Pods hold containers, and the containers share an IP address / Port space
Are co-located and scheduled, and
Run in a shared context on the same Node.

When we create a Deployment, that Deployment creates Pods with Containers inside of them.

The hierarchy reminds me a bit of Forests/Trees. Or Matryoshka dolls.

Pods run on Nodes, a virtual or physical worker machine in Kubernetes, and is managed by the Master.

Nodes = Multiple pods, Master schedules pods automatically across Nodes in the cluster.

Every Node runs at least a Kubelet and a container runtime, that pulls the container image from a registry, unpackets it, and runs it.

I’m just going to link to the image they provide. It looks like a cell.


* Nodes hold pods and pods hold volumes and containerized apps.
* and there are some processes on the node.

Let’s troubleshoot with kubectl.

The syntax is kubectl [action]

- get [resource]; Lists resources
- describe; Show details about a resource
- logs; Print logs from a container
- exec; Execute a command on a podded container.
And those are what we’re going to be using in today’s tutorial!

Just putting in kubectl get with no specifics lists a lot of things.

Whoa nelly. 

adding pods gives us just the one.

But what’s in our pod? Describe it.

That’s not even all of the information!

Time to debug through a proxy in another terminal window.

We’re going to store this into the POD_NAME variable.

the curl request shows the output
{curl http://localhost:8001/api/vi/namespaces/default/pods/$POD_NAME/proxy}
The very long Pod name is in that variable, we don’t have to type it out, just $POD_NAME. Nice.

If there was more than one Pod, it wouldn't work.

What about our container logs? Let’s use
kubectl logs $POD_NAME

"Where are you running? WHERE are you running?"

Cool, now let’s execute a command.

The pod should be up and running, and we use the exec variable instead of get.

(env = enviroment variables, I think. I looked it up.)
(using SSL port 443)

Let’s start a bash in the Pod container with kubectl exec -ti $POD_NAME bash

Oh, we’ve moved to the root of our container! See the prompt over there?

 Now we can run the application with cat [where the source code is stored].
And check it again with a curl command. Close the container with an exit command.


Popular posts from this blog

The Updated "What I'm Looking For In A Role" Post (2020)

Thank you for wanting to help with my job search! Here are some parameters.

Part time remote, text based support [Example Description]. It's a little far fetched, but the positions do exist. I enjoy having the flexibility to take on temporary projects from time to time!
Also; If anything sounds weird, out there, or unusual - Feel free to e-mail me. Doesn't have to be tech related. I just have to find it interesting and flexible.

Looking For This Type of Work:
Simplified writing about tech. [Example Job Description] You want to pay me to write more of *waves hand* this blog? I am game.
IT SupportUX Auditing [See Here]eCommerce merchandising [See Here]Email Marketing Specialist [Example Job Description]  ProofreadingThe following is what I was trained in. Roles will be considered, and I am looking to pivot to the above. Still part-time, contract, and/or temporary
Cisco routing and switching technician

Find me on Jumpstart and CareerVillage.

Remote is…

Azure Networking Options - Core Cloud Services

I have done a lot of AWS things on here. Time to give Azure some attention. After all, since employers don't think Cisco or COMPTIA certifications are important, maybe Microsoft ones are?

First, let's really think about why these are the two biggest cloud services providers in the world:

They've been doing internet things for a long time.Amazon launched in 1995, a virtual bookstore.
Microsoft, well, you know. 

They've lived, breathed, and frankly, created, infrastructure that we use today, that they're selling to us today. Of course the Store of Everything and the Company of Everything would encourage us to put everything in their hands.

Also: Azure has a lot less silly names for modules. Important. I appreciate straightforwardness.

I said 'a lot less', not '100% sensible names'

Microsoft has a clear set of Azure Fundamentals that anyone can interact with. Let's talk about networking basics, basically to say, again, "Hi, employers, I have an …

Grace Hopper Celebration 2019 (GHC19)

From Aicha Evans' speech at the Keynote.
September 6th - I receive an email from Anita B Organization, saying "We read your application, we like your website, and here's a free ticket to GHC 2019 in Orlando, Florida!"

After a few more questions, it seemed everything was on the up and up, and so I accepted - and that's what this post is about!

For those who don't know, Grace Hopper Celebration is the largest gathering of Women in Technology in the world.

On a personal note, This is the first trip I've taken without my parents. Sure, they've left me behind to go on vacations, but I've never left them. I was totally worried! But you know what happened?

I met a lot of cool people in Orlando, learned a lot of neat things, and had a blast just walking around airports for upwards of 8 hours.

New Delta Sky Club on Wikimedia I really, really love airports! And I survived.

I know in the past, I've wormed my way out of jobs despite being interested simpl…