22.8. siteConfig 리소스를 사용한 고급 관리형 클러스터 구성
site Config
CR(사용자 정의 리소스)을 사용하여 설치 시 관리 클러스터에 사용자 정의 기능 및 구성을 배포할 수 있습니다.
22.8.1. ZTP GitOps 파이프라인에서 추가 설치 매니페스트 사용자 정의
제로 건스 프로비저닝(ZTP) GitOps 파이프라인의 설치 단계에 포함하기 위해 추가 매니페스트 세트를 정의할 수 있습니다. 이러한 매니페스트는 SiteConfig
CR(사용자 정의 리소스)에 연결되며 설치 중에 클러스터에 적용됩니다. 설치 시 MachineConfig
CR을 포함하면 설치 프로세스를 보다 효율적으로 수행할 수 있습니다.
사전 요구 사항
- 사용자 지정 사이트 구성 데이터를 관리하는 Git 리포지토리를 생성합니다. 리포지토리는 hub 클러스터에서 액세스할 수 있어야 하며 Argo CD 애플리케이션의 소스 리포지토리로 정의해야 합니다.
절차
- ZTP 파이프라인에서 클러스터 설치를 사용자 지정하는 데 사용하는 추가 매니페스트 CR 세트를 생성합니다.
사용자 정의
/siteconfig
디렉터리에서 추가 매니페스트를 위한/extra-manifest
폴더를 생성합니다. 다음 예제에서는/extra-manifest
폴더가 포함된 샘플/siteconfig
를 보여줍니다.siteconfig ├── site1-sno-du.yaml ├── site2-standard-du.yaml └── extra-manifest └── 01-example-machine-config.yaml
-
사용자 지정 추가 매니페스트 CR을
siteconfig/extra-manifest
디렉터리에 추가합니다. SiteConfig
CR에서extraManifestPath
필드에 디렉터리 이름을 입력합니다. 예를 들면 다음과 같습니다.clusters: - clusterName: "example-sno" networkType: "OVNKubernetes" extraManifestPath: extra-manifest
-
SiteConfig
CR 및/extra-manifest
CR을 저장하고 사이트 구성 리포지토리로 내보냅니다.
ZTP 파이프라인은 /extra-manifest
디렉터리의 CR을 클러스터 프로비저닝 중에 기본 추가 매니페스트 세트에 추가합니다.
22.8.2. SiteConfig 필터를 사용하여 사용자 정의 리소스 필터링
필터를 사용하면ZTP(zero touch provisioning) GitOps 파이프라인의 설치 단계에서 사용할 다른 CR을 포함하거나 제외하도록 SiteConfig
CR(CR)을 쉽게 사용자 지정할 수 있습니다.
포함되거나 제외
하려는 특정 extraManifest
RAN CR 목록과 함께 SiteConfig
CR에 대해 include
또는 exclude에 대해 inclusionDefault
값을 지정할 수 있습니다. include
로 inclusionDefault
를 설정하면 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을 생성하기 위해 hub 클러스터를 구성하셨습니다.
- 사용자 지정 사이트 구성 데이터를 관리하는 Git 리포지토리를 생성했습니다. 리포지토리는 hub 클러스터에서 액세스할 수 있어야 하며 Argo CD 애플리케이션의 소스 리포지토리로 정의해야 합니다.
절차
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.11" sshPublicKey: "<ssh_public_key>" clusters: - clusterName: "site1-sno-du" extraManifests: filter: exclude: - 03-sctp-machine-config-worker.yaml
ZTP 파이프라인은 설치 중에
03-sctp-machine-config-worker.yaml
CR을 건너뜁니다./source-crs/extra-manifest
의 다른 모든 CR이 적용됩니다.site
Config
CR을 저장하고 변경 사항을 사이트 구성 리포지토리로 내보냅니다.ZTP 파이프라인은
SiteConfig
필터 지침에 따라 적용되는 CR을 모니터링하고 조정합니다.선택 사항: ZTP 파이프라인이 클러스터 설치 중에 모든
/source-crs/extra-manifest
CR을 적용하지 않도록 하려면SiteConfig
CR에 다음 YAML을 적용합니다.- clusterName: "site1-sno-du" extraManifests: filter: inclusionDefault: exclude
선택 사항: 모든
/source-crs/extra-manifest
RAN CR을 제외하고 설치 중에 사용자 정의 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