第 28 章 配置集群范围代理


生产环境可能会拒绝直接访问互联网,而是提供 HTTP 或 HTTPS 代理。您可以通过修改现有集群的 Proxy 对象或在新集群的 install-config.yaml 文件中配置代理设置,将 OpenShift Container Platform 配置为使用代理。

在支持的平台中为集群启用集群范围的出口代理后,Red Hat Enterprise Linux CoreOS (RHCOS)会使用支持的平台上存在的 networking.machineNetwork[].cidrnetworking.clusterNetwork[].cidrnetworking.serviceNetwork[] 字段的值填充 status . noProxy 参数。

注意

作为安装后任务,您可以更改 networking.clusterNetwork[].cidr 值,但不能更改 networking.machineNetwork[].cidrnetworking.serviceNetwork[] 值。

对于在 Amazon Web Services (AWS)、Google Cloud Platform (GCP)、Microsoft Azure 和 Red Hat OpenStack Platform (RHOSP)上安装,status.noProxy 参数也会填充实例元数据端点 169.254.169.254

RHCOS 添加到 Proxy 对象的 status: segment 中的值示例

apiVersion: config.openshift.io/v1
kind: Proxy
metadata:
  name: cluster
# ...
networking:
  clusterNetwork: 1
  - cidr: <ip_address_from_cidr>
    hostPrefix: 23
  network type: OVNKubernetes
  machineNetwork: 2
  - cidr: <ip_address_from_cidr>
  serviceNetwork: 3
  - 172.30.0.0/16
# ...
status:
  noProxy:
  - localhost
  - .cluster.local
  - .svc
  - 127.0.0.1
  - <api_server_internal_url> 4
# ...

1
指定从中分配 Pod IP 地址的 IP 地址块。默认值为 10.128.0.0/14,主机前缀为 /23
2
指定机器的 IP 地址块。默认值为 10.0.0.0/16
3
为服务指定 IP 地址块。默认值为 172.30.0.0/16
4
您可以通过运行 oc get infrastructure.config.openshift.io 集群 -o jsonpath='{.status.etcdDiscoveryDomain}' 命令来查找内部 API 服务器的 URL。
重要

如果您的安装类型不包括设置 networking.machineNetwork[].cidr 字段,则必须在 .status.noProxy 字段中手动包含机器 IP 地址,以确保节点之间的流量可以绕过代理。

28.1. 先决条件

查看集群需要访问的站点中的内容,决定这些站点中的任何站点是否需要绕过代理。默认情况下,所有集群系统的出站流量都需经过代理,包括对托管集群的云供应商 API 的调用。系统范围的代理仅影响系统组件,而不会影响用户工作负载。如有必要,将站点添加到 Proxy 对象的 spec.noProxy 参数,以绕过代理。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.