2017-09-08 33 views
2

ポッドはtest-1495806908-xn5jnで、容器は2つあります。私はcontainer-testと呼ばれるそれらの1つを再起動したいと思います。ポッド内の単一のコンテナを再起動することは可能ですか?そうでない場合は、どのようにしてポッドを再起動しますか?kubernetesポッド内のコンテナを再起動

ポッドでdeployment.yamlを使用して作成されました:

kubectl create -f deployment.yaml 
+0

ポッドはどのように作成しましたか? – oe18

+0

編集:kubectl create -f deployment.yaml – s5s

答えて

4

は、それはあなたのクラスタの設定にもよるが、単一の容器kubectl

ないを再起動することが可能ですあなたは "騙す"ことができ、docker kill the-sha-goes-hereは、 "失敗した"コンテナを再起動させます(もちろん、Podの再起動ポリシーはそれが何をすべきかを示しています)

どのように私はポッドが作成された方法によって異なりますが、あなたが提供するポッド名に基づいて、さらにreplicaSetの監督下に表示されますので、あなただけのことができポッド

を再起動してくださいkubectl delete pod test-1495806908-xn5jnとkubernetesは(新しいポッドが別の名前を持っていますので、kubectl get podsは二度とtest-1495806908-xn5jnを返すように期待していない)、その場所に

+0

デフォルトの再起動ポリシーは常に再起動します – Hem

1

を新規に作成しますkubernetesを持つため、全体の理由は、それはあなたのためのコンテナを管理していますポッド内の容器のライフサイクルについてはあまり気にする必要はありません。

replica setを使用するdeploymentセットアップがあるためです。 kubectl delete pod test-1495806908-xn5jnを使用してポッドを削除することができます。クーベルネットは、ダウンタイムなしで2つのコンテナを使用して新しいポッドの作成を管理します。ポッドで単一のコンテナを手動で再起動しようとすると、kubernetesの利点全体が無効になります。

2

ポッドを削除してKubernetesに再作成させるのではなく、特定のコンテナを再起動したい場合があります。

Doing a kubectl exec POD_NAME -c CONTAINER_NAME rebootは私のために働いた。

関連する問題