4.6. GitOps ZTP를 사용하여 호스트 펌웨어 설정 관리


호스트에는 높은 성능과 최적의 효율성을 보장하기 위한 올바른 펌웨어 구성이 필요합니다. GitOps ZTP를 사용하면 관리형 클러스터에 대한 사용자 정의 호스트 펌웨어 구성을 배포할 수 있습니다.

실험실의 특정 하드웨어 프로필에 맞게 호스트를 조정하고 요구 사항에 맞게 최적화되었는지 확인하세요. 원하는 대로 호스트 튜닝을 완료하면 호스트 프로필을 추출하여 GitOps ZTP 저장소에 저장합니다. 그런 다음 호스트 프로필을 사용하여 GitOps ZTP로 배포하는 관리형 클러스터 호스트에서 펌웨어 설정을 구성합니다.

관리되는 클러스터를 배포하는 데 사용하는 SiteConfig 사용자 정의 리소스(CR)에서 필요한 하드웨어 프로필을 지정합니다. GitOps ZTP 파이프라인은 허브 클러스터에 적용되는 필수 HostFirmwareSettings ( HFS ) 및 BareMetalHost ( BMH ) CR을 생성합니다.

호스트 펌웨어 프로필을 관리하려면 다음 모범 사례를 활용하세요.

하드웨어 공급업체와 함께 중요한 펌웨어 설정 식별
최적의 성능과 배포된 호스트 플랫폼과의 호환성에 필요한 중요한 호스트 펌웨어 설정을 식별하고 문서화하기 위해 하드웨어 공급업체와 협력합니다.
유사한 하드웨어 플랫폼에서 공통 펌웨어 구성을 사용합니다.
가능하다면 유사한 하드웨어 플랫폼에서 표준화된 호스트 펌웨어 구성을 사용하여 배포 중에 발생할 수 있는 복잡성과 잠재적 오류를 줄이세요.
실험실 환경에서 펌웨어 구성 테스트
프로덕션에 배포하기 전에 통제된 실험실 환경에서 호스트 펌웨어 구성을 테스트하여 설정이 하드웨어, 펌웨어 및 소프트웨어와 호환되는지 확인합니다.
소스 제어에서 펌웨어 프로필 관리
Git 저장소에서 호스트 펌웨어 프로필을 관리하여 변경 사항을 추적하고, 일관성을 유지하고, 공급업체와의 협업을 용이하게 합니다.

4.6.1. 관리되는 클러스터에 대한 호스트 펌웨어 스키마 검색

관리형 클러스터의 호스트 펌웨어 스키마를 알아볼 수 있습니다. 베어 메탈 호스트의 호스트 펌웨어 스키마는 Ironic API가 반환하는 정보로 채워집니다. API는 펌웨어 설정 유형, 허용 값, 범위, 플래그를 포함한 호스트 펌웨어 인터페이스에 대한 정보를 반환합니다.

사전 요구 사항

  • OpenShift CLI(oc)가 설치되어 있습니다.
  • Red Hat Advanced Cluster Management(RHACM)를 설치하고 cluster-admin 권한이 있는 사용자로 허브 클러스터에 로그인했습니다.
  • RHACM에서 관리하는 클러스터를 프로비저닝했습니다.

프로세스

  • 관리 클러스터의 호스트 펌웨어 스키마를 검색합니다. 다음 명령을 실행합니다.

    $ oc get firmwareschema -n <managed_cluster_namespace> -o yaml
    Copy to Clipboard Toggle word wrap

    출력 예

    apiVersion: v1
    items:
    - apiVersion: metal3.io/v1alpha1
      kind: FirmwareSchema
      metadata:
        creationTimestamp: "2024-09-11T10:29:43Z"
        generation: 1
        name: schema-40562318
        namespace: compute-1
        ownerReferences:
        - apiVersion: metal3.io/v1alpha1
          kind: HostFirmwareSettings
          name: compute-1.example.com
          uid: 65d0e89b-1cd8-4317-966d-2fbbbe033fe9
        resourceVersion: "280057624"
        uid: 511ad25d-f1c9-457b-9a96-776605c7b887
      spec:
        schema:
          AccessControlService:
            allowable_values:
            - Enabled
            - Disabled
            attribute_type: Enumeration
            read_only: false
          # ...
    Copy to Clipboard Toggle word wrap

