Amazon EKS クラスターで終了状態にある名前空間のトラブルシューティング方法を教えてください。
最終更新日: 2021 年 12 月 14 日
Amazon Elastic Kubernetes Service (Amazon EKS) クラスター内の名前空間を削除しようとしました。しかし、名前空間は「Terminating」ステータスで止まっています。
簡単な説明
名前空間を削除するには、Kubernetes は名前空間内のすべてのリソースを削除し、登録された API サービスのステータスを確認する必要があります。Kubernetes が削除できなかったリソースが名前空間に含まれている場合、または API サービスのステータスが「False」の場合、名前空間は「Terminating」ステータスのままになります。
解決方法
「Terminating」ステータスのままになっている名前空間を削除するには、次の手順に従います。
1. 次のような JSON ファイルを保存します。
kubectl get namespace <terminating-namespace> -o json > tempfile.json
2. JSON ファイルを編集し、配列からファイナライザーを削除します。
3. 変更を適用するには、次のようにコマンドを実行します。
kubectl replace --raw "/api/v1/namespaces/<terminating-namespace>/finalize" -f ./tempfile.json
4. 終了する名前空間が削除されていることを確認します。
kubectl get namespaces
残りの名前空間が「Terminating」ステータスのままになっている場合は、このステップを繰り返します。