安装containerd
下载安装包
wget https://github.com/containerd/containerd/releases/download/v1.6.8/cri-containerd-cni-1.6.8-linux-amd64.tar.gz
解压压缩包
#创建一个单独目录
mkdir containerd
#解压到当前创建的目录
tar -zxvf cri-containerd-cni-1.6.8-linux-amd64.tar.gz -C containerd
将解压的文件,复制到系统的配置目录和执行目录
cp -a containerd/etc/systemd/system/containerd.service /etc/systemd/system
cp -a containerd/etc/crictl.yaml /etc
cp -a containerd/etc/cni /etc
cp -a containerd/usr/local/sbin/runc /usr/local/sbin
cp -a containerd/usr/local/bin/* /usr/local/bin
cp -a containerd/opt/* /opt
启动
[root@VM-24-8-centos etc]# systemctl daemon-reload
[root@VM-24-8-centos etc]# systemctl enable containerd --now
Created symlink from /etc/systemd/system/multi-user.target.wants/containerd.service to /etc/systemd/system/containerd.service.
添加配置
[root@VM-24-8-centos etc]# mkdir /etc/containerd
[root@VM-24-8-centos etc]# containerd config default | tee /etc/containerd/config.toml
修改三个配置
1.
netns_mounts_under_state_dir = false
restrict_oom_score_adj = false
#找到sandbox_image配置,改为阿里云的地址
#sandbox_image = "k8s.gcr.io/pause:3.6"
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.6"
selinux_category_range = 1024
stats_collect_period = 10
stream_idle_timeout = "4h0m0s"
stream_server_address = "127.0.0.1"
2.
[plugins."io.containerd.grpc.v1.cri".containerd.runtimes.runc.options]
BinaryName = ""
CriuImagePath = ""
CriuPath = ""
CriuWorkPath = ""
IoGid = 0
IoUid = 0
NoNewKeyring = false
NoPivotRoot = false
Root = ""
ShimCgroup = ""
#这里改成true
SystemdCgroup = true
3.
#找到mirrors配置 配置如下
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://docker.mirrors.ustc.edu.cn"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."k8s.gcr.io"]
endpoint = ["https://registry.cn-hangzhou.aliyuncs.com/google_containers"]
安装crictl
下载
wget https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.23.0/crictl-v1.23.0-linux-amd64.tar.gz
解压
tar -zxvf crictl-v1.23.0-linux-amd64.tar.gz -C /usr/local/bin
配置
cat > /etc/crictl.yaml <<EOF
runtime-endpoint: unix:///var/run/containerd/containerd.sock
image-endpoint: unix:///var/run/containerd/containerd.sock
timeout: 10
debug: false
pull-image-on-create: false
EOF
启动
systemctl daemon-reload
测试
[root@VM-24-8-centos data]# crictl images
IMAGE TAG IMAGE ID SIZE