6.9. 부트 이미지 관리


Google Cloud Platform(GCP) 및 Amazon Web Services(AWS) 클러스터의 경우 기본적으로 Machine Config Operator(MCO)가 노드 확장에 사용되는 부트 이미지를 관리하고 업데이트합니다. 즉, 기본적으로 MCO는 클러스터를 업그레이드할 때마다 부팅 이미지를 업데이트합니다.

다른 모든 플랫폼의 경우 MCO는 각 클러스터 업데이트로 부팅 이미지를 업데이트하지 않습니다.

6.9.1. 부트 이미지 관리에 관하여

기본적으로 Google Cloud Platform(GCP) 및 Amazon Web Services(AWS) 클러스터의 경우, 클러스터를 업데이트할 때마다 Machine Config Operator(MCO)가 클러스터의 머신 세트에서 부트 이미지를 업데이트합니다.

GCP 및 AWS의 경우 필요한 경우 부트 이미지 관리 기능을 비활성화할 수 있습니다. 해당 기능이 비활성화되면 부트 이미지가 더 이상 클러스터로 업데이트되지 않습니다. 예를 들어, 이 기능을 비활성화한 경우 클러스터가 원래 OpenShift Container Platform 4.16으로 생성된 경우 MCO가 노드를 생성하는 데 사용하는 부트 이미지는 클러스터가 이후 버전이라 하더라도 동일한 4.16 버전입니다.

하지만 이전 버전의 부팅 이미지를 사용하면 다음과 같은 문제가 발생할 수 있습니다.

  • 노드를 시작하기 위한 추가 시간
  • 인증서 만료 문제
  • 버전 왜곡 문제

이 기능을 비활성화하는 방법에 대한 자세한 내용은 "부트 이미지 관리 비활성화"를 참조하세요. 이 기능을 비활성화해도 언제든지 다시 활성화할 수 있습니다. 자세한 내용은 "부트 이미지 관리 활성화"를 참조하세요.

참고

부트 이미지 관리를 구성하는 기능은 GCP 및 AWS 클러스터에서만 사용할 수 있습니다. Cluster CAPI Operator가 관리하는 클러스터에서는 지원되지 않습니다.

기능을 비활성화하거나 다시 활성화한 후 클러스터가 동작하는 방식은 다음 시나리오를 포함하여 변경을 수행한 시점에 따라 달라집니다.

  • 새로운 OpenShift Container Platform 버전으로 업데이트하기 전에 해당 기능을 비활성화하는 경우:

    • 머신 세트에서 사용되는 부트 이미지 버전은 해당 기능이 비활성화되었을 당시의 OpenShift Container Platform 버전과 동일하게 유지됩니다.
    • 노드를 확장하면 새로운 노드는 동일한 OpenShift Container Platform 버전을 사용합니다.
  • 새로운 OpenShift Container Platform 버전으로 업데이트한 후 해당 기능을 비활성화하는 경우:

    • 머신 세트에서 사용되는 부트 이미지 버전은 업데이트된 OpenShift Container Platform 버전과 일치하도록 업데이트됩니다.
    • 노드를 확장하면 새로운 노드는 업데이트된 OpenShift Container Platform 버전을 사용합니다.
    • 이후의 OpenShift Container Platform 버전으로 업데이트하는 경우 머신 세트의 부트 이미지 버전은 현재 버전으로 유지되며 클러스터로 업데이트되지 않습니다.
  • 기능을 비활성화한 후 다시 활성화하는 경우:

    • 다른 경우, 머신 세트에서 사용하는 부트 이미지 버전이 최신 OpenShift Container Platform 버전으로 업데이트됩니다.
    • 노드를 확장하면 새 노드는 클러스터의 현재 OpenShift Container Platform 버전을 사용합니다.
참고

부트 이미지는 노드가 확장될 때만 사용되므로 이 기능은 기존 노드에는 영향을 미치지 않습니다.

클러스터에서 사용되는 현재 부트 이미지를 보려면 머신 세트를 조사하세요.

참고

부트 이미지의 위치와 형식은 플랫폼에 따라 머신 세트 내에서 다릅니다. 하지만 부트 이미지는 항상 spec.template.spec.providerSpec 매개변수에 나열됩니다.

부팅 이미지 참조가 있는 GCP 머신 세트 예

apiVersion: machine.openshift.io/v1beta1
kind: MachineSet
metadata:
  name: ci-ln-hmy310k-72292-5f87z-worker-a
  namespace: openshift-machine-api
spec:
# ...
  template:
