kubeadmを使ってkubernetesをインストールする時に、”cri-o configured with systemd cgroup manager, but did not receive slice as parent”エラーが出たときの対応方法を記します。
- 環境情報
- 解決方法
環境情報
本エラーが出て解決した環境情報は以下の通りです。
OS: Ubuntu 18.04 LTS
コンテナエンジン: CRI-O v1.17
kubernets関連: kubeadm v1.17, kubelet v1.17, kubectl v1.17
解決方法
本エラーは、CRI-Oはcgroupがsystemdなのに対し、kubeletのcgroupが指定されていないことで起こったエラーです。従って、kubeletのcgroupを指定する必要があります。
以下のコマンドでkubeletの設定ファイルを編集し、起動コマンドにcgroup-driverオプションを使って、systemdを指定します。
$ sudo vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf → 以下の行に、--cgroup-driver="ststemd"を追加します。 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS --cgroup-driver="systemd"
設定後は、以下のコマンドでサービスを再起動します。
ubuntu@ip-172-31-10-183:~$ sudo systemctl daemon-reload ubuntu@ip-172-31-10-183:~$ sudo systemctl restart kubelet
再度kubeadm initを実施すると、エラーが解消されます。
以上です。