4.6.2. 관리 클러스터의 호스트 펌웨어 설정 검색

관리 클러스터의 호스트 펌웨어 설정을 검색할 수 있습니다. 이 기능은 호스트 펌웨어에 변경 사항을 배포하고 변경 사항을 모니터링하고 성공적으로 적용되도록 하려는 경우에 유용합니다.

사전 요구 사항

  • OpenShift CLI(oc)가 설치되어 있습니다.
  • RHACM(Red Hat Advanced Cluster Management)을 설치하고 cluster-admin 권한이 있는 사용자로 hub 클러스터에 로그인했습니다.
  • RHACM에서 관리하는 클러스터를 프로비저닝했습니다.

프로세스

  1. 관리 클러스터의 호스트 펌웨어 설정을 검색합니다. 다음 명령을 실행합니다.

    $ oc get hostfirmwaresettings -n <cluster_namespace> <node_name> -o yaml
    Copy to Clipboard Toggle word wrap

    출력 예

    apiVersion: v1
    items:
    - apiVersion: metal3.io/v1alpha1
      kind: HostFirmwareSettings
      metadata:
        creationTimestamp: "2024-09-11T10:29:43Z"
        generation: 1
        name: compute-1.example.com
        namespace: kni-qe-24
        ownerReferences:
        - apiVersion: metal3.io/v1alpha1
          blockOwnerDeletion: true
          controller: true
          kind: BareMetalHost
          name: compute-1.example.com
          uid: 0baddbb7-bb34-4224-8427-3d01d91c9287
        resourceVersion: "280057626"
        uid: 65d0e89b-1cd8-4317-966d-2fbbbe033fe9
      spec:
        settings: {}
      status:
        conditions:
        - lastTransitionTime: "2024-09-11T10:29:43Z"
          message: ""
          observedGeneration: 1
          reason: Success
          status: "True" 
    1
    
          type: ChangeDetected
        - lastTransitionTime: "2024-09-11T10:29:43Z"
          message: Invalid BIOS setting
          observedGeneration: 1
          reason: ConfigurationError
          status: "False" 
    2
    
          type: Valid
        lastUpdated: "2024-09-11T10:29:43Z"
        schema:
          name: schema-40562318
          namespace: compute-1
        settings: 
    3
    
          AccessControlService: Enabled
          AcpiHpet: Enabled
          AcpiRootBridgePxm: Enabled
          # ...
    Copy to Clipboard Toggle word wrap

    1
    호스트 펌웨어 설정의 변경 사항이 감지되었음을 나타냅니다.
    2
    호스트에 잘못된 펌웨어 설정이 있음을 나타냅니다.
    3
    구성된 호스트 펌웨어 설정의 전체 목록은 status.settings 필드에서 반환됩니다.
  2. 선택 사항: 클러스터에서 Hfs( HostFirmwareSettings )사용자정의 리소스의 상태를 확인합니다.

    $ oc get hfs -n <managed_cluster_namespace> <managed_cluster_name> -o jsonpath='{.status.conditions[?(@.type=="ChangeDetected")].status}'
    Copy to Clipboard Toggle word wrap

    출력 예

    True
    Copy to Clipboard Toggle word wrap

  3. 선택 사항: 클러스터 호스트에서 잘못된 펌웨어 설정을 확인합니다. 다음 명령을 실행합니다.

    $ oc get hfs -n <managed_cluster_namespace> <managed_cluster_name> -o jsonpath='{.status.conditions[?(@.type=="Valid")].status}'
    Copy to Clipboard Toggle word wrap

    출력 예

    False
    Copy to Clipboard Toggle word wrap

클러스터 호스트 프로비저닝 중에 적용할 하드웨어 프로필을 포함하도록 SiteConfig CR(사용자 정의 리소스)을 구성하여 사용자 정의 펌웨어 설정을 클러스터 호스트에 배포할 수 있습니다. 다음 시나리오에서 호스트에 적용하도록 하드웨어 프로필을 구성할 수 있습니다.

  • 모든 호스트 사이트 전체
  • 특정 기준을 충족하는 클러스터 호스트만
  • 개별 클러스터 호스트
중요

계층 구조에 적용할 호스트 하드웨어 프로필을 구성할 수 있습니다. 클러스터 수준 설정은 사이트 전체 설정을 덮어씁니다. 노드 수준 프로필은 클러스터 및 사이트 수준 설정을 재정의합니다.

