Debian12使用RKE2离线部署3master2node三主两从的k8s集群详细教程

一、前提步骤

1、在各个节点执行(所有 Server 和 Agent 节点)

bash 复制代码
apt install apparmor -y
apt install curl -y

2、设置各节点Host文件(所有 Server 和 Agent 节点)

bash 复制代码
192.168.144.175 master01
192.168.144.167 master02
192.168.144.168 master03
192.168.144.169 node01
192.168.144.170 node02

3、永久禁用各节点的交换分区(所有 Server 和 Agent 节点)

bash 复制代码
swapoff -a && sed -i 's/.*swap.*/#&/' /etc/fstab # 注释掉swap那一行

4、安装过程必须以 root 用户或通过 sudo 运行(所有 Server 和 Agent 节点)

5、下载镜像(所有 Server 和 Agent 节点)

bash 复制代码
mkdir /root/rke2-artifacts && cd /root/rke2-artifacts/
curl -OLs https://github.com/rancher/rke2/releases/tag/v1.31.4%2Brke2r1/rke2-images.linux-amd64.tar.zst
curl -OLs https://github.com/rancher/rke2/releases/tag/v1.31.4%2Brke2r1/rke2.linux-amd64.tar.gz
curl -OLs https://github.com/rancher/rke2/releases/tag/v1.31.4%2Brke2r1/sha256sum-amd64.txt
curl -sfL https://get.rke2.io --output install.sh

.

.

.

二、安装Master节点

1、安装Master01

bash 复制代码
mkdir /root/rke2-artifacts && cd /root/rke2-artifacts/

将镜像文件传到master01服务器的当前/root/rke2-artifacts/目录下。。。

bash 复制代码
INSTALL_RKE2_TYPE="server" INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts sh install.sh

查看令牌,后期分配给其它server节点和agent节点

bash 复制代码
cat /var/lib/rancher/rke2/server/node-token

添加master01配置文件

bash 复制代码
mkdir -p /etc/rancher/rke2 && vi /etc/rancher/rke2/config.yaml

粘贴以下内容

bash 复制代码
token: K104332c6b52caf0f487b34d2bf185245c2f136bd5e79ec07f33d0378fa6ab8acfb::server:1da4a0a57ab66319ecfc9b6eb6a7776a
tls-san:
  - master01
  - master02
  - master03
# node配置
node-name: master01 #只需要修改此处,主机名
node-taint: # 默认Server节点是可调度的,如果希望拥有一个不会运行用户工作负载的专用 control plane,则可以使用污点(taint)
  - "CriticalAddonsOnly=true:NoExecute"
# 打标签
node-label:
  - "node=Master"

重启master01

bash 复制代码
systemctl restart rke2-server && systemctl status rke2-server && systemctl enable rke2-server

.

.

.

2、安装Master02

bash 复制代码
mkdir /root/rke2-artifacts && cd /root/rke2-artifacts/

将镜像文件传到master02服务器的当前/root/rke2-artifacts/目录下。。。

bash 复制代码
INSTALL_RKE2_TYPE="server" INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts sh install.sh

添加master02配置文件

bash 复制代码
mkdir -p /etc/rancher/rke2 && vi /etc/rancher/rke2/config.yaml

粘贴以下内容

bash 复制代码
server: https://master01:9345
token: K104332c6b52caf0f487b34d2bf185245c2f136bd5e79ec07f33d0378fa6ab8acfb::server:1da4a0a57ab66319ecfc9b6eb6a7776a
tls-san:
  - master01
  - master02
  - master03
# node配置
node-name: master02 #主机名
node-taint: # 默认Server节点是可调度的,如果希望拥有一个不会运行用户工作负载的专用 control plane,则可以使用污点(taint)
  - "CriticalAddonsOnly=true:NoExecute"
# 打标签
node-label:
  - "node=Master"

重启master02

bash 复制代码
systemctl start rke2-server && systemctl enable rke2-server && systemctl status rke2-server

.

.

.

3、安装Master03

bash 复制代码
mkdir /root/rke2-artifacts && cd /root/rke2-artifacts/

将镜像文件传到master03服务器的当前/root/rke2-artifacts/目录下。。。

bash 复制代码
INSTALL_RKE2_TYPE="server" INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts sh install.sh

添加master03配置文件

bash 复制代码
mkdir -p /etc/rancher/rke2 && vi /etc/rancher/rke2/config.yaml

粘贴以下内容

