主页
手机版
扫描查看手机站
所在位置:首页 → 教程资讯 → k8s搭建(1.28.2版本)

k8s搭建(1.28.2版本)

发布: 更新时间:2024-11-10 10:01:08

不知道从什么时候开始,openEuler已经开始支持使用containerd的k8s集群了。之前我学习的时候最高只能支持到1.23版本,因此这里再来写一篇关于部署运行时为containerd的集群。

为什么要单独写关于openEuler的部署方式呢?因为使用centos的部署方式在openEuler上部署时会有一些差异,而这些差异的地方可能导致无法继续进行下去,所以我单独写一篇博客来避开这些坑点。

1. 安装containerd

你可能会问,一个containerd有什么不会安装的,直接使用yum不就可以安装好了吗?是的,在其他操作系统上确实可以这么做,但是在openEuler上这么做不会报错,因为yum仓库里面确实有containerd的rpm包,你确实可以装上,但是那个containerd版本太低,无法正常使用。因此需要下载tar包来安装。

1.1 下载tar包

# 确保没有使用官方仓库的containerd
[root@master ~]# yum remove containerd -y
[root@master ~]# wget https://github.com/containerd/containerd/releases/download/v1.7.16/containerd-1.7.16-linux-amd64.tar.gz
[root@master ~]# tar -zxvf containerd-1.7.16-linux-amd64.tar.gz 
[root@master ~]# mv bin/* /usr/local/bin/

1.2 编写服务单元文件

[root@master ~]# vim /usr/lib/systemd/system/containerd.service

[Unit]
Description=containerd container runtime
Documentation=https://containerd.io
After=network.target local-fs.target

[Service]
ExecStartPre=-/sbin/modprobe overlay
ExecStart=/usr/local/bin/containerd

Type=notify
Delegate=yes
KillMode=process
Restart=always
RestartSec=5

# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNPROC=infinity
LimitCORE=infinity

# Comment TasksMax if your systemd version does not supports it.
# Only systemd 226 and above support this version.
TasksMax=infinity
OOMScoreAdjust=-999

[Install]
WantedBy=multi-user.target

然后给containerd设计开机自启。

[root@master ~]# systemctl daemon-reload
[root@master ~]# systemctl enable --now containerd

2. 安装runc

同样,不能使用yum安装的版本(至少面前不可以--文章写于2024-11-9)。

[root@master ~]# yum remove runc -y
[root@master ~]# wget https://github.com/opencontainers/runc/releases/download/v1.1.12/runc.amd64
[root@master ~]# install -m 755 runc.amd64 /usr/local/sbin/runc

3. 安装cni插件

3.1 下载文件

[root@master ~]# wget https://github.com/containernetworking/plugins/releases/download/v1.4.1/cni-plugins-linux-amd64-v1.4.1.tgz
[root@master ~]# mkdir -p /opt/cni/bin
[root@master ~]# tar Cxzvf /opt/cni/bin cni-plugins-linux-amd64-v1.4.1.tgz

3.2 设置crictl运行端点

cat <<EOF > /etc/crictl.yaml
runtime-endpoint: unix:///run/containerd/containerd.sock
image-endpoint: unix:///run/containerd/containerd.sock
timeout: 5
debug: false
EOF

文章排行
软件上新 查看更多