사전 요구 사항

  • OpenShift CLI(oc)가 설치되어 있습니다.
  • RHACM(Red Hat Advanced Cluster Management)을 설치하고 cluster-admin 권한이 있는 사용자로 hub 클러스터에 로그인했습니다.
  • RHACM에서 관리하는 클러스터를 프로비저닝했습니다.
  • 사용자 지정 사이트 구성 데이터를 관리하는 Git 리포지토리를 생성하셨습니다. 리포지토리는 hub 클러스터에서 액세스할 수 있어야 하며 Argo CD 애플리케이션의 소스 리포지토리로 정의해야 합니다.

프로세스

  1. 적용하려는 펌웨어 설정이 포함된 호스트 펌웨어 프로필을 생성합니다. 예를 들어 다음 YAML 파일을 생성합니다.

    host-firmware.profile

    BootMode: Uefi
    LogicalProc: Enabled
    ProcVirtualization: Enabled
    Copy to Clipboard Toggle word wrap

  2. 클러스터를 프로비저닝하는 방법을 정의하는 데 사용하는 kustomization.yaml 파일을 기준으로 하드웨어 프로필 YAML 파일을 저장합니다. 예를 들면 다음과 같습니다.

    example-ztp/install
        └── site-install
              ├── siteconfig-example.yaml
              ├── kustomization.yaml
              └── host-firmware.profile
    Copy to Clipboard Toggle word wrap
  3. 클러스터에 적용할 펌웨어 프로필을 포함하도록 SiteConfig CR을 편집합니다. 예를 들면 다음과 같습니다.

    apiVersion: ran.openshift.io/v1
    kind: SiteConfig
    metadata:
      name: "site-plan-cluster"
      namespace: "example-cluster-namespace"
    spec:
      baseDomain: "example.com"
      # ...
      biosConfigRef:
        filePath: "./host-firmware.profile" 
    1
    Copy to Clipboard Toggle word wrap
    1
    하드웨어 프로필을 사이트 전체에서 모든 클러스터 호스트에 적용
    참고

    가능한 경우 클러스터당 단일 SiteConfig CR을 사용합니다.

  4. 선택 사항입니다. 특정 클러스터의 호스트에 하드웨어 프로필을 적용하려면 적용하려는 하드웨어 프로필을 사용하여 cluster .biosConfigRef.filePath 를 업데이트합니다. 예를 들면 다음과 같습니다.

    clusters:
      - clusterName: "cluster-1"
        # ...
        biosConfigRef:
          filePath: "./host-firmware.profile" 
    1
    Copy to Clipboard Toggle word wrap
    1
    cluster-1 클러스터의 모든 호스트에 적용
  5. 선택 사항입니다. 클러스터의 특정 호스트에 하드웨어 프로필을 적용하려면 적용하려는 하드웨어 프로필을 사용하여 cluster .nodes.biosConfigRef.filePath 를 업데이트합니다. 예를 들면 다음과 같습니다.

    clusters:
      - clusterName: "cluster-1"
        # ...
        nodes:
          - hostName: "compute-1.example.com"
            # ...
            bootMode: "UEFI"
            biosConfigRef:
              filePath: "./host-firmware.profile" 
    1
    Copy to Clipboard Toggle word wrap
    1
    펌웨어 프로필을 클러스터의 compute-1.example.com 호스트에 적용
  6. Git 리포지토리에서 SiteConfig CR 및 관련 kustomization.yaml 변경 사항을 커밋하고 변경 사항을 내보냅니다.

    ArgoCD 파이프라인은 변경 사항을 감지하고 관리 클러스터 배포를 시작합니다.

    참고

    클러스터 배포는 잘못된 펌웨어 설정이 감지된 경우에도 진행됩니다. GitOps ZTP를 사용하여 수정 사항을 적용하려면 수정된 하드웨어 프로필로 클러스터를 재배포합니다.

검증

  • 펌웨어 설정이 관리 클러스터 호스트에 적용되었는지 확인합니다. 예를 들어 다음 명령을 실행합니다.

    $ oc get hfs -n <managed_cluster_namespace> <managed_cluster_name> -o jsonpath='{.status.conditions[?(@.type=="Valid")].status}'
    Copy to Clipboard Toggle word wrap

    출력 예

    True
    Copy to Clipboard Toggle word wrap

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat