4.4. 安装后配置代理


当您在 AWS (ROSA) 集群中安装 Red Hat OpenShift Service (ROSA) 集群后,可以配置 HTTP 或 HTTPS 代理到现有的 Virtual Private Cloud (VPC) 集群中。您可以使用 Red Hat OpenShift Cluster Manager 或 ROSA CLI (rosa) 在安装后配置代理。

4.4.1. 使用 OpenShift Cluster Manager 在安装后配置代理

您可以使用 Red Hat OpenShift Cluster Manager 将集群范围代理配置添加到 Virtual Private Cloud (VPC) 上的 AWS 集群中的现有 Red Hat OpenShift Service 中。

您还可以使用 OpenShift Cluster Manager 更新现有的集群范围代理配置。例如,如果代理的任何证书颁发机构过期,您可能需要更新代理的网络地址,或者替换额外的信任捆绑包。

重要

集群将代理配置应用到 control plane 和计算节点。在应用配置时,每个集群节点暂时处于不可调度状态,并排空其工作负载。每个节点都会作为进程的一部分重启。

前提条件

  • 在 AWS 集群上有一个 Red Hat OpenShift Service。
  • 您的集群部署在 VPC 中。

流程

  1. 进入到 OpenShift Cluster Manager 并选择您的集群。
  2. Networking 页面上的 Virtual Private Cloud (VPC) 部分下,点 Edit cluster-wide proxy
  3. Edit cluster-wide proxy 页面中,提供代理配置详情:

    1. 至少在以下字段之一中输入值:

      • 指定有效的 HTTP 代理 URL
      • 指定有效的 HTTPS 代理 URL
      • Additional trust bundle 字段中,提供 PEM 编码 X.509 证书捆绑包。如果您要替换现有的信任捆绑包文件,请选择 replace file 来查看字段。捆绑包添加到集群节点的可信证书存储中。如果您使用 TLS-inspecting 代理,则需要额外的信任捆绑包文件,除非代理的身份证书由 Red Hat Enterprise Linux CoreOS (RHCOS)信任捆绑包的颁发机构签名。无论代理是透明还是需要使用 http-proxyhttps-proxy 参数显式配置,这个要求都适用。
    2. 单击 Confirm

验证

  • Networking 页面上的 Virtual Private Cloud (VPC) 部分下,验证集群的代理配置是否如预期。

4.4.2. 使用 CLI 在安装后配置代理

您可以使用 AWS (ROSA) CLI (rosa) 上的 Red Hat OpenShift Service 将集群范围的代理配置添加到 Virtual Private Cloud (VPC) 的现有 ROSA 集群中。

您还可以使用 rosa 更新现有的集群范围代理配置。例如,如果代理的任何证书颁发机构过期,您可能需要更新代理的网络地址,或者替换额外的信任捆绑包。

重要

集群将代理配置应用到 control plane 和计算节点。在应用配置时,每个集群节点暂时处于不可调度状态,并排空其工作负载。每个节点都会作为进程的一部分重启。

前提条件

  • 您已在安装主机上安装和配置了最新的 ROSA (rosa) 和 OpenShift (oc) CLI。
  • 您有一个在 VPC 中部署的 ROSA 集群。

流程

  • 编辑集群配置以添加或删除集群范围代理详情:

    $ rosa edit cluster \
     --cluster $CLUSTER_NAME \
     --additional-trust-bundle-file <path_to_ca_bundle_file> \ 1 2 3
     --http-proxy http://<username>:<password>@<ip>:<port> \ 4 5
     --https-proxy https://<username>:<password>@<ip>:<port> \ 6 7
      --no-proxy example.com 8
    1 4 6
    additional-trust-bundle-filehttp-proxyhttps-proxy 参数都是可选。
    2
    additional-trust-bundle-file 参数是一个指向 PEM 编码 X.509 证书的捆绑包的文件路径,这些证书全部连接在一起。additional-trust-bundle-file 参数是一个指向 PEM 编码 X.509 证书的捆绑包的文件路径,它们都串联在一起。使用 TLS-inspecting 代理的用户需要 additional-trust-bundle-file 参数,除非代理的身份证书由 Red Hat Enterprise Linux CoreOS (RHCOS)信任捆绑包的颁发机构签名。无论代理是透明还是需要使用 http-proxyhttps-proxy 参数明确配置,都适用。
    注意

    您不应该尝试在集群中直接更改代理或其他信任捆绑包配置。这些更改必须使用 ROSA CLI (rosa) 或 Red Hat OpenShift Cluster Manager 加以应用。直接对集群所做的任何更改都会被自动恢复。

    3 5 7
    http-proxyhttps-proxy 参数必须指向有效的 URL。
    8
    要排除代理的目标域名、IP 地址或网络 CIDR 的逗号分隔列表。

    在域前面加上 . 以仅匹配子域。例如: .y.com 匹配 x.y.com,但不匹配 y.com。使用 * 可对所有目的地绕过所有代理。如果您扩展了未包含在安装配置中 networking.machineNetwork[].cidr 字段定义的 worker,您必须将它们添加到此列表中,以防止连接问题。

    如果未设置 httpProxyhttpsProxy 字段,则此字段将被忽略。

验证

  1. 列出机器配置池的状态,并验证它们是否已更新:

    $ oc get machineconfigpools

    输出示例

    NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
    master   rendered-master-d9a03f612a432095dcde6dcf44597d90   True      False      False      3              3                   3                     0                      31h
    worker   rendered-worker-f6827a4efe21e155c25c21b43c46f65e   True      False      False      6              6                   6                     0                      31h

  2. 显示集群的代理配置,并验证详情是否如预期:

    $ oc get proxy cluster -o yaml

    输出示例

    apiVersion: config.openshift.io/v1
    kind: Proxy
    spec:
      httpProxy: http://proxy.host.domain:<port>
      httpsProxy: https://proxy.host.domain:<port>
      <...more...>
    status:
      httpProxy: http://proxy.host.domain:<port>
      httpsProxy: https://proxy.host.domain:<port>
      <...more...>

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.