필사 모드: Kubernetesエコシステム 2026 完全ガイド — Helm・Kustomize・Argo CD・Flux・KEDA・Karpenter・Cluster API・Operator Framework 徹底分析
日本語> 「Kubernetesはもはや『プラットフォーム』ではなく、『プラットフォームを作るためのカーネル』だ。2026年の本当の競争は、その上にArgo CD・Flux・Crossplaneが描くコントロールプレーンの形にある。」 — KubeCon NA 2025 キーノート
Kubernetesが1.0に到達した2015年7月から11年が経ちました。2026年5月時点の安定版最新は1.33(Octarine)で、1.30〜1.33は4ヶ月サイクルでリリースされ、1.34がまもなくRCに入ります。その間に、「どうやってクラスタを作るか」よりも「**その上でどうやってGitOpsでワークロードを回し、自動でスケールし、自動でノードを増やし、マルチクラスタを束ね、CRDで自己拡張するか**」が中心テーマになりました。
2026年のKubernetesエコシステムは6つのレイヤーに整理できます。(1)**マニフェストツール** — Helm・Kustomize・Carvel・Jsonnet・cdk8s。(2)**GitOpsコントローラ** — Argo CDとFlux v2。(3)**オートスケール** — KEDA・Karpenter・Cluster Autoscaler。(4)**クラスタライフサイクル** — Cluster API・kOps・Talos Linux・k3s/k0s/microk8s/kind/k3d・vCluster・KubeVirt。(5)**拡張モデル** — Operator Framework・Kubebuilder・Operator SDK・KCC・Crossplane。(6)**運用UX** — k9s・Lens・Headlamp・Komodor・Pixie。
本記事ではこの6レイヤーを一気に概観し、日本・韓国企業の実適用事例も併せて整理します。
1. 2026年のKubernetes地図 — 6レイヤーと4つの潮流
Kubernetesエコシステムは6レイヤーと、その上を横切る4つの大きな潮流として理解できます。
| レイヤー | 代表ツール | 中心的な役割 |
|---|---|---|
| マニフェスト | Helm・Kustomize・Carvel ytt・Jsonnet・cdk8s | YAML生成と再利用 |
| GitOps | Argo CD・Flux v2 | Gitからクラスタへ同期 |
| オートスケール | KEDA・Karpenter・CAS | ワークロード/ノードのスケーリング |
| ライフサイクル | Cluster API・kOps・Talos | クラスタ自体のIaC |
| 拡張(CRD) | Operator Framework・Kubebuilder・KCC・Crossplane | コントローラパターン |
| 運用UX | k9s・Lens・Headlamp・Pixie | 人間のためのインターフェース |
このレイヤーを横切る4つの潮流は明確です。第一に、**宣言型の完全勝利** — kubectl applyの時代は終わり、Git + Argo/Fluxが標準。第二に、**ノードスケジューリングの単純化** — AWSではKarpenterが事実上の標準となり、NodePool一枚でASG/MIG/MSSを置き換える。第三に、**OSのK8s専用化** — Talos Linux・Bottlerocket・FlatcarのようなK8s専用OSが急速にシェアを伸ばす。第四に、**CRD万能主義の後退** — 小さなコントローラは良いが、すべてをCRDにすべきではないという反省が広がり、Crossplane v2もより軽量に再設計されました。
2. Kubernetes 1.30から1.33まで — 何が変わったのか
2024年4月の1.30(Uwubernetes)から2026年初頭の1.33(Octarine)までを一行でまとめると、「**サイドカーがGAになり、ImageVolumeがGAになり、Dynamic Resource AllocationがGAに向かって突き進み、in-place pod resizeがbetaに入った時期**」です。
詳細を整理するとこうです。1.29〜1.30で**サイドカーコンテナ**がbetaに入り、initコンテナに`restartPolicy: Always`を付ける書き方が標準化、Istio ambient meshやOpenTelemetryサイドカーが即座に採用しました。1.31で**AppArmor**と**PersistentVolume Last Phase Transition Time**がGAになり、kube-proxyのnftablesモードがbetaに入りました。1.32で**In-Place Pod Vertical Scaling**がbeta、**Dynamic Resource Allocation(DRA)** がv1beta1へ。1.33では**ImageVolume**(コンテナイメージをボリュームとしてマウント)がbeta、**Sidecar Containers**がGAに昇格しました。
3. Helm 3.18 — チャート、OCIレジストリ、Helmfile
Helmは2026年でもマニフェストパッケージングの事実上の標準です。3.18+でOCIレジストリのpush/pullが完全に安定し、`helm push oci://registry.example.com/charts/myapp --version 1.2.3`一行でECR/GHCR/Harborにチャートを公開できます。Helm 4は2025年末にalphaが出ましたが、2026年5月時点で本番は依然として3.xです。
Chart.yaml — チャートのメタデータ
apiVersion: v2
name: myapp
description: A Helm chart for myapp
type: application
version: 1.2.3
appVersion: "2.5.0"
dependencies:
- name: postgresql
version: "15.3.1"
repository: oci://registry-1.docker.io/bitnamicharts
- name: redis
version: "20.0.0"
repository: oci://registry-1.docker.io/bitnamicharts
condition: redis.enabled
valuesとテンプレートは次のように分離します。
values.yaml — 環境ごとのデフォルト
replicaCount: 2
image:
repository: ghcr.io/myorg/myapp
tag: "" # appVersionへフォールバック
pullPolicy: IfNotPresent
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 20
targetCPUUtilizationPercentage: 70
redis:
enabled: true
auth:
enabled: false
運用のコツ。(1)`values-prod.yaml`・`values-stg.yaml`のように環境別valuesを置き、Argo CD ApplicationSetで合成。(2)**helm-secrets** + SOPS + KMSで機密値を暗号化。(3)**sealed-secrets**(Bitnami)はクラスタ単位の鍵でGitOpsフレンドリー、**External Secrets Operator**はVault/AWS Secrets Manager/GCP Secret Managerなど外部SoT連携に強い。2026年のベストプラクティスは「**機密値はESOで外部SoT、非機密の環境別値はhelm-secretsでGit**」の組み合わせです。
4. Kustomize — オーバーレイ・コンポーネント・replacements
Kustomizeはkubectlに同梱されているので導入摩擦がゼロで、「ベース+オーバーレイ」モデルが直感的です。2026年の推奨構造はbase/、overlays/dev|stg|prod/、components/(共通変形)の3層構成です。
base/kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- deployment.yaml
- service.yaml
- configmap.yaml
commonLabels:
app.kubernetes.io/name: myapp
images:
- name: myapp
newName: ghcr.io/myorg/myapp
newTag: 2.5.0
overlays/prod/kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: prod
resources:
- ../../base
components:
- ../../components/hpa
- ../../components/podsecurity-restricted
replicas:
- name: myapp
count: 10
patches:
- target:
kind: Deployment
name: myapp
patch: |-
- op: replace
path: /spec/template/spec/containers/0/resources/limits/memory
value: 2Gi
Helm vs Kustomize論争は2026年にはほぼ収束しました。結論は「**Helmは外部OSSチャートを取り込んで再配布するのに強く、Kustomizeは内部の自前マニフェストを環境ごとに分岐するのに強い**」で、Argo CD・Fluxとも「KustomizeがHelmチャートを包む」ハイブリッドを一級市民として扱います。
5. Carvel・Jsonnet・cdk8s — Helmの先
第三のマニフェストツール群は「**プログラマブルYAML**」陣営です。**Carvel**(VMware/Broadcom)はytt(YAMLテンプレート)・kapp(applier)・kbld(イメージピン留め)・vendir(依存性ロック)の4点セットを提供します。Helmのような文字列置換ではなくYAML構造を直接変形するため、インデントエラーが消えます。
**Jsonnet + Tanka**はGrafana Labsが自社インフラを運用する流儀で、Jsonnet言語でコードのようにマニフェストを書きます。Loki・Mimir・TempoはすべてTankaでデプロイされます。学習コストは高いですが、大規模で同質的な環境では強力です。
**cdk8s**(AWS、CNCF Sandbox)はTypeScript/Python/Go/JavaでK8sマニフェストを生成します。標準ライブラリcdk8s+がDeployment・Service・Ingressなどの高レベルコンポーネントを提供し、「型安全なYAML」を求めるチームに適します。ただ2026年時点での採用率はHelm/Kustomize比で一桁%台にとどまります。
6. Argo CD vs Flux v2 — GitOpsの二大陣営
CNCF GraduatedプロジェクトであるArgo CD(Intuit、現Akuity)とFlux v2(旧Weaveworks、現ControlPlane)は、GitOpsの事実上の二大標準です。2026年時点のシェアは概ねArgo CDが70%、Flux v2が25%、自前コントローラが5%と推定されます。
Argo CD Application — 最もシンプルな形
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: myapp-prod
namespace: argocd
spec:
project: default
source:
repoURL: https://github.com/myorg/manifests
targetRevision: main
path: overlays/prod
destination:
server: https://kubernetes.default.svc
namespace: prod
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
- ServerSideApply=true
retry:
limit: 5
backoff:
duration: 5s
factor: 2
maxDuration: 3m
ApplicationSet — 複数クラスタ/環境を一括
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: myapp-fleet
namespace: argocd
spec:
generators:
- matrix:
generators:
- list:
elements:
- cluster: prod-asia
region: ap-northeast-2
- cluster: prod-us
region: us-east-1
- list:
elements:
- env: prod
template:
metadata:
name: '{{cluster}}-myapp'
spec:
project: default
source:
repoURL: https://github.com/myorg/manifests
targetRevision: main
path: 'overlays/{{env}}'
destination:
server: 'https://{{cluster}}.example.com'
namespace: myapp
Flux v2の強みは4つのコントローラ(Source/Kustomize/Helm/Notification)に分かれたマイクロカーネル構造、Argo CDの強みはUI・マルチテナンシー・RBAC・ApplicationSetです。一般的な指針は「**小規模でHelmチャートをそのまま使うならFlux、大規模マルチテナントでUIが欲しいならArgo CD**」です。
Argoのコンパニオンプロジェクト — **Argo Rollouts**(Canary/Blue-Green)、**Argo Workflows**(K8sネイティブのワークフローエンジン)、**Argo Events**(イベントソース→トリガ) — も併用されることが多いです。Argo RolloutsのAnalysisTemplateはPrometheusメトリクスに基づきcanaryトラフィックを自動で増やすかロールバックします。
7. KEDA — イベント駆動オートスケール
KEDA(Kubernetes Event-Driven Autoscaling、CNCF Graduated)はHPAでは扱えない外部イベント(Kafka lag・RabbitMQ queue depth・AWS SQS・Pub/Sub・Cronなど)を基準にPodを0〜Nへスケールします。2026年5月時点で70以上のスケーラをサポートします。
KEDA ScaledObject — Kafka lagでスケール
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
metadata:
name: order-consumer
namespace: orders
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: order-consumer
minReplicaCount: 0
maxReplicaCount: 100
cooldownPeriod: 60
pollingInterval: 15
triggers:
- type: kafka
metadata:
bootstrapServers: kafka.kafka.svc:9092
consumerGroup: order-consumer
topic: orders
lagThreshold: "1000"
offsetResetPolicy: latest
- type: prometheus
metadata:
serverAddress: http://prometheus.monitoring.svc:9090
threshold: "100"
query: sum(rate(http_requests_total{service="order-api"}[1m]))
KEDAの目玉機能は**0までのスケールイン**です。夜間バッチや滅多に発火しないイベントワーカーは平時0レプリカで置けるので、コスト削減効果が大きい。一方でcold startは存在するため、SLAの厳しいAPIではminReplicaCountを2以上にするのが定石です。
8. Karpenter — AWSの標準になったノードオートスケーラ
Karpenterは2025年11月にCNCF Incubatingを経て、2026年初頭にGraduatedへ昇格し、AWSではCluster Autoscalerに代わる事実上の標準になりました。主な違いは(1)ASG/MIGに縛られず、**Podの実際の要件を見てEC2インスタンスタイプをその都度選ぶ**、(2)**約30秒**で反応する、(3)Spot/On-Demand/Graviton/x86を単一NodePoolで混在運用、(4)Bottlerocket/Amazon Linux 2023/Ubuntu AMIの自動パッチ、です。
Karpenter NodePool — Spot優先、Graviton優先
apiVersion: karpenter.sh/v1
kind: NodePool
metadata:
name: default
spec:
template:
metadata:
labels:
team: platform
spec:
requirements:
- key: karpenter.k8s.aws/instance-category
operator: In
values: ["c", "m", "r"]
- key: karpenter.k8s.aws/instance-generation
operator: Gt
values: ["5"]
- key: kubernetes.io/arch
operator: In
values: ["arm64", "amd64"]
- key: karpenter.sh/capacity-type
operator: In
values: ["spot", "on-demand"]
nodeClassRef:
group: karpenter.k8s.aws
kind: EC2NodeClass
name: default
expireAfter: 720h # 30日ごとに強制再生成してパッチを当てる
limits:
cpu: "10000"
memory: 10000Gi
disruption:
consolidationPolicy: WhenEmptyOrUnderutilized
consolidateAfter: 30s
budgets:
- nodes: "10%"
GCP向けKarpenter Providerは2025年にbeta、Azure向けAKS Karpenterは2025年にGAになりましたが、2026年5月時点でAWS以外ではCluster Autoscalerが依然優勢です。
9. Cluster API — クラスタ自体をK8sオブジェクトに
Cluster API(CAPI、SIG-Cluster-Lifecycle)は「クラスタを作るクラスタ(management cluster)」というメタモデルを導入します。Cluster・MachineDeployment・ClusterClassなどのCRDでワークロードクラスタの形を宣言し、インフラプロバイダ(CAPA=AWS、CAPG=GCP、CAPZ=Azure、CAPV=vSphere、k0s-bootstrapなど)が実機を作ります。
CAPIは2026年5月時点で1.10+であり、**ClusterClass**(クラスタテンプレート)が安定したことで、同じ形のクラスタを10〜100個宣言的に量産するパターンが一般化しました。AWS EKS AnywhereはCAPIをコアに置き、VMware Tanzu Kubernetes Grid・Rancher RKE2 Provisioner・Giant Swarm・MirantisがいずれもCAPI上に自社製品を載せる形で収斂しています。
ClusterClass — クラスタテンプレート1枚
apiVersion: cluster.x-k8s.io/v1beta1
kind: ClusterClass
metadata:
name: aws-eks-1-33
spec:
controlPlane:
ref:
apiVersion: controlplane.cluster.x-k8s.io/v1beta2
kind: AWSManagedControlPlaneTemplate
name: aws-eks-1-33-cp
infrastructure:
ref:
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
kind: AWSManagedClusterTemplate
name: aws-eks-1-33-infra
workers:
machineDeployments:
- class: default-worker
template:
bootstrap:
ref:
apiVersion: bootstrap.cluster.x-k8s.io/v1beta1
kind: EKSConfigTemplate
name: aws-eks-1-33-worker-boot
infrastructure:
ref:
apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
kind: AWSMachineTemplate
name: aws-eks-1-33-worker
CAPIの学習曲線は急ですが、50以上のクラスタを運用する組織には「**クラスタ自体のGitOps**」を実現できる点でほぼ必須のツールになりました。
10. クラスタディストロ — vanilla・Talos・k3s・k0s・microk8s
Kubernetesディストロは大きく5種類に分類されます。(1)**vanilla(kubeadm)** — 最も標準的、EKS/GKE/AKSのコア。(2)**Talos Linux**(Sidero Labs) — SSHもパッケージマネージャもない、すべてがAPIのK8s専用OS。2026年に最も急速にシェアを伸ばしているディストロ。(3)**k3s**(SUSE/Rancher) — 単一バイナリ約60MB、エッジ/IoT/ホームラボの標準。(4)**k0s**(Mirantis) — k3sに似るがhostPath依存なし、controlplane HAがより単純。(5)**microk8s**(Canonical) — Ubuntuフレンドリー、snapベース。
| ディストロ | バイナリサイズ | etcd | 推奨用途 |
|---|---|---|---|
| kubeadm | 部品分離 | 外部etcd | 標準本番 |
| Talos | OS一体型 | etcd内蔵 | K8s専用OS |
| k3s | 約60MB | sqlite/etcd | エッジ/ホームラボ |
| k0s | 約70MB | etcd内蔵 | 組み込み/エッジ |
| microk8s | snap | dqlite | Ubuntuデスクトップ/エッジ |
| kind/k3d | Dockerコンテナ | etcd内蔵 | CI/ローカル |
| minikube | VM | etcd内蔵 | 学習 |
Talosは2026年に入り、LINEやMercariなど日本のビッグテックでの採用が始まり、韓国でもTossやNAVERが一部ワークロードで実験中です。
11. vCluster・KubeVirt — クラスタの中のクラスタ、K8sの中のVM
**vCluster**(Loft Labs)はホストクラスタ内に軽量な仮想コントロールプレーンを立ち上げ、テナントごとに「ニセクラスタ」を提供します。ユーザーは自分のvCluster内でcluster-adminですが、隔離はホストクラスタ上の専用ネームスペースで担保されます。「ネームスペース隔離」ではなく「ニセクラスタ隔離」でマルチテナントK8sを解く手法として2025年以降急速に成長中です。
**KubeVirt**は逆方向に、K8sの中でVMを動かすプロジェクトです。Red Hat OpenShift Virtualizationのコアであり、VMとコンテナを同一コントロールプレーンの下に置きます。レガシーWindows/RHEL VMとクラウドネイティブワークロードを共存させなければならない金融・公共・通信領域で多く採用されます。
12. Operator Framework・Kubebuilder・Operator SDK
CRD + コントローラパターンはKubernetes最強の拡張機構です。2026年の事実上の標準は、**controller-runtime**(sigs.k8s.io)の上に**Kubebuilder**(scaffold)または**Operator SDK**(Red Hat)でプロジェクトを起こすことです。コントローラパターンの4大原則は次の通り。
1. **レベルトリガ(level-triggered)** — イベントではなく、desired stateとactual stateの差分で動く。イベントを取りこぼしても次のreconcileで回復。
2. **OwnerReferences** — 親リソースが削除されると子が自動GC。
3. **Finalizers** — 外部リソースの整理が完了するまで削除をブロック。
4. **冪等なReconcile** — 同じ入力に同じ出力。中間状態を保存しない。
// controller-runtime ベースのReconcile骨格
func (r *MyAppReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
log := log.FromContext(ctx)
var app v1alpha1.MyApp
if err := r.Get(ctx, req.NamespacedName, &app); err != nil {
if apierrors.IsNotFound(err) {
return ctrl.Result{}, nil
}
return ctrl.Result{}, err
}
// Finalizer登録
if app.DeletionTimestamp.IsZero() {
if !controllerutil.ContainsFinalizer(&app, "myapp.example.com/finalizer") {
controllerutil.AddFinalizer(&app, "myapp.example.com/finalizer")
return ctrl.Result{}, r.Update(ctx, &app)
}
} else {
if err := r.cleanupExternal(ctx, &app); err != nil {
return ctrl.Result{RequeueAfter: 30 * time.Second}, err
}
controllerutil.RemoveFinalizer(&app, "myapp.example.com/finalizer")
return ctrl.Result{}, r.Update(ctx, &app)
}
// 望ましいDeploymentを作りSSAで適用
desired := r.buildDeployment(&app)
if err := controllerutil.SetControllerReference(&app, desired, r.Scheme); err != nil {
return ctrl.Result{}, err
}
if err := r.Patch(ctx, desired, client.Apply, client.FieldOwner("myapp-controller"), client.ForceOwnership); err != nil {
return ctrl.Result{}, err
}
// ステータス更新
app.Status.Ready = true
if err := r.Status().Update(ctx, &app); err != nil {
return ctrl.Result{}, err
}
log.Info("reconciled", "name", app.Name)
return ctrl.Result{RequeueAfter: 5 * time.Minute}, nil
}
運用のコツ。(1)**SSA(Server-Side Apply)** をデフォルトに。fieldManagerが衝突を自動解決します。(2)`RequeueAfter`を積極的に活用してwatchだけに頼らない。(3)`Status.Conditions`は標準パターン(Ready/Progressing/Degraded)で統一。
13. KCC・Crossplane — クラウドをK8sオブジェクトに
K8sコントロールプレーンを「**クラウドリソースのインターフェース**」として使う流れは二陣営に分かれました。**KCC(Config Connector、GCP)** はGCPリソースをK8s CRDとして公開し、**Crossplane**(CNCF Incubating)はマルチクラウド(AWS/GCP/Azure/外部SaaS)を単一抽象で束ねます。Crossplane v2(2025年末発表)はCompositionを軽量化し、関数ベースパターンを一級市民にしました。
選択指針はシンプルです。**GCP単一**ならKCC、**マルチクラウドまたは外部SaaSも含む**ならCrossplane、**AWS単一**ならAWS Controllers for Kubernetes(ACK)が一般的です。ただし2026年時点でCrossplaneは依然として学習曲線が急で、Terraform/OpenTofuとの境界を明確に設計しないと運用負荷が大きくなります。
14. K8sセキュリティ — PSS・OPA Gatekeeper・Kyverno・Falco・KubeArmor
PodSecurityPolicy(PSP)は1.25で削除され、その後を**Pod Security Standards(PSS)** が引き継ぎました。PSSは3つのプロファイル(privileged/baseline/restricted)をネームスペースのラベルで適用します。ただPSSは表現力が低いので、ほとんどの組織はその上に専用のポリシーエンジンを重ねます。
| ツール | 言語 | 強み | 弱み |
|---|---|---|---|
| OPA Gatekeeper | Rego | 表現力最強、CNCF Graduated | Rego学習コスト |
| Kyverno | YAML | K8sネイティブ、学習容易 | 複雑なポリシーには限界 |
| KubeArmor | YAML + LSM | ランタイムBPF/LSM | カーネル依存 |
| Falco | YAML | ランタイム異常検知 | 強制力なし |
2026年の傾向は「**強制はKyverno、ランタイム検知はFalco**」の組み合わせが最も多い。OPA Gatekeeperは依然強力ですが、KyvernoのYAMLフレンドリーさが急速にシェアを伸ばしています。
Kyverno ClusterPolicy — latestタグ禁止、リソース上限を必須化
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: require-image-tag
spec:
validationFailureAction: Enforce
background: true
rules:
- name: validate-image-tag
match:
any:
- resources:
kinds:
- Pod
validate:
message: "イメージタグはlatestや未指定を禁止"
pattern:
spec:
containers:
- image: "!*:latest"
- name: require-resources
match:
any:
- resources:
kinds:
- Pod
validate:
message: "すべてのコンテナにresources.limitsが必要"
pattern:
spec:
containers:
- resources:
limits:
memory: "?*"
cpu: "?*"
15. K8sネットワーキング — NetworkPolicy・Gateway API・Cilium
NetworkPolicyは1.7から存在しますが表現力が貧弱で、2026年の標準は**Gateway API(GA)** と**CiliumNetworkPolicy**の組み合わせです。Gateway APIはIngressの後継でL4/L7双方を扱い、GatewayClass/Gateway/HTTPRoute/GRPCRoute/TCPRouteに分かれます。2024年のGA以後、ほとんどのクラウドLBコントローラがGateway APIモードに対応しました。
CiliumはCNI市場の事実上の標準になり、eBPFベースでkube-proxyを置き換えられ、Cilium Service Mesh(サイドカーレスL7)・Hubble(可観測性)・Tetragon(セキュリティ)までを一つのスタックに束ねます。2026年時点でCiliumはEKS/GKE/AKSすべてで一級市民で、シェアは約40%で首位です。
16. K8sストレージ — CSI・OpenEBS・Longhorn・Rook
ストレージインターフェースは**CSI(Container Storage Interface)** に統一されました。2026年の選択肢は(1)クラウドネイティブ(EBS/EFS/PD/Azure Disk/Files CSIドライバ)、(2)**OpenEBS**(Mayastor) — eBPF/NVMe-oFベースのローカルストレージ、(3)**Longhorn**(SUSE/Rancher) — 分散ブロックストレージ、(4)**Rook**(Ceph) — 大容量ブロック/オブジェクト/ファイル、(5)**Portworx**(Pure Storage) — エンタープライズ商用、です。
選択基準は単純です。**クラウドならそのクラウドのCSI**がデフォルト、**ベアメタル/オンプレ + 小規模**ならLonghorn、**ベアメタル/オンプレ + 大容量**ならRookが一般的です。
17. マルチクラスタ — Karmada・Liqo・Submariner・Skupper
組織が成長すると単一クラスタでは足りなくなります。2026年のマルチクラスタ4大選択肢は次の通り。
**Karmada**(Huawei → CNCF Incubating)は「ポリシーベースのマルチクラスタスケジューラ」で、PropagationPolicy/OverridePolicyでワークロードを複数クラスタに分散配置します。中国ビッグテックや韓国の一部企業が活発に使っています。
**Liqo**(伊Polito → CNCF Sandbox)は逆に「**Virtual Kubeletで他クラスタを単一ノードのように見せる**」アプローチで、動的ペアリングが強みです。
**Submariner**(Red Hat)と**Skupper**(Red Hat)はクラスタ間ネットワーク接続に特化、Submarinerは直接Pod CIDRを束ね、SkupperはL7プロキシベースです。
**Admiralty**はマルチクラスタスケジューリング特化のもう一つの選択肢。2024年にKubeFedがarchivedになり、その空白をKarmada/Liqoが埋めています。
18. サービスメッシュ — Istio Ambient・Linkerd・Cilium
サービスメッシュは2024〜2025年に大きな転換を経ました。Istioが**ambient mesh**(サイドカーレスモード)をGAでリリースし、Podあたり200MBのメモリ負担が消え、ztunnel(L4)とwaypoint(L7)の二層構造になりました。Linkerdは依然最軽量ですが、Buoyantのライセンス変更でOSSユーザーが一部離脱しました。**Cilium Service Mesh**はL7処理をサイドカーなしのeBPFで解く方式で急成長中です。
2026年の推奨は(1)**シンプル+無料**ならLinkerd OSSまたはCilium Service Mesh、(2)**機能豊富+大規模**ならIstio ambient、(3)**既にCilium CNI採用済**ならそのままCilium Service Mesh、です。
19. 運用UX — k9s・Lens・Headlamp・Komodor・Pixie
CLI/UIツールは2026年でも充実しています。**k9s**(Fernand Galiana)はターミナルUIの事実上の標準で、ほぼ全SREのdotfilesに入っています。
~/.config/k9s/skins/default.yaml — シンプルなダークテーマ
k9s:
body:
fgColor: dodgerblue
bgColor: black
logoColor: orange
prompt:
fgColor: cadetblue
bgColor: black
suggestColor: dodgerblue
info:
fgColor: orange
sectionColor: white
views:
table:
fgColor: aqua
bgColor: black
cursorFgColor: black
cursorBgColor: aqua
header:
fgColor: white
bgColor: black
sorterColor: aqua
**Lens**(Mirantis)はGUIの王者でしたが2023年のライセンス変更でOSSフォーク**OpenLens**が分岐し、**Headlamp**(Kinvolk → CNCF Sandbox)が完全OSS代替として地位を確立しました。**Octant**(VMware)は2022年にsunset。**Komodor**・**Devtron**はワークフロー寄りの商用/OSS代替。**Pixie**(New Relic → CNCF)はeBPFベースの自動可観測性でサイドカーなしにトレースを収集します。
2026年の推奨スタックは一般に「**ターミナルはk9s、GUIはHeadlamp、深いデバッグはPixie**」の組み合わせです。
20. K8s CI/CD — Tekton vs Argo Workflows vs GitHub Actions
K8s上のCI/CDは(1)**Tekton**(CD Foundation) — Pipeline/Task CRDベース、(2)**Argo Workflows** — DAGベースのK8sネイティブ、(3)**GitHub Actions Runner Controller(ARC)** — GitHub Actions RunnerをK8s Podで動かす、(4)**Jenkins X**(衰退傾向)、(5)**Drone**(Harness買収後変化)、に整理されます。
2026年の傾向は明確です。**ビルドはGitHub Actions/GitLab CI(ARCパターン)、デプロイはArgo CD/Flux**に分離するのが標準となり、K8sネイティブのワークフロー(Tekton/Argo Workflows)はML学習パイプラインやデータ処理のような「長いジョブ」領域に絞られました。
21. 可観測性スタック — Prometheus・Grafana・OpenTelemetry・Loki・Tempo
K8s可観測性の標準スタックは(1)**メトリクス** — Prometheus + Thanos/Mimir/Cortex、(2)**ログ** — Loki/OpenSearch/Elastic、(3)**トレース** — Tempo/Jaeger、(4)**収集** — OpenTelemetry Collector、(5)**可視化** — Grafanaです。2026年にはPrometheus 3.0(2024.11)がOTel互換を強化し、OTLPが事実上の標準収集プロトコルになりました。
eBPFベースの自動可観測性 — **Pixie**・**Coroot**・**Parca**(continuous profiling) — がサイドカーレス観測の新潮流を作っており、Grafana Labsの**Beyla**(eBPF自動計装)も急成長中です。
22. 韓国企業事例 — NAVER・Coupang・Toss・Kakao
**NAVER**はNCP(NAVER Cloud Platform)でNKS(NAVER Kubernetes Service)を提供しつつ、社内では自社PaaSの**NBP(NAVER Build Platform)** 上にArgo CDと独自のマルチクラスタコントローラを運用しています。検索・ショッピング・WebtoonなどのサービスがK8s上で稼働し、一部のML学習はvClusterで分離されています。
**Coupang**はAWS EKSのヘビーユーザーです。2024年の発表でKarpenter導入によりEC2コストを約30%削減した事例が公開され、深夜配送のピークトラフィックをKEDA + Karpenterの組み合わせで吸収しています。GitOpsはArgo CDが中心。
**Toss**(Viva Republica)は自社PaaS**Toss Cloud**の下にマルチリージョンEKSを運用。KubeCon EU 2024で発表された「数百のマイクロサービスをArgo CD ApplicationSetで管理するパターン」が有名です。一部ワークロードでTalos Linuxの実験を行っています。
**Kakao**は社内K8sプラットフォームの**DKOS(D2 Kubernetes Service)** を運用し、KakaoTalk・Daum・Kakao Payがその上で稼働します。社内テナントには一部、vCluster + Argo CDによるマルチテナント提供がなされていると発表されています。
23. 日本企業事例 — LINE Verda・Mercari・ZOZO・CyberAgent・SoftBank
**LINE Verda**はLINE/Yahoo Japan(現LY Corporation)の社内クラウドで、OpenStack上に独自のLINE Kubernetes Engineを載せて運用し、KubeConで定期的に登壇しています。2024〜2025年はTalos実験とマルチテナントvClusterパターンが話題でした。
**Mercari**はGCP GKEを中心に運用。KubeCon 2023〜2024で「マイクロサービス1,000個をArgo CDでGitOpsする事例」が共有され、2025年からはMLプラットフォームをKubeFlowから自家製Argo Workflowsベースへ移行中です。
**ZOZO**(ZOZOTOWN)はAWS EKS上でArgo CD + Karpenterの組み合わせで運用。ZOZO TECH BLOGにArgo Rolloutsのcanaryパターン事例が多数公開されています。
**CyberAgent(CAグループ)** は子会社が多くそれぞれクラウドを使い分けますが、社内共通プラットフォームの**AKE(AbemaTV Kubernetes Engine)** と**CIU(CyberAgent Internal Unit)** がK8s標準を定義します。ABEMA TVはGKE + Argo CDが主軸です。
**SoftBank**は自社OpenStack上でK8sを運用しつつOperatorパターンを積極活用し、B2B 5GパケットコアにK8sを適用する試みをKubeConで発表しています。
24. K8sアンチパターン — よく見る10の失敗
現場で繰り返されるミスをまとめると次の通り。
1. **`latest`タグを使う** — イメージキャッシュで非決定性が発生。常にdigestかSemVerで固定。
2. **livenessをreadinessのように扱う** — liveness失敗はコンテナ再起動。DBコネクション失敗にlivenessを当てると無限再起動。
3. **resources requests/limits未設定** — クラスタ全体がノイジーネイバーに翻弄される。
4. **`hostNetwork: true`の濫用** — セキュリティ・移植性とも損失。
5. **Jobの代わりにDeploymentで一回限りのタスク** — 完了済みPodが永久に残る。
6. **kubectl apply -fで直接デプロイ** — GitOps導入後に手で触るとself-healで戻される。
7. **一つのHelmチャートに全サービス** — 1行修正で全部再デプロイ。
8. **PDBなしでノードドレイン** — ダウンタイム発生。
9. **Operator万能主義** — kubectl applyで十分なものをCRDにして複雑度増。
10. **secretをConfigMapに平文** — もしくはGitに平文commit。ESO/SOPS/sealed-secretsで解決。
25. 2026年推奨スタック — 規模別ガイド
組織規模に応じて推奨スタックは異なります。
**小規模(1〜3名、1〜3クラスタ)**: k3sまたはマネージドEKS/GKE/AKS、Helm + Argo CD、Cilium CNI、Karpenter(AWS)またはCluster Autoscaler、k9s + Headlamp。
**中規模(10〜50名、5〜20クラスタ)**: マネージドK8s + Cluster API一部導入、Helm + Kustomize混在、Argo CD ApplicationSet、KEDA + Karpenter、Kyvernoポリシー、OpenTelemetry + Grafanaスタック、ESO + sealed-secrets。
**大規模(100名以上、50クラスタ以上)**: Cluster API本格導入またはTalos Linux、Argo CD複数インスタンスまたはFlux + Argo CD併用、KarmadaまたはLiqoでマルチクラスタ、自前Operator多数、Crossplaneでクラウド抽象化、Pixie + Beylaで自動可観測、Karporでワークロードインベントリ。
26. マイグレーションガイド — どこから手をつけるか
既にK8sを運用しているチームが2026年標準へ段階的に移る場合の推奨順序は次の通り。
1. **PSP → PSS + Kyverno**(即時、1.25以後PSPは削除済)。
2. **Cluster Autoscaler → Karpenter**(AWS使用時、コスト削減効果大)。
3. **Ingress → Gateway API**(段階的、新サービスから)。
4. **HPAのみ → HPA + KEDA**(イベント駆動ワークロード特定→0スケール)。
5. **Argo CD/Flux未導入 → 導入**(最大の運用改善)。
6. **サイドカーIstio → Ambient Mesh**(メモリ大幅削減)。
7. **独自Bashスクリプト運用 → Operatorでカプセル化**(小さいものから)。
8. **単一クラスタ → CAPIで標準化**(クラスタ5つを超えたら)。
27. 結論 — 2026年のK8sは「プラットフォームを作るプラットフォーム」
2026年のKubernetesはもはや「ワークロードオーケストレーター」ではなく、「**プラットフォームを作るためのコントロールプレーン**」です。Argo CD/Fluxによる宣言型運用、Karpenter/KEDAによる自動スケール、Cluster API/Talosによるクラスタ自体のIaC、Operator/Crossplaneによる抽象化、k9s/Headlamp/Pixieによる人間のためのUX — この5軸が2026年の標準になりました。
要点は「**全部のツールを導入するのではなく、組織規模に合った最小スタックを選んで段階的に拡張する**」ことです。Helm + Argo CD + Karpenter + Cilium + k9sを上手く使うだけで、ほとんどの組織には十分です。
References
- [kubernetes.io](https://kubernetes.io/) — 公式ドキュメント、1.33リリースノート
- [helm.sh](https://helm.sh/) — Helm公式(3.18)
- [kustomize.io](https://kustomize.io/) — Kustomize公式
- [argo-cd.readthedocs.io](https://argo-cd.readthedocs.io/) — Argo CDドキュメント
- [fluxcd.io](https://fluxcd.io/) — Flux v2公式
- [keda.sh](https://keda.sh/) — KEDA公式、70+ スケーラ
- [karpenter.sh](https://karpenter.sh/) — Karpenter公式
- [cluster-api.sigs.k8s.io](https://cluster-api.sigs.k8s.io/) — Cluster APIドキュメント
- [talos.dev](https://www.talos.dev/) — Talos Linux公式
- [k3s.io](https://k3s.io/) — k3s公式
- [k0sproject.io](https://k0sproject.io/) — k0s公式
- [k9scli.io](https://k9scli.io/) — k9s公式
- [github.com/lensapp/lens](https://github.com/lensapp/lens) — Lens GitHub
- [headlamp.dev](https://headlamp.dev/) — Headlamp公式
- [github.com/cncf/sandbox](https://github.com/cncf/sandbox) — CNCF Sandbox一覧
- [sigs.k8s.io/controller-runtime](https://github.com/kubernetes-sigs/controller-runtime) — controller-runtime
- [book.kubebuilder.io](https://book.kubebuilder.io/) — Kubebuilder Book
Kubernetesは2014年の最初のcommit以来11年間、「ゆるく結合したコントローラ群」という本質を失わずに進化してきました。2026年のエコシステムも同じ土台の上に新たなレイヤーを積む方向で発展しており、この記事で整理した6レイヤーは今後数年変わらない骨格です。
현재 단락 (1/444)
Kubernetesが1.0に到達した2015年7月から11年が経ちました。2026年5月時点の安定版最新は1.33(Octarine)で、1.30〜1.33は4ヶ月サイクルでリリースされ、1.34が...