要求

RKE2 非常轻量,但也有一些最低要求,如下所述。

先决条件

两个 RKE2 节点不能具有相同的节点名称。默认情况下,节点名称取自计算机的主机名。

如果两台或多台计算机具有相同的主机名,则必须执行以下操作之一:

  • 将主机名更新为唯一值

  • 将配置文件中的 node-name 参数设置为唯一值

  • 将配置文件中的 with-node-id 参数设置为 true,从而将随机生成的 ID 号附加到主机名后。

版本

with-node-id 参数从 2023-05 版本(v1.27.2+rke2r1、v1.26.5+rke2r1、v1.25.10+rke2r1、v1.24.14+rke2r1)开始可用。

操作系统

Linux

RKE2 已在以下操作系统及其后续非主要版本上进行了测试和验证:

发行版 版本

Ubuntu

18.04, 20.04, 22.04

CentOS/RHEL

7.8

Rocky/RHEL

8.5, 9.1

Oracle Linux

8.7

Amazon Linux

2023

SLES

15 SP3, SP4

OpenSUSE, SLE Micro

5.1, 5.2, 5.3, 5.4

Windows

版本

v1.21.3+rke2r1 开始作为实验性功能。

Windows 支持要求选择 Calico 作为 RKE2 集群的 CNI。

RKE2 Windows Node (Worker) agent 已在以下操作系统及其后续非主要版本上进行了测试和验证:

  • Windows Server 2019 LTSC (amd64) (OS Build 17763.2061)

  • Windows Server 2022 LTSC (amd64) (OS Build 20348.169)

注意:需要启用 Windows Server Containers 功能才能使 RKE2 Windows Agent 工作。

使用管理员权限打开一个新的 Powershell 窗口。

powershell -Command "Start-Process PowerShell -Verb RunAs"

在新的 Powershell 窗口中,运行以下命令:

Enable-WindowsOptionalFeature -Online -FeatureName Containers –All

需要重启才能使 Containers 功能正常运行。

硬件

硬件要求根据你部署的规模而变化。此处概述了最低建议。

Linux/Windows

  • RAM:最低 4 GB(建议至少 8 GB)

  • CPU:最少 2(建议至少 4 CPU)

磁盘

RKE2 的性能取决于数据库的性能。由于 RKE2 嵌入式运行 etcd 并将数据目录存储在磁盘上,我们建议尽可能使用 SSD 以确保最佳性能。

网络

重要提示

如果你的节点安装并启用了 NetworkManager,请确保将其配置为忽略 CNI 管理的接口。如果你的节点安装并启用了 Wicked,请确保转发 sysctl 配置已启用

RKE2 server 需要开放端口 6443 和 9345 才能供集群中的其他节点访问。

使用 Flannel VXLAN 时,所有节点都需要能够通过 UDP 端口 8472 访问其他节点。

如果要使用 Metrics Server,则需要在每个节点上打开端口 10250。

重要提示:节点上的 VXLAN 端口会开放集群网络,让任何人均能访问集群。因此,不要将 VXLAN 端口暴露给外界。请使用禁用 8472 端口的防火墙/安全组来运行节点。

入站网络规则

协议 端口 描述

TCP

9345

RKE2 Agent 节点

Kubernetes API

TCP

6443

RKE2 Agent 节点

Kubernetes API

UDP

8472

RKE2 Server 和 Agent 节点

只有 Flannel VXLAN 需要

TCP

10250

RKE2 Server 和 Agent 节点

kubelet

TCP

2379

RKE2 Server 节点

etcd 客户端端口

TCP

2380

RKE2 Server 节点

etcd 对等端口

TCP

30000-32767

RKE2 Server 和 Agent 节点

NodePort 端口范围

UDP

8472

RKE2 Server 和 Agent 节点

Cilium CNI VXLAN

TCP

4240

RKE2 Server 和 Agent 节点

Cilium CNI 健康检查

ICMP

8/0

RKE2 Server 和 Agent 节点

Cilium CNI 健康检查

TCP

179

RKE2 Server 和 Agent 节点

使用 BGP 的 Calico CNI

UDP

4789

RKE2 Server 和 Agent 节点

使用 VXLAN 的 Calico CNI

TCP

5473

RKE2 Server 和 Agent 节点

使用 Typha 的 Calico CNI

TCP

9098

RKE2 Server 和 Agent 节点

Calico Typha 健康检查

TCP

9099

RKE2 Server 和 Agent 节点

Calico 健康检查

TCP

5473

RKE2 Server 和 Agent 节点

使用 Typha 的 Calico CNI

UDP

8472

RKE2 Server 和 Agent 节点

使用 VXLAN 的 Canal CNI

TCP

9099

RKE2 Server 和 Agent 节点

Canal CNI 健康检查

UDP

51820

RKE2 Server 和 Agent 节点

使用 WireGuard IPv4 的 Canal CNI

UDP

51821

RKE2 Server 和 Agent 节点

使用 WireGuard IPv6/双栈的 Canal CNI

Windows 特定的入站网络规则

协议 端口 描述

UDP

4789

RKE2 Server 节点

Calico 和 Flannel VXLAN 需要

所有出站流量通常都是允许的。