news 2026/4/23 11:06:15

RKE(Rancher Kubernetes Engine) 是什么?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RKE(Rancher Kubernetes Engine) 是什么?

RKE(Rancher Kubernetes Engine) 是什么?

核心定义

RKE是一个轻量级、高可用、100% 开源Kubernetes 发行版和安装工具。它的全称是Rancher Kubernetes Engine(在 RKE2 出现后,原 RKE 有时也被称为 RKE1)。

它的核心目标是用一种简单、快速、可重复的方式,在裸金属服务器、虚拟机、公有云或私有云实例上部署和管理生产级的 Kubernetes 集群。


核心特性与设计理念

  1. 极简与声明式

    • 整个集群的配置(包括所有组件版本、网络插件、插件配置等)都定义在一个单一的 YAML 配置文件(通常是cluster.yml)中。
    • 通过一条命令rke up,工具会根据这个文件自动完成所有节点的配置和集群的引导。修改配置后,再次运行rke up即可完成集群的升级或变更。这使得集群部署和版本控制变得非常容易。
  2. 无侵入性

    • RKE 本身不依赖 Docker。它在目标节点上通过容器化的方式运行所有 Kubernetes 组件(如kube-apiserver,kube-controller-manager,kube-scheduler,etcd等)。这意味着你只需要在节点上安装一个容器运行时(如 Docker, containerd),RKE 会处理好一切。
    • 它不会对主机操作系统做大量修改,保持了主机的“清洁”。
  3. 高可用内置

    • RKE 原生支持部署高可用(HA)的控制平面(Control Plane)和etcd集群。
    • 你可以轻松地在配置文件中指定多个控制平面节点和 etcd 节点。RKE 会自动配置负载均衡器(你需要前置配置负载均衡器,如 HAProxy、Nginx 或云负载均衡器)和节点间的证书,构建出高可用的集群架构。
  4. 灵活性

    • 运行时支持:早期主要支持 Docker,现在也完全支持containerd作为容器运行时。
    • 网络插件:支持多种 CNI 网络插件,如FlannelCalicoCanal(Calico + Flannel)、Weave等,可以在配置文件中轻松指定。
    • Ingress 控制器:默认集成并自动部署Nginx Ingress Controller
    • 存储插件:支持配置多种 CSI 驱动或云提供商存储。

工作原理与部署流程

  1. 准备节点

    • 准备若干台 Linux 主机(推荐 Ubuntu, CentOS, RHEL 等)。
    • 在每个节点上安装支持的容器运行时(如 Docker 或 containerd)。
    • 确保节点间 SSH 互通(RKE 通过 SSH 连接到各个节点执行命令)。
    • 创建一个具有 sudo 权限或 root 的 SSH 密钥,并将公钥分发到所有节点。
  2. 编写集群配置文件 (cluster.yml)

    • 这是最关键的步骤。文件内容示例结构如下:

      nodes:-address:192.168.1.10user:ubunturole:[controlplane,worker,etcd]# 单节点角色ssh_key_path:~/.ssh/id_rsa-address:192.168.1.11user:ubunturole:[controlplane,etcd]# 控制平面+etcd节点-address:192.168.1.12user:ubunturole:[worker]# 纯工作节点services:etcd:snapshot:truecreation:6hretention:24hkube-api:service_cluster_ip_range:10.43.0.0/16kube-controller:cluster_cidr:10.42.0.0/16service_cluster_ip_range:10.43.0.0/16kubelet:cluster_domain:cluster.localnetwork:plugin:canal# 指定网络插件options:flannel_backend_type:"vxlan"ingress:provider:nginxnode_selector:app:ingressaddons:|# 可以定义集群部署后立即安装的 Kubernetes 清单(如 Dashboard, 监控等)---apiVersion:v1kind:Namespacemetadata:name:my-addons
  3. 部署集群

    • 在拥有配置文件和 RKE CLI 的机器上,执行:

      rke up --config cluster.yml
    • RKE 会依次执行以下操作:

      • 通过 SSH 连接到所有节点。
      • 拉取所需的 Kubernetes 组件镜像。
      • 在容器中启动etcd集群。
      • 在容器中启动控制平面组件(API Server, Controller Manager, Scheduler)。
      • 部署配置的网络插件、DNS(CoreDNS)、Ingress Controller 等插件。
      • 生成一个kube_config_cluster.yml文件,这是集群的kubeconfig,用于使用kubectl管理集群。
  4. 管理集群

    • 使用kubectl(通过上一步生成的 kubeconfig)与集群交互。
    • 升级集群:修改cluster.yml中的 Kubernetes 版本,再次运行rke up
    • 备份/恢复etcd:RKE 提供了rke etcd snapshot-saverke etcd snapshot-restore命令,是灾难恢复的关键。
    • 销毁集群:运行rke remove --config cluster.yml(⚠️危险操作)。

