2.4. 将 API 服务器限制为私有
将集群部署到 Amazon Web Services(AWS)或 Microsoft Azure 后,可以重新配置 API 服务器,使其只使用私有区。
先决条件
- 
						安装 OpenShift CLI(oc)。
- 
						使用具有 admin权限的用户登陆到 web 控制台。
流程
- 在云供应商的 web 门户或控制台中,执行以下操作: - 找到并删除相关的负载均衡器组件: - 对于 AWS,删除外部负载均衡器。私有区的 API DNS 条目已指向内部负载均衡器,它使用相同的配置,因此您无需修改内部负载均衡器。
- 
										对于 Azure,删除公共负载均衡器的 api-internal-v4规则。
 
- 
								对于 Azure,将 Ingress Controller 端点发布范围配置为 Internal。如需更多信息,请参阅"将 Ingress Controller 端点发布范围配置为 Internal"。
- 
								对于 Azure 公共负载均衡器,如果您将 Ingress Controller 端点发布范围配置为 Internal,且公共负载均衡器中没有现有的入站规则,则必须明确创建一个出站规则来为后端地址池提供出站流量。如需更多信息,请参阅 Microsoft Azure 文档中有关添加出站规则的内容。
- 
								删除 public 区域中的 api.$clustername.$yourdomain或api.$clusternameDNS 条目。
 
- AWS 集群:删除外部负载均衡器: 重要- 您只能对安装程序置备的基础架构 (IPI) 集群执行以下步骤。对于用户置备的基础架构 (UPI) 集群,您必须手动删除或禁用外部负载均衡器。 - 如果您的集群使用 control plane 机器集,删除配置公共或外部负载均衡器的 control plane 机器集自定义资源中的行: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 如果您的集群没有使用 control plane 机器集,您必须从每个 control plane 机器中删除外部负载均衡器。 - 在终端中,运行以下命令来列出集群机器: - oc get machine -n openshift-machine-api - $ oc get machine -n openshift-machine-api- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - control plane 机器在名称中包含 - master。
- 从每个 control plane 机器中删除外部负载均衡器: - 运行以下命令,将 control plane 机器对象编辑为: - oc edit machines -n openshift-machine-api <control_plane_name> - $ oc edit machines -n openshift-machine-api <control_plane_name>- 1 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- 指定要修改的 control plane 机器对象名称。
 
- 删除描述外部负载均衡器的行,它们在以下示例中被标记: - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 保存更改并退出对象规格。
- 为每个 control plane 机器重复此步骤。