bash 复制代码
server: https://master01:9345
token: K104332c6b52caf0f487b34d2bf185245c2f136bd5e79ec07f33d0378fa6ab8acfb::server:1da4a0a57ab66319ecfc9b6eb6a7776a
tls-san:
  - master01
  - master02
  - master03
# node配置
node-name: master03 #主机名
node-taint: # 默认Server节点是可调度的,如果希望拥有一个不会运行用户工作负载的专用 control plane,则可以使用污点(taint)
  - "CriticalAddonsOnly=true:NoExecute"
# 打标签
node-label:
  - "node=Master"

重启master03

bash 复制代码
systemctl start rke2-server && systemctl enable rke2-server && systemctl status rke2-server

.

.

.

三、安装Node节点

1、安装Node01

bash 复制代码
mkdir /root/rke2-artifacts && cd /root/rke2-artifacts/

将镜像文件传到node01服务器的当前/root/rke2-artifacts/目录下。。。

bash 复制代码
INSTALL_RKE2_TYPE="agent" INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts sh install.sh

添加node01配置文件

bash 复制代码
mkdir -p /etc/rancher/rke2 && vi /etc/rancher/rke2/config.yaml

粘贴以下内容

bash 复制代码
server: https://master01:9345
token: K104332c6b52caf0f487b34d2bf185245c2f136bd5e79ec07f33d0378fa6ab8acfb::server:1da4a0a57ab66319ecfc9b6eb6a7776a
# node配置
node-name: node01 #主机名

重启node01

bash 复制代码
systemctl start rke2-agent && systemctl enable rke2-agent && systemctl status rke2-agent

.

.

.

2、安装Node02

bash 复制代码
mkdir /root/rke2-artifacts && cd /root/rke2-artifacts/

将镜像文件传到node02服务器的当前/root/rke2-artifacts/目录下。。。

bash 复制代码
INSTALL_RKE2_TYPE="agent" INSTALL_RKE2_ARTIFACT_PATH=/root/rke2-artifacts sh install.sh

添加node02配置文件

bash 复制代码
mkdir -p /etc/rancher/rke2 && vi /etc/rancher/rke2/config.yaml

粘贴以下内容

bash 复制代码
server: https://master01:9345
token: K104332c6b52caf0f487b34d2bf185245c2f136bd5e79ec07f33d0378fa6ab8acfb::server:1da4a0a57ab66319ecfc9b6eb6a7776a
# node配置
node-name: node02 #主机名

重启node02

bash 复制代码
systemctl start rke2-agent && systemctl enable rke2-agent && systemctl status rke2-agent

.

.

.

四、集群访问(Server1节点操作),初始化的一些操作

1、配置集群访问

bash 复制代码
mkdir -p ~/.kube && ln -s /etc/rancher/rke2/rke2.yaml ~/.kube/config && chmod 600 ~/.kube/config
bash 复制代码
ln -s /var/lib/rancher/rke2/agent/etc/crictl.yaml /etc/crictl.yaml
bash 复制代码
vi /etc/profile # 编辑该文件,并在最后行下面添加如下内容

export PATH=$PATH:/var/lib/rancher/rke2/bin
bash 复制代码
source /etc/profile

2、查看集群

bash 复制代码
kubectl get nodes

正确显示结果则部署成功。

相关推荐
众人皆醒我独醉10 小时前
Pod 一直 Terminating,死活删不掉?三个凶手,每一个你都意想不到
面试·kubernetes
飞翔沫沫情11 小时前
K8s Alloy 采集 Pod 控制台日志
云原生·容器·kubernetes
潮起鲸落入海17 小时前
Kubernetes Metric Server, Quota and Limits
容器·kubernetes
摇滚侠17 小时前
云原生 Java 架构师的第一课 K8s+Docker+KubeSphere+DevOps 19-25
java·云原生·kubernetes
咕噜咕噜的猪大侠19 小时前
《K8s 核心知识梳理:Deployment 滚动更新、JobCronJob、DaemonSet 和 Service》
云原生·容器·kubernetes
摇滚侠20 小时前
云原生 Java 架构师的第一课 K8s+Docker+KubeSphere+DevOps 26-40
java·云原生·kubernetes
AOwhisky1 天前
kubernetes(K8s)学习笔记:第十期与第十一期核心知识点自测与详解
运维·笔记·云原生·kubernetes·云计算·k8s·hpa
Waay2 天前
面试口述版:个人对 Prometheus 完整理解
运维·学习·云原生·面试·职场和发展·kubernetes·prometheus
云烟成雨TD2 天前
Kubernetes 系列【4】基础概念
云原生·容器·kubernetes