#Kubernetes

141 件の記事

Certified Kubernetes Application Developer (CKAD) #7 Workloads 3: Job, CronJob (バックオフ、同時実行)
読了 10分

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 アクセス制限、クラスターアップグレード
読了 10分

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 アクセス表面を減らし、セキュリティパッチのためのクラスターアップグレードまで手に覚えさせます。

Admission Controller
読了 12分

Admission Controller

K8s API サーバーがマニフェストを etcd に保存する直前の段階で検査・変形する admission のモデルを扱います。Mutating・Validating の2種類、ビルトインコントローラ (LimitRanger・ResourceQuota・PodSecurity など)、Webhook メカニズム、そしてその上に載った2つのポリシーエンジン OPA Gatekeeper (Rego) と Kyverno (YAML) の比較までを一連の流れで整理します。

Certified Kubernetes Administrator (CKA) #11 Workloads 2: DaemonSet、StatefulSet、Job、CronJob
読了 10分

Certified Kubernetes Administrator (CKA) #11 Workloads 2: DaemonSet、StatefulSet、Job、CronJob

Certified Kubernetes Administrator (CKA) シリーズ 11 番目の記事です。Deployment では扱えない 4 つのワークロードを整理します。ノードごとに 1 つずつ立てる DaemonSet、安定 ID と順序・headless Service・volumeClaimTemplates を持つ StatefulSet、完了を目標に回る Job、そしてスケジュールに合わせて Job を打ち出す CronJob まで、YAML と kubectl で手に覚えさせます。

Certified Kubernetes Application Developer (CKAD) #6 Workloads 2: DaemonSet, StatefulSet
読了 9分

Certified Kubernetes Application Developer (CKAD) #6 Workloads 2: DaemonSet, StatefulSet

Certified Kubernetes Application Developer (CKAD) シリーズ 6 番目の記事です。Deployment とは別のワークロードコントローラーである DaemonSet と StatefulSet を実技の観点から扱います。すべてのノードに Pod を 1 つずつ立てる DaemonSet、安定したネットワーク ID と順序保証が必要な StatefulSet を、headless Service と volumeClaimTemplates まで YAML で作ってみます。

Certified Kubernetes Security Specialist (CKS) #4: RBAC 最小権限の深掘り (Cluster Hardening)
読了 9分

Certified Kubernetes Security Specialist (CKS) #4: RBAC 最小権限の深掘り (Cluster Hardening)

Certified Kubernetes Security Specialist (CKS) シリーズの 4 番目の記事です。CKA で身につけた RBAC の上に最小権限の原則を重ね、広すぎる Role をどう見つけて狭めるかをセキュリティの観点で深く扱います。wildcard verb/resource の危険、default ServiceAccount 権限の削除、ClusterRoleBinding の乱用を RoleBinding で減らすこと、aggregated ClusterRole の注意点、secrets get・pods/exec・escalate・bind・impersonate のような危険な権限の識別、そして kubectl auth can-i --as で狭めた権限を検証する流れまで整理します。

CI/CD パイプライン
読了 11分

CI/CD パイプライン

第23章まで整った myshop-api は、新バージョンが入ってくる過程に依然として人が多く介入します。本章はその過程を自動化します。GitHub Actions で OIDC 信頼により静的キーなしに AWS ECR へコンテナイメージをプッシュし、マニフェスト repo の Helm values を自動 commit し、第20章で扱った ArgoCD がその変更を検知してクラスタへ同期する一連の流れを整理します。PR 承認ゲート、dev / prod 分岐、Argo Rollouts カナリア配備、イメージタグの immutability まで併せて扱います。

CNI 深掘り
読了 17分

CNI 深掘り

同じ NetworkPolicy マニフェストが Calico の上では iptables ルールに、Cilium の上では eBPF プログラムに展開されるデータプレーンの深さを扱います。K8s ネットワークモデルの4つの条件、CNI インターフェースの正体、iptables・IPVS・eBPF の3つのデータプレーンモデル、Calico と Cilium の比較、そして CNI 選択の実戦基準までを一連の流れで整理します。

CRD と Operator パターン
読了 13分

CRD と Operator パターン

K8s API をユーザードメインのオブジェクトで拡張する2つの軸を扱います。CustomResourceDefinition で新しいオブジェクト種類を定義し、controller-runtime ベースの Operator が第1章で見た reconcile loop をそのオブジェクトの上に掛けて K8s の宣言的モデルをドメインまで拡張します。ownerReference・finalizer・status subresource の3つの標準パターンと Kubebuilder・Operator SDK のビルドツールまでを一連の流れで整理します。

DB 連携 — RDS · External Secrets
読了 13分

DB 連携 — RDS · External Secrets

第22章で外部公開まで作った myshop-api は、データストアのない空の殻です。本章はその空いた場所を埋めます。RDS PostgreSQL を Terraform で立ち上げ、マスターパスワードを AWS Secrets Manager に置き、External Secrets Operator でその秘密を K8s Secret へ自動同期し、IRSA で静的な認証情報なしに権限を付与し、PgBouncer でコネクションプールを載せ、スキーママイグレーションを Helm hook ベースの Job パターンで自動化する流れまでを一連の流れとして整理します。

docker-compose から k8s へ
読了 15分

docker-compose から k8s へ

付録A — Docker / docker-compose まで触れてきた読者が K8s へ移っていくときに詰まる7つの違いを整理します。docker-compose.yml の各キーが K8s のどのリソースに対応するかをマッピング表で示し、小さな web + db の docker-compose.yml を K8s マニフェストへ移す流れをたどり、kompose 自動変換ツールの限界とその次の段階を挙げます。本書の最後の章ですが、Docker まで触れてきた読者には出発点になります。

EKS クラスタセットアップ
読了 12分

EKS クラスタセットアップ

AWS EKS の上に本物の運用クラスタを最初から立ち上げる流れを扱います。Terraform で VPC · EKS コントロールプレーン · ノードグループ · IRSA · 必須アドオン (VPC CNI · CoreDNS · kube-proxy · EBS CSI) を一つのコードベースで宣言し、eksctl の素早いセットアップオプション、Karpenter のノードオートスケーリング、そして最初の点検 · コストモデルまでを一つのサイクルで整理します。