优点

  • 快速部署:简化了复杂的手动或脚本化部署过程。
  • 基础设施即代码:集群状态完全由配置文件定义,易于版本控制和复制。
  • 生产就绪:内置的高可用、备份恢复机制,使其适合生产环境。
  • 社区与生态:作为 Rancher 生态系统的一部分,有强大的社区支持和丰富的文档。
  • 纯开源:没有厂商锁定,可以独立于 Rancher Manager 使用。

缺点与注意事项

  • 学习曲线:需要理解 YAML 配置和 Kubernetes 核心概念。
  • 节点要求:对节点 SSH 和权限有要求,在某些严格的安全策略下可能需要调整。
  • 集群生命周期管理:虽然部署和升级简单,但节点操作系统、内核、容器运行时的维护仍需自行负责。
  • 与 RKE2 的区分:需要理解 RKE 和RKE2(下一代)的区别(见下文)。

RKE 与 RKE2、K3s 的关系

这是 Rancher 提供的三大 Kubernetes 发行版,定位不同:

特性RKE (RKE1)RKE2K3s
定位传统、稳定的生产集群安全、合规的边缘与数据中心极轻量的边缘与 IoT
核心特点通过容器运行 K8s 组件打包为系统守护进程,默认使用 containerd单个二进制文件,极度轻量
安全传统安全模型重点强化:默认开启 SELinux,PSP, CIS 基准扫描轻量级,安全配置较简单
发布节奏维护模式,更新较少与上游 K8s 版本紧密同步快速迭代,功能前沿
适用场景已有 RKE1 集群,或依赖特定旧版本新生产部署,尤其是对安全合规要求高的政府、金融领域资源受限的边缘计算、开发测试、IoT

简单总结

  • 新项目,尤其是对安全有高要求,建议从RKE2开始评估。
  • 如果追求极致轻量和简单,资源环境有限,选K3s
  • RKE目前主要用于维护已有的 RKE1 集群。

总结

RKE是一个强大且成熟的Kubernetes 安装器,它通过声明式配置全容器化部署的理念,将复杂的 K8s 集群部署流程标准化、自动化。它是构建生产级、高可用 Kubernetes 基础设施的优秀工具,尤其适合在自有基础设施上快速搭建和管理集群。随着 RKE2 的成熟,对于新项目,建议同时评估 RKE2,以获取更强的安全特性和更紧密的上游同步。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/25 3:55:39

用 PyTorch 实现 CBOW 模型

一、词向量与 CBOW 模型在自然语言处理(NLP)领域,词向量是将离散单词转化为连续数值向量的核心技术,它能让计算机理解单词的语义信息(如语义相似的单词向量距离更近)。而CBOW(Continuous Bag-of…

作者头像 李华
网站建设 2026/4/3 17:57:55

AI产品经理:大模型时代最有“钱“景的岗位,零基础入门到实战全攻略_想转行AI产品经理,90%的人第一步就走错了!

文章指出AI产品经理是未来5年最有前景的岗位,将从业者分为观望者、探索者和跑偏者三类。AI产品经理分为工具型、应用型和专业型三个层次,大多数人应专注于应用型。学习路径包括:夯实产品基本功、掌握AI项目落地能力、补充AI知识技能。起点课堂…

作者头像 李华
网站建设 2026/3/25 16:00:09

大模型动态选择机制解析:从Prompt到代码,彻底搞懂模型路由策略

文章解析大模型动态选择机制,指出选择由应用层代码控制而非Prompt。介绍三种路由模式:规则路由、两阶段智能路由和固定模型选择。强调路由策略发生在LLM推理前,通过策略模式和配置驱动实现。支持多维度路由策略,建议使用外部配置文…

作者头像 李华
网站建设 2026/4/16 4:43:43

Software Development Process Project Management 2

11. "What is the difference between track and trace? Track Definition: Monitoring the progress, status, or history of an entity 实体 (e.g., changes, issues, or user activities) over time. Usage in Software Development: Version Control: Tracking co…

作者头像 李华
网站建设 2026/4/22 7:14:47

Vue-插槽 (Slot) 的多种高级玩法

前言在组件化开发中,插槽 (Slot) 是实现内容分发(Content Distribution)的核心机制。它允许我们将组件的“外壳”与“内容”解耦,让组件具备极高的扩展性。一、 什么是插槽?插槽是子组件提供给父组件的 “占位符” &am…

作者头像 李华