Ubuntu 22.04 で Kubernetes クラスターを管理するためのツールをインストールします。ここで扱うのは、クラスターを構築するためのノード設定ではなく、構築後にクラスターを操作・確認するための管理ツールです。
主に kubectl、Helm、必要に応じて calicoctl を整理します。管理端末やコントロールプレーン上で使うことが多いですが、どのホストに入れるかは運用方針に合わせて決めます。
管理ツールの位置づけ
kubectlは Kubernetes API を操作する基本ツールHelmは Kubernetes アプリケーションをチャートとして管理するツールcalicoctlは Calico を直接確認・管理するための補助ツール- ワーカーノードに必ず入れるものではなく、管理操作を行う端末に入れる
- クラスター操作には kubeconfig と権限設計が必要になる
kubectl をインストールする
kubeadm と同じ Kubernetes リポジトリを使っている場合、kubectl は APT で導入できます。
sudo apt update
sudo apt install -y kubectl
sudo apt-mark hold kubectl
kubectl version --clientクラスターへ接続するには、管理対象クラスターの kubeconfig を配置します。コントロールプレーン上で作業する場合は、次のように admin.conf をユーザーの kubeconfig として配置することがあります。
mkdir -p ~/.kube
sudo cp /etc/kubernetes/admin.conf ~/.kube/config
sudo chown "$(id -u):$(id -g)" ~/.kube/config
kubectl get nodes管理端末から接続する場合は、kubeconfig を安全に配布し、対象クラスターと権限を明確に分けます。
kubectl の補完を設定する
頻繁に操作する端末では、シェル補完を有効化しておくと便利です。
sudo apt install -y bash-completion
echo 'source <(kubectl completion bash)' >> ~/.bashrc
echo 'alias k=kubectl' >> ~/.bashrc
echo 'complete -o default -F __start_kubectl k' >> ~/.bashrc反映するには、シェルを開き直すか source ~/.bashrc を実行します。
Helm をインストールする
Helm は Kubernetes 上のアプリケーションをチャートとして管理するためのツールです。公式スクリプトを使う方法もありますが、ここでは APT リポジトリを追加して導入します。
sudo apt install -y apt-transport-https ca-certificates curl gpg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://packages.buildkite.com/helm-linux/helm-debian/gpgkey | sudo gpg --dearmor -o /etc/apt/keyrings/helm.gpg
echo 'deb [signed-by=/etc/apt/keyrings/helm.gpg] https://packages.buildkite.com/helm-linux/helm-debian/any/ any main' | sudo tee /etc/apt/sources.list.d/helm.list >/dev/null
sudo apt update
sudo apt install -y helm
helm versionHelm は便利ですが、クラスターへ何を投入したかが分かりにくくなることもあります。運用では、チャートの値ファイルをリポジトリで管理し、手元の一回限りの変更にしない方が安全です。
Helm の補完を設定する
echo 'source <(helm completion bash)' >> ~/.bashrckubectl と同じく、シェルを開き直すか source ~/.bashrc で反映します。
calicoctl を使う場合
CNI に Calico を使っている場合、calicoctl があると Calico 側のリソース確認に使えます。ただし、すべての環境で必須ではありません。
curl -L https://github.com/projectcalico/calico/releases/latest/download/calicoctl-linux-amd64 -o calicoctl
chmod +x calicoctl
sudo install -m 0755 calicoctl /usr/local/bin/calicoctl
calicoctl versionアーキテクチャが arm64 の場合は、対応するバイナリを選びます。Calico のバージョンや導入方式によって確認方法が変わるため、実際のクラスターに合わせて使います。
確認すること
kubectl get nodes
kubectl get pods -A
helm version
helm list -Akubectl でノードと Pod が見えること、Helm のクライアントが動くことを確認します。Helm のリリース一覧は、まだ Helm で何も導入していなければ空でも問題ありません。
まとめ
Kubernetes の管理ツールは、クラスターを構築するノード設定とは役割が違います。kubectl は API 操作、Helm はアプリケーション管理、calicoctl は Calico の補助確認に使います。
管理ツールを入れるホスト、kubeconfig の配置、権限の範囲を決めておくと、後からクラスターを増やしたときにも混乱しにくくなります。Kubernetes では、ツールのインストールよりも、どの権限でどのクラスターを操作しているかを明確にすることが重要です。
書籍
Kubernetes完全ガイド 第2版
Kubernetes の仕組み、リソース、ネットワーク、運用観点を体系的に確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
関連記事
- Ubuntu 22.04 Kubernetes クラスター構築の事前準備 – kubeadm ノードの前提を整える
- Kubernetes クラスター構築
- Ubuntu 22.04 Netplan ネットワーク設定 – DHCP / 固定 IP / DNS の基本
- Ubuntu 22.04 chrony の設定 – サーバー運用向けに時刻同期を管理する
- Ubuntu 22.04 apt update / apt upgrade の基本 – 手動アップデートの確認手順




