0
点赞
收藏
分享

微信扫一扫

云原生微服务第一章之部署containerd

前言介绍

未来k8s 1.24版本装将会取消使用docker


1.23版本之前的架构

kubectl -> dockershim -> dockerd -> containerd -> containerd-shim -> runc


1.24版本及之后的架构

kubectl -> containerd ->containerd-shim ->run


由于之前docker包含了containerd,所以我们不需要再部署containerd,在1.24版本之后取消了docker,所以我们在部署k8s之前,需要先部署containerd


部署containerd

前言:另外由于centos系统将不再维护中,我们这里使用的是ubantu的系统。

系统版本:Ubantu20.04

# 软件下载解压
cd /usr/local/src
wget -c https://github.com/containerd/containerd/releases/tag/v1.6.6
tar xf containerd-1.6.6-linux-amd64.tar.gz
cp bin/* /usr/bin/

# 生成配置文件并修改,新增154,155行
containerd config default > /etc/containerd/config.toml
vim /etc/containerd/config.toml
...
153 [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
154 [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
155 endpoint = ["https://9916w1ow.mirror.aliyuncs.com"]
...

# 创建启动service
cat >> /lib/systemd/system <eof
[Unit]
Description=containerd container runtime
Documentation=http://containerd.io
After=network.target local-fs.target

[Service]
ExecStartPre=/usr/sbin/modprobe overlay
ExecStart=/usr/bin/containerd
Type=notify
Delegate=yes
KillMode=process
Restart=on-failure
RestartSec=5
LimitNPROC=infinity
LimitNOFILE=infinity
TasksMax=infinity
OOMScoreAdjust=-999

[Install]
WantedBy=multi-user.target
eof
systemctl enable containerd
systemctl start containerd

 部署containerd客户端工具nerdctl

wget -c https://github.com/containerd/nerdctl/releases/download/v0.22.0/nerdctl-0.22.0-linux-amd64.tar.gz
tar xf nerdctl-0.22.0-linux-amd64.tar.gz
cp nerdctl /usr/bin/
netdctl version

部署CNI 网络插件

wget -c https://github.com/containernetworking/plugins/releases/download/v1.1.1/cni-plugins-linux-amd64-v1.1.1.tgz
# 此目录为存放网络插件目录,执行容器网络指令的时候默认会来这里找插件,不可改动为别的目录
mkdir -p /opt/cni/bin
tar xf cni-plugins-linux-amd64-v1.1.1.tgz -C /opt/cni/bin/

nerdctl命令简单演示

# nerdctl和docker命令基本类似
root@yanghengtai-virtual-machine:/opt# nerdctl network ls
NETWORK ID NAME FILE
0 bridge /etc/cni/net.d/nerdctl-bridge.conflist
host
none
root@yanghengtai-virtual-machine:/opt# nerdctl ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
root@yanghengtai-virtual-machine:/opt#
root@yanghengtai-virtual-machine:/opt# nerdctl images
REPOSITORY TAG IMAGE ID CREATED PLATFORM SIZE BLOB SIZE







举报

相关推荐

0 条评论