1.3. 온라인 연결 중 설치
Red Hat Advanced Cluster Management for Kubernetes는 Red Hat Advanced Cluster Management hub 클러스터를 포함하는 구성 요소의 설치, 업그레이드 및 제거를 관리하는 Operator Lifecycle Manager를 통해 설치됩니다.
시작하기 전에 요구 사항 및 권장 사항 섹션을 검토한 다음 다음 설명서를 참조하십시오.
필수 액세스: 클러스터 관리자. OpenShift Container Platform Dedicated 환경에 액세스해야 합니다. cluster-admin
권한이 있어야 합니다. 기본적으로 dedicated-admin
역할에는 OpenShift Container Platform Dedicated 환경에서 네임스페이스를 생성하는 데 필요한 권한이 없습니다.
- 기본적으로 허브 클러스터 구성 요소는 추가 구성없이 OpenShift Container Platform 클러스터의 작업자 노드에 설치됩니다. OpenShift Container Platform OperatorHub 웹 콘솔 인터페이스를 사용하거나 OpenShift Container Platform CLI를 사용하여 작업자 노드에 hub 클러스터를 설치할 수 있습니다.
- 인프라 노드로 OpenShift Container Platform 클러스터를 구성한 경우 추가 리소스 매개변수가 포함된 OpenShift Container Platform CLI를 사용하여 해당 인프라 노드에 hub 클러스터를 설치할 수 있습니다. 자세한 내용은 인프라 노드에 Red Hat Advanced Cluster Management hub 클러스터 설치 섹션을 참조하십시오.
- OpenShift Container Platform 또는 Red Hat Advanced Cluster Management에서 생성하지 않은 Kubernetes 클러스터를 가져오려면 이미지 가져오기 보안을 구성해야 합니다.
고급 구성을 구성하는 방법에 대한 자세한 내용은 문서의 MultiClusterHub 고급 구성 섹션의 옵션을 참조하십시오.
1.3.1. 사전 요구 사항
Red Hat Advanced Cluster Management를 설치하기 전에 다음 요구사항을 참조하십시오.
- Red Hat OpenShift Container Platform 클러스터는 OpenShift Container Platform 콘솔에서 OperatorHub 카탈로그의 Red Hat Advanced Cluster Management Operator에 액세스할 수 있어야 합니다.
- catalog.redhat.com 에 액세스해야 합니다.
- OpenShift Container Platform 버전 4.8 이상은 사용자 환경에 배포해야 하며 OpenShift Container Platform CLI로 로그인해야 합니다. OpenShift Container Platform 버전 4.8 이상은 사용자 환경에 배포해야 하며 OpenShift Container Platform CLI로 로그인해야 합니다. OpenShift Container Platform에 대한 다음 설치 문서를 확인하고 필요한 이전 버전 OpenShift Container Platform 버전 4.10으로 변경합니다.
-
oc
명령을 실행하려면 OpenShift Container Platform CLI(명령줄 인터페이스)를 구성해야 합니다. OpenShift Container Platform CLI 설치 및 구성에 대한 정보는 CLI 시작하기 를 참조하십시오. - OpenShift Container Platform 권한을 통해 네임스페이스를 생성할 수 있어야 합니다. 네임스페이스가 없으면 설치에 실패합니다.
- Operator의 종속성에 액세스하려면 인터넷 연결이 있어야 합니다.
중요: OpenShift Container Platform Dedicated 환경에 설치하려면 다음 요구 사항을 참조하십시오.
- OpenShift Container Platform Dedicated 환경이 구성 및 실행되고 있어야 합니다.
-
hub 클러스터를 설치하는 OpenShift Container Platform Dedicated 환경에 대한
cluster-admin
권한이 있어야 합니다. -
가져오려면 klusterlet Operator의
stable-2.0
채널을 2.5에 사용해야 합니다.
1.3.2. OpenShift Container Platform 설치 확인
레지스트리 및 스토리지 서비스를 포함하여 지원되는 OpenShift Container Platform 버전이 설치되어 작동해야 합니다. OpenShift Container Platform 설치에 대한 자세한 내용은 OpenShift Container Platform 설명서를 참조하십시오.
- Red Hat Advanced Cluster Management hub 클러스터가 OpenShift Container Platform 클러스터에 아직 설치되어 있지 않은지 확인합니다. Red Hat Advanced Cluster Management는 각 OpenShift Container Platform 클러스터에 하나의 Red Hat Advanced Cluster Management 허브 클러스터만 설치할 수 있습니다. Red Hat Advanced Cluster Management hub 클러스터가 설치되지 않은 경우 다음 단계를 계속합니다.
OpenShift Container Platform 클러스터가 올바르게 설정되었는지 확인하려면 다음 명령을 사용하여 OpenShift Container Platform 웹 콘솔에 액세스합니다.
kubectl -n openshift-console get route
다음 예제 출력을 참조하십시오.
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
의 값을 설정합니다. URL의 다음 예제를 참조하십시오.https://console-openshift-console.apps.new-coral.purple-chesterfield.com
.
콘솔 또는 CLI에서 Red Hat Advanced Cluster Management를 설치할 수 있습니다. 두 절차를 모두 문서화합니다.
1.3.3. OperatorHub 웹 콘솔 인터페이스에서 설치
모범 사례: OpenShift Container Platform 탐색의 관리자 보기에서 OpenShift Container Platform과 함께 제공되는 OperatorHub 웹 콘솔 인터페이스를 설치합니다.
- Operator > OperatorHub 를 선택하여 사용 가능한 Operator 목록에 액세스하고 Kubernetes Operator용 고급 클러스터 관리를 선택합니다.
Operator 서브스크립션 페이지에서 설치 옵션을 선택합니다.
네임스페이스 정보:
- Red Hat Advanced Cluster Management hub 클러스터를 자체 네임스페이스 또는 프로젝트에 설치해야 합니다.
-
기본적으로 OperatorHub 콘솔 설치 프로세스는
open-cluster-management
라는 네임스페이스를 생성합니다. 모범 사례: 사용 가능한 경우open-cluster-management
네임스페이스를 계속 사용합니다. -
open-cluster-management
라는 네임스페이스가 이미 있는 경우 다른 네임스페이스를 선택합니다.
- Channel: 선택한 채널은 설치 중인 릴리스에 해당합니다. 채널을 선택하면 확인된 릴리스를 설치하고 해당 릴리스 내에서 향후 에라타 업데이트를 가져옵니다.
업데이트 승인 전략: 승인 전략은 구독한 채널에 업데이트를 적용하는 데 필요한 사람의 상호 작용을 식별합니다.
- 자동 을 선택하여 해당 릴리스 내의 모든 업데이트가 자동으로 적용되도록 합니다.
- 업데이트를 사용할 수 있을 때 알림을 받으려면 수동 을 선택합니다. 언제 업데이트가 적용되었는지에 대한 우려가 있는 경우 이 방법이 모범 사례일 수 있습니다.
중요: 다음 마이너 릴리스로 업그레이드하려면 OperatorHub 페이지로 돌아가 최신 릴리스의 새 채널을 선택해야 합니다.
- 설치를 선택하여 변경 사항을 적용하고 Operator를 생성합니다.
MultiClusterHub 사용자 정의 리소스를 만듭니다.
- OpenShift Container Platform 콘솔 탐색에서 설치된 Operator > Kubernetes용 고급 클러스터 관리를 선택합니다.
- MultiClusterHub 탭을 선택합니다.
- MultiClusterHub 만들기를 선택합니다.
YAML 파일에서 기본값을 업데이트합니다. 설명서의 MultiClusterHub 고급 구성 섹션에서 옵션을 참조하십시오.
-
다음 예제에서는 기본 템플릿을 보여줍니다.
네임스페이스가 프로젝트 네임스페이스
인지 확인합니다. 샘플을 참조하십시오.
apiVersion: operator.open-cluster-management.io/v1 kind: MultiClusterHub metadata: name: multiclusterhub namespace: <namespace>
-
다음 예제에서는 기본 템플릿을 보여줍니다.
생성을 선택하여 사용자 정의 리소스를 초기화합니다. Red Hat Advanced Cluster Management hub 클러스터가 구축 및 시작하는 데 최대 10분이 걸릴 수 있습니다.
Red Hat Advanced Cluster Management hub 클러스터를 생성한 후
MultiClusterHub
리소스 상태에 Red Hat Advanced Cluster Management Operator 세부 정보의 MultiClusterHub 탭에서 Running 이 표시됩니다. 이제 Red Hat Advanced Cluster Management hub 클러스터의 콘솔에 액세스할 수 있습니다. 다음 단계를 참조하십시오.- OpenShift Container Platform 콘솔 탐색에서 네트워킹 > 경로 를 선택합니다.
- 목록에서 Red Hat Advanced Cluster Management hub 클러스터의 URL을 보고 해당 클러스터로 이동하여 콘솔에 액세스합니다.
1.3.4. OpenShift Container Platform CLI에서 설치
Operator 요구 사항이 포함된 Red Hat Advanced Cluster Management hub 클러스터 네임스페이스를 생성합니다. 다음 명령을 실행합니다. 여기서
namespace
는 Red Hat Advanced Cluster Management hub 클러스터 네임스페이스의 이름입니다.네임스페이스
값은 OpenShift Container Platform 환경에서 Project 라고 할 수 있습니다.oc create namespace <namespace>
프로젝트 네임스페이스를 생성한 네임스페이스로 전환합니다.
namespace
를 1단계에서 생성한 Red Hat Advanced Cluster Management hub 클러스터 네임스페이스의 이름으로 교체합니다.oc project <namespace>
YAML 파일을 생성하여
OperatorGroup
리소스를 구성합니다. 각 네임스페이스에는 Operator 그룹이 하나만 있을 수 있습니다.default
를 Operator 그룹의 이름으로 바꿉니다.namespace
를 프로젝트 네임스페이스의 이름으로 바꿉니다. 다음 샘플을 참조하십시오.apiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: <default> spec: targetNamespaces: - <namespace>
다음 명령을 실행하여
OperatorGroup
리소스를 생성합니다.operator-group
을 생성한 Operator 그룹 YAML 파일의 이름으로 변경합니다.oc apply -f <path-to-file>/<operator-group>.yaml
YAML 파일을 생성하여 OpenShift Container Platform 서브스크립션을 구성합니다. 파일은 다음 샘플과 유사합니다.
apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: acm-operator-subscription spec: sourceNamespace: openshift-marketplace source: redhat-operators channel: release-2.5 installPlanApproval: Automatic name: advanced-cluster-management
참고: 인프라 노드에 Red Hat Advanced Cluster Management hub 클러스터를 설치하려면 Operator Lifecycle Manager 서브스크립션 추가 구성 섹션을 참조하십시오.
다음 명령을 실행하여 OpenShift Container Platform 서브스크립션을 생성합니다.
서브스크립션을
생성한 서브스크립션 파일의 이름으로 변경합니다.oc apply -f <path-to-file>/<subscription>.yaml
YAML 파일을 생성하여
MultiClusterHub
사용자 정의 리소스를 구성합니다. 기본 템플릿은 다음 예와 유사해야 합니다.namespace
를 프로젝트 네임스페이스의 이름으로 변경합니다.apiVersion: operator.open-cluster-management.io/v1 kind: MultiClusterHub metadata: name: multiclusterhub namespace: <namespace> spec: {}
참고: 인프라 노드에 Red Hat Advanced Cluster Management hub 클러스터를 설치하려면 MultiClusterHub 사용자 정의 리소스 추가 구성 섹션을 참조하십시오.
다음 명령을 실행하여
MultiClusterHub
사용자 정의 리소스를 만듭니다.custom-resource
를 사용자 정의 리소스 파일의 이름으로 교체합니다.oc apply -f <path-to-file>/<custom-resource>.yaml
이 단계가 다음 오류와 함께 실패하면 리소스가 계속 생성되고 적용되는 것입니다. 리소스가 생성되면 몇 분 후에 명령을 다시 실행합니다.
error: unable to recognize "./mch.yaml": no matches for kind "MultiClusterHub" in version "operator.open-cluster-management.io/v1"
다음 명령을 실행하여 사용자 정의 리소스를 가져옵니다. 명령을 실행한 후
MultiClusterHub
사용자 정의 리소스 상태가status.phase
필드에Running
으로 표시되는 데 최대 10분이 걸릴 수 있습니다.oc get mch -o=jsonpath='{.items[0].status.phase}'
상태가
Running
이면 경로를 찾을 경로 목록을 확인합니다.oc get routes
Red Hat Advanced Cluster Management를 재설치하고 Pod가 시작되지 않는 경우 이 문제를 해결하기 위한 단계의 재설치 실패 문제 해결을 참조하십시오.
참고:
-
ClusterRoleBinding
이 있는ServiceAccount
는 Red Hat Advanced Cluster Management 및 Red Hat Advanced Cluster Management를 설치하는 네임스페이스에 대한 액세스 권한이 있는 모든 사용자 자격 증명에 대한 클러스터 관리자 권한을 자동으로 부여합니다. -
설치에서는 자체적으로 관리할 때 Red Hat Advanced Cluster Management hub 클러스터용으로 예약된
local-cluster
라는 네임스페이스도 생성합니다.local-cluster
라는 기존 네임스페이스가 있을 수 없습니다. 보안상의 이유로 클러스터관리자
액세스 권한이 없는 사용자에게로컬 클러스터
네임스페이스에 대한 액세스를 릴리스하지 마십시오.
1.3.5. 인프라 노드에 Red Hat Advanced Cluster Management hub 클러스터 설치
OpenShift Container Platform 클러스터는 승인된 관리 구성 요소를 실행하기 위한 인프라 노드를 포함하도록 구성할 수 있습니다. 인프라 노드에서 구성 요소를 실행하면 해당 관리 구성 요소를 실행하는 노드에 OpenShift Container Platform 서브스크립션 할당량이 할당되지 않습니다.
OpenShift Container Platform 클러스터에 인프라 노드를 추가한 후 OpenShift Container Platform CLI 명령에서 설치 후 Operator Lifecycle Manager 서브스크립션 및 MultiClusterHub
사용자 정의 리소스에 구성을 추가합니다.
1.3.5.1. OpenShift Container Platform 클러스터에 인프라 노드 추가
OpenShift Container Platform 설명서의 인프라 머신 세트 생성에 설명된 절차를 따르십시오. 인프라 노드는 관리 이외의 워크로드가 실행되지 않도록 쿠버네티스 테인트
및 라벨
을 사용하여 구성됩니다.
Red Hat Advanced Cluster Management에서 제공하는 인프라 노드 활성화와 호환하려면 인프라 노드에 다음과 같은 테인트
및 라벨
이 적용되었는지 확인하십시오.
metadata: labels: node-role.kubernetes.io/infra: "" spec: taints: - effect: NoSchedule key: node-role.kubernetes.io/infra
1.3.5.2. Operator Lifecycle Manager 서브스크립션 추가 구성
Operator Lifecycle Manager 서브스크립션을 적용하기 전에 다음 추가 구성을 추가합니다.
spec: config: nodeSelector: node-role.kubernetes.io/infra: "" tolerations: - key: node-role.kubernetes.io/infra effect: NoSchedule operator: Exists
1.3.5.3. MultiClusterHub 사용자 정의 리소스 추가 구성
MultiClusterHub
사용자 정의 리소스를 적용하기 전에 다음 추가 구성을 추가합니다.
spec: nodeSelector: node-role.kubernetes.io/infra: ""