K3sを使ってシングルノードのKubernetesクラスタを構築してみました。
K3sは、ホームラボや開発環境、IoT、エッジでのユースケースを想定した軽量のKubernetesディストリビューションです。
今回の構築先のアーキテクチャ、オペレーティングシステムは、x86_64のUbuntu Server 24.04です。公式のインストール手順に従い、最初にファイアウォールを無効化します。
sudo ufw disable
インストールスクリプトを使ってK3sをインストールします。スクリプト実行時に様々なオプションを指定できますが今回は最小限のオプションで実行してみます。
curl -sfL https://get.k3s.io | sh -s - --write-kubeconfig-mode 644
--write-kubeconfig-mode 644
はkubeconfgファイルのパーミッションを指定するオプションです。デフォルトの値は600
ですが644
に変更することでsudo
なしでkubectl
を実行できるようになります。
インストール結果を確認します。
k3s --version k3s version v1.30.6+k3s1 (1829eaae) go version go1.22.8 k3s check-config ... - Storage Drivers: - "overlay": - CONFIG_OVERLAY_FS: enabled (as module) STATUS: pass
クラスタの作成状況を確認します。
kubectl get nodes NAME STATUS ROLES AGE VERSION k3s-node1 Ready control-plane,master 21d v1.30.6+k3s1 kubectl cluster-info Kubernetes control plane is running at https://127.0.0.1:6443 CoreDNS is running at https://127.0.0.1:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy Metrics-server is running at https://127.0.0.1:6443/api/v1/namespaces/kube-system/services/https:metrics-server:https/proxy To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
Kubenetsクラスタが動作していることを確認できました。最後に、K3sで作成した環境は以下のコマンドでアンインストールできます。
/usr/local/bin/k3s-uninstall.sh
とても簡単で良いですね。アンインストールまで簡単にできるところが良いなと思いました。