12 RKE2 #
请参阅 RKE2 官方文档。
RKE2 是一款完全合规的 Kubernetes 发行版,通过以下方式专注于安全性和合规性:
提供默认设置和配置选项,使集群在仅需最小化运维干预的情况下即可通过 CIS Kubernetes Benchmark v1.6 或 v1.23
启用 FIPS 140-2 合规性
在 RKE2 构建流水线中使用 trivy 定期扫描组件的 CVE
RKE2 将控制平面组件作为静态 Pod 启动,并由 kubelet 管理。内置的容器运行时是 containerd。
注意:RKE2 也被称为 RKE Government,以传达其目前针对的另一个用例和领域。
12.1 RKE2 vs K3s #
K3s 是一款完全合规且轻量级的 Kubernetes 发行版,专注于边缘计算、物联网和 ARM 架构,针对易用性和资源受限的环境进行了优化。
RKE2 结合了 RKE 1.x 版本(以下简称 RKE1)和 K3s 的优点。
它继承了 K3s 的可用性、易操作性和部署模型。
它继承了 RKE1 与上游 Kubernetes 的紧密一致性。在某些方面,K3s 为了优化边缘部署而偏离了上游 Kubernetes,但 RKE1 和 RKE2 可以与上游保持高度一致。
12.2 SUSE Edge 如何使用 RKE2? #
RKE2 是 SUSE Edge 技术栈的基础组成部分。它位于SUSE Linux Micro (Chapter 7, SUSE Linux Micro)之上,提供部署边缘工作负载所需的标准 Kubernetes 接口。
12.3 最佳实践 #
12.3.1 安装 #
将 RKE2 作为 SUSE Edge 技术栈的一部分进行安装的推荐方法是使用 Edge Image Builder (EIB)。有关如何配置它以部署 RKE2 的更多详细信息,请参阅EIB 文档 (Chapter 8, Edge Image Builder)。
EIB 非常灵活,足以支持 RKE2 所需的任何参数,例如指定 RKE2 版本、 服务器或 代理配置,涵盖了所有边缘用例。
12.3.2 高可用性 #
对于高可用性部署,EIB 会自动部署并配置 MetalLB (Chapter 15, MetalLB) 和 Endpoint Copier Operator (Chapter 16, 端点复制器操作员),以在外部公开 RKE2 API 端点。
12.3.3 网络 #
SUSE Edge 堆栈支持 Cilium、 Calico,并以 Cilium 作为其默认 CNI。当 Pod 需要多个网络接口时,也可以使用 Multus元插件。RKE2 独立版支持 更广泛的 CNI 选项。
12.3.4 存储 #
RKE2 不提供任何类型的持久存储类或操作器。对于跨多个节点的集群,建议使用SUSE Storage (Chapter 13, SUSE Storage)。