diff --git a/pilot/arc.tpl.html b/pilot/arc.tpl.html index dda2ddb..74b511e 100644 --- a/pilot/arc.tpl.html +++ b/pilot/arc.tpl.html @@ -32,6 +32,9 @@
The Exploded Cluster teaches how modern container platforms work by taking them apart, literally. Each course is one machine drawn as a single exploded illustration, sliced into its real components and wired to your scroll, so the architecture moves while the words explain it. + OpenShift is the teaching lens. oc is the command language. Kubernetes + primitives explain the machinery underneath. Occasional lab notes show a separate Kubernetes + environment where a concept was observed; they are not a claim that the lab runs OpenShift. Start with the aperitif's four terminal commands - three that deliver, one that checks - and finish knowing how a change travels from a Git commit to a running, secret-fed, digest-pinned workload on a fleet. The library at the end links only to official documentation, so every claim here can be checked against its source.
@@ -69,10 +72,10 @@A note on the commands: this site uses oc, - OpenShift's CLI. The Kubernetes commands here work the same - under kubectl; oc is a superset, and the - OpenShift-only parts (SCCs, Routes) are its own. Read - kubectl in the docs, type whichever your cluster gives you.
+ OpenShift's CLI. Examples use oc, the OpenShift CLI, against + Kubernetes API resources - for those, kubectl behaves identically. + Where a step needs OpenShift APIs (SCCs, Routes, ClusterOperators, MachineConfig), it will + not exist on a plain Kubernetes cluster, and the text says so.That 1/1 reads as containers-ready over containers-wanted: a pod can hold more than one, which is Course IIIb.
Three of those were delivery actions - build, push, apply, and the
@@ -171,6 +174,8 @@
alt="A small fleet mid-explosion: one wide command slab with a strong cyan seam
hovering above a row of three identical worker blocks, all floating apart in
the void.">
+
The scheduler places the pod. The kubelet realises it. The runtime runs it.
-Field note. Node NotReady? The kubelet is a systemd unit - like any other: journalctl -u kubelet on that node, and check it - can still reach the api-server. A node that cannot phone home is presumed lost.
+Field note. Node NotReady? + oc describe node shows its conditions and the last heartbeat, and + the node's events say what the platform already knows. When you need the node itself, + oc debug node/<name> is the supported doorway - not SSH. A + node that cannot phone home is presumed lost.
The control plane does not start container processes directly. It records and reconciles intent; node-side components execute it - the kubelet turning intent into instructions, the runtime turning instructions into processes.
diff --git a/pilot/assemble-arc.mjs b/pilot/assemble-arc.mjs index 6469cf1..3eb36e2 100644 --- a/pilot/assemble-arc.mjs +++ b/pilot/assemble-arc.mjs @@ -282,6 +282,7 @@ const banned = [ [/every manifest include<\/span>s/, "broken 'include s' construction"], [/two policies renders from one field/, "subject/verb error 'renders from one field'"], [/grown-up chart/, "'grown-up chart' (use 'production-grade chart')"], + [/journalctl -u kubelet/, "node-shell instruction (use oc describe / oc debug node)"], ]; // legend blurbs are inlined into the app JS (the SCENES const), so scan both surfaces const visible = html + "\n" + app;