はじめに

  • Namespace を使うと同一クラスタ内で Pod や Service, Deployment や StatefulSet などを仮装的なクラスタとしてグルーピングして取り扱うことができて便利。
  • ここでは kubectl コマンドで Namespace を切り替えて扱う方法についてまとめる。

Namespace を一時的に切り替える

  • 実行コマンドごとに Namespace を切り替えたい場合は -n オプションを使う。
# 表示する Namespace を "mynamespace" に切り替える
$ kubectl -n mynamespace get all

Namespace を永続的に切り替える

  • 接続中のコンテキストでのデフォルト Namespace を変更する。
# コンテキストのデフォルト Namespace を "mynamespace" に変更する
$ kubectl config set-context $(kubectl config current-context) --namespace=mynamespace

# Namespace を確認する
$ kubectl config view | grep namespace:

特定の Namespace 用の kubectl コマンドを用意する

  • 同一クラスタ内で複数 Namespace を扱っている際、永続的には切り替えたくないが特定の Namespace に頻繁に切り替えたいとする。
  • この場合は特定の Namespace が適用済みの kubectl コマンドを用意すると便利かもしれない。
kubectl-mynamespace.sh
#!/bin/sh
/usr/local/bin/kubectl -n mynamespace $@
  • 使い方は通常の kubectl コマンドと同様
./kubectl-mynamespace.sh get all
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.