現場実践|Kubernetes・IaC上級

Kubernetesの基礎と実践入門|Podから始めるコンテナオーケストレーション

「DockerはわかったけどKubernetesは難しい」——Kubernetesの基本概念(Pod・Deployment・Service)をDocker経験者向けに段階的に解説します。最初の一歩として最適な入門ガイドです。

読了目安:約18分更新日:2026年3月

💡 KubernetesはDockerの「次のステップ」。コンテナを本番環境でスケールさせるために不可欠な技術で、2026年の現場ではKubernetes知識があるインフラエンジニアの需要が特に高いです。

この記事を書いた人
現役ITエンジニア・IT講師(経験14年)
CCNA・CCNP 取得LPIC-1 保有SES現場を複数経験

Docker・Kubernetes環境の設計・構築を複数案件で担当してきた立場から解説します。

1. KubernetesはDockerと何が違うか

Docker(単体)Kubernetes
スケーリング手動でコンテナを追加レプリカ数を指定するだけで自動スケール
自動復旧コンテナが落ちたら手動で再起動Podが落ちると自動で再起動・置き換え
ロードバランシング別途設定が必要Serviceリソースで自動的に負荷分散

2. 基本リソースの概念

📦
Pod
Kubernetesの最小デプロイ単位。1つ以上のコンテナを含む。同一Pod内のコンテナはlocalhostで通信できる。
🔄
Deployment
Podの作成・更新・スケーリングを管理するリソース。レプリカ数の指定・ローリングアップデートを実現する。
🌐
Service
Podへのアクセスを安定させるリソース。PodのIPは変わるが、ServiceのIPは固定される。LoadBalancerタイプでALBと連携。
⚙️
ConfigMap / Secret
環境変数・設定値(ConfigMap)と機密情報(Secret)をPodに注入するリソース。コードから設定を分離する。

3. 基本的なマニフェスト(YAML)

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.25
        ports:
        - containerPort: 80

4. kubectlの基本コマンド

kubectl get pods
kubectl get deployments
kubectl describe pod [pod-name]
kubectl logs [pod-name]
kubectl apply -f deployment.yaml
kubectl scale deployment nginx-deployment --replicas=5
kubectl delete deployment nginx-deployment
📌 この記事のポイント
  • KubernetesはDockerの次のステップ。自動スケーリング・自動復旧・ロードバランシングを実現
  • Pod(最小単位)・Deployment(Pod管理)・Service(ネットワーク)の3つが最初に覚えるべきリソース
  • kubectl apply -f・get・describe・logsの4コマンドが日常的に最もよく使うコマンド

キャリアの疑問、一緒に解決しませんか?

Route Bloomでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。

※Kubernetesのバージョンにより構文が異なります。公式ドキュメントもご参照ください。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:経営/個人事業/アパレル