9.2. siteConfig 필터를 사용하여 사용자 정의 리소스 필터링
필터를 사용하면 GitOps ZTP(ZTP) 파이프라인의 설치 단계에서 사용할 다른 CR을 포함하거나 제외하도록 SiteConfig
CR(사용자 정의 리소스)을 쉽게 사용자 지정할 수 있습니다.
SiteConfig
CR의 include
또는 exclude
기본값
을 포함하거나 제외하려는 특정 추가Manifest
RAN CR 목록과 함께 지정할 수 있습니다. include
Default를 포함
으로 설정하면 GitOps ZTP 파이프라인이 설치 중에 /source-crs/extra-manifest
의 모든 파일을 적용합니다. exclude
로 inclusionDefault
를 설정하면 그 반대입니다.
기본적으로 포함된 /source-crs/extra-manifest
폴더에서 개별 CR을 제외할 수 있습니다. 다음 예제에서는 설치 시 /source-crs/extra-manifest/03-sctp-machine-config-worker.yaml
CR을 제외하도록 사용자 정의 단일 노드 OpenShift SiteConfig
CR을 구성합니다.
일부 추가 필터링 시나리오도 설명되어 있습니다.
사전 요구 사항
- 필요한 설치 및 정책 CR을 생성하도록 허브 클러스터를 구성했습니다.
- 사용자 지정 사이트 구성 데이터를 관리하는 Git 리포지토리를 생성하셨습니다. 리포지토리는 hub 클러스터에서 액세스할 수 있어야 하며 Argo CD 애플리케이션의 소스 리포지토리로 정의해야 합니다.
프로세스
GitOps ZTP 파이프라인이
03-sctp-machine-config-worker.yaml
CR 파일을 적용하지 못하도록 siteConfig
CR에 다음 YAML을 적용합니다.apiVersion: ran.openshift.io/v1 kind: SiteConfig metadata: name: "site1-sno-du" namespace: "site1-sno-du" spec: baseDomain: "example.com" pullSecretRef: name: "assisted-deployment-pull-secret" clusterImageSetNameRef: "openshift-4.15" sshPublicKey: "<ssh_public_key>" clusters: - clusterName: "site1-sno-du" extraManifests: filter: exclude: - 03-sctp-machine-config-worker.yaml
GitOps ZTP 파이프라인은 설치 중에
03-sctp-machine-config-worker.yaml
CR을 건너뜁니다./source-crs/extra-manifest
의 다른 모든 CR이 적용됩니다.SiteConfig
CR을 저장하고 사이트 구성 리포지토리로 변경 사항을 내보냅니다.GitOps ZTP 파이프라인은 site
Config 필터 명령에 따라 적용되는 CR을
모니터링하고 조정합니다.선택 사항: GitOps ZTP 파이프라인이 클러스터 설치 중에 모든
/source-crs/extra-manifest
CR을 적용하지 않도록 하려면 siteConfig
CR에서 다음 YAML을 적용합니다.- clusterName: "site1-sno-du" extraManifests: filter: inclusionDefault: exclude
선택 사항:
/source-crs/extra-manifest
RAN CR을 모두 제외하고 설치 중에 사용자 지정 CR 파일을 포함하려면 사용자 정의SiteConfig
CR을 편집하여 사용자 정의 매니페스트 폴더 및포함
파일을 설정합니다. 예를 들면 다음과 같습니다.clusters: - clusterName: "site1-sno-du" extraManifestPath: "<custom_manifest_folder>" 1 extraManifests: filter: inclusionDefault: exclude 2 include: - custom-sctp-machine-config-worker.yaml
다음 예제에서는 사용자 지정 폴더 구조를 보여줍니다.
siteconfig ├── site1-sno-du.yaml └── user-custom-manifest └── custom-sctp-machine-config-worker.yaml