Project CNCF
「Project CNCF」のすべての記事。
kubectl top でリソース使用量を見て、kubectl logs の container の選択・以前の container・stdout/stderr とノードのログファイルの場所を確認し、Service の selector・targetPort・readiness・CoreDNS・NetworkPolicy を 1 つずつ壊して症状を比べました。
kubelet と containerd を止め、kubelet の設定と static Pod manifest をわざと壊したうえで、kubectl、systemctl、journalctl、crictl、/var/log/pods で原因を探す過程を kubeadm クラスタで記録しました。
GatewayClass、Gateway、HTTPRoute の役割分担、host・path・header のマッチングと重み付け分割、別の namespace の Route と backend を許可する allowedRoutes と ReferenceGrant、そして Ingress との違いを、NGINX Gateway Fabric と ingress-nginx を入れた kubeadm クラスタで確認しました。
Kubernetes のネットワークモデル、ノードをまたぐ Pod 通信、kube-proxy が Service を iptables ルールに変える様子、NodePort と LoadBalancer、CoreDNS の Corefile の変更と Pod の dnsPolicy を kubeadm + Calico クラスタで直接確認しました。
metrics-server が HPA に CPU 使用量を渡す流れ、kubectl autoscale と autoscaling/v2 の HPA、負荷をかけると増えて負荷を止めると 5 分後に減る過程、VPA との違いを kubeadm クラスタでまとめました。
nodeName、nodeSelector、node affinity、taint と toleration、Pod anti-affinity、topology spread constraint、PriorityClass と preemption を、worker 2 台の kubeadm クラスタで実際に配置しながらまとめました。
kubelet と container runtime の間の CRI、Pod ネットワークをつなぐ CNI、ストレージをつなぐ CSI がノードのどこに設定されているかを確認し、Helm と Kustomize でクラスタコンポーネントをインストールし、Operator が CRD でコンポーネントを管理する仕組みを kubeadm クラスタでまとめました。
Kubernetes に User オブジェクトがないところから始めて、CertificateSigningRequest でユーザー証明書を発行して kubeconfig に入れる流れ、ClusterRole を RoleBinding と ClusterRoleBinding に付けたときの違い、aggregated ClusterRole とデフォルトの ClusterRole を kubeadm クラスタで確認しました。
version skew のルール、kubeadm で 1.34 から 1.35 に上げる手順と drain/uncordon、etcdctl・etcdutl による etcd のバックアップと復元、kubeadm 証明書の確認と更新を VM クラスタで直接実行しながらまとめました。
ノードの準備 (swap、sysctl、containerd の cgroup driver) から kubeadm init/join、CNI のインストール、kube-vip でまとめた stacked etcd の HA control plane まで、VM 3 台で直接実行しながらまとめました。
control plane コンポーネント (kube-apiserver、etcd、scheduler、controller-manager) と node コンポーネント (kubelet、kube-proxy、container runtime) がどうつながっているか、static Pod と /etc/kubernetes 以下のファイルを kubeadm クラスタで直接確認しながらまとめました。
CKA v1.35 カリキュラムのドメインごとの kubeadm・etcdctl・systemctl・crictl・kubectl コマンドと最小 YAML、試験中に開く kubernetes.io ドキュメントの場所をまとめました。
2026年10月12日に受けた CKAD 試験に 80% で合格しました。準備の過程、試験を受けて感じたこと、解けなかった NetworkPolicy の問題を整理し直した復習ノートを残します。
静的サイトとしてデプロイした試験画面が、各自の PC にある kind クラスターとターミナルをどう扱っているのかをまとめました。
killer.sh のように本番と同じ形式で解けるローカルの CKAD 模擬試験です。
kubectl get/describe/events/top で状態を見て、kubectl logs でログを読み、exec と debug でコンテナの中を覗く流れを公式ドキュメントに沿ってまとめました。
Service の type と selector から EndpointSlice につながる流れ、Service の DNS 名、接続できないときの確認手順、Ingress の rule と pathType、NetworkPolicy の default deny と selector の組み合わせを公式ドキュメントに沿ってまとめました。
container filesystem と volume の違いから、emptyDir、hostPath、configMap volume、PV/PVC の binding、access mode、reclaim policy、StorageClass、generic ephemeral volume までを公式ドキュメントに沿ってまとめました。
Kubernetes API を拡張する CRD・custom resource・Operator と、API バージョンが deprecated になり削除されるルール、manifest の移行方法を公式ドキュメントに沿ってまとめたノート。
API リクエストが authentication、authorization、admission を通る流れと、ServiceAccount・RBAC・SecurityContext・Pod Security Standards を公式ドキュメントに沿ってまとめたノート。
requests はスケジューリング、limits は実行中の強制。CPU throttling と OOMKill の違い、QoS class、LimitRange のデフォルト値、namespace 単位の ResourceQuota を公式ドキュメントに沿ってまとめました。
ConfigMap と Secret の作り方、Pod に渡す三つの方式 (env、envFrom、volume)、値が変わったときに反映される経路、projected volume と Downward API までを公式ドキュメントに沿ってまとめました。
Helm の chart・repository・release の概念と install/upgrade/rollback/uninstall、values の上書き、そして Kustomize の base/overlay・patches・generator と kubectl apply -k を公式ドキュメントに沿ってまとめました。
Deployment の RollingUpdate・Recreate の動作、maxSurge・maxUnavailable の計算、rollout コマンド、そして Service selector と replica の比率で作る blue/green・canary デプロイを公式ドキュメントに沿ってまとめました。
Deployment、StatefulSet、DaemonSet、Job、CronJob がそれぞれ何を保証するのか、いつどれを選ぶのかを公式ドキュメントに沿って比較します。
Pod phase、condition、container state、restartPolicy を先に整理し、liveness・readiness・startup probe が失敗したときにそれぞれ何が起きるのかを公式ドキュメントに沿って比較します。
init container、native sidecar と従来型の sidecar、ambassador・adapter パターン、ephemeral container を公式ドキュメントに沿って比較しました。
イメージ名・tag・digest、imagePullPolicy のデフォルト値のルール、private registry と imagePullSecrets、イメージの build・push、そして Pod spec の基本を公式ドキュメントに沿ってまとめました。
CKAD v1.35 カリキュラムのドメイン別に、kubectl コマンド、最小限の YAML、試験中に開く kubernetes.io のドキュメントをまとめたもの。
CNCF関連の技術を毎日のように使いながら、自分が実際にどれだけこれらの技術を分かっていると言えるのか、確かめてみたくなりました。

