Red Hat Advanced Cluster Management를 사용하는 다중 클러스터 엔진 Operator
Red Hat Advanced Cluster Management 통합을 통한 멀티 클러스터 엔진 Operator
초록
1장. Red Hat Advanced Cluster Management 통합을 통한 멀티 클러스터 엔진 Operator 링크 복사링크가 클립보드에 복사되었습니다!
다중 클러스터 엔진 Operator를 사용하는 경우 Red Hat Advanced Cluster Management를 설치하는 경우 Observability 및 Policy 와 같은 다중 클러스터 관리 기능에 액세스할 수 있습니다.
통합 기능의 경우 다음 요구 사항을 참조하십시오.
- Red Hat Advanced Cluster Management를 설치해야 합니다. Red Hat Advanced Cluster Management 설치 및 업그레이드 설명서를 참조하십시오.
- 설치 후 Red Hat Advanced Cluster Management에 대한 자세한 내용은 MultiClusterHub 고급 구성 을 참조하십시오.
다중 클러스터 엔진 Operator 및 Red Hat Advanced Cluster Management 멀티 클러스터 관리에 대한 다음 절차를 참조하십시오.
1.1. Red Hat Advanced Cluster Management에서 다중 클러스터 엔진 Operator 호스트 클러스터 검색 링크 복사링크가 클립보드에 복사되었습니다!
여러 호스팅 클러스터를 호스팅하는 다중 클러스터 엔진 Operator 클러스터가 있는 경우 해당 호스팅 클러스터를 Red Hat Advanced Cluster Management Hub 클러스터로 가져와 애플리케이션 라이프사이클 및 거버넌스 와 같은 Red Hat Advanced Cluster Management 관리 구성 요소를 사용하여 관리할 수 있습니다.
이러한 호스팅된 클러스터는 관리 클러스터로 자동으로 검색 및 가져올 수 있습니다.
참고: 호스트된 컨트롤 플레인은 관리되는 다중 클러스터 엔진 Operator 클러스터 노드에서 실행되기 때문에 클러스터가 호스팅할 수 있는 호스팅된 컨트롤 플레인 수는 관리되는 다중 클러스터 엔진 Operator 클러스터 노드와 관리되는 다중 클러스터 엔진 Operator 클러스터 노드의 리소스 가용성에 따라 결정됩니다. 더 많은 호스팅 컨트롤 플레인을 호스팅하기 위해 더 많은 노드 또는 관리 클러스터를 추가할 수 있습니다.
필수 액세스: 클러스터 관리자
1.1.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- 하나 이상의 다중 클러스터 엔진 Operator 클러스터가 필요합니다.
- 허브 클러스터로 설정된 Red Hat Advanced Cluster Management 클러스터가 필요합니다.
다음 명령을 실행하여
clusteradmCLI를 설치합니다.curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bash
curl -L https://raw.githubusercontent.com/open-cluster-management-io/clusteradm/main/install.sh | bashCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.1.2. 다중 클러스터 엔진 Operator 클러스터를 가져오도록 Red Hat Advanced Cluster Management 구성 링크 복사링크가 클립보드에 복사되었습니다!
다중 클러스터 엔진 Operator에는 관리되는 허브 클러스터인 local-cluster 가 있습니다. open-cluster-management-agent-addon 네임스페이스의 이 local-cluster 에 대해 다음과 같은 기본 애드온이 활성화됩니다.
-
cluster-proxy -
managed-serviceaccount -
work-manager
1.1.2.1. 애드온 구성 링크 복사링크가 클립보드에 복사되었습니다!
멀티 클러스터 엔진 Operator를 Red Hat Advanced Cluster Management로 가져올 때 Red Hat Advanced Cluster Management는 동일한 애드온 세트를 사용하여 다중 클러스터 엔진 Operator를 관리할 수 있습니다.
다른 다중 클러스터 엔진 운영자 네임스페이스에 이러한 애드온을 설치하여 다중 클러스터 엔진 운영자가 로컬 클러스터 애드온 으로 자체 관리할 수 있는 반면 Red Hat Advanced Cluster Management는 다중 클러스터 엔진 Operator를 동시에 관리합니다. 다음 절차를 완료합니다.
- CLI를 사용하여 Red Hat Advanced Cluster Management에 로그인합니다.
addonDeploymentConfig리소스를 생성하여 다른 애드온 설치 네임스페이스를 지정합니다.agentInstallNamespace가open-cluster-management-agent-addon-discovery를 가리키는 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yaml을 실행하여 파일을 적용합니다. add-ons에 대한 기존
ClusterManagementAddOn리소스를 업데이트하여 생성한addonDeploymentConfig리소스에 지정된open-cluster-management-agent-addon-discovery네임스페이스에 애드온을 설치합니다.open-cluster-management-global-set을 네임스페이스로 사용하여 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow addonDeploymentConfigs를ClusterManagementAddOn에 추가합니다. 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow addonDeploymentConfig를managed-serviceaccount에 추가합니다. 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
addondeploymentconfigs값을cluster-proxy라는ClusterManagementAddOn리소스에 추가합니다. 다음 예제를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 Red Hat Advanced Cluster Management
local-cluster의 애드온이 지정한 네임스페이스에 다시 설치되어 있는지 확인합니다.oc get deployment -n open-cluster-management-agent-addon-discovery
oc get deployment -n open-cluster-management-agent-addon-discoveryCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 출력 예제를 참조하십시오.
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24h
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24hCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.1.2.2. KlusterletConfig 리소스 생성 링크 복사링크가 클립보드에 복사되었습니다!
다중 클러스터 엔진 Operator에는 관리되는 허브 클러스터인 로컬 클러스터가 있습니다. 이 local-cluster에 대해 klusterlet 이라는 리소스가 생성됩니다.
멀티 클러스터 엔진 Operator를 Red Hat Advanced Cluster Management로 가져올 때 Red Hat Advanced Cluster Management는 동일한 이름의 klusterlet 을 설치하여 다중 클러스터 엔진 Operator를 관리합니다. 이는 다중 클러스터 엔진 Operator local-cluster klusterlet과 충돌합니다.
충돌을 방지하기 위해 klusterletlet이 다른 이름으로 설치되도록 ManagedCluster 리소스에서 다중 클러스터 엔진 Operator 클러스터를 가져오는 데 사용하는 KlusterletConfig 리소스를 생성해야 합니다. 다음 절차를 완료합니다.
다음 예제를 사용하여
KlusterletConfig리소스를 생성합니다. 관리 클러스터에서 이KlusterletConfig리소스를 참조하는 경우spec.installMode.noOperator.Cryostat 필드의 값은klusterlet-mce-import와 같은 klusterlet 이름의 접미사로 사용됩니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yaml을 실행하여 파일을 적용합니다.
1.1.2.3. 백업 및 복원을 위한 구성 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Advanced Cluster Management를 설치한 후에는 백업 및 복원 기능을 사용할 수도 있습니다.
허브 클러스터가 재해 복구 시나리오에서 복원되면 가져온 다중 클러스터 엔진 Operator 클러스터 및 호스팅된 클러스터를 최신 Red Hat Advanced Cluster Management Hub 클러스터로 가져옵니다.
이 시나리오에서는 Red Hat Advanced Cluster Management Hub 클러스터 복원의 일부로 이전 구성을 복원해야 합니다.
backup=true 레이블을 추가하여 백업을 활성화합니다. 각 애드온에 대한 다음 단계를 참조하십시오.
addon-ns-config의 경우 다음 명령을 실행합니다.oc label addondeploymentconfig addon-ns-config -n multicluster-engine cluster.open-cluster-management.io/backup=true
oc label addondeploymentconfig addon-ns-config -n multicluster-engine cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow hypershift-addon-deploy-config의 경우 다음 명령을 실행합니다.oc label addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine cluster.open-cluster-management.io/backup=true
oc label addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow work-manager에서 다음 명령을 실행합니다.oc label clustermanagementaddon work-manager cluster.open-cluster-management.io/backup=true
oc label clustermanagementaddon work-manager cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 'cluster-proxy'의 경우 다음 명령을 실행합니다.
oc label clustermanagementaddon cluster-proxy cluster.open-cluster-management.io/backup=true
oc label clustermanagementaddon cluster-proxy cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow managed-serviceaccount의 경우 다음 명령을 실행합니다.oc label clustermanagementaddon managed-serviceaccount cluster.open-cluster-management.io/backup=true
oc label clustermanagementaddon managed-serviceaccount cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow mce-import-klusterlet-config의 경우 다음 명령을 실행합니다.oc label KlusterletConfig mce-import-klusterlet-config cluster.open-cluster-management.io/backup=true
oc label KlusterletConfig mce-import-klusterlet-config cluster.open-cluster-management.io/backup=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.1.3. 다중 클러스터 엔진 Operator 가져오기 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Advanced Cluster Management 클러스터에서 다중 클러스터 엔진 Operator 클러스터를 수동으로 가져오려면 다음 절차를 완료하십시오.
Red Hat Advanced Cluster Management 클러스터에서
ManagedCluster리소스를 수동으로 생성하여 다중 클러스터 엔진 Operator 클러스터를 가져옵니다. 다음 파일 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yaml을 실행하여 파일을 적용합니다. 다중 클러스터 엔진 Operator 클러스터의
kubeconfig를 참조하는auto-import-secret시크릿을 생성합니다. CLI 를 사용하여 관리 클러스터 가져오기에서 자동 가져오기 보안을 사용하여 클러스터 가져오기로 이동하여 다중 클러스터 엔진 Operator 자동 가져오기 프로세스를 완료합니다.Red Hat Advanced Cluster Management 클러스터의 다중 클러스터 엔진 Operator 관리 클러스터 네임스페이스에 자동 가져오기 보안을 생성하면 관리 클러스터가 등록됩니다.
다음 명령을 실행하여 상태를 가져옵니다.
oc get managedcluster
oc get managedclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow 관리형 클러스터의 상태 및 예제 URL을 사용하여 다음 예제 출력을 참조하십시오.
NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE local-cluster true https://<api.acm-hub.com:port> True True 44h mce-a true https://<api.mce-a.com:port> True True 27s
NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE local-cluster true https://<api.acm-hub.com:port> True True 44h mce-a true https://<api.mce-a.com:port> True True 27sCopy to Clipboard Copied! Toggle word wrap Toggle overflow
중요: 가져온 다중 클러스터 엔진 Operator에 대해 다른 Red Hat Advanced Cluster Management 애드온을 활성화하지 마십시오.
1.1.4. 호스트 클러스터 검색 링크 복사링크가 클립보드에 복사되었습니다!
모든 다중 클러스터 엔진 Operator 클러스터를 Red Hat Advanced Cluster Management로 가져온 후 해당 관리 다중 클러스터 엔진 Operator 클러스터에 대해 hypershift-addon 을 활성화하여 호스트 클러스터를 검색해야 합니다.
기본 애드온은 이전 절차의 다른 네임스페이스에 설치됩니다. 마찬가지로 다중 클러스터 엔진 Operator의 다른 네임스페이스에 hypershift-addon 을 설치하여 다중 클러스터 엔진 Operator의 애드온 에이전트와 Red Hat Advanced Cluster Management의 에이전트도 다중 클러스터 엔진 Operator에서 작동할 수 있습니다.
중요: 다음 명령을 모두 < managed-cluster-names >를 다중 클러스터 엔진 Operator의 쉼표로 구분된 관리 클러스터 이름으로 바꿉니다.
다음 명령을 실행하여 애드온의
agentInstallNamespace네임스페이스를open-cluster-management-agent-addon-discovery로 설정합니다.oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"agentInstallNamespace":"open-cluster-management-agent-addon-discovery"}}'oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"agentInstallNamespace":"open-cluster-management-agent-addon-discovery"}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 메트릭을 비활성화하고 HyperShift Operator 관리를 비활성화합니다.
oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value": "true"},{"name":"disableHOManagement","value": "true"}]}}'oc patch addondeploymentconfig hypershift-addon-deploy-config -n multicluster-engine --type=merge -p '{"spec":{"customizedVariables":[{"name":"disableMetrics","value": "true"},{"name":"disableHOManagement","value": "true"}]}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 다중 클러스터 엔진 Operator에 대해
hypershift-addon을 활성화합니다.clusteradm addon enable --names hypershift-addon --clusters <managed-cluster-names>
clusteradm addon enable --names hypershift-addon --clusters <managed-cluster-names>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat Advanced Cluster Management에서 다음 명령을 실행하여 다중 클러스터 엔진 Operator 관리 클러스터 이름을 가져올 수 있습니다.
oc get managedcluster
oc get managedclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다중 클러스터 엔진 Operator 클러스터에 로그인하고
hypershift-addon이 사용자가 지정한 네임스페이스에 설치되어 있는지 확인합니다. 다음 명령을 실행합니다.oc get deployment -n open-cluster-management-agent-addon-discovery
oc get deployment -n open-cluster-management-agent-addon-discoveryCopy to Clipboard Copied! Toggle word wrap Toggle overflow 애드온을 나열하는 다음 예제 출력을 참조하십시오.
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h hypershift-addon-agent 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24h
NAME READY UP-TO-DATE AVAILABLE AGE cluster-proxy-proxy-agent 1/1 1 1 24h klusterlet-addon-workmgr 1/1 1 1 24h hypershift-addon-agent 1/1 1 1 24h managed-serviceaccount-addon-agent 1/1 1 1 24hCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Red Hat Advanced Cluster Management는 다중 클러스터 엔진 Operator에서 호스트된 클러스터를 검색하는 검색 에이전트인 hypershift-addon 을 배포합니다. 이 에이전트는 호스팅된 클러스터 kube-apiserver 를 사용할 수 있게 되면 Red Hat Advanced Cluster Management Hub 클러스터의 다중 클러스터 엔진 Operator 관리 클러스터 네임스페이스에 해당 DiscoveredCluster 사용자 정의 리소스를 생성합니다.
콘솔에서 검색된 클러스터를 볼 수 있습니다.
- 허브 클러스터 콘솔에 로그인하고 모든 클러스터 > 인프라 > 클러스터로 이동합니다.
-
MultiClusterEngineHCP유형의 다중 클러스터 엔진 Operator에서 검색된 호스트 클러스터를 모두 보려면 Discovered clusters 탭을 찾습니다.
다음으로 검색된 호스팅 클러스터의 가져오기 자동화 를 방문하여 클러스터 자동 가져오기를 확인하십시오.
1.2. 검색된 호스팅 클러스터에 대한 가져오기 자동화 링크 복사링크가 클립보드에 복사되었습니다!
개별 클러스터를 수동으로 가져오지 않고도 DiscoveredCluster 리소스를 사용하여 호스트 클러스터 가져오기를 자동화합니다.
검색된 호스팅 클러스터를 Red Hat Advanced Cluster Management로 자동으로 가져오는 경우 모든 Red Hat Advanced Cluster Management 애드온이 활성화되므로 사용 가능한 관리 툴로 호스팅된 클러스터 관리를 시작할 수 있습니다.
또한 호스트된 클러스터는 다중 클러스터 엔진 Operator로 자동 가져옵니다. 멀티 클러스터 엔진 Operator 콘솔을 통해 호스트된 클러스터 라이프사이클을 관리할 수 있습니다. 그러나 Red Hat Advanced Cluster Management 콘솔에서 호스팅되는 클러스터 라이프사이클을 관리할 수 없습니다.
필수 액세스: 클러스터 관리자
1.2.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- Red Hat Advanced Cluster Management가 설치되어 있어야 합니다. Red Hat Advanced Cluster Management 설치 및 업그레이드 설명서를 참조하십시오.
- 정책에 대해 배울 필요가 있습니다. Red Hat Advanced Cluster Management 설명서에서 Governance 소개를 참조하십시오.
1.2.2. 자동 가져오기를 위한 설정 구성 링크 복사링크가 클립보드에 복사되었습니다!
관리형 다중 클러스터 엔진 Operator 클러스터에서 검색된 호스트 클러스터는 Red Hat Advanced Cluster Management의 관리형 다중 클러스터 엔진 Operator 클러스터 네임스페이스에 있는 DiscoveredCluster 사용자 정의 리소스에 표시됩니다. 다음 DiscoveredCluster 리소스 및 네임스페이스 예제를 참조하십시오.
검색된 호스트 클러스터는 spec.importAsManagedCluster 필드가 true 로 설정될 때까지 Red Hat Advanced Cluster Management로 자동 가져오지 않습니다. Red Hat Advanced Cluster Management 정책을 사용하여 모든 유형에 대해 이 필드를 자동으로 가 검색된 호스팅 클러스터를 즉시 Red Hat Advanced Cluster Management로 자동으로 가져옵니다.
true 로 설정하는 방법을 알아보십시오. DiscoveredCluster 리소스 내에서MultiClusterEngineHCP
검색된 호스팅 클러스터를 모두 자동으로 가져오도록 정책을 구성합니다. CLI에서 hub 클러스터에 로그인하여 다음 절차를 완료합니다.
DiscoveredCluster사용자 정의 리소스에 대한 YAML 파일을 생성하고 다음 예제에서 참조하는 구성을 편집합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yaml -n <namespace>를 실행하여 파일을 적용합니다.
1.2.3. 배치 정의 생성 링크 복사링크가 클립보드에 복사되었습니다!
정책 배포를 위해 관리 클러스터를 지정하는 배치 정의를 생성해야 합니다. 다음 절차를 완료합니다.
관리되는 허브 클러스터인
local-cluster만 선택하는배치정의를 생성합니다. 다음 YAML 샘플을 사용합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f placement.yaml -n <namespace>를실행합니다. 여기서 namespace는 이전에 생성한 정책에 사용한 네임스페이스와 일치합니다.
1.2.4. 배치 정의에 가져오기 정책 바인딩 링크 복사링크가 클립보드에 복사되었습니다!
정책과 배치를 생성한 후 두 리소스를 연결해야 합니다. 다음 단계를 완료합니다.
PlacementBinding리소스를 사용하여 리소스를 연결합니다.placementRef가 사용자가 생성한배치를가리키고주체가 생성한정책을가리키는 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 확인하려면 다음 명령을 실행합니다.
oc get policy policy-mce-hcp-autoimport -n <namespace>
oc get policy policy-mce-hcp-autoimport -n <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
중요: Red Hat Advanced Cluster Management 콘솔에서 Detach 옵션을 사용하거나 명령줄에서 해당 ManagedCluster 사용자 정의 리소스를 제거하여 Red Hat Advanced Cluster Management에서 호스트된 클러스터를 분리 할 수 있습니다.
최상의 결과를 얻으려면 호스트 클러스터를 제거하기 전에 관리형 호스트 클러스터를 분리하십시오.
검색된 클러스터가 분리되면 정책이 검색된 클러스터를 다시 가져오지 못하도록 DiscoveredCluster 리소스에 다음 주석이 추가됩니다.
annotations:
discovery.open-cluster-management.io/previously-auto-imported: "true"
annotations:
discovery.open-cluster-management.io/previously-auto-imported: "true"
검색된 클러스터를 다시 가져오려면 이 주석을 제거합니다.
1.3. AWS 클러스터에서 검색된 OpenShift Service에 대한 가져오기 자동화 링크 복사링크가 클립보드에 복사되었습니다!
개별 클러스터를 수동으로 가져오지 않고 클러스터 관리를 위해 Red Hat Advanced Cluster Management 정책 시행을 사용하여 AWS 클러스터에서 OpenShift Service 가져오기를 자동화합니다.
필수 액세스: 클러스터 관리자
1.3.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- Red Hat Advanced Cluster Management가 설치되어 있어야 합니다. Red Hat Advanced Cluster Management 설치 및 업그레이드 설명서를 참조하십시오.
- 정책에 대해 배울 필요가 있습니다. Red Hat Advanced Cluster Management 설명서에서 Governance 소개를 참조하십시오.
1.3.2. 자동 가져오기 정책 생성 링크 복사링크가 클립보드에 복사되었습니다!
다음 정책 및 절차는 AWS 클러스터에서 검색된 모든 OpenShift 서비스를 자동으로 가져오는 방법의 예입니다.
CLI에서 hub 클러스터에 로그인하여 다음 절차를 완료합니다.
다음 예제를 사용하여 YAML 파일을 생성하고 참조되는 변경 사항을 적용합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f <filename>.yaml -n <namespace>를 실행하여 파일을 적용합니다.
1.3.3. 배치 정의 생성 링크 복사링크가 클립보드에 복사되었습니다!
정책 배포를 위해 관리 클러스터를 지정하는 배치 정의를 생성해야 합니다.
관리되는 허브 클러스터인
local-cluster만 선택하는 배치 정의를 생성합니다. 다음 YAML 샘플을 사용합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
oc apply -f placement.yaml -n <namespace>를실행합니다. 여기서 namespace는 이전에 생성한 정책에 사용한 네임스페이스와 일치합니다.
1.3.4. 배치 정의에 가져오기 정책 바인딩 링크 복사링크가 클립보드에 복사되었습니다!
정책과 배치를 생성한 후 두 리소스를 연결해야 합니다.
PlacementBinding을 사용하여 리소스를 연결합니다.placementRef가 사용자가 생성한배치를가리키고주체가 생성한정책을가리키는 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 확인하려면 다음 명령을 실행합니다.
oc get policy policy-rosa-autoimport -n <namespace>
oc get policy policy-rosa-autoimport -n <namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.4. 관찰 기능 통합 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Advanced Cluster Management Observability 기능을 사용하면 플릿 전체에서 클러스터의 상태 및 사용률을 볼 수 있습니다. Red Hat Advanced Cluster Management를 설치하고 Observability를 활성화할 수 있습니다.
1.4.1. 호스트된 컨트롤 플레인 관찰 링크 복사링크가 클립보드에 복사되었습니다!
multicluster-observability Pod를 활성화한 후 Red Hat Advanced Cluster Management Observability Grafana 대시보드를 사용하여 호스팅된 컨트롤 플레인에 대한 다음 정보를 볼 수 있습니다.
- ACM > 호스팅 컨트롤 플레인 개요 대시보드를 통해 호스팅되는 컨트롤 플레인, 관련 클러스터 리소스 및 기존 호스팅 컨트롤 플레인의 목록 및 상태에 대한 클러스터 용량 추정치를 확인할 수 있습니다. 자세한 내용은 호스트 컨트롤 플레인 소개를 참조하십시오.
- ACM > Resources > Hosted Control Plane Dashboard that you can access from the Overview page to see the resource utilization of the selected hosted control plane. 자세한 내용은 호스팅된 컨트롤 플레인 명령줄 인터페이스 설치를 참조하십시오.
활성화하려면 Observability 서비스를 참조하십시오.
2장. SiteConfig 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator는 템플릿 기반 클러스터 프로비저닝 솔루션을 제공하므로 다양한 설치 방법을 사용하여 클러스터를 프로비저닝할 수 있습니다.
SiteConfig Operator는 SiteConfig 생성기 kustomize 플러그인의 SiteConfig API에서 제공되는 통합 ClusterInstance API를 도입합니다.
ClusterInstance API는 클러스터가 배포되는 방식에서 클러스터를 정의하는 매개변수를 분리합니다.
이러한 분리는 Argo CD와 관련된 에이전트 클러스터 설치 및 확장성 제한과 같은 현재 GitOps ZTP(ZTP) 흐름 의 SiteConfig kustomize 플러그인에서 제공하는 특정 제한 사항을 제거합니다.
통합 ClusterInstance API를 사용하여 SiteConfig Operator는 다음과 같은 향상된 기능을 제공합니다.
- 격리
-
클러스터 정의를 설치 방법과 분리합니다.
ClusterInstance사용자 정의 리소스는 클러스터 정의를 캡처하는 반면 설치 템플릿은 클러스터 아키텍처 및 설치 방법을 캡처합니다. - 통합
-
SiteConfig Operator는 Git 및 비Git 워크플로를 모두 통합합니다. hub 클러스터에 직접
ClusterInstance사용자 정의 리소스를 적용하거나 ArgoCD와 같은 GitOps 솔루션을 통해 리소스를 동기화할 수 있습니다. - 일관성
- 지원 설치 관리자, Image Based Install Operator 또는 기타 사용자 정의 템플릿 기반 접근 방식을 사용하든 관계없이 설치 방법 간에 일관된 API를 유지 관리합니다.
- 확장성
-
SiteConfigkustomize 플러그인보다 각 클러스터에 대한 확장성이 향상됩니다. - 유연성
- 사용자 지정 템플릿을 사용하여 클러스터를 배포하고 설치할 수 있는 더 많은 기능을 제공합니다.
- 문제 해결
- 클러스터 배포 상태 및 렌더링된 매니페스트에 대한 통찰력 있는 정보를 제공하여 문제 해결 환경을 크게 향상시킵니다.
Image Based Install Operator에 대한 자세한 내용은 Image Based Install Operator 를 참조하십시오.
지원 설치 관리자에 대한 자세한 내용은 지원 설치 관리자를 사용하여 온프레미스 클러스터 설치를참조하십시오.
2.1. siteConfig Operator 흐름 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator는 ClusterInstance 사용자 정의 리소스의 데이터에서 인스턴스화되는 사용자 정의 템플릿을 기반으로 설치 매니페스트를 동적으로 생성합니다.
ArgoCD를 통해 Git 리포지토리에서 ClusterInstance 사용자 정의 리소스를 소싱하거나 허브 클러스터에서 수동으로 또는 외부 툴 및 워크플로우를 통해 직접 생성할 수 있습니다.
다음은 프로세스에 대한 고급 개요입니다.
- hub 클러스터에 하나 이상의 설치 템플릿 세트를 생성합니다.
-
해당 설치 템플릿을 참조하고 매니페스트를 지원하는
ClusterInstance사용자 정의 리소스를 생성합니다. -
리소스가 생성되면 SiteConfig Operator가 사용자 정의 리소스에서 참조되는 templated 필드를 채워
ClusterInstance사용자 정의 리소스를 조정합니다. - SiteConfig Operator는 설치 매니페스트의 유효성을 검사하고 렌더링한 다음 Operator는 예행 실행을 수행합니다.
- 예행 실행이 성공하면 매니페스트가 생성된 다음 기본 Operator에서 매니페스트를 사용하고 처리합니다.
- 설치가 시작됩니다.
-
SiteConfig Operator는 연결된
ClusterDeployment리소스의 변경 사항을 지속적으로 모니터링하고 그에 따라ClusterInstance사용자 지정 리소스의상태필드를 업데이트합니다.
SiteConfig Operator 사용 방법에 대한 자세한 내용은 다음 설명서를 참조하십시오.
고급 주제는 다음 설명서를 참조하십시오.
2.2. 설치 템플릿 개요 링크 복사링크가 클립보드에 복사되었습니다!
설치 템플릿은 설치 아티팩트 세트를 생성하는 데 사용되는 데이터 기반 템플릿입니다. 이러한 템플릿은 Golang 텍스트/템플릿 형식을 따르고 ClusterInstance 사용자 정의 리소스의 데이터를 사용하여 인스턴스화됩니다. 이를 통해 유사한 구성이 있지만 값이 다른 각 대상 클러스터에 대해 동적 설치 매니페스트를 생성할 수 있습니다.
다양한 설치 방법 또는 클러스터 토폴로지를 기반으로 여러 세트를 생성할 수도 있습니다. SiteConfig Operator는 다음 유형의 설치 템플릿을 지원합니다.
- 클러스터 수준
- 클러스터별 필드만 참조해야 하는 템플릿입니다.
- 노드 수준
- 클러스터별 필드와 노드별 필드를 모두 참조할 수 있는 템플릿입니다.
설치 템플릿에 대한 자세한 내용은 다음 설명서를 참조하십시오.
2.2.1. 템플릿 함수 링크 복사링크가 클립보드에 복사되었습니다!
templated 필드를 사용자 지정할 수 있습니다. SiteConfig Operator는 모든 sprig 라이브러리 함수 를 지원합니다.
또한 ClusterInstance API는 사용자 정의 매니페스트를 생성하는 동안 사용할 수 있는 다음 기능을 제공합니다.
toYaml-
toYaml함수는 항목을 YAML 문자열로 인코딩합니다. 항목을 YAML로 변환할 수 없는 경우 함수는 빈 문자열을 반환합니다.
ClusterInstance.Spec.Proxy 필드에서 .toYaml 사양의 다음 예제를 참조하십시오.
{{ if .Spec.Proxy }}
proxy:
{{ .Spec.Proxy | toYaml | indent 4 }}
{{ end }}
{{ if .Spec.Proxy }}
proxy:
{{ .Spec.Proxy | toYaml | indent 4 }}
{{ end }}
2.2.2. 기본 템플릿 세트 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator는 Operator가 설치된 동일한 네임스페이스에 있는 다음과 같은 기본, 유효성 검사 및 변경 불가능한 템플릿 세트를 제공합니다.
| 설치 방법 | 템플릿 유형 | 파일 이름 | 템플릿 콘텐츠 |
|---|---|---|---|
| 지원되는 설치 관리자 | 클러스터 수준 템플릿 |
|
|
| 노드 수준 템플릿 |
|
| |
| 이미지 기반 Install Operator | 클러스터 수준 템플릿 |
|
|
| 노드 수준 템플릿 |
|
|
ClusterInstance API에 대한 자세한 내용은 ClusterInstance API 를 참조하십시오.
2.2.3. 특수 템플릿 변수 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator는 템플릿에서 사용할 수 있는 특수 템플릿 변수 집합을 제공합니다. 다음 목록을 참조하십시오.
CurrentNode- SiteConfig Operator는 노드 개체의 반복을 명시적으로 제어하고 이 변수를 노출하여 템플릿에서 처리되는 현재 노드의 모든 콘텐츠에 액세스합니다.
InstallConfigOverrides-
병합된
networkType,cpu CryostatingMode및installConfigOverrides콘텐츠를 포함합니다. ControlPlaneAgents-
컨트롤 플레인 에이전트 수로 구성되며
ClusterInstance노드 오브젝트에서 자동으로 파생됩니다. WorkerAgents-
작업자 에이전트 수로 구성되며
ClusterInstance노드 오브젝트에서 자동으로 파생됩니다.
텍스트 템플릿에서 필드 이름을 대문자로 지정하여 사용자 지정 템플릿 필드를 생성합니다.
예를 들어 ClusterInstance spec 필드는 .Spec 접두사를 사용하여 참조합니다. 그러나 .SpecialVars 접두사를 사용하여 특수 변수 필드를 참조해야 합니다.
중요: spec.nodes 필드에 .Spec.Nodes 접두사를 사용하는 대신 .SpecialVars.CurrentNode 특수 템플릿 변수로 참조해야 합니다.
예를 들어 CurrentNode 특수 템플릿 변수를 사용하여 현재 노드의 이름과 네임스페이스 를 지정하려면 다음 양식에서 필드 이름을 사용합니다.
name: "{{ .SpecialVars.CurrentNode.HostName }}"
namespace: "{{ .Spec.ClusterName }}"
name: "{{ .SpecialVars.CurrentNode.HostName }}"
namespace: "{{ .Spec.ClusterName }}"
2.2.4. 매니페스트 순서 사용자 정의 링크 복사링크가 클립보드에 복사되었습니다!
siteconfig.open-cluster-management.io/sync- ECDSA 주석을 사용하여 매니페스트가 생성, 업데이트 및 삭제된 순서를 제어할 수 있습니다. 주석은 정수를 값으로 사용하고 해당 정수는 웨이브 로 구성됩니다.
단일 웨이브에 하나 또는 여러 매니페스트를 추가할 수 있습니다. 값을 지정하지 않으면 주석에서 기본값인 0 을 사용합니다.
SiteConfig Operator는 리소스를 생성하거나 업데이트할 때 오름차순으로 매니페스트를 오름차순으로 조정하고 내림차순으로 리소스를 삭제합니다.
다음 예에서 SiteConfig Operator가 매니페스트를 생성하거나 업데이트하면 AgentClusterInstall 및 ClusterDeployment 사용자 정의 리소스가 첫 번째 웨이브에서 조정되는 반면 KlusterletAddonConfig 및 ManagedCluster 사용자 정의 리소스는 세 번째 파동에서 조정됩니다.
SiteConfig Operator가 리소스를 삭제하는 경우 KlusterletAddonConfig 및 ManagedCluster 사용자 정의 리소스가 가장 먼저 삭제되는 반면 AgentClusterInstall 및 ClusterDeployment 사용자 정의 리소스가 마지막입니다.
2.2.5. 추가 주석 및 라벨 구성 링크 복사링크가 클립보드에 복사되었습니다!
ClusterInstance API에서 extraAnnotations 및 extraLabels 필드를 사용하여 클러스터 수준 및 노드 수준 설치 매니페스트 모두에 추가 주석 및 레이블을 구성할 수 있습니다. SiteConfig Operator는 ClusterInstance 리소스에서 지정하는 매니페스트에 추가 주석 및 레이블을 적용합니다.
추가 주석 및 레이블을 생성할 때 SiteConfig 운영자가 일치하는 모든 매니페스트에 적용할 수 있도록 매니페스트 유형을 지정해야 합니다. 그러나 주석과 레이블은 임의의 것이며 애플리케이션에 의미 있는 모든 키 및 값 쌍을 설정할 수 있습니다.
참고: 추가 주석 및 레이블은 참조된 템플릿을 통해 렌더링된 리소스에만 적용됩니다.
추가 주석 및 의 다음 예제 애플리케이션을 확인합니다.
extra Labels
추가 주석 및 애플리케이션 예extra Labels
- 1 2
- 이 필드는 SiteConfig Operator가
ManagedCluster및ClusterDeployment매니페스트에 적용하는 클러스터 수준 주석 및 레이블을 지원합니다. - 3 4
- 이 필드는 SiteConfig Operator가
BareMetalHost매니페스트에 적용하는 노드 수준 주석 및 레이블을 지원합니다.다음 명령을 실행하여 추가 레이블이 적용되었는지 확인할 수 있습니다.
oc get managedclusters example-sno -ojsonpath='{.metadata.labels}' | jqoc get managedclusters example-sno -ojsonpath='{.metadata.labels}' | jqCopy to Clipboard Copied! Toggle word wrap Toggle overflow 적용된 라벨의 다음 예제를 확인합니다.
적용된 라벨 예
{ "common": "true", "group-du": "", ... }{ "common": "true", "group-du": "", ... }Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 다음 명령을 실행하여 추가 주석이 적용되었는지 확인할 수 있습니다.
oc get bmh example-sno.example.redhat.com -n example-sno -ojsonpath='{.metadata.annotations}' | jqoc get bmh example-sno.example.redhat.com -n example-sno -ojsonpath='{.metadata.annotations}' | jqCopy to Clipboard Copied! Toggle word wrap Toggle overflow 적용된 주석의 다음 예제를 확인합니다.
적용된 주석 예
{ "myNodeAnnotation": "success", ... }{ "myNodeAnnotation": "success", ... }Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3. siteConfig Operator 활성화 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator가 기본 설치 템플릿을 사용하고 규모에 따라 단일 노드 OpenShift 클러스터를 설치할 수 있도록 활성화합니다.
필수 액세스: 클러스터 관리자
2.3.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- Red Hat Advanced Cluster Management 버전 2.12 hub 클러스터가 필요합니다.
2.3.2. MultiClusterHub 리소스에서 SiteConfig Operator 활성화 링크 복사링크가 클립보드에 복사되었습니다!
MultiClusterHub 리소스를 패치한 다음 SiteConfig Operator가 활성화되어 있는지 확인합니다. 다음 절차를 완료합니다.
다음 명령을 실행하여
Multiclusterhub리소스에서spec.overrides.components의siteconfig항목에서enabled필드를true로 설정합니다.oc patch multiclusterhubs.operator.open-cluster-management.io multiclusterhub -n rhacm --type json --patch '[{"op": "add", "path":"/spec/overrides/components/-", "value": {"name":"siteconfig","enabled": true}}]'oc patch multiclusterhubs.operator.open-cluster-management.io multiclusterhub -n rhacm --type json --patch '[{"op": "add", "path":"/spec/overrides/components/-", "value": {"name":"siteconfig","enabled": true}}]'Copy to Clipboard Copied! Toggle word wrap Toggle overflow hub 클러스터에서 다음 명령을 실행하여 SiteConfig Operator가 활성화되어 있는지 확인합니다.
oc -n rhacm get po | grep siteconfig
oc -n rhacm get po | grep siteconfigCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
siteconfig-controller-manager-6fdd86cc64-sdg87 2/2 Running 0 43s
siteconfig-controller-manager-6fdd86cc64-sdg87 2/2 Running 0 43sCopy to Clipboard Copied! Toggle word wrap Toggle overflow 선택 사항: hub 클러스터에서 다음 명령을 실행하여 기본 설치 템플릿이 있는지 확인합니다.
oc -n rhacm get cm
oc -n rhacm get cmCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예에서 다음 템플릿 목록을 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.4. 이미지 기반 설치 Operator 링크 복사링크가 클립보드에 복사되었습니다!
기존 설치 방법과 동일한 API를 사용하여 이미지 기반 클러스터 설치를 완료하고 관리할 수 있도록 Image Based Install Operator를 설치합니다.
Image Based Install Operator에 대한 자세한 내용은 단일 노드 OpenShift의 이미지 기반 설치를 참조하십시오.
2.5. SiteConfig Operator를 사용하여 단일 노드 OpenShift 클러스터 설치 링크 복사링크가 클립보드에 복사되었습니다!
기본 설치 템플릿을 사용하여 SiteConfig Operator로 클러스터를 설치합니다. Image-Based Install Operator의 설치 템플릿을 사용하여 절차를 완료합니다.
필수 액세스: 클러스터 관리자
2.5.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- GitOps ZTP를 사용하는 경우 GitOps ZTP 환경을 구성합니다. 환경을 구성하려면 GitOps ZTP용 허브 클러스터 준비를 참조하십시오.
- 기본 설치 템플릿이 있습니다. 기본 템플릿에 대한 자세한 내용은 기본 템플릿 세트를참조하십시오.
선택한 기본 Operator를 설치하고 구성합니다.
- 단일 노드 OpenShift용 Image Based Install Operator에 대한 자세한 내용은 Image Based Install Operator 를 참조하십시오.
- 지원 설치 관리자를 설치하려면 지원 설치 관리자를 사용하여 온프레미스 클러스터 설치를 참조하십시오.
SiteConfig Operator를 사용하여 클러스터를 설치하려면 다음 단계를 완료합니다.
2.5.2. 대상 네임스페이스 생성 링크 복사링크가 클립보드에 복사되었습니다!
가져오기 보안, BMC 시크릿, 추가 매니페스트 ConfigMap 오브젝트 및 ClusterInstance 사용자 정의 리소스를 생성할 때 대상 네임스페이스가 필요합니다.
대상 네임스페이스를 생성하려면 다음 단계를 완료합니다.
대상 네임스페이스에 대한 YAML 파일을 생성합니다.
clusterinstance-namespace.yaml이라는 다음 예제 파일을 참조하십시오.apiVersion: v1 kind: Namespace metadata: name: example-sno
apiVersion: v1 kind: Namespace metadata: name: example-snoCopy to Clipboard Copied! Toggle word wrap Toggle overflow 파일을 적용하여 리소스를 생성합니다. hub 클러스터에서 다음 명령을 실행합니다.
oc apply -f clusterinstance-namespace.yaml
oc apply -f clusterinstance-namespace.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.3. 풀 시크릿 생성 링크 복사링크가 클립보드에 복사되었습니다!
클러스터가 컨테이너 레지스트리에서 이미지를 가져올 수 있도록 하려면 풀 시크릿이 필요합니다. 풀 시크릿을 생성하려면 다음 단계를 완료합니다.
YAML 파일을 생성하여 이미지를 가져옵니다.
pull-secret.yaml이라는 파일의 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일을 적용하여 리소스를 생성합니다. hub 클러스터에서 다음 명령을 실행합니다.
oc apply -f pull-secret.yaml
oc apply -f pull-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.4. BMC 시크릿 생성 링크 복사링크가 클립보드에 복사되었습니다!
BMC(Baseboard Management Controller)에 연결하려면 시크릿이 필요합니다. 보안을 생성하려면 다음 단계를 완료합니다.
BMC 시크릿에 대한 YAML 파일을 생성합니다. 이름이
example-bmc-secret.yaml인 다음 샘플 파일을 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
네임스페이스 값이 대상 네임스페이스와 일치하는지 확인합니다.
파일을 적용하여 리소스를 생성합니다. hub 클러스터에서 다음 명령을 실행합니다.
oc apply -f example-bmc-secret.yaml
oc apply -f example-bmc-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.5. 선택 사항: 추가 매니페스트 생성 링크 복사링크가 클립보드에 복사되었습니다!
ClusterInstance 사용자 정의 리소스에서 참조해야 하는 추가 매니페스트를 생성할 수 있습니다. 추가 매니페스트를 생성하려면 다음 단계를 완료합니다.
추가 매니페스트
ConfigMap오브젝트에 대한 YAML 파일을 생성합니다(예:enable-crun.yaml):Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
네임스페이스 값이 대상 네임스페이스와 일치하는지 확인합니다.
hub 클러스터에서 다음 명령을 실행하여 리소스를 생성합니다.
oc apply -f enable-crun.yaml
oc apply -f enable-crun.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5.6. 설치 매니페스트 렌더링 링크 복사링크가 클립보드에 복사되었습니다!
ClusterInstance 사용자 정의 리소스의 템플릿 및 지원 매니페스트를 참조합니다. 기본 클러스터 및 노드 템플릿을 사용하여 설치 매니페스트를 렌더링하려면 다음 단계를 완료합니다.
example-sno네임스페이스에서 다음 예제에서clusterinstance-ibi.yaml이라는ClusterInstance사용자 정의 리소스를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
ClusterInstance사용자 정의 리소스의네임스페이스가 사용자가 정의한 대상 네임스페이스와 일치하는지 확인합니다.- 2
- 하나 이상의 추가 매니페스트
ConfigMap오브젝트이름을참조합니다. - 3
- 풀 시크릿의
이름을참조합니다. - 4
ClusterInstance사용자 정의 리소스의clusterName필드 값이namespace필드의 값과 일치하는지 확인합니다.- 5
spec.templateRefs필드에서 클러스터 수준 템플릿의이름을참조합니다. 기본 설치 템플릿을 사용하는 경우네임스페이스가 Operator가 설치된 네임스페이스와 일치해야 합니다.- 6
- BMC 시크릿의
이름을참조합니다. - 7
spec.nodes.templateRefs필드에서 노드 수준 템플릿의이름을참조합니다. 기본 설치 템플릿을 사용하는 경우네임스페이스가 Operator가 설치된 네임스페이스와 일치해야 합니다.
다음 명령을 실행하여 파일을 적용하고 리소스를 생성합니다.
oc apply -f clusterinstance-ibi.yaml
oc apply -f clusterinstance-ibi.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 사용자 지정 리소스를 생성한 후 SiteConfig Operator가
ClusterInstance사용자 정의 리소스를 조정한 다음 설치 매니페스트를 검증하고 렌더링합니다.SiteConfig Operator는 해당
ClusterInstance사용자 정의 리소스의 클러스터 설치 진행 상황을 업데이트하기 위해ClusterDeployment사용자 지정 리소스의 변경 사항을 계속 모니터링합니다.다음 명령을 실행하여 프로세스를 모니터링합니다.
oc get clusterinstance <cluster_name> -n <target_namespace> -o yaml
oc get clusterinstance <cluster_name> -n <target_namespace> -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 매니페스트 생성에 성공하려면
status.conditions섹션의 다음 예제 출력을 참조하십시오.message: Applied site config manifests reason: Completed status: "True" type: RenderedTemplatesApplied
message: Applied site config manifests reason: Completed status: "True" type: RenderedTemplatesAppliedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 SiteConfig Operator가 렌더링한 매니페스트를 확인합니다.
oc get clusterinstance <cluster_name> -n <target_namespace> -o jsonpath='{.status.manifestsRendered}'oc get clusterinstance <cluster_name> -n <target_namespace> -o jsonpath='{.status.manifestsRendered}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
상태 조건에 대한 자세한 내용은 ClusterInstance API 를 참조하십시오.
2.6. SiteConfig Operator를 사용하여 단일 노드 OpenShift 클러스터 프로비저닝 해제 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig operator로 클러스터를 프로비저닝 해제하여 해당 클러스터와 연결된 모든 리소스 및 액세스를 삭제합니다.
필수 액세스: 클러스터 관리자
2.6.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- 기본 설치 템플릿을 사용하여 SiteConfig Operator로 클러스터를 배포합니다.
2.6.2. 단일 노드 OpenShift 클러스터 프로비저닝 해제 링크 복사링크가 클립보드에 복사되었습니다!
클러스터를 삭제하려면 다음 단계를 완료합니다.
다음 명령을 실행하여
ClusterInstance사용자 정의 리소스를 삭제합니다.oc delete clusterinstance <cluster_name> -n <target_namespace>
oc delete clusterinstance <cluster_name> -n <target_namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 삭제에 성공했는지 확인합니다.
oc get clusterinstance <cluster_name> -n <target_namespace>
oc get clusterinstance <cluster_name> -n <target_namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
(NotFound) 오류가 클러스터가 프로비저닝 해제되었음을 나타내는 다음 예제 출력을 참조하십시오.
Error from server (NotFound): clusterinstances.siteconfig.open-cluster-management.io "<cluster_name>" not found
Error from server (NotFound): clusterinstances.siteconfig.open-cluster-management.io "<cluster_name>" not found
2.7. SiteConfig Operator를 사용하여 사용자 지정 템플릿 생성 링크 복사링크가 클립보드에 복사되었습니다!
기본 템플릿 세트에 제공되지 않는 사용자 정의 템플릿을 만듭니다.
필수 액세스: 클러스터 관리자
사용자 지정 템플릿을 생성하려면 다음 단계를 완료합니다.
ConfigMap오브젝트에 클러스터 수준 템플릿이 포함된my-custom-secret.yaml이라는 YAML 파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
siteconfig.open-cluster-management.io/sync-ECDHE 주석은 주문 매니페스트가 생성, 업데이트 또는 삭제되는 것을 제어합니다.
다음 명령을 실행하여 hub 클러스터에 사용자 지정 템플릿을 적용합니다.
oc apply -f my-custom-secret.yaml
oc apply -f my-custom-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow clusterinstance-my-custom-secret.yaml이라는ClusterInstance사용자 정의 리소스에서 템플릿을 참조합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
ClusterInstance사용자 정의 리소스를 적용합니다.oc apply -f clusterinstance-my-custom-secret.yaml
oc apply -f clusterinstance-my-custom-secret.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.8. SiteConfig Operator를 사용하여 단일 노드 OpenShift 클러스터로 스케일링 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator가 설치한 관리형 클러스터의 규모를 조정합니다. 작업자 노드를 제거하여 클러스터에서 확장할 수 있습니다.
필수 액세스: 클러스터 관리자
2.8.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- GitOps ZTP를 사용하는 경우 GitOps ZTP 환경을 구성했습니다. 환경을 구성하려면 GitOps ZTP용 허브 클러스터 준비를 참조하십시오.
- 기본 템플릿이 있습니다. 기본 템플릿에 대한 자세한 내용은 기본 템플릿 세트를참조하십시오.
- SiteConfig Operator를 사용하여 클러스터를 설치했습니다. SiteConfig Operator를 사용하여 클러스터를 설치하려면 siteConfig Operator를 사용하여 단일 노드 OpenShift 클러스터 설치를 참조하십시오.
2.8.2. 작업자 노드에 주석 추가 링크 복사링크가 클립보드에 복사되었습니다!
제거를 위해 작업자 노드에 주석을 추가합니다.
관리 클러스터에서 작업자 노드에 주석을 달려면 다음 단계를 완료합니다.
클러스터를 프로비저닝하는 데 사용되는
ClusterInstance사용자 정의 리소스에 있는 작업자 노드 항목의추가주석 필드에 주석을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 변경 사항을 적용합니다. 다음 옵션을 참조하십시오.
- Red Hat OpenShift GitOps 없이 Red Hat Advanced Cluster Management를 사용하는 경우 hub 클러스터에서 다음 명령을 실행합니다.
oc apply -f <clusterinstance>.yaml
oc apply -f <clusterinstance>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GitOps ZTP를 사용하는 경우 Git 리포지토리로 푸시하고 Argo CD가 변경 사항을 동기화할 때까지 기다립니다.
hub 클러스터에서 다음 명령을 실행하여 주석이
BaremetalHost작업자 리소스에 적용되었는지 확인합니다.oc get bmh -n <clusterinstance_namespace> worker-node2.example.com -ojsonpath='{.metadata.annotations}' | jqoc get bmh -n <clusterinstance_namespace> worker-node2.example.com -ojsonpath='{.metadata.annotations}' | jqCopy to Clipboard Copied! Toggle word wrap Toggle overflow 주석 적용에 성공하려면 다음 예제 출력을 참조하십시오.
2.8.3. 작업자 노드의 BareMetalHost 리소스 삭제 링크 복사링크가 클립보드에 복사되었습니다!
제거하려는 작업자 노드의 BareMetalHost 리소스를 삭제합니다.
관리 클러스터에서 작업자 노드를 제거하려면 다음 단계를 완료합니다.
다음 구성으로 기존
ClusterInstance사용자 정의 리소스에서 삭제할 노드 오브젝트를 업데이트합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 변경 사항을 적용합니다. 다음 옵션을 참조하십시오.
- Red Hat OpenShift GitOps 없이 Red Hat Advanced Cluster Management를 사용하는 경우 hub 클러스터에서 다음 명령을 실행합니다.
oc apply -f <clusterinstance>.yaml
oc apply -f <clusterinstance>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GitOps ZTP를 사용하는 경우 Git 리포지토리로 푸시하고 Argo CD가 변경 사항을 동기화할 때까지 기다립니다.
hub 클러스터에서 다음 명령을 실행하여
BareMetalHost리소스가 제거되었는지 확인합니다.oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>
oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com deprovisioning true 44m worker-node2.example.com powering off before delete true 20h worker-node2.example.com deleting true 50m
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com deprovisioning true 44m worker-node2.example.com powering off before delete true 20h worker-node2.example.com deleting true 50mCopy to Clipboard Copied! Toggle word wrap Toggle overflow hub 클러스터에서 다음 명령을 실행하여
에이전트리소스가 제거되었는지 확인합니다.oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>
oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
NAME CLUSTER APPROVED ROLE STAGE master-node1.example.com <managed_cluster_name> true master Done master-node2.example.com <managed_cluster_name> true master Done master-node3.example.com <managed_cluster_name> true master Done worker-node1.example.com <managed_cluster_name> true worker Done
NAME CLUSTER APPROVED ROLE STAGE master-node1.example.com <managed_cluster_name> true master Done master-node2.example.com <managed_cluster_name> true master Done master-node3.example.com <managed_cluster_name> true master Done worker-node1.example.com <managed_cluster_name> true worker DoneCopy to Clipboard Copied! Toggle word wrap Toggle overflow 관리 클러스터에서 다음 명령을 실행하여
노드리소스가 제거되었는지 확인합니다.oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>
oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.9. SiteConfig Operator를 사용하여 단일 노드 OpenShift 클러스터 확장 링크 복사링크가 클립보드에 복사되었습니다!
SiteConfig Operator가 설치한 관리형 클러스터를 확장합니다. 작업자 노드를 추가하여 클러스터를 확장할 수 있습니다.
필수 액세스: 클러스터 관리자
2.9.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
- GitOps ZTP를 사용하는 경우 GitOps ZTP 환경을 구성했습니다. 환경을 구성하려면 GitOps ZTP용 허브 클러스터 준비를 참조하십시오.
- 기본 설치 템플릿이 있습니다. 기본 템플릿에 대한 자세한 내용은 기본 템플릿 세트를 참조하십시오.
- SiteConfig Operator를 사용하여 클러스터를 설치했습니다. SiteConfig Operator를 사용하여 클러스터를 설치하려면 SiteConfig Operator 를 사용하여 단일 노드 OpenShift 클러스터 설치를 참조하십시오.
2.9.2. 작업자 노드 추가 링크 복사링크가 클립보드에 복사되었습니다!
클러스터를 프로비저닝하는 데 사용되는 ClusterInstance 사용자 정의 리소스를 업데이트하여 작업자 노드를 추가합니다.
관리 클러스터에 작업자 노드를 추가하려면 다음 단계를 완료합니다.
기존
ClusterInstance사용자 정의 리소스에서 새 노드 오브젝트를 정의합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 변경 사항을 적용합니다. 다음 옵션을 참조하십시오.
- Red Hat OpenShift GitOps 없이 Red Hat Advanced Cluster Management를 사용하는 경우 hub 클러스터에서 다음 명령을 실행합니다.
oc apply -f <clusterinstance>.yaml
oc apply -f <clusterinstance>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - GitOps ZTP를 사용하는 경우 Git 리포지토리로 푸시하고 Argo CD가 변경 사항을 동기화할 때까지 기다립니다.
hub 클러스터에서 다음 명령을 실행하여 새
BareMetalHost리소스가 추가되었는지 확인합니다.oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>
oc get bmh -n <clusterinstance_namespace> --watch --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com provisioning true 44m
NAME STATE CONSUMER ONLINE ERROR AGE master-node1.example.com provisioned true 81m worker-node2.example.com provisioning true 44mCopy to Clipboard Copied! Toggle word wrap Toggle overflow hub 클러스터에서 다음 명령을 실행하여 새
에이전트리소스가 추가되었는지 확인합니다.oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>
oc get agents -n <clusterinstance_namespace> --kubeconfig <hub_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 관리 클러스터에서 다음 명령을 실행하여 새
Node리소스가 추가되었는지 확인합니다.oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>
oc get nodes --kubeconfig <managed_cluster_kubeconfig_filename>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 예제 출력을 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow