基于rancher-rke部署 k8s集群
一. RKE 简介
RKE 即 Rancher Kubernetes Engine,是由 Rancher 发布的一个极其简单、快速的 Kubernetes 安装程序,简化了 Kubernetes 集群的部署过程。
RKE 经过 CNCF 认证,支持多种操作系统,包括 MacOS、Linux 和 Windows,可以在裸金属服务器(BMS)和虚拟服务器(Virtualized Server)上运行。
RKE 会自动安装 CNI 插件、Ingress-Contoller 等组件。
二. RKE1 和 RKE2
RKE1(旧版 Rancher Kubernetes Engine)和 RKE2(下一代,也叫 RKE Government)是 Rancher 的两代 K8s 发行版,核心差异在容器运行时、控制平面架构、安全合规、部署方式,且 RKE1 已进入维护末期、RKE2 是官方推荐的下一代方案。下面从核心定位、架构、部署、运维、适用场景做完整对比:
一、核心定位与生命周期
RKE1:基于 Docker 的传统 K8s 发行版,CNCF 认证,面向通用生产;2025-07-31 停止维护(EOL),Rancher 2.12 + 不再支持新建 / 管理 RKE1 集群。
RKE2:下一代、安全合规优先(原名 RKE Government),对齐上游 K8s、轻量易运维、原生安全强化,长期支持、官方主推Rancher。

三、部署与运维关键区别
RKE1
配置文件:cluster.yml,定义节点、角色、网络、镜像等,依赖 SSH 免密、Docker 预安装。
集群状态:cluster.rkestate,手动维护、升级 / 扩容依赖rke up重跑。
痛点:Docker 版本兼容、镜像拉取权限、SSH 连通性、残留文件 / 证书冲突(你之前遇到的就是这类问题)。
RKE2
配置文件:/etc/rancher/rke2/config.yaml,极简、默认参数合理、支持环境变量Rancher。
服务化:rke2-server/rke2-agent systemd 服务,启动 / 停止 / 日志用systemctl、journalctl管理。
节点加入:server 生成 token,agent 用 token 加入,无需提前配置 SSH 免密、无需预安装 DockerRancher。
升级:直接更新二进制、重启服务,自动滚动升级、兼容上游 K8s 版本。
四、网络与 CNI
RKE1:支持 Calico、Canal、Flannel、Weave。
RKE2:默认 Calico,支持 Cilium、Canal、Multus(多网卡 / 多网络),更适合电信、多网络、安全隔离场景。
五、适用场景怎么选
选RKE1:仅当你有存量老集群、深度依赖 Docker 生态、短期无法迁移,且接受不再更新的风险;不建议新建集群。
选RKE2:所有新建生产集群、安全 / 合规要求高、云原生 / 容器标准环境、边缘 / 混合云、需要长期维护;完全替代 RKE1,解决 Docker 依赖、证书、镜像、安全等所有老问题。
六、部署RKE1实操
原始git库下载
bash
AMD架构
wget -O /usr/bin/rke https://github.com/rancher/rke/releases/download/v1.5.9/rke_linux-amd64
chmod +x /usr/bin/rke
#ARM架构
bash
wget -O /usr/bin/rke https://github.com/rancher/rke/releases/download/v1.5.9/rke_linux-arm64
chmod +x /usr/bin/rke
bash
#查看版本信息
rke -v
加速下载:
bash
wget -O /usr/bin/rke https://gh-proxy.com/https://github.com/rancher/rke/releases/download/v1.5.9/rke_linux-amd64
chmod +x /usr/bin/rke # 查看版本信息
rke -v

