6.18. 使用内部裸机节点扩展集群
您可以通过在集群中添加裸机节点来扩展在 AWS 上部署的 OpenShift Container Platform 集群。默认情况下,在 OpenShift Container Platform 4.11 或更早版本的 AWS 上部署的集群会禁用 Baremetal Operator (BMO)。在 OpenShift Container Platform 4.12 及更新的版本中,BMO 被启用来支持由带有额外内部裸机 worker 节点的 AWS control plane 节点和 worker 节点组成的混合云。
扩展在 AWS 上部署的 OpenShift Container Platform 集群需要使用带有裸机节点的虚拟介质,它需要满足节点要求和固件要求以按照虚拟介质。不需要 provisioning 网络,如果存在,则应该禁用它。
6.18.1. 将 VPC 连接到内部网络
要使用内部裸机节点扩展 AWS 上部署的 OpenShift Container Platform 集群,您必须在它们之间建立网络连接。您需要使用虚拟专用网络或 AWS 直接连接在 AWS VPC 和内部网络间配置网络。这允许内部节点和 AWS 节点之间流量流。
另外,您需要确保安全访问裸机节点的 Baseboard Management Controller (BMC)。当使用 Baremetal Operator 扩展集群时,远程管理和监控内部节点硬件需要访问 BMC。
要安全地访问 BMC,您可以创建一个单独的安全网络段,或使用专用的 VPN 连接进行 BMC 访问。这样,您可以将 BMC 流量与其他网络流量隔离,从而减少未授权访问或潜在的漏洞的风险。
AWS 和内部环境之间的网络连接错误配置可以将内部网络和裸机节点公开给互联网。这是一个显著的安全风险,可能会导致攻击者完全访问公开的机器,并通过它们访问这些环境中的私有网络。
其他资源
6.18.2. 为端口 6183 创建防火墙规则
control plane 上默认打开端口 6183。但是,您必须为 VPC 连接以及裸机节点的内部网络创建一个防火墙规则,以允许该端口上入站和出站流量。
流程
修改 AWS VPC 安全组以打开端口
6183:- 进入 AWS 管理控制台中的 Amazon VPC 控制台。
- 在左侧导航窗格中,点 Security Groups。
- 查找并选择与 OpenShift Container Platform 集群关联的安全组。
- 在 Inbound rules 选项卡中,点 Edit inbound rules。
- 点 Add rule,再选择 Custom TCP Rule 作为规则类型。
-
在 Port range 字段中,输入
6183。 - 在 Source 字段中,为内部网络指定 CIDR 块,或者对等 VPC 的安全组 ID (如果您有 VPC 对等)来只允许来自所需源的流量。
- 点 Save rules。
修改 AWS VPC 网络访问控制列表以打开端口
6183:- 在 Amazon VPC 控制台中,点左侧导航窗格中的 Network ACL。
- 查找并选择与 OpenShift Container Platform 集群的 VPC 关联的网络 ACL。
- 在 Inbound rules 选项卡中,点 Edit inbound rules。
- 点 Add rule,然后在 Rule # 字段中输入规则号。选择一个与现有规则不冲突的数字。
-
选择
TCP作为协议。 -
在 Port range 字段中,输入
6183。 - 在 Source 字段中,为内部网络指定 CIDR 块,以只允许来自所需源的流量。
- 点 Save 保存新规则。
-
在出站规则选项卡中重复相同的流程,以允许端口
6183上的出站流量。
修改内部网络以允许端口
6183的流量:执行以下命令来标识您要修改的区域:
$ sudo firewall-cmd --list-all-zones
要在所需区中为 TCP 流量打开端口
6183,请执行以下命令:$ sudo firewall-cmd --zone=<zone> --add-port=6183/tcp --permanent
将
<zone>替换为适当的区名称。重新载入
firewalld以应用新规则:$ sudo firewall-cmd --reload
配置网络后,您可以继续扩展集群。