1.3. 멀티 클러스터 엔진 Operator 설치
멀티 클러스터 엔진 운영자는 클러스터의 관리를 개선하는 소프트웨어 운영자입니다. 멀티 클러스터 엔진 Operator는 클라우드 및 데이터 센터 전반에서 Red Hat OpenShift Container Platform 및 Kubernetes 클러스터 라이프사이클 관리를 지원합니다.
다음 설명서를 참조하십시오.
1.3.1. 온라인 연결 중 설치 링크 복사링크가 클립보드에 복사되었습니다!
다중 클러스터 엔진 Operator는 다중 클러스터 엔진 Operator를 포함하는 구성 요소의 설치, 업그레이드 및 제거를 관리하는 Operator Lifecycle Manager를 사용하여 설치됩니다.
필수 액세스 권한: 클러스터 관리자
중요:
- 2.5 이전의 Kubernetes용 Red Hat Advanced Cluster Management가 없는 클러스터에 다중 클러스터 엔진 Operator를 설치해야 합니다. 멀티 클러스터 엔진 Operator는 2.5 이전 버전에서 Red Hat Advanced Cluster Management for Kubernetes와 공존할 수 없습니다. 동일한 관리 구성 요소를 제공하기 때문입니다. 이전에 Red Hat Advanced Cluster Management를 설치하지 않은 클러스터에 다중 클러스터 엔진 Operator를 설치하는 것이 좋습니다. 버전 2.5 이상에서 Kubernetes용 Red Hat Advanced Cluster Management를 사용하는 경우 멀티 클러스터 엔진 Operator가 클러스터에 이미 설치되어 있습니다.
-
OpenShift Container Platform Dedicated 환경의 경우
cluster-admin권한이 있어야 합니다. 기본적으로dedicated-admin역할에는 OpenShift Container Platform Dedicated 환경에서 네임스페이스를 생성하는 데 필요한 권한이 없습니다. - 기본적으로 다중 클러스터 엔진 Operator 구성 요소는 추가 구성없이 OpenShift Container Platform 클러스터의 작업자 노드에 설치됩니다. OpenShift Container Platform OperatorHub 웹 콘솔 인터페이스를 사용하거나 OpenShift Container Platform CLI를 사용하여 다중 클러스터 엔진 Operator를 작업자 노드에 설치할 수 있습니다.
- 인프라 노드를 사용하여 OpenShift Container Platform 클러스터를 구성한 경우 추가 리소스 매개변수가 포함된 OpenShift Container Platform CLI를 사용하여 다중 클러스터 엔진 Operator를 해당 인프라 노드에 설치할 수 있습니다. 모든 다중 클러스터 엔진 Operator 구성 요소가 인프라 노드를 지원하는 것은 아니므로 인프라 노드에 다중 클러스터 엔진 Operator를 설치할 때 일부 작업자 노드가 필요합니다. 자세한 내용은 인프라 노드에 다중 클러스터 엔진 설치 섹션을 참조하십시오.
OpenShift Container Platform 또는 Kubernetes용 다중 클러스터 엔진에서 생성하지 않은 Kubernetes 클러스터를 가져오려면 이미지 가져오기 보안을 구성해야 합니다. 이미지 풀 시크릿 및 기타 고급 구성을 구성하는 방법에 대한 자세한 내용은 이 문서의 고급 구성 섹션의 옵션을 참조하십시오.
1.3.1.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
Kubernetes용 멀티 클러스터 엔진을 설치하기 전에 다음 요구사항을 참조하십시오.
- Red Hat OpenShift Container Platform 클러스터는 OpenShift Container Platform 콘솔에서 OperatorHub 카탈로그의 다중 클러스터 엔진 Operator에 액세스할 수 있어야 합니다.
- catalog.redhat.com 에 액세스해야 합니다.
OpenShift Container Platform 버전 4.8 이상은 사용자 환경에 배포해야 하며 OpenShift Container Platform CLI로 로그인해야 합니다. OpenShift Container Platform에 대한 다음 설치 설명서를 참조하십시오.
-
oc명령을 실행하려면 OpenShift Container Platform CLI(명령줄 인터페이스)를 구성해야 합니다. OpenShift Container Platform CLI 설치 및 구성에 대한 정보는 CLI 시작하기 를 참조하십시오. - OpenShift Container Platform 권한을 통해 네임스페이스를 생성할 수 있어야 합니다.
- Operator의 종속성에 액세스하려면 인터넷 연결이 있어야 합니다.
OpenShift Container Platform Dedicated 환경에 설치하려면 다음을 참조하십시오.
- OpenShift Container Platform Dedicated 환경이 구성 및 실행되고 있어야 합니다.
-
엔진을 설치하는 OpenShift Container Platform Dedicated 환경에 대한
cluster-admin권한이 있어야 합니다.
- Red Hat OpenShift Container Platform과 함께 제공되는 지원 설치 관리자를 사용하여 관리형 클러스터를 생성하려는 경우 요구 사항은 OpenShift Container Platform 설명서의 지원 설치 관리자 주제로 설치 준비를 참조하십시오.
1.3.1.2. OpenShift Container Platform 설치 확인 링크 복사링크가 클립보드에 복사되었습니다!
레지스트리 및 스토리지 서비스를 포함하여 지원되는 OpenShift Container Platform 버전이 설치되어 작동해야 합니다. OpenShift Container Platform 설치에 대한 자세한 내용은 OpenShift Container Platform 설명서를 참조하십시오.
- 다중 클러스터 엔진 Operator가 OpenShift Container Platform 클러스터에 설치되어 있지 않은지 확인합니다. 다중 클러스터 엔진 Operator는 각 OpenShift Container Platform 클러스터에 하나의 단일 설치만 허용합니다. 설치가 없는 경우 다음 단계를 계속합니다.
OpenShift Container Platform 클러스터가 올바르게 설정되었는지 확인하려면 다음 명령을 사용하여 OpenShift Container Platform 웹 콘솔에 액세스합니다.
kubectl -n openshift-console get route console
kubectl -n openshift-console get route consoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
console console-openshift-console.apps.new-coral.purple-chesterfield.com console https reencrypt/Redirect None
console console-openshift-console.apps.new-coral.purple-chesterfield.com console https reencrypt/Redirect NoneCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
브라우저에서 URL을 열고 결과를 확인합니다. 콘솔 URL에
console-openshift-console.router.default.svc.cluster.local이 표시되면 OpenShift Container Platform을 설치할 때openshift_master_default_subdomain의 값을 설정합니다. URL의 다음 예제를 참조하십시오.https://console-openshift-console.apps.new-coral.purple-chesterfield.com.
다중 클러스터 엔진 Operator를 설치할 수 있습니다.
1.3.1.3. OperatorHub 웹 콘솔 인터페이스에서 설치 링크 복사링크가 클립보드에 복사되었습니다!
모범 사례: OpenShift Container Platform 탐색의 관리자 보기에서 OpenShift Container Platform과 함께 제공되는 OperatorHub 웹 콘솔 인터페이스를 설치합니다.
- Operator > OperatorHub 를 선택하여 사용 가능한 Operator 목록에 액세스하고 Kubernetes Operator용 다중 클러스터 엔진을 선택합니다.
-
설치를클릭합니다. Operator 설치 페이지에서 설치 옵션을 선택합니다.
네임스페이스:
- 다중 클러스터 엔진 Operator 엔진을 자체 네임스페이스 또는 프로젝트에 설치해야 합니다.
-
기본적으로 OperatorHub 콘솔 설치 프로세스는
다중 클러스터 엔진이라는 네임스페이스를 생성합니다. 모범 사례: 사용 가능한 경우multicluster-engine네임스페이스를 계속 사용합니다. -
이미
multicluster-engine이라는 네임스페이스가 있는 경우 다른 네임스페이스를 선택합니다.
- Channel: 선택한 채널은 설치 중인 릴리스에 해당합니다. 채널을 선택하면 확인된 릴리스를 설치하고 해당 릴리스 내에서 향후 에라타 업데이트를 가져옵니다.
승인 전략: 승인 전략은 구독한 채널에 업데이트를 적용하는 데 필요한 사람 상호 작용을 식별합니다.
- 기본적으로 선택되어 있는 자동 을 선택하여 해당 릴리스 내의 모든 업데이트가 자동으로 적용되도록 합니다.
- 업데이트를 사용할 수 있을 때 알림을 받으려면 수동 을 선택합니다. 언제 업데이트가 적용되었는지에 대한 우려가 있는 경우 이 방법이 모범 사례일 수 있습니다.
참고: 다음 마이너 릴리스로 업그레이드하려면 OperatorHub 페이지로 돌아가 최신 릴리스의 새 채널을 선택해야 합니다.
- 설치를 선택하여 변경 사항을 적용하고 Operator를 생성합니다.
MultiClusterEngine 사용자 정의 리소스를 생성하려면 다음 프로세스를 참조하십시오.
- OpenShift Container Platform 콘솔 탐색에서 설치된 Operator > Kubernetes용 다중 클러스터 엔진을 선택합니다.
- MultiCluster Engine 탭을 선택합니다.
- MultiClusterEngine 생성을 선택합니다.
YAML 파일에서 기본값을 업데이트합니다. 문서의 MultiClusterEngine 고급 구성 섹션의 옵션을 참조하십시오.
- 다음 예제에서는 편집기에 복사할 수 있는 기본 템플릿을 보여줍니다.
apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}Copy to Clipboard Copied! Toggle word wrap Toggle overflow
생성을 선택하여 사용자 정의 리소스를 초기화합니다. 멀티 클러스터 엔진 Operator 엔진을 빌드하고 시작하는 데 최대 10분이 걸릴 수 있습니다.
MultiClusterEngine 리소스가 생성되면 MultiCluster Engine 탭에서 리소스의 상태를 사용할 수 있습니다.
1.3.1.4. OpenShift Container Platform CLI에서 설치 링크 복사링크가 클립보드에 복사되었습니다!
Operator 요구 사항이 포함된 다중 클러스터 엔진 Operator 엔진 네임스페이스를 생성합니다. 다음 명령을 실행합니다. 여기서
namespace는 Kubernetes 엔진 네임스페이스의 다중 클러스터 엔진의 이름입니다.네임스페이스값은 OpenShift Container Platform 환경에서 Project 라고 할 수 있습니다.oc create namespace <namespace>
oc create namespace <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 프로젝트 네임스페이스를 생성한 네임스페이스로 전환합니다.
namespace를 1단계에서 생성한 Kubernetes 엔진의 다중 클러스터 엔진 이름으로 바꿉니다.oc project <namespace>
oc project <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow YAML 파일을 생성하여
OperatorGroup리소스를 구성합니다. 각 네임스페이스에는 Operator 그룹이 하나만 있을 수 있습니다.default를 Operator 그룹의 이름으로 바꿉니다.namespace를 프로젝트 네임스페이스의 이름으로 바꿉니다. 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
OperatorGroup리소스를 생성합니다.operator-group을 생성한 Operator 그룹 YAML 파일의 이름으로 변경합니다.oc apply -f <path-to-file>/<operator-group>.yaml
oc apply -f <path-to-file>/<operator-group>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow YAML 파일을 생성하여 OpenShift Container Platform 서브스크립션을 구성합니다. 파일은 다음 예와 유사해야 합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고: 인프라 노드에 Kubernetes 엔진의 다중 클러스터 엔진을 설치하려면 Operator Lifecycle Manager 서브스크립션 추가 구성 섹션을 참조하십시오.
다음 명령을 실행하여 OpenShift Container Platform 서브스크립션을 생성합니다.
서브스크립션을생성한 서브스크립션 파일의 이름으로 변경합니다.oc apply -f <path-to-file>/<subscription>.yaml
oc apply -f <path-to-file>/<subscription>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow YAML 파일을 생성하여
MultiClusterEngine사용자 정의 리소스를 구성합니다. 기본 템플릿은 다음 예와 유사해야 합니다.apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}apiVersion: multicluster.openshift.io/v1 kind: MultiClusterEngine metadata: name: multiclusterengine spec: {}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고: 인프라 노드에 다중 클러스터 엔진 Operator를 설치하려면 MultiClusterEngine 사용자 정의 리소스 추가 구성 섹션을 참조하십시오.
다음 명령을 실행하여
MultiClusterEngine사용자 정의 리소스를 생성합니다.custom-resource를 사용자 정의 리소스 파일의 이름으로 교체합니다.oc apply -f <path-to-file>/<custom-resource>.yaml
oc apply -f <path-to-file>/<custom-resource>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 단계가 다음 오류와 함께 실패하면 리소스가 계속 생성되고 적용되는 것입니다. 리소스가 생성되면 몇 분 후에 명령을 다시 실행합니다.
error: unable to recognize "./mce.yaml": no matches for kind "MultiClusterEngine" in version "operator.multicluster-engine.io/v1"
error: unable to recognize "./mce.yaml": no matches for kind "MultiClusterEngine" in version "operator.multicluster-engine.io/v1"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 사용자 정의 리소스를 가져옵니다. 다음 명령을 실행한 후
MultiClusterEngine사용자 정의 리소스 상태가status.phase필드에Available로 표시되는 데 최대 10분이 걸릴 수 있습니다.oc get mce -o=jsonpath='{.items[0].status.phase}'oc get mce -o=jsonpath='{.items[0].status.phase}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
다중 클러스터 엔진 Operator를 다시 설치하는 중이고 Pod가 시작되지 않는 경우 이 문제를 해결하기 위한 단계는 다시 설치 문제 해결을 참조하십시오.
참고:
-
ClusterRoleBinding이 있는ServiceAccount는 다중 클러스터 엔진 Operator 및 다중 클러스터 엔진 Operator를 설치하는 네임스페이스에 대한 액세스 권한이 있는 모든 사용자 자격 증명에 클러스터 관리자 권한을 자동으로 부여합니다.
1.3.1.5. 인프라 노드에 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 클러스터는 승인된 관리 구성 요소를 실행하기 위한 인프라 노드를 포함하도록 구성할 수 있습니다. 인프라 노드에서 구성 요소를 실행하면 해당 관리 구성 요소를 실행하는 노드에 OpenShift Container Platform 서브스크립션 할당량이 할당되지 않습니다.
OpenShift Container Platform 클러스터에 인프라 노드를 추가한 후 OpenShift Container Platform CLI 지침에서 설치를 수행하고 Operator Lifecycle Manager 서브스크립션 및 MultiClusterEngine 사용자 정의 리소스에 다음 구성을 추가합니다.
1.3.1.5.1. OpenShift Container Platform 클러스터에 인프라 노드 추가 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 설명서의 인프라 머신 세트 생성에 설명된 절차를 따르십시오. 인프라 노드는 관리 이외의 워크로드가 실행되지 않도록 쿠버네티스 테인트 및 라벨 을 사용하여 구성됩니다.
다중 클러스터 엔진 Operator에서 제공하는 인프라 노드 활성화와 호환하려면 인프라 노드에 다음 테인트 및 라벨 이 적용되었는지 확인하십시오.
1.3.1.5.2. Operator Lifecycle Manager 서브스크립션 추가 구성 링크 복사링크가 클립보드에 복사되었습니다!
Operator Lifecycle Manager 서브스크립션을 적용하기 전에 다음 추가 구성을 추가합니다.
1.3.1.5.3. MultiClusterEngine 사용자 정의 리소스 추가 구성 링크 복사링크가 클립보드에 복사되었습니다!
MultiClusterEngine 사용자 정의 리소스를 적용하기 전에 다음 추가 구성을 추가합니다.
spec:
nodeSelector:
node-role.kubernetes.io/infra: ""
spec:
nodeSelector:
node-role.kubernetes.io/infra: ""
1.3.2. 연결이 끊긴 네트워크에 설치 링크 복사링크가 클립보드에 복사되었습니다!
인터넷에 연결되지 않은 Red Hat OpenShift Container Platform 클러스터에 멀티 클러스터 엔진 Operator를 설치해야 할 수 있습니다. 연결이 끊긴 엔진에 설치하려면 연결된 설치와 동일한 몇 가지 단계가 필요합니다.
중요: 2.5 이전의 Kubernetes용 Red Hat Advanced Cluster Management가 없는 클러스터에 다중 클러스터 엔진 Operator를 설치해야 합니다. 멀티 클러스터 엔진 Operator는 2.5 이전 버전에서 Red Hat Advanced Cluster Management for Kubernetes와 공존할 수 없습니다. 동일한 관리 구성 요소를 제공하기 때문입니다. 이전에 Red Hat Advanced Cluster Management를 설치하지 않은 클러스터에 다중 클러스터 엔진 Operator를 설치하는 것이 좋습니다. 버전 2.5.0 이상에서 Kubernetes용 Red Hat Advanced Cluster Management를 사용하는 경우 멀티 클러스터 엔진 Operator가 클러스터에 이미 설치되어 있습니다.
설치하는 동안 네트워크에서 직접 액세스하는 대신 설치 중에 액세스하려면 패키지 사본을 다운로드해야 합니다.
1.3.2.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
The multicluster engine Operator를 설치하기 전에 다음 요구 사항을 충족해야 합니다.
- Red Hat OpenShift Container Platform 버전 4.8 이상은 사용자 환경에 배포해야 하며 CLI(명령줄 인터페이스)로 로그인해야 합니다.
catalog.redhat.com 에 액세스해야 합니다.
참고: 베어 메탈 클러스터를 관리하려면 OpenShift Container Platform 버전 4.8 이상이 있어야 합니다.
OpenShift Container Platform 버전 4.10,OpenShift Container Platform 버전 4.8 을 참조하십시오.
-
Red Hat OpenShift Container Platform CLI는 버전 4.8 이상이어야 하며
oc명령을 실행하도록 구성해야 합니다. Red Hat OpenShift CLI 설치 및 구성에 대한 정보는 CLI 시작하기 를 참조하십시오. - Red Hat OpenShift Container Platform 권한을 통해 네임스페이스를 생성할 수 있어야 합니다.
- Operator의 종속성을 다운로드하려면 인터넷 연결이 있는 워크스테이션이 있어야 합니다.
1.3.2.2. OpenShift Container Platform 설치 확인 링크 복사링크가 클립보드에 복사되었습니다!
- 클러스터에서 설치 및 작동하는 레지스트리 및 스토리지 서비스를 포함하여 지원되는 OpenShift Container Platform 버전이 있어야 합니다. OpenShift Container Platform 버전 4.8에 대한 자세한 내용은 OpenShift Container Platform 설명서를 참조하십시오.
연결 시 다음 명령을 사용하여 OpenShift Container Platform 웹 콘솔에 액세스하여 OpenShift Container Platform 클러스터가 올바르게 설정되었는지 확인할 수 있습니다.
kubectl -n openshift-console get route console
kubectl -n openshift-console get route consoleCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
console console-openshift-console.apps.new-coral.purple-chesterfield.com console https reencrypt/Redirect None
console console-openshift-console.apps.new-coral.purple-chesterfield.com console https reencrypt/Redirect NoneCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이 예의 콘솔 URL은
https:// console-openshift-console.apps.new-coral.purple-chesterfield.com입니다. 브라우저에서 URL을 열고 결과를 확인합니다.콘솔 URL에
console-openshift-console.router.default.svc.cluster.local이 표시되면 OpenShift Container Platform을 설치할 때openshift_master_default_subdomain의 값을 설정합니다.
1.3.2.3. 연결이 끊긴 환경에 설치 링크 복사링크가 클립보드에 복사되었습니다!
중요: 연결이 끊긴 환경에서 운영자를 설치하려면 필요한 이미지를 미러링 레지스트리에 다운로드해야 합니다. 다운로드하지 않으면 배포 중에 ImagePullBackOff 오류가 발생할 수 있습니다.
다음 단계에 따라 연결이 끊긴 환경에 다중 클러스터 엔진 Operator를 설치합니다.
미러 레지스트리를 생성합니다. 미러 레지스트리가 아직 없는 경우 Red Hat OpenShift Container Platform 설명서의 연결되지 않은 설치 미러링 주제에서 절차를 완료하여 생성합니다.
미러 레지스트리가 이미 있는 경우 기존 레지스트리를 구성하고 사용할 수 있습니다.
참고: 베어 메탈의 경우
install-config.yaml파일에서 연결이 끊긴 레지스트리의 인증서 정보를 제공해야 합니다. 연결이 끊긴 레지스트리에서 이미지에 액세스하려면 다중 클러스터 엔진 운영자가 레지스트리에 액세스할 수 있도록 인증서 정보를 제공해야 합니다.- 레지스트리에서 인증서 정보를 복사합니다.
-
편집기에서
install-config.yaml파일을 엽니다. -
additionalTrustBundle: |에 대한 항목을 찾습니다. additionalTrustBundle행 뒤에 인증서 정보를 추가합니다. 결과 내용은 다음 예와 유사해야 합니다.additionalTrustBundle: | -----BEGIN CERTIFICATE----- certificate_content -----END CERTIFICATE----- sshKey: >-
additionalTrustBundle: | -----BEGIN CERTIFICATE----- certificate_content -----END CERTIFICATE----- sshKey: >-Copy to Clipboard Copied! Toggle word wrap Toggle overflow
중요: 다음 관리 정책이 필요한 경우 연결 해제된 이미지 레지스트리의 미러가 필요합니다.
-
Container Security Operator 정책: 이미지는 소스
registry.redhat.io/quay에 있습니다. -
Compliance Operator 정책: 이미지는 소스
registry.redhat.io/compliance에 있습니다. 더 이상 사용되지 않는 Gatekeeper operator 정책: 이미지는 소스
registry.redhat.io/rhacm2에 있습니다.Gatekeeper Operator는 Gatekeeper 커뮤니티 노력 및 릴리스에 맞게 더 이상 사용되지 않습니다. 대신 서브스크립션으로 설치합니다.
세 가지 Operator 모두의 미러 목록의 다음 예제를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Container Security Operator 정책: 이미지는 소스
-
install-config.yaml파일을 저장합니다. mce-policy.yaml이라는 이름으로ImageContentSourcePolicy가 포함된 YAML 파일을 생성합니다. 참고: 실행 중인 클러스터에서 이 값을 수정하면 모든 노드가 롤링 재시작됩니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 ImageContentSourcePolicy 파일을 적용합니다.
oc apply -f mce-policy.yaml
oc apply -f mce-policy.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 연결이 끊긴 Operator Lifecycle Manager Red Hat Operator 및 커뮤니티 Operator를 활성화합니다.
다중 클러스터 엔진 Operator는 Operator Lifecycle Manager Red Hat Operator 카탈로그에 포함되어 있습니다.
- Red Hat Operator 카탈로그에 대해 연결이 끊긴 Operator Lifecycle Manager를 구성합니다. Red Hat OpenShift Container Platform 설명서의 제한된 네트워크에서 Operator Lifecycle Manager 사용 주제의 단계를 따르십시오.
- 연결이 끊긴 Operator Lifecycle Manager에 이미지가 있으므로 Operator Lifecycle Manager 카탈로그에서 Kubernetes용 다중 클러스터 엔진 Operator를 계속 설치합니다.
필요한 단계는 온라인에 연결된 동안 설치를 참조하십시오.
1.3.3. 고급 구성 링크 복사링크가 클립보드에 복사되었습니다!
멀티 클러스터 엔진 Operator는 필요한 모든 구성 요소를 배포하는 Operator를 사용하여 설치됩니다. MultiClusterEngine 사용자 정의 리소스에 다음 속성 중 하나 이상을 추가하여 설치 중 또는 설치 후에 다중 클러스터 엔진 Operator를 추가로 구성할 수 있습니다.
1.3.3.1. local-cluster 활성화 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 다중 클러스터 엔진 Operator를 실행하는 클러스터는 자체적으로 관리합니다. 클러스터 관리 자체를 관리하지 않고 다중 클러스터 엔진 Operator를 설치하려면 MultiClusterEngine 섹션의 spec.overrides.components 설정에 다음 값을 지정합니다.
-
name값은 hub 클러스터를로컬 클러스터로식별합니다. -
enabled설정은 기능이 활성화되었는지 여부를 지정합니다. 값이true이면 hub 클러스터가 자체적으로 관리됩니다. 값이false이면 hub 클러스터가 자체적으로 관리되지 않습니다.
자체적으로 관리하는 허브 클러스터는 클러스터 목록에서 로컬 클러스터로 지정됩니다.
1.3.3.2. 사용자 정의 이미지 가져오기 보안 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 또는 다중 클러스터 엔진 Operator에서 생성하지 않은 Kubernetes 클러스터를 가져오려면 OpenShift Container Platform 풀 시크릿 정보가 포함된 시크릿을 생성하여 배포 레지스트리에서 권한이 있는 콘텐츠에 액세스합니다.
OpenShift Container Platform 클러스터의 보안 요구 사항은 OpenShift Container Platform 및 Kubernetes용 다중 클러스터 엔진에 의해 자동으로 해결되므로 관리할 다른 유형의 Kubernetes 클러스터를 가져오지 않는 경우 시크릿을 생성할 필요가 없습니다.
중요: 이러한 보안은 네임스페이스별이므로 엔진에 사용하는 네임스페이스에 있는지 확인합니다.
- 가져오기 시크릿 다운로드를 선택하여 cloud.redhat.com/openshift/install/pull-secret 에서 OpenShift Container Platform 풀 시크릿 파일을 다운로드합니다. OpenShift Container Platform 풀 시크릿은 Red Hat 고객 포털 ID와 연결되어 있으며 모든 Kubernetes 공급자에서 동일합니다.
다음 명령을 실행하여 보안을 생성합니다.
oc create secret generic <secret> -n <namespace> --from-file=.dockerconfigjson=<path-to-pull-secret> --type=kubernetes.io/dockerconfigjson
oc create secret generic <secret> -n <namespace> --from-file=.dockerconfigjson=<path-to-pull-secret> --type=kubernetes.io/dockerconfigjsonCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
보안을생성하려는 보안의 이름으로 교체합니다. -
보안이
네임스페이스와 일치하므로 네임스페이스를 프로젝트 네임스페이스로 바꿉니다. -
다운로드한 OpenShift Container Platform 풀 시크릿의 경로로
path-to-pull-secret을 교체합니다.
-
다음 예제에서는 사용자 정의 풀 시크릿을 사용하려는 경우 사용할 spec.imagePullSecret 템플릿을 표시합니다. secret 을 풀 시크릿의 이름으로 교체합니다.
1.3.3.3. 대상 네임스페이스 링크 복사링크가 클립보드에 복사되었습니다!
MultiClusterEngine 사용자 정의 리소스에서 위치를 지정하여 지정된 네임스페이스에 피연산자를 설치할 수 있습니다. 이 네임스페이스는 MultiClusterEngine 사용자 정의 리소스의 적용 시 생성됩니다.
중요: 대상 네임스페이스가 지정되지 않은 경우 Operator는 multicluster-engine 네임스페이스에 설치하고 MultiClusterEngine 사용자 정의 리소스 사양에 설정합니다.
다음 예제에서는 대상 네임스페이스를 지정하는 데 사용할 수 있는 spec.targetNamespace 템플릿을 표시합니다. target 을 대상 네임스페이스의 이름으로 바꿉니다. 참고: 대상 네임스페이스는 기본 네임스페이스일 수 없습니다.
1.3.3.4. availabilityConfig 링크 복사링크가 클립보드에 복사되었습니다!
hub 클러스터에는 High 및 Basic 이라는 두 가지 기능이 있습니다. 기본적으로 hub 클러스터는 고가용성으로, 허브 클러스터 구성 요소에 2 의 replicaCount 를 제공합니다. 이를 통해 페일오버의 경우 지원이 향상되지만 기본 가용성보다 많은 리소스를 소비하여 구성 요소에 1 의 replicaCount 를 제공합니다.
다음 예제에서는 기본 가용성이 있는 spec.availabilityConfig 템플릿을 보여줍니다.
1.3.3.5. nodeSelector 링크 복사링크가 클립보드에 복사되었습니다!
클러스터의 특정 노드에 설치할 MultiClusterEngine 에서 노드 선택기 세트를 정의할 수 있습니다. 다음 예제에서는 라벨이 node-role.kubernetes.io/infra 인 노드에 Pod를 할당하는 spec.nodeSelector 를 보여줍니다.
spec:
nodeSelector:
node-role.kubernetes.io/infra: ""
spec:
nodeSelector:
node-role.kubernetes.io/infra: ""
1.3.3.6. 허용 오차 링크 복사링크가 클립보드에 복사되었습니다!
MultiClusterEngine 이 클러스터에 정의된 특정 테인트를 허용할 수 있도록 허용 오차 목록을 정의할 수 있습니다. 다음 예제는 node-role.kubernetes.io/infra 테인트와 일치하는 spec.tolerations 를 보여줍니다.
spec:
tolerations:
- key: node-role.kubernetes.io/infra
effect: NoSchedule
operator: Exists
spec:
tolerations:
- key: node-role.kubernetes.io/infra
effect: NoSchedule
operator: Exists
이전 infra-node 허용 오차는 구성에서 허용 오차를 지정하지 않고 기본적으로 Pod에 설정됩니다. 구성에서 허용 오차를 사용자 정의하면 이 기본 동작이 대체됩니다.
1.3.3.7. ManagedServiceAccount 애드온 (기술 프리뷰) 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 Managed-ServiceAccount 애드온은 비활성화되어 있습니다. 이 구성 요소를 활성화하면 관리형 클러스터에서 서비스 계정을 생성하거나 삭제할 수 있습니다. 이 애드온을 사용하여 설치하려면 spec.overrides 의 MultiClusterEngine 사양에 다음을 포함합니다.
명령줄에서 리소스를 편집하고 managedserviceaccount-preview 구성 요소를 enabled: true 로 설정하여 Managed-ServiceAccount 애드온을 활성화할 수 있습니다. 또는 다음 명령을 실행하고 <multiclusterengine-name>을 MultiClusterEngine 리소스의 이름으로 교체할 수 있습니다.
oc patch MultiClusterEngine <multiclusterengine-name> --type=json -p='[{"op": "add", "path": "/spec/overrides/components/-","value":{"name":"managedserviceaccount-preview","enabled":true}}]'
oc patch MultiClusterEngine <multiclusterengine-name> --type=json -p='[{"op": "add", "path": "/spec/overrides/components/-","value":{"name":"managedserviceaccount-preview","enabled":true}}]'
1.3.3.8. Hypershift 애드온 (기술 프리뷰) 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 Hypershift 애드온은 비활성화되어 있습니다. 이 애드온을 사용하여 설치하려면 spec.overrides 의 MultiClusterEngine 값에 다음을 포함합니다.
명령줄에서 리소스를 편집하여 MultiClusterEngine 을 생성한 후 Hypershift -preview 구성 요소를 추가 기능을 활성화할 수 있습니다. 또는 다음 명령을 실행하고 <multiclusterengine-name>을 enabled: true 로 설정하여 HypershiftMultiClusterEngine 리소스의 이름으로 교체할 수 있습니다.
oc patch MultiClusterEngine <multiclusterengine-name> --type=json -p='[{"op": "add", "path": "/spec/overrides/components/-","value":{"name":"hypershift-preview","enabled":true}}]'
oc patch MultiClusterEngine <multiclusterengine-name> --type=json -p='[{"op": "add", "path": "/spec/overrides/components/-","value":{"name":"hypershift-preview","enabled":true}}]'
1.3.4. 설치 제거 링크 복사링크가 클립보드에 복사되었습니다!
Kubernetes용 다중 클러스터 엔진을 제거하면 프로세스의 두 가지 수준인 사용자 정의 리소스 제거 및 전체 Operator 제거가 표시됩니다. 제거 프로세스를 완료하는 데 최대 5분이 걸릴 수 있습니다.
-
사용자 정의 리소스 제거는
MultiClusterEngine인스턴스의 사용자 정의 리소스를 제거하는 가장 기본적인 제거 유형이지만 다른 필수 Operator 리소스를 남겨 둡니다. 이 설치 제거 수준은 동일한 설정 및 구성 요소를 사용하여 다시 설치하려는 경우 유용합니다. - 두 번째 수준은 사용자 정의 리소스 정의와 같은 구성 요소를 제외하고 대부분의 Operator 구성 요소를 제거하는 더 완전한 설치 제거입니다. 이 단계를 계속 수행하면 사용자 정의 리소스 제거로 제거되지 않은 모든 구성 요소와 서브스크립션이 제거됩니다. 이 제거 후 사용자 정의 리소스를 다시 설치하기 전에 Operator를 다시 설치해야 합니다.
1.3.4.1. 사전 요구 사항: Detach enabled services 링크 복사링크가 클립보드에 복사되었습니다!
Kubernetes 엔진의 다중 클러스터 엔진을 설치 제거하려면 먼저 해당 엔진에서 관리하는 모든 클러스터를 분리해야 합니다. 오류를 방지하려면 엔진에서 여전히 관리하는 모든 클러스터를 분리한 다음 제거를 다시 시도합니다.
관리 클러스터가 연결된 경우 다음 메시지가 표시될 수 있습니다.
Cannot delete MultiClusterEngine resource because ManagedCluster resource(s) exist
Cannot delete MultiClusterEngine resource because ManagedCluster resource(s) existCopy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 분리에 대한 자세한 내용은 클러스터 생성에서 공급자에 대한 정보를 선택하여 관리에서 클러스터 제거 섹션을 참조하십시오.
1.3.4.2. 명령을 사용하여 리소스 제거 링크 복사링크가 클립보드에 복사되었습니다!
-
아직 없는 경우 OpenShift Container Platform CLI가
oc명령을 실행하도록 구성되어 있는지 확인합니다.oc명령을 구성하는 방법에 대한 자세한 내용은 OpenShift Container Platform 설명서에서 OpenShift CLI 시작하기 를 참조하십시오. 다음 명령을 입력하여 프로젝트 네임스페이스로 변경합니다. namespace 를 프로젝트 네임스페이스의 이름으로 변경합니다.
oc project <namespace>
oc project <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여
MultiClusterEngine사용자 정의 리소스를 제거합니다.oc delete multiclusterengine --all
oc delete multiclusterengine --allCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 입력하여 진행 상황을 볼 수 있습니다.
oc get multiclusterengine -o yaml
oc get multiclusterengine -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
다음 명령을 입력하여 설치된 네임스페이스에서 멀티 클러스터 엔진
ClusterServiceVersion을 삭제합니다.
여기에 표시된 CSV 버전은 다를 수 있습니다.
1.3.4.3. 콘솔을 사용하여 구성 요소 삭제 링크 복사링크가 클립보드에 복사되었습니다!
RedHat OpenShift Container Platform 콘솔을 사용하여 제거할 때 Operator를 제거합니다. 콘솔을 사용하여 설치 제거하려면 다음 단계를 완료합니다.
- OpenShift Container Platform 콘솔 탐색에서 Operator > 설치된 Operator > Kubernetes용 다중 클러스터 엔진을 선택합니다.
MultiClusterEngine사용자 정의 리소스를 제거합니다.- Multiclusterengine 탭을 선택합니다.
- MultiClusterEngine 사용자 정의 리소스의 옵션 메뉴를 선택합니다.
- Delete MultiClusterEngine 을 선택합니다.
다음 섹션의 절차에 따라 정리 스크립트를 실행합니다.
팁: Kubernetes 버전에 대해 동일한 다중 클러스터 엔진을 다시 설치하려는 경우 이 절차의 나머지 단계를 건너뛰고 사용자 정의 리소스를 다시 설치할 수 있습니다.
- 설치된 Operator로 이동합니다.
- 옵션 메뉴를 선택하고 Uninstall operator 를 선택하여 Kubernetes_ operator용 _ 다중 클러스터 엔진을 제거합니다.
1.3.4.4. 문제 해결 Uninstall 링크 복사링크가 클립보드에 복사되었습니다!
다중 클러스터 엔진 사용자 정의 리소스가 제거되지 않은 경우 정리 스크립트를 실행하여 남아 있는 잠재적인 아티팩트를 제거하십시오.
다음 스크립트를 파일에 복사합니다.
#!/bin/bash oc delete apiservice v1.admission.cluster.open-cluster-management.io v1.admission.work.open-cluster-management.io oc delete validatingwebhookconfiguration multiclusterengines.multicluster.openshift.io oc delete mce --all
#!/bin/bash oc delete apiservice v1.admission.cluster.open-cluster-management.io v1.admission.work.open-cluster-management.io oc delete validatingwebhookconfiguration multiclusterengines.multicluster.openshift.io oc delete mce --allCopy to Clipboard Copied! Toggle word wrap Toggle overflow