其它初始化环境准备工作
关闭防火墙
systemctl disable --now firewalld
关闭 selinxu
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
清空 iptables 规则
iptables -F && iptables -t nat -F
禁用 swap 分区
swapoff -a
sed -i '/swap / s/^(.*)$/#\1/g' /etc/fstab
配置主机间 SSH 免密(详细过程略)
bash
切换到 rke 用户(没有就创建)
su - rke
生成密钥,一路回车,不要设密码!
ssh-keygen
ssh-copy-id rke@192.168.100.121
本机也需要对自己授权:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
安装 docker(详细过程略)
配置用户组
vi /etc/docker/daemon.json,添加 "group": "docker"
systemctl daemon-reload && systemctl restart docker
ll /var/run/docker.sock
srw-rw---- 1 root docker 0 May 17 14:05 /var/run/docker.sock
创建用户
useradd rke
加入用户组
usermod -aG docker rke
###创建配置文件
bash
vi cluster.yml
kubernetes_version: v1.25.16-rancher2-3
nodes:
- address: 192.168.100.121
user: rke
role:
- controlplane
- etcd
ssh_key_path: /home/rke/.ssh/id_rsa # 密钥地址
port: 22
- address: 192.168.100.122
user: rke
role:
- worker
ssh_key_path: /home/rke/.ssh/id_rsa # 密钥地址
port: 22
network:
plugin: calico #声明采用何种网络cni
一键安装运行
bash
rke up --config cluster.yml
[rke@master1 ~]$ rke up --config cluster.yml
INFO[0000] Running RKE version: v1.5.9
INFO[0000] Initiating Kubernetes cluster
INFO[0000] [dialer] Setup tunnel for host [192.168.100.122]
INFO[0000] [dialer] Setup tunnel for host [192.168.100.121]
INFO[0000] Finding container [cluster-state-deployer] on host [192.168.100.121], try #1
INFO[0000] Pulling image [rancher/rke-tools:v0.1.96] on host [192.168.100.121], try #1
INFO[0063] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0063] Starting container [cluster-state-deployer] on host [192.168.100.121], try #1
INFO[0063] [state] Successfully started [cluster-state-deployer] container on host [192.168.100.121]
INFO[0063] Finding container [cluster-state-deployer] on host [192.168.100.122], try #1
INFO[0063] Pulling image [rancher/rke-tools:v0.1.96] on host [192.168.100.122], try #1
INFO[0109] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0109] Starting container [cluster-state-deployer] on host [192.168.100.122], try #1
INFO[0109] [state] Successfully started [cluster-state-deployer] container on host [192.168.100.122]
INFO[0109] [certificates] Generating CA kubernetes certificates
INFO[0109] [certificates] Generating Kubernetes API server aggregation layer requestheader client CA certificates
INFO[0110] [certificates] GenerateServingCertificate is disabled, checking if there are unused kubelet certificates
INFO[0110] [certificates] Generating Kubernetes API server certificates
INFO[0110] [certificates] Generating Service account token key
INFO[0110] [certificates] Generating Kube Controller certificates
INFO[0110] [certificates] Generating Kube Scheduler certificates
INFO[0110] [certificates] Generating Kube Proxy certificates
INFO[0110] [certificates] Generating Node certificate
INFO[0110] [certificates] Generating admin certificates and kubeconfig
INFO[0110] [certificates] Generating Kubernetes API server proxy client certificates
INFO[0111] [certificates] Generating kube-etcd-192-168-100-121 certificate and key
INFO[0111] Successfully Deployed state file at [./cluster.rkestate]
INFO[0111] Building Kubernetes cluster
INFO[0111] [dialer] Setup tunnel for host [192.168.100.122]
INFO[0111] [dialer] Setup tunnel for host [192.168.100.121]
INFO[0111] [network] Deploying port listener containers
INFO[0111] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0111] Starting container [rke-etcd-port-listener] on host [192.168.100.121], try #1
INFO[0111] [network] Successfully started [rke-etcd-port-listener] container on host [192.168.100.121]
INFO[0111] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0112] Starting container [rke-cp-port-listener] on host [192.168.100.121], try #1
INFO[0112] [network] Successfully started [rke-cp-port-listener] container on host [192.168.100.121]
INFO[0112] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0112] Starting container [rke-worker-port-listener] on host [192.168.100.122], try #1
INFO[0113] [network] Successfully started [rke-worker-port-listener] container on host [192.168.100.122]
INFO[0113] [network] Port listener containers deployed successfully
INFO[0113] [network] Running control plane -> etcd port checks
INFO[0113] [network] Checking if host [192.168.100.121] can connect to host(s) [192.168.100.121] on port(s) [2379], try #1
INFO[0113] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0113] Starting container [rke-port-checker] on host [192.168.100.121], try #1
INFO[0113] [network] Successfully started [rke-port-checker] container on host [192.168.100.121]
INFO[0113] Removing container [rke-port-checker] on host [192.168.100.121], try #1
INFO[0113] [network] Running control plane -> worker port checks
INFO[0113] [network] Checking if host [192.168.100.121] can connect to host(s) [192.168.100.122] on port(s) [10250], try #1
INFO[0113] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0113] Starting container [rke-port-checker] on host [192.168.100.121], try #1
INFO[0113] [network] Successfully started [rke-port-checker] container on host [192.168.100.121]
INFO[0113] Removing container [rke-port-checker] on host [192.168.100.121], try #1
INFO[0113] [network] Running workers -> control plane port checks
INFO[0113] [network] Checking if host [192.168.100.122] can connect to host(s) [192.168.100.121] on port(s) [6443], try #1
INFO[0113] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0114] Starting container [rke-port-checker] on host [192.168.100.122], try #1
INFO[0114] [network] Successfully started [rke-port-checker] container on host [192.168.100.122]
INFO[0114] Removing container [rke-port-checker] on host [192.168.100.122], try #1
INFO[0114] [network] Checking KubeAPI port Control Plane hosts
INFO[0114] [network] Removing port listener containers
INFO[0114] Removing container [rke-etcd-port-listener] on host [192.168.100.121], try #1
INFO[0114] [remove/rke-etcd-port-listener] Successfully removed container on host [192.168.100.121]
INFO[0114] Removing container [rke-cp-port-listener] on host [192.168.100.121], try #1
INFO[0114] [remove/rke-cp-port-listener] Successfully removed container on host [192.168.100.121]
INFO[0114] Removing container [rke-worker-port-listener] on host [192.168.100.122], try #1
INFO[0114] [remove/rke-worker-port-listener] Successfully removed container on host [192.168.100.122]
INFO[0114] [network] Port listener containers removed successfully
INFO[0114] [certificates] Deploying kubernetes certificates to Cluster nodes
INFO[0114] Finding container [cert-deployer] on host [192.168.100.122], try #1
INFO[0114] Finding container [cert-deployer] on host [192.168.100.121], try #1
INFO[0114] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0114] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0114] Starting container [cert-deployer] on host [192.168.100.122], try #1
INFO[0114] Starting container [cert-deployer] on host [192.168.100.121], try #1
INFO[0114] Finding container [cert-deployer] on host [192.168.100.122], try #1
INFO[0114] Finding container [cert-deployer] on host [192.168.100.121], try #1
INFO[0119] Finding container [cert-deployer] on host [192.168.100.121], try #1
INFO[0119] Finding container [cert-deployer] on host [192.168.100.122], try #1
INFO[0119] Removing container [cert-deployer] on host [192.168.100.121], try #1
INFO[0119] Removing container [cert-deployer] on host [192.168.100.122], try #1
INFO[0120] [reconcile] Rebuilding and updating local kube config
INFO[0120] Successfully Deployed local admin kubeconfig at [./kube_config_cluster.yml]
WARN[0120] [reconcile] host [192.168.100.121] is a control plane node without reachable Kubernetes API endpoint in the cluster
WARN[0120] [reconcile] no control plane node with reachable Kubernetes API endpoint in the cluster found
INFO[0120] [certificates] Successfully deployed kubernetes certificates to Cluster nodes
INFO[0120] [file-deploy] Deploying file [/etc/kubernetes/admission.yaml] to node [192.168.100.121]
INFO[0120] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0120] Starting container [file-deployer] on host [192.168.100.121], try #1
INFO[0120] Successfully started [file-deployer] container on host [192.168.100.121]
INFO[0120] Waiting for [file-deployer] container to exit on host [192.168.100.121]
INFO[0120] Waiting for [file-deployer] container to exit on host [192.168.100.121]
INFO[0120] Container [file-deployer] is still running on host [192.168.100.121]: stderr: [], stdout: []
INFO[0121] Removing container [file-deployer] on host [192.168.100.121], try #1
INFO[0121] [remove/file-deployer] Successfully removed container on host [192.168.100.121]
INFO[0121] [/etc/kubernetes/admission.yaml] Successfully deployed admission control config to Cluster control nodes
INFO[0121] [file-deploy] Deploying file [/etc/kubernetes/audit-policy.yaml] to node [192.168.100.121]
INFO[0121] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0121] Starting container [file-deployer] on host [192.168.100.121], try #1
INFO[0121] Successfully started [file-deployer] container on host [192.168.100.121]
INFO[0121] Waiting for [file-deployer] container to exit on host [192.168.100.121]
INFO[0121] Waiting for [file-deployer] container to exit on host [192.168.100.121]
INFO[0121] Container [file-deployer] is still running on host [192.168.100.121]: stderr: [], stdout: []
INFO[0122] Removing container [file-deployer] on host [192.168.100.121], try #1
INFO[0122] [remove/file-deployer] Successfully removed container on host [192.168.100.121]
INFO[0122] [/etc/kubernetes/audit-policy.yaml] Successfully deployed audit policy file to Cluster control nodes
INFO[0122] [reconcile] Reconciling cluster state
INFO[0122] [reconcile] This is newly generated cluster
INFO[0122] Pre-pulling kubernetes images
INFO[0122] Pulling image [rancher/hyperkube:v1.25.16-rancher2] on host [192.168.100.121], try #1
INFO[0122] Pulling image [rancher/hyperkube:v1.25.16-rancher2] on host [192.168.100.122], try #1
INFO[0352] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.121]
INFO[0352] Pulling image [rancher/mirrored-pause:3.7] on host [192.168.100.121], try #1
INFO[0358] Image [rancher/mirrored-pause:3.7] exists on host [192.168.100.121]
INFO[0408] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.122]
INFO[0408] Pulling image [rancher/mirrored-pause:3.7] on host [192.168.100.122], try #1
INFO[0415] Image [rancher/mirrored-pause:3.7] exists on host [192.168.100.122]
INFO[0415] Kubernetes images pulled successfully
INFO[0415] [etcd] Building up etcd plane..
INFO[0415] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0415] Starting container [etcd-fix-perm] on host [192.168.100.121], try #1
INFO[0415] Successfully started [etcd-fix-perm] container on host [192.168.100.121]
INFO[0415] Waiting for [etcd-fix-perm] container to exit on host [192.168.100.121]
INFO[0415] Waiting for [etcd-fix-perm] container to exit on host [192.168.100.121]
INFO[0415] Container [etcd-fix-perm] is still running on host [192.168.100.121]: stderr: [], stdout: []
INFO[0416] Removing container [etcd-fix-perm] on host [192.168.100.121], try #1
INFO[0416] [remove/etcd-fix-perm] Successfully removed container on host [192.168.100.121]
INFO[0416] Pulling image [rancher/mirrored-coreos-etcd:v3.5.9] on host [192.168.100.121], try #1
INFO[0441] Image [rancher/mirrored-coreos-etcd:v3.5.9] exists on host [192.168.100.121]
INFO[0441] Starting container [etcd] on host [192.168.100.121], try #1
INFO[0441] [etcd] Successfully started [etcd] container on host [192.168.100.121]
INFO[0441] [etcd] Running rolling snapshot container [etcd-rolling-snapshots] on host [192.168.100.121]
INFO[0441] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0441] Starting container [etcd-rolling-snapshots] on host [192.168.100.121], try #1
INFO[0442] [etcd] Successfully started [etcd-rolling-snapshots] container on host [192.168.100.121]
INFO[0447] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0447] Starting container [rke-bundle-cert] on host [192.168.100.121], try #1
INFO[0448] [certificates] Successfully started [rke-bundle-cert] container on host [192.168.100.121]
INFO[0448] Waiting for [rke-bundle-cert] container to exit on host [192.168.100.121]
INFO[0448] Container [rke-bundle-cert] is still running on host [192.168.100.121]: stderr: [], stdout: []
INFO[0449] [certificates] successfully saved certificate bundle [/opt/rke/etcd-snapshots//pki.bundle.tar.gz] on host [192.168.100.121]
INFO[0449] Removing container [rke-bundle-cert] on host [192.168.100.121], try #1
INFO[0449] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0449] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0449] [etcd] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0449] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0449] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0449] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0449] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0449] [etcd] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0449] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0449] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0449] [etcd] Successfully started etcd plane.. Checking etcd cluster health
INFO[0450] [etcd] etcd host [192.168.100.121] reported healthy=true
INFO[0450] [controlplane] Building up Controller Plane..
INFO[0450] Finding container [service-sidekick] on host [192.168.100.121], try #1
INFO[0450] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0450] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.121]
INFO[0450] Starting container [kube-apiserver] on host [192.168.100.121], try #1
INFO[0450] [controlplane] Successfully started [kube-apiserver] container on host [192.168.100.121]
INFO[0450] [healthcheck] Start Healthcheck on service [kube-apiserver] on host [192.168.100.121]
INFO[0455] [healthcheck] service [kube-apiserver] on host [192.168.100.121] is healthy
INFO[0455] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0455] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0456] [controlplane] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0456] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0456] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0456] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.121]
INFO[0456] Starting container [kube-controller-manager] on host [192.168.100.121], try #1
INFO[0456] [controlplane] Successfully started [kube-controller-manager] container on host [192.168.100.121]
INFO[0456] [healthcheck] Start Healthcheck on service [kube-controller-manager] on host [192.168.100.121]
INFO[0461] [healthcheck] service [kube-controller-manager] on host [192.168.100.121] is healthy
INFO[0461] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0461] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0461] [controlplane] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0461] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0461] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0461] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.121]
INFO[0461] Starting container [kube-scheduler] on host [192.168.100.121], try #1
INFO[0462] [controlplane] Successfully started [kube-scheduler] container on host [192.168.100.121]
INFO[0462] [healthcheck] Start Healthcheck on service [kube-scheduler] on host [192.168.100.121]
INFO[0467] [healthcheck] service [kube-scheduler] on host [192.168.100.121] is healthy
INFO[0467] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0467] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0467] [controlplane] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0467] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0467] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0467] [controlplane] Successfully started Controller Plane..
INFO[0467] [authz] Creating rke-job-deployer ServiceAccount
INFO[0467] [authz] rke-job-deployer ServiceAccount created successfully
INFO[0467] [authz] Creating system:node ClusterRoleBinding
INFO[0467] [authz] system:node ClusterRoleBinding created successfully
INFO[0467] [authz] Creating kube-apiserver proxy ClusterRole and ClusterRoleBinding
INFO[0467] [authz] kube-apiserver proxy ClusterRole and ClusterRoleBinding created successfully
INFO[0467] Successfully Deployed state file at [./cluster.rkestate]
INFO[0467] [state] Saving full cluster state to Kubernetes
INFO[0467] [state] Successfully Saved full cluster state to Kubernetes ConfigMap: full-cluster-state
INFO[0467] [worker] Building up Worker Plane..
INFO[0467] Finding container [service-sidekick] on host [192.168.100.121], try #1
INFO[0467] [sidekick] Sidekick container already created on host [192.168.100.121]
INFO[0467] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.121]
INFO[0467] Starting container [kubelet] on host [192.168.100.121], try #1
INFO[0467] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0467] [worker] Successfully started [kubelet] container on host [192.168.100.121]
INFO[0467] [healthcheck] Start Healthcheck on service [kubelet] on host [192.168.100.121]
INFO[0467] Starting container [nginx-proxy] on host [192.168.100.122], try #1
INFO[0467] [worker] Successfully started [nginx-proxy] container on host [192.168.100.122]
INFO[0467] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0468] Starting container [rke-log-linker] on host [192.168.100.122], try #1
INFO[0468] [worker] Successfully started [rke-log-linker] container on host [192.168.100.122]
INFO[0468] Removing container [rke-log-linker] on host [192.168.100.122], try #1
INFO[0469] [remove/rke-log-linker] Successfully removed container on host [192.168.100.122]
INFO[0469] Finding container [service-sidekick] on host [192.168.100.122], try #1
INFO[0469] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0469] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.122]
INFO[0469] Starting container [kubelet] on host [192.168.100.122], try #1
INFO[0469] [worker] Successfully started [kubelet] container on host [192.168.100.122]
INFO[0469] [healthcheck] Start Healthcheck on service [kubelet] on host [192.168.100.122]
INFO[0483] [healthcheck] service [kubelet] on host [192.168.100.121] is healthy
INFO[0483] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0483] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0483] [worker] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0483] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0483] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0483] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.121]
INFO[0483] Starting container [kube-proxy] on host [192.168.100.121], try #1
INFO[0483] [worker] Successfully started [kube-proxy] container on host [192.168.100.121]
INFO[0483] [healthcheck] Start Healthcheck on service [kube-proxy] on host [192.168.100.121]
INFO[0484] [healthcheck] service [kubelet] on host [192.168.100.122] is healthy
INFO[0484] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0485] Starting container [rke-log-linker] on host [192.168.100.122], try #1
INFO[0485] [worker] Successfully started [rke-log-linker] container on host [192.168.100.122]
INFO[0485] Removing container [rke-log-linker] on host [192.168.100.122], try #1
INFO[0485] [remove/rke-log-linker] Successfully removed container on host [192.168.100.122]
INFO[0485] Image [rancher/hyperkube:v1.25.16-rancher2] exists on host [192.168.100.122]
INFO[0485] Starting container [kube-proxy] on host [192.168.100.122], try #1
INFO[0485] [worker] Successfully started [kube-proxy] container on host [192.168.100.122]
INFO[0485] [healthcheck] Start Healthcheck on service [kube-proxy] on host [192.168.100.122]
INFO[0488] [healthcheck] service [kube-proxy] on host [192.168.100.121] is healthy
INFO[0488] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0488] Starting container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0488] [worker] Successfully started [rke-log-linker] container on host [192.168.100.121]
INFO[0488] Removing container [rke-log-linker] on host [192.168.100.121], try #1
INFO[0489] [remove/rke-log-linker] Successfully removed container on host [192.168.100.121]
INFO[0491] [healthcheck] service [kube-proxy] on host [192.168.100.122] is healthy
INFO[0491] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0491] Starting container [rke-log-linker] on host [192.168.100.122], try #1
INFO[0491] [worker] Successfully started [rke-log-linker] container on host [192.168.100.122]
INFO[0491] Removing container [rke-log-linker] on host [192.168.100.122], try #1
INFO[0491] [remove/rke-log-linker] Successfully removed container on host [192.168.100.122]
INFO[0491] [worker] Successfully started Worker Plane..
INFO[0491] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.121]
INFO[0491] Image [rancher/rke-tools:v0.1.96] exists on host [192.168.100.122]
INFO[0491] Starting container [rke-log-cleaner] on host [192.168.100.121], try #1
INFO[0491] Starting container [rke-log-cleaner] on host [192.168.100.122], try #1
INFO[0491] [cleanup] Successfully started [rke-log-cleaner] container on host [192.168.100.121]
INFO[0491] Removing container [rke-log-cleaner] on host [192.168.100.121], try #1
INFO[0491] [cleanup] Successfully started [rke-log-cleaner] container on host [192.168.100.122]
INFO[0491] Removing container [rke-log-cleaner] on host [192.168.100.122], try #1
INFO[0491] [remove/rke-log-cleaner] Successfully removed container on host [192.168.100.122]
INFO[0491] [remove/rke-log-cleaner] Successfully removed container on host [192.168.100.121]
INFO[0491] [sync] Syncing nodes Labels and Taints
INFO[0492] [sync] Successfully synced nodes Labels and Taints
INFO[0492] [network] Setting up network plugin: calico
INFO[0492] [addons] Saving ConfigMap for addon rke-network-plugin to Kubernetes
INFO[0492] [addons] Successfully saved ConfigMap for addon rke-network-plugin to Kubernetes
INFO[0492] [addons] Executing deploy job rke-network-plugin
INFO[0502] [addons] Setting up coredns
INFO[0502] [addons] Saving ConfigMap for addon rke-coredns-addon to Kubernetes
INFO[0502] [addons] Successfully saved ConfigMap for addon rke-coredns-addon to Kubernetes
INFO[0502] [addons] Executing deploy job rke-coredns-addon
INFO[0512] [addons] CoreDNS deployed successfully
INFO[0512] [dns] DNS provider coredns deployed successfully
INFO[0512] [addons] Setting up Metrics Server
INFO[0512] [addons] Saving ConfigMap for addon rke-metrics-addon to Kubernetes
INFO[0512] [addons] Successfully saved ConfigMap for addon rke-metrics-addon to Kubernetes
INFO[0512] [addons] Executing deploy job rke-metrics-addon
INFO[0517] [addons] Metrics Server deployed successfully
INFO[0517] [ingress] Setting up nginx ingress controller
INFO[0517] [ingress] removing admission batch jobs if they exist
INFO[0517] [addons] Saving ConfigMap for addon rke-ingress-controller to Kubernetes
INFO[0517] [addons] Successfully saved ConfigMap for addon rke-ingress-controller to Kubernetes
INFO[0517] [addons] Executing deploy job rke-ingress-controller
INFO[0527] [ingress] removing default backend service and deployment if they exist
INFO[0527] [ingress] ingress controller nginx deployed successfully
INFO[0527] [addons] Setting up user addons
INFO[0527] [addons] no user addons defined
INFO[0527] Finished building Kubernetes cluster successfully
安装kubectl 命令
curl -LO "https://dl.k8s.io/release/v1.25.16/bin/linux/amd64/kubectl"
chmod +x kubectl
mv kubectl /usr/local/bin/
配置集群config,让 kubectl 能连接你的集群
RKE 部署完后,会生成一个配置文件:
/home/rke/kube_config_cluster.yml
你必须把它放到 kubectl 默认读取的位置:
mkdir -p ~/.kube
cp /home/rke/kube_config_cluster.yml ~/.kube/config
chmod 600 ~/.kube/config
测试

