Kubernetes
Certified Kubernetes Administrator (CKA) #15 リソース管理: requests/limits、QoS、LimitRange、ResourceQuota
Certified Kubernetes Administrator (CKA) シリーズの 15 番目の記事です。requests と limits で cpu・memory をどう予約し制限するか、CPU スロットルと memory OOMKilled の違い、Guaranteed・Burstable・BestEffort の 3 つの QoS クラスが eviction 順序をどう分けるかを整理します。続いて LimitRange でコンテナのデフォルト値を、ResourceQuota でネームスペースの総量を強制する運用ポリシーを YAML で扱います。
Certified Kubernetes Application Developer (CKAD) #10 Kustomize: overlay パターン、環境別マニフェスト
Certified Kubernetes Application Developer (CKAD) シリーズ 10 番目の記事です。テンプレートなしでマニフェストを環境別に変形する Kustomize を扱います。kustomization.yaml の基本フィールドから base/overlays 構造、patchesStrategicMerge と JSON6902 パッチ、configMapGenerator・secretGenerator のハッシュローリング、そして -k フラグでビルドして適用する流れまで実技の視点で整理します。
Certified Kubernetes Security Specialist (CKS) #8: kernel hardening、capabilities、/proc 保護
Certified Kubernetes Security Specialist (CKS) シリーズの 8 番目の記事です。securityContext でコンテナの権限を削り、攻撃面を減らす方法を扱います。Linux capabilities を drop ALL したあと必要なものだけ add するパターン、privileged・allowPrivilegeEscalation の危険、runAsNonRoot・readOnlyRootFilesystem、procMount による /proc マスキング、hostPID・hostNetwork・hostIPC と host パスマウントの遮断まで、hardened な YAML 例で整理します。
Certified Kubernetes Administrator (CKA) #14 Scheduling 2: Taints/tolerations、Priority/PriorityClass、preemption
Certified Kubernetes Administrator (CKA) シリーズの 14 番目の記事です。ノードが Pod を押し出す taint と、その拒否を受け入れる toleration の動作 (effect NoSchedule/PreferNoSchedule/NoExecute、tolerationSeconds)、control plane ノードのデフォルト taint、そして PriorityClass で優先度を付け、リソースが足りないとき低い優先度の Pod を追い出す preemption まで、運用の観点から YAML と kubectl で手に覚えさせます。
Certified Kubernetes Application Developer (CKAD) #9 Helm: install, upgrade, rollback, values
Certified Kubernetes Application Developer (CKAD) シリーズの 9 本目の記事です。マニフェストの束を 1 つのパッケージとして扱う Helm のチャート構造と release の概念を整理し、helm repo・install・upgrade・rollback と values のオーバーライドを実技コマンド中心に手で覚えます。dry-run で結果を先に確認し history で戻す流れまで打ち込んでいきます。
Certified Kubernetes Security Specialist (CKS) #7: seccomp プロファイル
Certified Kubernetes Security Specialist (CKS) シリーズの 7 番目の記事です。seccomp でコンテナが呼び出せるシステムコールをフィルタリングする方法を整理します。RuntimeDefault・Localhost・Unconfined の 3 つのプロファイルタイプと securityContext.seccompProfile の設定、ノードに載せるカスタムプロファイル JSON の作成と検証まで直接扱います。
Certified Kubernetes Administrator (CKA) #13 Scheduling 1: nodeSelector、nodeAffinity、podAffinity/antiAffinity
Certified Kubernetes Administrator (CKA) シリーズの 13 番目の記事です。スケジューラが Pod をどのノードに置くかを制御する 4 つの道具を整理します。nodeSelector でラベルを単純にマッチさせ、nodeAffinity の required と preferred でノード条件を表現し、podAffinity と podAntiAffinity の topologyKey で他の Pod を基準に同じノードや別のノードへ配置します。nodeName でスケジューラを迂回する手動配置も一緒に見ます。
Certified Kubernetes Application Developer (CKAD) #8 デプロイ戦略: Blue-green、canary
Certified Kubernetes Application Developer (CKAD) シリーズの 8 番目の記事です。マネージドなデプロイツールなしで、Deployment と Service、label だけを使って無停止デプロイ戦略を自分の手で実装します。rolling update と recreate を復習し、blue-green で即時カットオーバーとロールバックを作り、canary で replicas の比率によるトラフィック分配を実装します。
Certified Kubernetes Security Specialist (CKS) #6: AppArmor プロファイル (System Hardening)
Certified Kubernetes Security Specialist (CKS) シリーズの 6 番目の記事です。Linux の MAC である AppArmor でコンテナのファイル・機能へのアクセスをカーネルレベルで制限する方法を整理します。enforce と complain モードの違い、deny ルールを含むプロファイルの作成、apparmor_parser でノードにロードして aa-status で確認する手順、1.30+ の securityContext.appArmorProfile と旧バージョンの annotation で Pod に付ける 2 つの方式、そしてプロファイルが実際に止めるかを exec で検証する方法まで手で扱います。
Certified Kubernetes Administrator (CKA) #12 ConfigMap と Secret の深掘り
Certified Kubernetes Administrator (CKA) シリーズ 12 番目の記事です。ConfigMap と Secret を運用者の視点で深く扱います。kubectl create の 3 つのソース (--from-literal、--from-file、--from-env-file)、Secret のタイプ (generic/docker-registry/tls) と base64 が暗号化ではないという事実、env valueFrom・envFrom・volume mount・subPath の注入方式、env と volume の自動更新の違い、そして immutable で性能と安全をともに取る方法を、YAML と kubectl で整理します。
Certified Kubernetes Application Developer (CKAD) #7 Workloads 3: Job, CronJob (バックオフ、同時実行)
Certified Kubernetes Application Developer (CKAD) シリーズの 7 番目の記事です。一度実行して終わるバッチ処理を扱う Job と、それを定期的に回す CronJob を実技の観点から整理します。completions・parallelism・backoffLimit・activeDeadlineSeconds・restartPolicy・ttlSecondsAfterFinished と、CronJob の schedule・concurrencyPolicy・startingDeadlineSeconds・suspend を YAML と kubectl で直接作りながら身につけていきます。
Certified Kubernetes Security Specialist (CKS) #5: ServiceAccount トークン管理、API アクセス制限、クラスターアップグレード
Certified Kubernetes Security Specialist (CKS) シリーズの 5 番目の記事です。Cluster Hardening ドメインでよく出る ServiceAccount トークン管理を扱います。automountServiceAccountToken を false にして不要なトークンマウントを遮断する方法、bound ServiceAccount トークンの期限と audience、legacy Secret トークンと projected トークンの違いを整理します。続いて anonymous-auth の無効化と kubelet API の保護で API アクセス表面を減らし、セキュリティパッチのためのクラスターアップグレードまで手に覚えさせます。