(O+P)ut

アウトプット



(O+P)ut

Output Log

【Kubernetes】ポッド内の主要プロセスを落とした際の動作検証

スポンサーリンク

状況

kubectl apply -f hoge.yaml

にてPodを起動。

以下のようにyamlファイルを記載しているのでポッドを落とすと「replica:1」を満たすために再度ポッドがデプロイされる。

$ cat hoge.yaml
kind: Deployment
apiVersion: apps/v1
metadata:
  labels:
    app: hoge
  name: hoge
spec:
  replicas: 1
...

ポッド内にログインし主要プロセスをkillする

以下のようにポッド内にログインし、主要プロセス(プロセス番号1)をkillする。

kubectl exec -it hoge /bin/sh
sh-4.4$ kill 1
sh-4.4$ command terminated with exit code 137

上記のように「command terminated with exit code 137」というメッセージの後に強制ログアウトされる。

ポッドの状態を監視

フェーズ1として以下のように該当のポッド情報が確認できない。

> kubectl get pods
NAME                        READY   STATUS             RESTARTS   AGE

フェーズ2として「CrashLoopBackOff 」という状態となる。
この状態は「コンテナ内のプロセスの終了を検知してコンテナの再起動を繰り返している」とのこと。

> kubectl get pods
NAME                        READY   STATUS             RESTARTS   AGE
hoge   0/1     CrashLoopBackOff   0          xx

フェース3としてポッドが立ち上がる。RESTARTSという箇所の数値が一つ増加する。

> kubectl get pods
NAME                        READY   STATUS    RESTARTS   AGE
hoge   1/1     Running   1          xx

以上、Kubernetesのポッド単体検証メモでした。


他の記事を読む