# ...
    spec:
# ...
      providerSpec:
# ...
        value:
          disks:
          - autoDelete: true
            boot: true
            image: projects/rhcos-cloud/global/images/rhcos-412-85-202203181601-0-gcp-x86-64 
1

# ...
Copy to Clipboard Toggle word wrap

1
이 부트 이미지는 클러스터의 현재 버전과 관계없이 원래 설치된 OpenShift Container Platform 버전(이 예에서는 OpenShift Container Platform 4.12)과 동일합니다. 부트 이미지가 머신 세트에 표현되는 방식은 플랫폼에 따라 달라지는데, 이는 providerSpec 필드의 구조가 플랫폼마다 다르기 때문입니다.

부팅 이미지 참조가 있는 AWS 머신 세트 예

apiVersion: machine.openshift.io/v1beta1
kind: MachineSet
metadata:
  name: ci-ln-hmy310k-72292-5f87z-worker-a
  namespace: openshift-machine-api
spec:
# ...
  template:
# ...
    spec:
# ...
      providerSpec:
         value:
          ami:
            id: ami-0e8fd9094e487d1ff
# ...
Copy to Clipboard Toggle word wrap

중요

부트 이미지 관리를 활성화하려는 머신 세트 중 하나라도 Ignition 버전 2.2.0 기반의 *-user-data 비밀번호를 사용하는 경우, 해당 기능을 활성화하면 Machine Config Operator가 Ignition 버전을 3.4.0으로 변환합니다. OpenShift Container Platform 버전 4.5 및 이전 버전은 Ignition 버전 2.2.0을 사용합니다. 이 변환이 실패하면 MCO 또는 클러스터가 저하될 수 있습니다. oc get ClusterOperator machine-config 명령의 출력에 "err: 점화 스텁 변환에 실패했습니다: 점화 구성을 구문 분석하지 못했습니다" 라는 오류 메시지가 추가되었습니다. 다음의 일반적인 단계를 사용하여 문제를 해결할 수 있습니다.

  1. 부팅 이미지 관리 기능을 비활성화합니다. 자세한 내용은 "부트 이미지 관리 비활성화"를 참조하세요.
  2. Ignition 버전을 3.2.0으로 사용하려면 *-user-data 비밀번호를 수동으로 업데이트해야 합니다.
  3. 부팅 이미지 관리 기능을 활성화합니다. 자세한 내용은 "부트 이미지 관리 활성화"를 참조하세요.

6.9.2. 부팅 이미지 관리 비활성화

기본적으로 Google Cloud Platform(GCP) 및 Amazon Web Services(AWS) 클러스터의 경우, 클러스터를 업데이트할 때마다 Machine Config Operator(MCO)가 클러스터의 머신 세트에서 부트 이미지를 관리하고 업데이트합니다.

MachineConfiguration 객체를 편집하여 클러스터의 부트 이미지 관리 기능을 비활성화할 수 있습니다. 비활성화된 경우, MCO(Machine Config Operator)는 더 이상 클러스터의 부트 이미지를 관리하지 않으며, 각 클러스터 업데이트 시 부트 이미지를 업데이트하지 않습니다.

이 기능을 비활성화해도 노드나 머신 세트는 원래 설치된 부트 이미지로 롤백되지 않습니다. 머신 세트는 해당 기능이 비활성화되었을 당시의 부트 이미지 버전을 유지하며, 나중에 클러스터가 새로운 OpenShift Container Platform 버전으로 업그레이드되더라도 업데이트되지 않습니다. 이 기능은 기존 노드에는 영향을 미치지 않습니다.

GCP 또는 AWS 클러스터에서 해당 기능을 비활성화한 후 언제든지 다시 활성화할 수 있습니다. 자세한 내용은 "업데이트된 부트 이미지 활성화"를 참조하세요.

프로세스

  1. MachineConfiguration 객체를 편집하여 일부 또는 모든 머신 세트에 대한 부팅 이미지 관리 기능을 비활성화합니다.

    $ oc edit MachineConfiguration cluster
    Copy to Clipboard Toggle word wrap
    • 선택 사항: 모든 머신 세트에 대해 해당 기능을 비활성화합니다.

      apiVersion: operator.openshift.io/v1
      kind: MachineConfiguration
      metadata:
        name: cluster
        namespace: openshift-machine-config-operator
      spec:
      # ...
        managedBootImages: 
      1
      
          machineManagers:
          - apiGroup: machine.openshift.io 
      2
      
            resource: machinesets 
      3
      
            selection:
              mode: None 
      4
      Copy to Clipboard Toggle word wrap
      1
      부팅 이미지 관리 기능을 구성합니다.
      2
      API 그룹을 지정합니다. 이것은 machine.openshift.io 여야 합니다.
      3
      변경 사항을 적용할 지정된 API 그룹 내의 리소스를 지정합니다. 이는 머신 세트 여야 합니다.
      4
      클러스터의 모든 머신 세트에 대해 해당 기능이 비활성화되도록 지정합니다.

