5.4. 설치 후 프록시 구성

기존 VPC(Virtual Private Cloud)에 ROSA(Red Hat OpenShift Service) 클러스터를 설치한 후 HTTP 또는 HTTPS 프록시를 구성할 수 있습니다. Red Hat OpenShift Cluster Manager 또는 ROSA CLI(rosa)를 사용하여 설치 후 프록시를 구성할 수 있습니다.

5.4.1. OpenShift Cluster Manager를 사용하여 설치 후 프록시 구성

Red Hat OpenShift Cluster Manager를 사용하여 VPC(Virtual Private Cloud)의 AWS 클러스터의 기존 Red Hat OpenShift Service에 클러스터 전체 프록시 구성을 추가할 수 있습니다.

OpenShift Cluster Manager를 사용하여 기존 클러스터 전체 프록시 구성을 업데이트할 수도 있습니다. 예를 들어 프록시의 인증 기관이 만료되면 프록시의 네트워크 주소를 업데이트하거나 추가 신뢰 번들을 교체해야 할 수 있습니다.

중요

클러스터는 컨트롤 플레인 및 컴퓨팅 노드에 프록시 설정을 적용합니다. 구성을 적용하는 동안 각 클러스터 노드는 일시적으로 스케줄링할 수 없는 상태로 배치되어 워크로드를 드레인합니다. 각 노드는 프로세스의 일부로 재시작됩니다.

사전 요구 사항

  • AWS 클러스터에 Red Hat OpenShift Service가 있어야 합니다.
  • 클러스터는 VPC에 배포되어 있습니다.

절차

  1. OpenShift Cluster Manager Hybrid Cloud Console 로 이동하여 클러스터를 선택합니다.
  2. 네트워킹 페이지의 VPC(Virtual Private Cloud) 섹션에서 Edit cluster-wide proxy 를 클릭합니다.
  3. 클러스터 전체 프록시 편집 페이지에서 프록시 구성 세부 정보를 입력합니다.

    1. 다음 필드 중 하나 이상에 값을 입력합니다.

      • 유효한 HTTP 프록시 URL 을 지정합니다.
      • 유효한 HTTPS 프록시 URL 을 지정합니다.
      • 추가 신뢰 번들 필드에서 PEM 인코딩 X.509 인증서 번들을 제공합니다. 기존 신뢰 번들 파일을 교체하는 경우 파일 교체를 선택하여 필드를 확인합니다. 번들은 클러스터 노드의 신뢰할 수 있는 인증서 저장소에 추가됩니다. 프록시의 ID 인증서가 RHCOS(Red Hat Enterprise Linux CoreOS) 신뢰 번들의 기관에서 서명하지 않는 한 추가 신뢰 번들 파일이 필요합니다.

        추가 프록시 구성은 필요하지 않아도 추가 인증 기관(CA)이 필요한 MITM 투명 프록시 네트워크를 사용하는 경우 MITM CA 인증서를 제공해야 합니다.

        참고

        HTTP 또는 HTTPS 프록시 URL을 지정하지 않고 추가 신뢰 번들 파일을 업로드하는 경우 해당 번들은 클러스터에 설정되지만 프록시와 함께 사용하도록 구성되지 않습니다.

    2. Confirm 을 클릭합니다.

검증

  • 네트워킹 페이지의 VPC(Virtual Private Cloud) 섹션에서 클러스터의 프록시 구성이 예상대로 구성되어 있는지 확인합니다.

5.4.2. CLI를 사용하여 설치 후 프록시 구성

Red Hat OpenShift Service on AWS(ROSA) CLI(rosa)를 사용하여 VPC(Virtual Private Cloud)의 기존 ROSA 클러스터에 클러스터 전체 프록시 구성을 추가할 수 있습니다.

rosa 를 사용하여 기존 클러스터 전체 프록시 구성을 업데이트할 수도 있습니다. 예를 들어 프록시의 인증 기관이 만료되면 프록시의 네트워크 주소를 업데이트하거나 추가 신뢰 번들을 교체해야 할 수 있습니다.

중요

클러스터는 컨트롤 플레인 및 컴퓨팅 노드에 프록시 설정을 적용합니다. 구성을 적용하는 동안 각 클러스터 노드는 일시적으로 스케줄링할 수 없는 상태로 배치되어 워크로드를 드레인합니다. 각 노드는 프로세스의 일부로 재시작됩니다.

사전 요구 사항

  • 설치 호스트에 최신 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-file,http-proxy, https-proxy 인수는 모두 선택 사항입니다.
    2
    http-proxy 또는 https-proxy 인수 없이 additional-trust-bundle-file 인수를 사용하면 신뢰 저장소에 신뢰 번들이 추가되고 클러스터 시스템 송신 트래픽을 확인하는 데 사용됩니다. 이 시나리오에서는 프록시와 함께 사용할 번들이 구성되지 않았습니다.
    3
    additional-trust-bundle-file 인수는 모두 서로 연결된 PEM 인코딩 X.509 인증서 번들을 가리키는 파일 경로입니다. additionalTrustBundle 매개변수는 RHCOS 신뢰 번들의 기관에서 프록시의 ID 인증서를 서명하지 않는 한 필요합니다. 추가 프록시 구성은 필요하지 않아도 추가 CA는 필요한 MITM 투명 프록시 네트워크를 사용한다면 MITM CA 인증서를 제공해야 합니다.
    참고

    클러스터에서 프록시 또는 추가 신뢰 번들 구성을 직접 변경하지 않아야 합니다. 이러한 변경 사항은 ROSA CLI(rosa) 또는 Red Hat OpenShift Cluster Manager를 사용하여 적용해야 합니다. 클러스터에 직접 변경한 모든 변경 사항은 자동으로 취소됩니다.

    5 7
    http-proxyhttps-proxy 인수는 유효한 URL을 가리켜야 합니다.
    8
    프록시를 제외할 대상 도메인 이름, IP 주소 또는 네트워크 CIDR의 쉼표로 구분된 목록입니다.

    하위 도메인과 일치하려면 도메인 앞에 .을 입력합니다. 예를 들어, .y.comx.y.com과 일치하지만 y.com은 일치하지 않습니다. *를 사용하여 모든 대상에 대해 프록시를 바이패스합니다. networking.machineNetwork[].cidr 필드에 의해 정의된 네트워크에 포함되어 있지 않은 작업자를 설치 구성에서 확장하려면 연결 문제를 방지하기 위해 이 목록에 해당 작업자를 추가해야 합니다.

    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...>