【ケーナインズ】

k9s(Kubernetes TUI) とは?

最終更新:
💡 Kubernetesの番犬、ターミナルから全部見守る

k9sとは、Kubernetesクラスタをターミナル上の画面(TUI)で監視・操作できるOSSツール。Pod一覧・ログ・シェル接続などのキー操作と、確認なしで削除するキーなどの注意点をわかりやすく解説。

📌 このページのポイント
k9s ― Kubernetes TUI k9s - Pods (default) ctx: prod NAME STATUS RESTARTS AGE api-server-7f8b9c Running 0 2d web-front-4d5e6f Running 1 5d worker-abc123 CrashLoop 15 1h db-migrate-job Completed 0 3d l:logs s:shell d:describe enter:view /:filter :ctx:switch ワンキーでログ閲覧 l キー Podにシェル接続 s キー 異常Podを探す ctrl-zでエラー表示を切替
k9sのTUI画面イメージ
ひよこ ひよこ
kubectlでいちいちコマンドを打つのが大変なんだけど…
ペンギン先生 ペンギン先生
k9sを使うと、ターミナルの中にPodやDeploymentの一覧が出て、状態の変化を見張りながらキーボードで操作できるよ。よく使う確認作業なら、kubectlのコマンドを毎回打たなくて済むんだ
ひよこ ひよこ
具体的にどんなことができるの?
ペンギン先生 ペンギン先生
「:pod」でPod一覧、「:deploy」でDeployment一覧に切り替えられるよ。Podを選んでlキーでログ、sキーでコンテナにシェル接続、dキーでdescribe、yキーでYAMLを表示できる。/で名前を絞り込んで、escで前の画面に戻るんだ
ひよこ ひよこ
Podが異常な時もすぐ分かる?
ペンギン先生 ペンギン先生
一覧のSTATUS列やRESTARTS列を見れば、CrashLoopBackOffのPodや再起動を繰り返しているPodを見つけやすいよ。ctrl-zでエラーのあるリソースの表示を切り替えられるし、pキーで1つ前のコンテナのログも見られるから、落ちる直前の様子も確認できるんだ
ひよこ ひよこ
複数のクラスタを使ってる場合は?
ペンギン先生 ペンギン先生
「:ctx」でコンテキスト(接続先のクラスタ)を一覧から選んで切り替えられるし、「:ns」でNamespaceも切り替えられるよ。本番と検証環境を行き来すると取り違えやすいから、表示中のコンテキスト名を確認するくせをつけようね
ひよこ ひよこ
k9sからPodを削除することもできるの?
ペンギン先生 ペンギン先生
ctrl-dで削除できて、このときは確認のダイアログが出るよ。でもctrl-kは確認なしで削除する(kubectl delete --now相当)から要注意なんだ。見るだけでいいときは「k9s --readonly」で起動すると、クラスタを変更する操作が無効になるよ
もっと詳しく知りたい人へ

k9sはどうやってインストールする?

公式READMEでは、macOSやLinuxならHomebrewで「brew install derailed/k9s/k9s」、そのほかにリリースページのバイナリやgo installなどの方法が案内されているよ。k9sは手元のkubeconfigの設定を使ってクラスタに接続するから、先にkubectlで接続できる状態にしておくとスムーズだね。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「k9s」って出てきたら「Kubernetesをターミナルで直感的に操作するツール」と思えればだいたいOK!
📖 おまけ:英語の意味
「K9s」 = (K8sのもじり)
💬 Kubernetesの略称K8sをもじった名前で、K9はcanine(犬)の語呂合わせとも言われるよ。作者による由来の説明は見つからなかったんだ

参考資料

← 用語集にもどる