查看各组件状态
master节点

worker节点

七、 其余扩展
RKE 常用命令
bash
rke -h
NAME:
rke - Rancher Kubernetes Engine, an extremely simple, lightning fast Kubernetes installer that works everywhere
USAGE:
rke [global options] command [command options] [arguments...]
VERSION:
v1.5.9
AUTHOR:
Rancher Labs, Inc.
COMMANDS:
up Bring the cluster up
remove Teardown the cluster and clean cluster nodes
version Show cluster Kubernetes version
config Setup cluster configuration
etcd etcd snapshot save/restore operations in k8s cluster
cert Certificates management for RKE cluster
encrypt Manage cluster encryption provider keys
util Various utilities to retrieve cluster related files and troubleshoot
help, h Shows a list of commands or help for one command
GLOBAL OPTIONS:
--debug, -d Debug logging
--quiet, -q Quiet mode, disables logging and only critical output will be printed
--trace Trace logging
--help, -h show help
--version, -v print the version
查看集群版本
rke version
生成配置(交互方式)
rke config --name cluster.yml
生成配置(空模版)
rke config --name cluster.yml --empty
清理集群,可选参数:--config 指定配置,--force 强制清理
rke remove
八 、总结
相对于二进制安装,及kubeadm安装方式,确实大大简化了安装流程。但后续具体高可用的配置调整改造,和 维护方式需要后续自行总结了。