Tocyukiのブログ

ギターと柔術とプログラミングが好き!

Kubernetes運用のTips

Kubernetes運用関連で自身が遭遇した事象への対処の備忘録としてTips集的にエントリを育てていく

Kubernetesで消えないPodを強制的に削除する

まれにkubectl delete podsしてもPodが消えてくれないことがあり、その時は--grace-period=0, --forceオプションを付けることで強制的に削除することができる。

kubectl delete pods {$pod_name} --grace-period=0 --force

この方法はkubeletからの確認を待たずに強制的に削除するので、Podのプロセスが完全になくならなかったりほかのリソースとの競合などが起こりえる。 この方法を常に行うような状況の場合は原因を追究する必要がある。

Option Description
--grace-period=0 正常に終了するためにリソースに与えられる秒単位の時間。負の場合は無視されます。即時シャットダウンするには 1 に設定します。 --force が true (強制削除) の場合にのみ 0 に設定できます。
--force true の場合、API からリソースを直ちに削除し、正常な削除をバイパスします。一部のリソースをすぐに削除すると、不整合やデータ損失が発生する可能性があるため、確認が必要であることに注意してください。

kubernetes.io

TLS証明書のエラー

kubectlコマンド実行時に以下の様なエラーで接続できない場合、証明書の不一致が原因である可能性が高い

Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")

kubeconfigを確認して実行元で持っている情報と差分がないかを確認する

kubernetes.io