Minikube から MicroK8S に乗り換えたのでメモ。
Snap でインストールする。
sudo apt update -y sudo apt upgrade -y sudo snap install microk8s --classic
ユーザーを microk8s グループに所属させる。
sudo usermod -a -G microk8s $USER sudo chown -f -R $USER ~/.kube newgrp microk8s microk8s status --wait-ready
必要なアドオンを有効化しておく。
microk8s enable dns microk8s enable dashboard microk8s enable hostpath-storage microk8s enable ingress microk8s enable registry
一旦動作確認。ノードとポッド一覧を見る。
kubectl get no kubectl get po -A
kubeconfig を生成する。
あとは kubectl を “microk8s kubectl” のエイリアスにしておく。
microk8s config > ~/.kube/config echo "alias kubectl='microk8s kubectl'" >> ~/.bashrc source ~/.bashrc
MicorK8S の内蔵レジストリを使うので、SSL なしの in-secure registry の設定が必要。
Docker の daemon.json 設定を変えておく。
/* /etc/docker/daemon.js */ { "insecure-registries" : ["192.168.122.64:32000"] }
daemon.json をリロードする。
sudo systemctl daemon-reload sudo systemctl restart docker
MicroK8S の containerd にも内蔵レジストリを使う設定をしておく。
ホスト名:ポート番号のディレクトリを作って、そこにSSL証明書を無視する設定を記入。
sudo mkdir -p /var/snap/microk8s/current/args/certs.d/192.168.122.64:32000 sudo tee /var/snap/microk8s/current/args/certs.d/192.168.122.64:32000/hosts.toml << EOF server = "http://192.168.122.64:32000" [host."http://192.168.122.64:32000"] capabilities = ["pull", "resolve", "push"] skip_verify = true EOF
そしたら microk8s を再起動。
microk8s stop microk8s start
このあと、一通り docker container を新しいレジストリに push したら乗り換え完了。