4장. RHACM 및 SiteConfig 리소스를 사용하여 관리형 클러스터 설치
Red Hat Advanced Cluster Management(RHACM)를 사용하면 지원 서비스와 코어 감소 기술이 활성화된 GitOps 플러그인 정책 생성기를 사용하여 대규모 OpenShift Container Platform 클러스터를 프로비저닝할 수 있습니다. GitOps Zero Touch Provisioning(ZTP) 파이프라인은 클러스터 설치를 수행합니다. GitOps ZTP는 연결이 끊긴 환경에서도 사용할 수 있습니다.
PolicyGenTemplate
CR을 사용하여 관리형 클러스터에 정책을 관리하고 배포하는 기능은 향후 OpenShift Container Platform 릴리스에서 더 이상 지원되지 않습니다. Red Hat Advanced Cluster Management(RHACM) 및 PolicyGenerator
CR을 사용하면 동일하거나 향상된 기능을 사용할 수 있습니다.
PolicyGenerator
리소스에 대한 자세한 내용은 RHACM 통합 정책 생성기 문서를 참조하세요.
4.1. GitOps ZTP 및 토폴로지 인식 라이프사이클 관리자 링크 복사링크가 클립보드에 복사되었습니다!
GitOps Zero Touch Provisioning(ZTP)은 Git에 저장된 매니페스트에서 설치 및 구성 CR을 생성합니다. 이러한 아티팩트는 Red Hat Advanced Cluster Management(RHACM), 지원 서비스 및 Topology Aware Lifecycle Manager(TALM)가 CR을 사용하여 관리되는 클러스터를 설치하고 구성하는 중앙 허브 클러스터에 적용됩니다. GitOps ZTP 파이프라인의 구성 단계에서는 TALM을 사용하여 구성 CR을 클러스터에 적용하도록 조율합니다. GitOps ZTP와 TALM 사이에는 몇 가지 주요 통합 지점이 있습니다.
- 정책 알리기
-
기본적으로 GitOps ZTP는 모든 정책을
inform
이라는 수정 작업으로 생성합니다. 이러한 정책으로 인해 RHACM은 정책과 관련된 클러스터의 규정 준수 상태를 보고하지만 원하는 구성은 적용하지 않습니다. OpenShift 설치 후 GitOps ZTP 프로세스 중에 TALM은 생성된정보
정책을 단계별로 실행하고 대상 관리 클러스터에 이를 적용합니다. 이렇게 하면 구성이 관리되는 클러스터에 적용됩니다. 클러스터 수명 주기의 GitOps ZTP 단계 외부에서 이를 통해 영향을 받는 관리 클러스터에 해당 변경 사항을 즉시 롤아웃할 위험 없이 정책을 변경할 수 있습니다. TALM을 사용하면 타이밍과 수정된 클러스터 세트를 제어할 수 있습니다. - ClusterGroupUpgrade CR 자동 생성
새로 배포된 클러스터의 초기 구성을 자동화하기 위해 TALM은 허브 클러스터의 모든
ManagedCluster
CR 상태를 모니터링합니다.ztp-done
레이블이 적용되지 않은 모든ManagedCluster
CR(새로 생성된ManagedCluster
CR 포함)의 경우 TALM은 다음 특성을 가진ClusterGroupUpgrade
CR을 자동으로 생성합니다.-
ClusterGroupUpgrade
CR은ztp-install
네임스페이스에서 생성되어 활성화됩니다. -
ClusterGroupUpgrade
CR의 이름은ManagedCluster
CR과 같습니다. -
클러스터 선택기에는 해당
ManagedCluster
CR과 연관된 클러스터만 포함됩니다. -
관리되는 정책 세트에는
ClusterGroupUpgrade가
생성될 때 RHACM이 클러스터에 바인딩한 모든 정책이 포함됩니다. - 사전 캐싱이 비활성화되었습니다.
- 제한 시간이 4시간(240분)으로 설정되었습니다.
활성화된
ClusterGroupUpgrade
를 자동으로 생성하면 클러스터의 초기 제로터치 배포가 사용자 개입 없이 진행될 수 있습니다. 또한ztp-done
레이블이 없는 모든ManagedCluster
에 대해ClusterGroupUpgrade
CR이 자동으로 생성되므로 실패한 GitOps ZTP 설치가 클러스터의ClusterGroupUpgrade
CR을 삭제하기만 하면 다시 시작할 수 있습니다.-
- 파도
PolicyGenerator
또는PolicyGentemplate
CR에서 생성된 각 정책에는ztp-deploy-wave
주석이 포함됩니다. 이 주석은 해당 정책에 포함된 각 CR의 동일한 주석을 기반으로 합니다. 웨이브 주석은 자동 생성된ClusterGroupUpgrade
CR에서 정책을 정렬하는 데 사용됩니다. 웨이브 주석은 자동 생성된ClusterGroupUpgrade
CR 외에는 사용되지 않습니다.참고동일한 정책에 있는 모든 CR은
ztp-deploy-wave
주석에 대해 동일한 설정을 가져야 합니다. 각 CR에 대한 이 주석의 기본값은PolicyGenerator
또는PolicyGentemplate
에서 재정의될 수 있습니다. 소스 CR의 웨이브 주석은 정책 웨이브 주석을 결정하고 설정하는 데 사용됩니다. 이 주석은 런타임에 생성된 정책에 포함된 각 빌드된 CR에서 제거됩니다.TALM은 웨이브 주석에 지정된 순서대로 구성 정책을 적용합니다. TALM은 각 정책이 준수될 때까지 기다린 후 다음 정책으로 넘어갑니다. 각 CR에 대한 웨이브 주석이 클러스터에 적용되기 위한 모든 전제 조건을 고려하는지 확인하는 것이 중요합니다. 예를 들어, Operator는 Operator 구성과 동시에 또는 그 전에 설치되어야 합니다. 마찬가지로, Operator의
CatalogSource는
Operator 구독과 동시에 또는 그 전에 웨이브 형태로 설치되어야 합니다. 각 CR의 기본 웨이브 값은 이러한 전제 조건을 고려합니다.여러 CR과 정책은 동일한 웨이브 번호를 공유할 수 있습니다. 정책이 적을수록 배포 속도가 빨라지고 CPU 사용량이 낮아질 수 있습니다. 많은 CR을 비교적 적은 수의 웨이브로 그룹화하는 것이 가장 좋습니다.
각 소스 CR의 기본 웨이브 값을 확인하려면 ztp-site-generate
컨테이너 이미지에서 추출한 out/source-crs
디렉터리에 대해 다음 명령을 실행합니다.
grep -r "ztp-deploy-wave" out/source-crs
$ grep -r "ztp-deploy-wave" out/source-crs
- 위상 라벨
ClusterGroupUpgrade
CR은 자동으로 생성되며 GitOps ZTP 프로세스의 시작과 끝에 레이블을 지정하여ManagedCluster
CR에 주석을 달기 위한 지침이 포함되어 있습니다.GitOps ZTP 구성 후 설치가 시작되면
ManagedCluster
에ztp-running
레이블이 적용됩니다. 모든 정책이 클러스터에 대해 수정되고 완전히 준수되면 이러한 지침에 따라 TALM은ztp-running
레이블을 제거하고ztp-done
레이블을 적용합니다.informDuValidator
정책을 사용하는 배포의 경우, 클러스터가 애플리케이션을 배포할 준비가 완전히 되면ztp-done
레이블이 적용됩니다. 여기에는 GitOps ZTP가 적용된 구성 CR의 모든 조정 및 결과 효과가 포함됩니다.ztp-done
레이블은 TALM이ClusterGroupUpgrade
CR을 자동으로 생성하는 데 영향을 미칩니다. 클러스터의 초기 GitOps ZTP 설치 후에는 이 라벨을 조작하지 마십시오.- 연결된 CR
-
자동으로 생성된
ClusterGroupUpgrade
CR에는 파생된ManagedCluster
로 소유자 참조가 설정됩니다. 이 참조는ManagedCluster
CR을 삭제하면ClusterGroupUpgrade
인스턴스와 함께 지원 리소스도 삭제되도록 보장합니다.