手当たり次第に書くんだ

飽きっぽいのは本能

Kubernetes 1 つの Pod 内で複数の CentOS コンテナを実行する

1 つの Pod の中で複数のコンテナを起動する Multi Container Pod の基本を確認します。Pod 内のコンテナは同じネットワーク名前空間を共有します。

Multi Container Pod の考え方

複数コンテナ Pod は、単に複数アプリを詰め込むための仕組みではありません。サイドカー、ログ収集、プロキシなど、密接に連携するコンテナを同じ Pod にまとめるために使います。

Manifest

kubectl apply -f - <<'EOF'
apiVersion: v1
kind: Pod
metadata:
  name: centos-multi-pod
spec:
  containers:
    - name: centos1
      image: quay.io/centos/centos:stream9
      command: ["sleep", "infinity"]
    - name: centos2
      image: quay.io/centos/centos:stream9
      command: ["sleep", "infinity"]
EOF

コンテナを指定して実行

kubectl get pod centos-multi-pod
kubectl exec -it centos-multi-pod -c centos1 -- cat /etc/os-release
kubectl exec -it centos-multi-pod -c centos2 -- cat /etc/os-release

まとめ

Multi Container Pod では、Pod 名だけでなく `-c` で対象コンテナを指定する必要があります。用途としては、メインコンテナを補助するサイドカー構成を意識すると理解しやすくなります。

Kubernetes 1 つの Pod 内で複数の CentOS コンテナを実行する

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る