侧边栏壁纸
  • 累计撰写 45 篇文章
  • 累计创建 15 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

【kubernetes】Runtime和K8s组件安装

Administrator
2024-09-16 / 0 评论 / 0 点赞 / 58 阅读 / 4917 字 / 正在检测是否收录...

Runtime有很多种,有Docker或者Containerd。1.24版本以下一般选择Docker作为Runtime。高于1.24选择Containerd作为Runtime。我们安装1.28版本的kubernetes,这里选择Containerd。

1. 安装Containerd

所有节点安装docker-ce-20.10:

yum install docker-ce-20.10.* docker-ce-cli-20.10.* -y 

所有节点配置Containerd所需的模块:

cat > /etc/modules-load.d/containerd.conf <<EOF
overlay
br_netfilter
EOF

所有节点加载模块:

modprobe -- overlay
modprobe -- br_netfilter

所有节点配置Containerd所需的内核:

cat <<EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf
net.bridge.bridge-nf-call-iptables  = 1
net.ipv4.ip_forward                 = 1
net.bridge.bridge-nf-call-ip6tables = 1
EOF

所有节点加载内核:

sysctl --system

所有节点配置Containerd的配置文件:

mkdir -p /etc/containerd

containerd config default | tee /etc/containerd/config.toml

所有节点将Containerd的Cgroup改为Systemd:

vim /etc/containerd/config.toml

找到containerd.runtimes.runc.options,添加或修改SystemdCgroup = true(如果已存在直接修改,否则会报错),如下图所示:

所有节点将sandbox_image的Pause镜像改成符合自己版本的地址`registry.cn-beijing.aliyuncs.com/jiangxiaonan/pause:3.6`

仓库地址可以是国内公有云地址,也可以是个人仓库地址。

所有节点启动Containerd,并配置开机自启动:

systemctl daemon-reload
systemctl enable --now containerd

所有节点配置crictl客户端连接的运行时位置:

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

2. 安装Kubernetes组件

查看最新的Kubernetes 1.28是什么版本:

yum list kubeadm.x86_64 --showduplicates | sort -r | grep 1.28

最新的是1.28.2。

所有节点安装1.28最新版本kubeadm、kubelet和kubectl:

yum install kubeadm-1.28* kubelet-1.28* kubectl-1.28* -y

所有节点设置Kubelet开机自启动:

systemctl daemon-reload

systemctl enable --now kubelet

此时kubelet是起不来的,因为集群还没初始化,没有kubelet的配置文件,有报错不影响。

0
博主关闭了所有页面的评论