containerd创建cni网络
1、下载cni工具源码包和网络插件包
访问地址:
https://github.com/containernetworking/plugins
https://github.com/containernetworking/cni
下载某一个版本的包
mkdir -p /root/cni && cd /root/cni
wtet https://github.com/containernetworking/cni/archive/refs/tags/v1.2.3.tar.gz
wtet https://github.com/containernetworking/plugins/releases/download/v1.6.2/cni-plugins-linux-amd64-v1.6.2.tgz
2、创建cri插件解压目录,解压cni-plugins插件包
mkdir /root/cni/cni-plugins
tar -xf cni-plugins-linux-amd64-v1.6.2.tgz -C /root/cni/cni-plugins
tar -xf cni-1.2.3.tar.gz
我这里将cni-plugins和cni-1.2.3移动到opt目录安装:mv cni-1.2.3 /opt/cni && mv cni-plugins /opt/
3、准备cni的网络配置文件
mkdir -p /etc/cni/net.d
vi /etc/cni/net.d/10-mynet.conf {"cniVersion": "1.0.0", // CNI 规范版本"name": "mynet", // 网络配置名称(自定义标识)"type": "bridge", // 插件类型:桥接"bridge": "cni0", // 创建的网桥设备名称"isGateway": true, // 是否为网桥配置网关IP"ipMasq": true, // 是否设置IP伪装(NAT)"ipam": // IP地址管理配置{"type": "host-local", // 使用本地存储分配IP"subnet": "10.88.0.0/16", // 分配的IP子网范围"routes": [{ "dst": "0.0.0.0/0" } // 默认路由(所有流量通过网桥)]} }
vi /etc/cni/net.d/99-loopback.conf {"cniVersion": "1.0.0", // CNI 规范版本"name": "lo", // 网络配置名称(注意:不是设备名)"type": "loopback" // 插件类型:回环设备 }
4、安装json解析工具,
apt-get install jq