5.4. PolicyGenTemplate CR을 사용하여 관리 클러스터 사용자 정의
다음 절차에 따라 ZTP(ZTP) 파이프라인을 사용하여 프로비저닝하는 관리 클러스터에 적용할 수 있는 정책을 사용자 지정할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. -
cluster-admin
권한이 있는 사용자로 hub 클러스터에 로그인했습니다. - 필요한 설치 및 정책 CR을 생성하도록 허브 클러스터를 구성했습니다.
- 사용자 지정 사이트 구성 데이터를 관리하는 Git 리포지토리를 생성하셨습니다. 리포지토리는 hub 클러스터에서 액세스할 수 있어야 하며 Argo CD 애플리케이션의 소스 리포지토리로 정의해야 합니다.
프로세스
사이트별 구성 CR에 대한
PolicyGenTemplate
CR을 생성합니다.-
out/argocd/example/policygentemplates
폴더에서 CR에 대한 적절한 예를 선택합니다(예:example-sno-site.yaml
또는example-multinode-site.yaml
). 예제 파일의
bindingRules
필드를 siteConfig
CR에 포함된 사이트별 레이블과 일치하도록 변경합니다. 예제SiteConfig
파일에서 사이트별 레이블은sites: example-sno
입니다.참고PolicyGenTemplate
bindingRules
필드에 정의된 라벨이 관련 관리 클러스터 siteConfig
CR에 정의된 라벨에 해당하는지 확인합니다.- 예제 파일의 콘텐츠를 원하는 구성과 일치하도록 변경합니다.
-
선택 사항: 전체 클러스터에 적용되는 일반적인 구성 CR에 대한
PolicyGenTemplate
CR을 생성합니다.-
out/argocd/example/policygentemplates
폴더에서 CR에 대한 적절한 예를 선택합니다(예:common-ranGen.yaml
). - 예제 파일의 콘텐츠를 원하는 구성과 일치하도록 변경합니다.
-
선택 사항: 플릿의 특정 클러스터 그룹에 적용되는 모든 그룹 구성 CR에 대해
PolicyGenTemplate
CR을 생성합니다.overlaid 사양 파일의 내용이 원하는 최종 상태와 일치하는지 확인합니다. 참조로 out/source-crs 디렉터리에는 PolicyGenTemplate 템플릿에서 포함할 수 있는 source-crs의 전체 목록이 포함되어 있습니다.
참고클러스터의 특정 요구 사항에 따라 클러스터 유형당 단일 그룹 정책이 필요할 수 있습니다. 특히 예제 그룹 정책에는 각각 동일한 하드웨어 구성으로 구성된 클러스터 집합에서만 공유할 수 있는 단일 PerformancePolicy.yaml 파일이 있습니다.
-
out/argocd/example/policygentemplates
폴더에서 CR에 대한 적절한 예를 선택합니다(예:group-du-sno-ranGen.yaml
). - 예제 파일의 콘텐츠를 원하는 구성과 일치하도록 변경합니다.
-
-
선택 사항: 배포된 클러스터의 GitOps ZTP 설치 및 구성이 완료되면 정책
PolicyGenTemplate
CR을 생성합니다. 자세한 내용은 "검토 확인 정보 정책 생성"을 참조하십시오. example
out/argocd/example/policygentemplates/ns.yaml
파일과 유사한 YAML 파일에서 모든 정책 네임스페이스를 정의합니다.중요PolicyGenTemplate
CR과 동일한 파일에Namespace
CR을 포함하지 마십시오.-
out/argocd/example/policygentemplates/
에 표시된 예제와 유사하게kustomization.yaml
PolicyGenTemplate
CR 및Namespace
CR을 generators 섹션의 kustomization.yaml 파일에 추가합니다. Git 리포지토리에서
PolicyGenTemplate
CR,Namespace
CR 및 관련kustomization.yaml
파일을 커밋하고 변경 사항을 내보냅니다.ArgoCD 파이프라인은 변경 사항을 감지하고 관리 클러스터 배포를 시작합니다. 변경 사항을
SiteConfig
CR 및PolicyGenTemplate
CR에 동시에 푸시할 수 있습니다.