kubectl は Kubernetes API を操作するための基本ツールです。クラスタのノードに直接 SSH して操作するのではなく、管理端末から kubeconfig を使ってリモートの Kubernetes API に接続する形にすると、操作場所と権限を整理しやすくなります。
この記事の位置づけ
この記事は、リモートから Kubernetes クラスタを操作するために kubectl を導入する記事です。kubectl は管理端末側の道具であり、クラスタ本体の構築とは分けて整理します。
次に読む記事
参考
書籍
書籍
参考書籍
Kubernetes完全ガイド 第2版
Kubernetes の仕組み、リソース、ネットワーク、運用観点を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
kubectl を導入する
古い記事では CentOS 上でバイナリを直接取得する例を書いていました。現在も考え方は同じで、利用する環境に合わせて公式手順または OS のパッケージ管理で kubectl を導入します。
curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
kubectl version --clientリモートクラスタへ接続する
リモートの Kubernetes に接続するには、接続先クラスタの kubeconfig が必要です。kubeconfig には cluster、user、context が含まれます。
kubectl config view --raw
mkdir -p ${HOME}/.kube
chmod 700 ${HOME}/.kube接続先を確認する
kubectl config current-context
kubectl config get-contexts
kubectl cluster-info
kubectl get node -o wide複数クラスタを扱う場合
複数クラスタを扱う場合は、context 名を分かりやすくしておくことが重要です。クラスタ名や context 名が似ていると、意図しないクラスタで操作する危険があります。
kubectl config use-context <context-name>
kubectl config rename-context <old-context> <new-context>まとめ
kubectl は単なるコマンドではなく、Kubernetes API への操作入口です。管理端末、kubeconfig、context、権限を整理しておくことで、複数クラスタを扱う場合でも誤操作を減らせます。
Kubernetes kubectl の導入 – リモートクラスタを操作する基本