검증

  • 부팅 이미지 관리 기능의 현재 상태를 보려면 머신 구성 개체를 확인하세요.

    $ oc get machineconfiguration cluster -o yaml
    Copy to Clipboard Toggle word wrap

    부팅 이미지 참조가 있는 머신 세트 예

    kind: MachineConfiguration
    metadata:
      name: cluster
    # ...
    status:
      conditions:
      - lastTransitionTime: "2025-05-01T20:11:49Z"
        message: Reconciled 2 of 4 MAPI MachineSets | Reconciled 0 of 0 CAPI MachineSets
          | Reconciled 0 of 0 CAPI MachineDeployments
        reason: BootImageUpdateConfigurationUpdated
        status: "True"
        type: BootImageUpdateProgressing
      - lastTransitionTime: "2025-05-01T19:30:13Z"
        message: 0 Degraded MAPI MachineSets | 0 Degraded CAPI MachineSets | 0 CAPI MachineDeployments
        reason: BootImageUpdateConfigurationUpdated
        status: "False"
        type: BootImageUpdateDegraded
      managedBootImagesStatus:
        machineManagers:
        - apiGroup: machine.openshift.io
          resource: machinesets
          selection:
            mode: All
    Copy to Clipboard Toggle word wrap

  • 다음 명령을 실행하여 부트 이미지 버전을 가져옵니다. 부트 이미지의 위치와 형식은 플랫폼에 따라 머신 세트 내에서 다릅니다. 하지만 부트 이미지는 항상 spec.template.spec.providerSpec 매개변수에 나열됩니다.

    $ oc get machinesets <machineset_name> -n openshift-machine-api -o yaml
    Copy to Clipboard Toggle word wrap

    부팅 이미지 참조가 있는 머신 세트 예

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    metadata:
      labels:
        machine.openshift.io/cluster-api-cluster: ci-ln-77hmkpt-72292-d4pxp
        update-boot-image: "true"
      name: ci-ln-77hmkpt-72292-d4pxp-worker-a
      namespace: openshift-machine-api
    spec:
    # ...
      template:
    # ...
        spec:
    # ...
          providerSpec:
    # ...
            value:
              disks:
              - autoDelete: true
                boot: true
                image: projects/rhcos-cloud/global/images/<boot_image> 
    1
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    이 부트 이미지는 현재 OpenShift Container Platform 버전과 동일합니다.

6.9.3. 부팅 이미지 관리 활성화

기본적으로 Google Cloud Platform(GCP) 및 Amazon Web Services(AWS) 클러스터의 경우, 클러스터를 업데이트할 때마다 Machine Config Operator(MCO)가 클러스터의 머신 세트에서 부트 이미지를 업데이트합니다.

부트 이미지 관리 기능을 비활성화하여 부트 이미지가 업데이트되지 않도록 한 경우, MachineConfiguration 객체를 편집하여 해당 기능을 다시 활성화할 수 있습니다.

이 기능을 활성화하면 부트 이미지가 현재 OpenShift Container Platform 버전으로 업데이트됩니다. 나중에 클러스터가 새로운 OpenShift Container Platform 버전으로 다시 업데이트되면 부트 이미지도 다시 업데이트됩니다. 해당 기능을 활성화한 후 생성된 새 노드는 업데이트된 부트 이미지를 사용합니다. 이 기능은 기존 노드에는 영향을 미치지 않습니다.

