1.4. 연결이 끊긴 네트워크 환경에 설치

연결이 끊긴 Red Hat OpenShift Container Platform 클러스터에 Kubernetes용 Red Hat Advanced Cluster Management를 설치해야 할 수 있습니다. 연결 해제된 허브 클러스터에 설치하려면 연결된 네트워크 환경에 있는 일반적인 설치 또는 업그레이드 단계 외에 다음 단계를 수행합니다.

필수 액세스: 모든 설치 및 업그레이드 작업에 대한 클러스터 관리 액세스 권한이 필요합니다.

시작하기 전에 요구 사항 및 권장 사항 섹션을 검토한 다음 다음 섹션을 참조하십시오.

1.4.1. 사전 요구 사항

Red Hat Advanced Cluster Management for Kubernetes를 설치하기 전에 다음 요구 사항을 충족해야 합니다.

  • 연결이 끊긴 네트워크 환경에 설치되므로 미러링된 Operator Lifecycle Manager 카탈로그 및 Operator 이미지를 저장하려면 로컬 이미지 레지스트리에 액세스해야 합니다. 이 환경에 OpenShift Container Platform 클러스터를 설치할 때 로컬 이미지 레지스트리가 이미 설정되어 있을 수 있으므로 동일한 로컬 이미지 레지스트리를 사용할 수 있어야 합니다.
  • 인터넷 및 로컬 미러 레지스트리에 대한 액세스 권한이 있는 워크스테이션이 있어야 합니다.
  • 지원되는 Red Hat OpenShift Container Platform 버전은 사용자 환경에 배포해야 하며 CLI(명령줄 인터페이스)로 로그인해야 합니다. Red Hat OpenShift Container Platform 설치에 대한 자세한 내용은 OpenShift Container Platform 버전 4.11 설치 설명서 를 참조하십시오. Red Hat OpenShift CLI를 사용하여 oc 명령 설치 및 구성에 대한 정보는 CLI 시작하기 를 참조하십시오.
  • hub 클러스터의 용량 설정에 대한 자세한 내용은 클러스터 스케일링을 검토하십시오.

1.4.2. OpenShift Container Platform 설치 확인

  • 연결하는 동안 oc -n openshift-console get route 명령을 실행하여 OpenShift Container Platform 웹 콘솔에 액세스합니다. 다음 예제 출력을 참조하십시오.

    openshift-console          console             console-openshift-console.apps.new-coral.purple-chesterfield.com                       console              https   reencrypt/Redirect     None

브라우저에서 URL을 열고 결과를 확인합니다. 콘솔 URL에 console-openshift-console.router.default.svc.cluster.local 이 표시되면 OpenShift Container Platform을 설치할 때 openshift_master_default_subdomain 의 값을 설정합니다.

1.4.3. 로컬 이미지 레지스트리의 가용성 확인

모범 사례: Operator Lifecycle Manager Operator 관련 콘텐츠에 기존 미러 레지스트리를 사용합니다.

연결이 끊긴 환경에 Kubernetes용 Red Hat Advanced Cluster Management를 설치하려면 로컬 미러 이미지 레지스트리를 사용해야 합니다. 연결이 끊긴 환경에 OpenShift Container Platform 클러스터 설치를 이미 완료했기 때문에 Red Hat OpenShift Container Platform 클러스터 설치 중에 사용할 미러 레지스트리를 이미 설정했습니다.

로컬 이미지 레지스트리가 아직 없는 경우 Red Hat OpenShift Container Platform 설명서의 연결이 끊긴 설치 이미지 미러링 에 설명된 절차를 완료하여 생성합니다.

1.4.4. Operator Lifecycle Manager 구성

Kubernetes용 Red Hat Advanced Cluster Management는 Operator로 패키지되므로 Operator Lifecycle Manager를 사용하여 설치를 완료합니다.

연결이 끊긴 환경에서 Operator는 연결이 끊긴 클러스터에서 액세스할 수 없는 이미지 레지스트리에서 호스팅되므로 Red Hat에서 제공하는 표준 Operator 소스에 액세스할 수 없습니다. 대신 클러스터 관리자는 미러링된 이미지 레지스트리 및 Operator 카탈로그를 사용하여 연결이 끊긴 환경에서 Operator를 설치하고 업그레이드할 수 있습니다.

Kubernetes용 Red Hat Advanced Cluster Management를 설치하기 위해 연결이 끊긴 클러스터를 준비하려면 OpenShift Container Platform 설명서의 제한된 네트워크에서 Operator Lifecycle Manager 사용에 설명된 절차를 따르십시오.

1.4.4.1. 추가 요구사항

이전 절차를 완료하면 Red Hat Advanced Cluster Management for Kubernetes와 관련된 다음 요구 사항을 참고하십시오.

1.4.4.1.1. 미러 카탈로그에 Operator 패키지 포함
  • 미러 카탈로그에 필요한 Operator 패키지를 포함합니다. Red Hat은 registry.redhat.io/redhat/redhat-operator-index 인덱스 이미지에서 제공하는 Red Hat 운영자 카탈로그에서 Red Hat Advanced Cluster Management for Kubernetes operator를 제공합니다. 이 카탈로그 인덱스 이미지의 미러를 준비하면 Red Hat에서 제공하는 전체 카탈로그를 미러링하거나 사용하려는 Operator 패키지만 포함하는 하위 집합을 미러링할 수 있습니다.

    전체 미러 카탈로그를 생성하는 경우 Red Hat Advanced Cluster Management for Kubernetes를 설치하는 데 필요한 모든 패키지가 포함되어 있으므로 특별한 고려 사항이 필요하지 않습니다. 그러나 부분적 또는 필터링된 미러링된 카탈로그를 생성하는 경우 포함할 특정 패키지를 식별하려면 다음 패키지 이름을 목록에 포함해야 합니다.

    • advanced-cluster-manager
    • multicluster-engine
  • 두 가지 미러링 절차 중 하나를 사용합니다.
  • OPM 유틸리티를 사용하여 미러링된 카탈로그 또는 레지스트리를 생성하는 경우 opm index prune, 다음 예에 표시된 대로 -p 옵션의 값에 다음 패키지 이름을 포함합니다.

    opm index prune \
       -f registry.redhat.io/redhat/redhat-operator-index:v4.10 \
       -p advanced-cluster-management,multicluster-engine \
       -t myregistry.example.com:5000/mirror/my-operator-index:v4.10
  • 대신 oc-mirror 플러그인을 사용하여 미러링된 카탈로그 또는 레지스트리를 채우는 경우 다음 예에 표시된 대로 ImageSetConfiguration 의 패키지 목록에 다음 패키지 이름을 포함합니다.

    kind: ImageSetConfiguration
    apiVersion: mirror.openshift.io/v1alpha2
    storageConfig:
      registry:
         imageURL: myregistry.example.com:5000/mirror/oc-mirror-metadata
    mirror:
      platform:
        channels:
        - name: stable-4.10
          type: ocp
      operators:
      - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.11
        packages:
        - name: advanced-cluster-management
        - name: multicluster-engine
      additionalImages: []
      helm: {}
1.4.4.1.2. 미러 레지스트리를 사용하도록 구성

Red Hat Advanced Cluster Management for Kubernetes 설치에 필요한 이전 패키지가 있는 로컬 미러 레지스트리를 입력한 경우 제한된 네트워크에서 Operator Lifecycle Manager를 사용하여 연결이 끊긴 클러스터에서 미러 레지스트리 및 카탈로그를 사용할 수 있도록 하는 방법에 설명된 단계를 완료합니다. 여기에는 다음 단계가 포함됩니다.

1.4.4.1.3. 카탈로그 소스 이름 검색

Red Hat OpenShift Container Platform 설명서의 절차에 설명된 대로 연결이 끊긴 클러스터에 CatalogSource 리소스를 추가해야 합니다. 중요: 나중에 필요할 metadata.name 필드의 값을 기록해 두십시오.

다음 예와 유사한 YAML 파일을 사용하여 CatalogSource 리소스를 openshift-marketplace 네임스페이스에 추가합니다.

apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
  name: my-mirror-catalog-source
  namespace: openshift-marketplace
spec:
  image: myregistry.example.com:5000/mirror/my-operator-index:v4.10
  sourceType: grpc

나중에 생성할 MulticlusterHub 리소스에 주석에 대한 metadata.name 필드 값이 필요합니다.

1.4.5. 필요한 패키지를 사용할 수 있는지 확인

Operator Lifecycle Manager는 정기적으로 시간 지정된 간격으로 사용 가능한 패키지의 카탈로그 소스를 폴링합니다. Operator Lifecycle Manager가 미러링된 카탈로그의 카탈로그 소스를 폴링한 후 사용 가능한 PackageManifest 리소스를 쿼리하여 연결이 끊긴 클러스터에서 필요한 패키지를 사용할 수 있는지 확인할 수 있습니다.

연결이 끊긴 클러스터를 지시한 다음 명령을 실행합니다.

oc -n openshift-marketplace get packagemanifests

표시되는 목록에는 다음 패키지가 미러 카탈로그에 카탈로그 소스에서 제공됨을 보여주는 항목이 포함되어야 합니다.

  • advanced-cluster-manager
  • multicluster-engine

1.4.6. 이미지 콘텐츠 소스 정책 구성

클러스터가 인터넷 호스팅 레지스트리가 아닌 미러 레지스트리에서 Kubernetes Operator용 Red Hat Advanced Cluster Management의 컨테이너 이미지를 얻으려면 연결이 끊긴 클러스터에서 ImageContentSourcePolicy 를 구성하여 이미지 참조를 미러 레지스트리로 리디렉션해야 합니다.

oc adm catalog mirror 명령을 사용하여 카탈로그를 미러링한 경우 해당 명령으로 생성된 manifests-* 디렉터리 내의 imageContentSourcePolicy.yaml 파일에 필요한 이미지 콘텐츠 소스 정책 구성이 있습니다.

oc-mirror 플러그인을 사용하여 카탈로그를 미러링한 경우, oc-mirror 플러그인에서 생성한 oc-mirror-workspace/results-* 디렉터리에 imageContentSourcePolicy.yaml 파일이 있습니다.

두 경우 모두 다음과 같은 oc apply 또는 oc replace 명령을 사용하여 연결이 끊긴 명령에 정책을 적용할 수 있습니다.

oc replace -f ./<path>/imageContentSourcePolicy.yaml

필요한 이미지 콘텐츠 소스 정책 설명은 미러 레지스트리를 생성한 방법에 따라 다를 수 있지만 다음 예와 유사합니다.

apiVersion: operator.openshift.io/v1alpha1
kind: ImageContentSourcePolicy
metadata:
  labels:
    operators.openshift.org/catalog: "true"
  name: operator-0
spec:
  repositoryDigestMirrors:
  - mirrors:
    - myregistry.example.com:5000/rhacm2
    source: registry.redhat.io/rhacm2
  - mirrors:
    - myregistry.example.com:5000/multicluster-engine
    source: registry.redhat.io/multicluster-engine
  - mirrors:
    - myregistry.example.com:5000/openshift4
    source: registry.redhat.io/openshift4
  - mirrors:
    - myregistry.example.com:5000/redhat
    source: registry.redhat.io/redhat

1.4.7. Red Hat Advanced Cluster Management for Kubernetes operator and hub cluster 설치

이전에 설명한 대로 Operator Lifecycle Manager 및 Red Hat OpenShift Container Platform을 구성한 후에는 OperatorHub 콘솔 또는 CLI를 사용하여 Kubernetes용 Red Hat Advanced Cluster Management를 설치할 수 있습니다. 연결된 온라인 주제 동안에 설명된 것과 동일한 지침을 따르십시오.

중요: MulticlusterHub 리소스 생성은 hub 클러스터의 설치 프로세스 시작입니다.

클러스터에 Operator를 설치하려면 미러 카탈로그에 기본이 아닌 카탈로그 소스를 사용해야 하므로 Operator에 미러 카탈로그 소스의 이름을 제공하기 위해 MulticlusterHub 리소스에 특수 주석이 필요합니다. 다음 예제는 필요한 mce-subscription-spec 주석을 표시합니다.

apiVersion: operator.open-cluster-management.io/v1
kind: MultiClusterHub
metadata:
   namespace: open-cluster-management
   name: hub
   annotations:
      installer.open-cluster-management.io/mce-subscription-spec: '{"source": "my-mirror-catalog-source"}'
spec: {}

CLI를 사용하여 리소스를 생성하는 경우 oc apply 명령을 사용하여 적용하는 YAML에 mce-subscription-spec 주석을 추가하여 MulticlusterHub 리소스를 생성합니다.

OperatorHub 콘솔을 사용하여 리소스를 생성하는 경우 YAML 보기로 전환하고 이전에 표시된 대로 주석을 삽입합니다. 중요: 필드 보기 패널에 주석에 대한 OperatorHub 콘솔에는 MulticlusterHub 를 생성할 필드 가 없습니다.