Docker & Kubernetes/쿠버네티스
Kubernetes 컨테이너 런타임 추천(containerd, CRI-O, Docker Engine)
miracle21
2024. 11. 20. 09:10
반응형
Kubernetes에서 더이상 Docker shim을 사용하지 않아 containerd, CRI-O 와 같은 런타임만 필요로 한다.
그래도 Docker를 쓰는 김에 Docker Engine을 컨테이너 런타임으로 사용했었는데
kubeadm init을 하면 unknown service runtime.v1.RuntimeService 에러가 발생해서
설정파일을 삭제하는 등의 귀찮은 작업을 해야하고, 그마저도 에러가 많이 발생해서 CRI-O로 바꿨다.
아래는 CRI-O 설치 방법이다.
https://github.com/cri-o/packaging/blob/main/README.md#usage
packaging/README.md at main · cri-o/packaging
CRI-O deb and rpm packages. Contribute to cri-o/packaging development by creating an account on GitHub.
github.com
나는 Ubuntu를 사용해서 deb packages 부분을 참고했다.
Install the dependencies for adding repositories
apt-get update
apt-get install -y software-properties-common curl
Add the Kubernetes repository
curl -fsSL https://pkgs.k8s.io/core:/stable:/$KUBERNETES_VERSION/deb/Release.key |
gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/$KUBERNETES_VERSION/deb/ /" |
tee /etc/apt/sources.list.d/kubernetes.list
Add the CRI-O repository
curl -fsSL https://pkgs.k8s.io/addons:/cri-o:/stable:/$CRIO_VERSION/deb/Release.key |
gpg --dearmor -o /etc/apt/keyrings/cri-o-apt-keyring.gpg
echo "deb [signed-by=/etc/apt/keyrings/cri-o-apt-keyring.gpg] https://pkgs.k8s.io/addons:/cri-o:/stable:/$CRIO_VERSION/deb/ /" |
tee /etc/apt/sources.list.d/cri-o.list
Install the packages
apt-get update
apt-get install -y cri-o kubelet kubeadm kubectl
Start CRI-O
systemctl start crio.service
Bootstrap a cluster
swapoff -a
modprobe br_netfilter
sysctl -w net.ipv4.ip_forward=1
kubeadm init
반응형