4.10.8. 用户置备的基础架构对网络的要求
所有 Red Hat Enterprise Linux CoreOS(RHCOS)机器在启动过程中需要 initramfs
中的网络从机器配置服务器获取 Ignition 配置。
您必须配置机器间的网络连接,以便集群组件进行通信。每台机器都必须能够解析集群中所有其他机器的主机名。
协议 | 端口 | 描述 |
---|---|---|
ICMP | N/A | 网络可访问性测试 |
TCP |
| 指标 |
|
主机级别的服务,包括端口 | |
| Kubernetes 保留的默认端口 | |
| openshift-sdn | |
UDP |
| VXLAN 和 Geneve |
| VXLAN 和 Geneve | |
|
主机级别的服务,包括端口 | |
TCP/UDP |
| Kubernetes 节点端口 |
协议 | 端口 | 描述 |
---|---|---|
TCP |
| Kubernetes API |
协议 | 端口 | 描述 |
---|---|---|
TCP |
| etcd 服务器和对等端口 |
网络拓扑要求
您为集群置备的基础架构必须满足下列网络拓扑要求。
OpenShift Container Platform 要求所有节点都能访问互联网,以便为平台容器提取镜像并向红帽提供遥测数据。
负载均衡器
在安装 OpenShift Container Platform 前,您必须置备两个满足以下要求的负载均衡器:
API 负载均衡器:提供一个通用端点,供用户(包括人和机器)与平台交互和配置。配置以下条件:
- 只适用于第 4 层负载均衡。这可被称为 Raw TCP、SSL Passthrough 或者 SSL 桥接模式。如果使用 SSL Bridge 模式,必须为 API 路由启用 Server Name Indication(SNI)。
- 无状态负载平衡算法。这些选项根据负载均衡器的实现而有所不同。
重要不要为 API 负载均衡器配置会话持久性。
在负载均衡器的前端和后台配置以下端口:
表 4.43. API 负载均衡器 端口 后端机器(池成员) 内部 外部 描述 6443
Bootstrap 和 control plane.bootstrap 机器初始化集群 control plane 后,您要从负载均衡器中删除 bootstrap 机器。您必须为 API 服务器健康检查探测配置
/readyz
端点。X
X
Kubernetes API 服务器
22623
Bootstrap 和 control plane.bootstrap 机器初始化集群 control plane 后,您要从负载均衡器中删除 bootstrap 机器。
X
机器配置服务器
注意负载均衡器必须配置为,从 API 服务器关闭
/readyz
端点到从池中删除 API 服务器实例时最多需要 30 秒。在/readyz
返回错误或处于健康状态后的时间范围内,端点必须被删除或添加。每 5 秒或 10 秒探测一次,有两个成功请求处于健康状态,三个成为不健康的请求经过测试。应用程序入口负载均衡器:提供来自集群外部的应用程序流量流量的 Ingress 点。配置以下条件:
- 只适用于第 4 层负载均衡。这可被称为 Raw TCP、SSL Passthrough 或者 SSL 桥接模式。如果使用 SSL Bridge 模式,您必须为 Ingress 路由启用Server Name Indication(SNI)。
- 建议根据可用选项以及平台上托管的应用程序类型,使用基于连接的或者基于会话的持久性。
在负载均衡器的前端和后台配置以下端口:
表 4.44. 应用程序入口负载均衡器 端口 后端机器(池成员) 内部 外部 描述 443
默认运行入口路由器 Pod、计算或 worker 的机器。
X
X
HTTPS 流量
80
默认运行入口路由器 Pod、计算或 worker 的机器。
X
X
HTTP 流量
如果负载均衡器可以看到客户端的真实 IP 地址,启用基于 IP 的会话持久性可提高使用端到端 TLS 加密的应用程序的性能。
OpenShift Container Platform 集群需要正确配置入口路由器。control plane 初始化后,您必须配置入口路由器。