프로세스

  1. 일부 또는 모든 머신 세트에 대한 부팅 이미지 관리 기능을 활성화하려면 cluster 라는 이름의 MachineConfiguration 객체를 편집합니다.

    $ oc edit MachineConfiguration cluster
    Copy to Clipboard Toggle word wrap
    • 선택 사항: 모든 머신 세트에 대해 부팅 이미지 관리 기능을 활성화합니다.

      apiVersion: operator.openshift.io/v1
      kind: MachineConfiguration
      metadata:
        name: cluster
        namespace: openshift-machine-config-operator
      spec:
      # ...
        managedBootImages: 
      1
      
          machineManagers:
          - apiGroup: machine.openshift.io 
      2
      
            resource: machinesets 
      3
      
            selection:
              mode: All 
      4
      Copy to Clipboard Toggle word wrap
      1
      부팅 이미지 관리 기능을 구성합니다.
      2
      API 그룹을 지정합니다. 이것은 machine.openshift.io 여야 합니다.
      3
      변경 사항을 적용할 지정된 API 그룹 내의 리소스를 지정합니다. 이는 machinesets 여야 합니다.
      4
      클러스터의 모든 머신 세트에 대해 해당 기능이 활성화되도록 지정합니다.
    • 선택 사항: 특정 머신 세트에 대한 부팅 이미지 관리 기능을 활성화합니다.

      apiVersion: operator.openshift.io/v1
      kind: MachineConfiguration
      metadata:
        name: cluster
        namespace: openshift-machine-config-operator
      spec:
      # ...
        managedBootImages: 
      1
      
          machineManagers:
          - apiGroup: machine.openshift.io 
      2
      
            resource: machinesets 
      3
      
            selection:
              mode: Partial 
      4
      
              partial:
                machineResourceSelector:
                  matchLabels:
                    region: "east"
      Copy to Clipboard Toggle word wrap
      1
      부트 이미지 업데이트 기능을 구성합니다.
      2
      API 그룹을 지정합니다. 이것은 machine.openshift.io 여야 합니다.
      3
      변경 사항을 적용할 지정된 API 그룹 내의 리소스를 지정합니다. 이는 machinesets 여야 합니다.
      4
      지정된 레이블이 있는 머신 세트에 대해 해당 기능이 활성화됨을 지정합니다.
      작은 정보

      머신 세트에 적절한 레이블이 없는 경우 다음과 유사한 명령을 실행하여 키-값 쌍을 추가합니다.

      $ oc label machineset.machine ci-ln-hmy310k-72292-5f87z-worker-a region="east" -n openshift-machine-api
      Copy to Clipboard Toggle word wrap

검증

  • 부팅 이미지 관리 기능의 현재 상태를 보려면 머신 구성 개체를 확인하세요.

    $ oc get machineconfiguration cluster -o yaml
    Copy to Clipboard Toggle word wrap

    부팅 이미지 참조가 있는 머신 세트 예

    kind: MachineConfiguration
    metadata:
      name: cluster
    # ...
    status:
      conditions:
      - lastTransitionTime: "2025-05-01T20:11:49Z"
        message: Reconciled 2 of 4 MAPI MachineSets | Reconciled 0 of 0 CAPI MachineSets
          | Reconciled 0 of 0 CAPI MachineDeployments
        reason: BootImageUpdateConfigurationUpdated
        status: "True"
        type: BootImageUpdateProgressing
      - lastTransitionTime: "2025-05-01T19:30:13Z"
        message: 0 Degraded MAPI MachineSets | 0 Degraded CAPI MachineSets | 0 CAPI MachineDeployments
        reason: BootImageUpdateConfigurationUpdated
        status: "False"
        type: BootImageUpdateDegraded
      managedBootImagesStatus:
        machineManagers:
        - apiGroup: machine.openshift.io
          resource: machinesets
          selection:
            mode: All
    Copy to Clipboard Toggle word wrap

  • 다음 명령을 실행하여 부트 이미지 버전을 가져옵니다. 부트 이미지의 위치와 형식은 플랫폼에 따라 머신 세트 내에서 다릅니다. 하지만 부트 이미지는 항상 spec.template.spec.providerSpec 매개변수에 나열됩니다.

    $ oc get machinesets <machineset_name> -n openshift-machine-api -o yaml
    Copy to Clipboard Toggle word wrap

    부팅 이미지 참조가 있는 머신 세트 예

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    metadata:
      labels:
        machine.openshift.io/cluster-api-cluster: ci-ln-77hmkpt-72292-d4pxp
        update-boot-image: "true"
      name: ci-ln-77hmkpt-72292-d4pxp-worker-a
      namespace: openshift-machine-api
    spec:
    # ...
      template:
    # ...
        spec:
    # ...
          providerSpec:
    # ...
            value:
              disks:
              - autoDelete: true
                boot: true
                image: projects/rhcos-cloud/global/images/<boot_image> 
    1
    
    # ...
    Copy to Clipboard Toggle word wrap

    1
    이 부트 이미지는 현재 OpenShift Container Platform 버전과 동일합니다.
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2025 Red Hat