2.5.2. RHV에서 머신 세트 사용자 정의 리소스의 샘플 YAML

이 샘플 YAML은 RHV에서 실행되는 머신 세트를 정의하고 node-role.kubernetes.io/<role>: ""로 레이블이 지정된 노드를 만듭니다.

이 샘플에서 <infrastructure_id>는 클러스터를 프로비저닝할 때 설정한 클러스터 ID를 기반으로 하는 인프라 ID 레이블이며 <role>은 추가할 노드 레이블입니다.

apiVersion: machine.openshift.io/v1beta1
kind: MachineSet
metadata:
  labels:
    machine.openshift.io/cluster-api-cluster: <infrastructure_id> 1
    machine.openshift.io/cluster-api-machine-role: <role> 2
    machine.openshift.io/cluster-api-machine-type: <role> 3
  name: <infrastructure_id>-<role> 4
  namespace: openshift-machine-api
spec:
  replicas: <number_of_replicas> 5
  selector: 6
    matchLabels:
      machine.openshift.io/cluster-api-cluster: <infrastructure_id> 7
      machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role> 8
  template:
    metadata:
      labels:
        machine.openshift.io/cluster-api-cluster: <infrastructure_id> 9
        machine.openshift.io/cluster-api-machine-role: <role> 10
        machine.openshift.io/cluster-api-machine-type: <role> 11
        machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role> 12
    spec:
      metadata:
        labels:
          node-role.kubernetes.io/<role>: "" 13
      providerSpec:
        value:
          apiVersion: ovirtproviderconfig.machine.openshift.io/v1beta1
          cluster_id: <ovirt_cluster_id> 14
          template_name: <ovirt_template_name> 15
          instance_type_id: <instance_type_id> 16
          cpu: 17
            sockets: <number_of_sockets> 18
            cores: <number_of_cores> 19
            threads: <number_of_threads> 20
          memory_mb: <memory_size> 21
          os_disk: 22
            size_gb: <disk_size> 23
          network_interfaces: 24
            vnic_profile_id:  <vnic_profile_id> 25
          credentialsSecret:
            name: ovirt-credentials 26
          kind: OvirtMachineProviderSpec
          type: <workload_type> 27
          userDataSecret:
            name: worker-user-data
1 7 9
클러스터를 프로비저닝할 때 설정한 클러스터 ID를 기반으로하는 인프라 ID를 지정합니다. OpenShift CLI (oc) 패키지가 설치되어 있으면 다음 명령을 실행하여 인프라 ID를 얻을 수 있습니다.
$ oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
2 3 10 11 13
추가할 노드 레이블을 지정합니다.
4 8 12
인프라 ID 및 노드 레이블을 지정합니다. 이 두 문자열은 35자를 초과할 수 없습니다.
5
생성할 머신 수를 지정합니다.
6
머신의 선택기입니다.
14
이 VM 인스턴스가 속하는 RHV 클러스터의 UUID를 지정합니다.
15
머신을 생성하는 데 사용할 RHV VM 템플릿을 지정합니다.
16
선택 사항: VM 인스턴스 유형을 지정합니다. 이 매개변수를 포함하는 경우 이 매개변수는 모든 하드웨어 매개변수를 재정의하므로 CPU 및 메모리를 포함한 VM의 하드웨어 매개변수를 지정할 필요가 없습니다.
17
선택 사항: CPU 필드에는 소켓, 코어, 스레드를 포함한 CPU 구성이 포함됩니다.
18
선택 사항: VM의 소켓 수를 지정합니다.
19
선택 사항: 소켓당 코어 수를 지정합니다.
20
선택 사항: 코어당 스레드 수를 지정합니다.
21
선택 사항: VM의 메모리 크기를 MiB 단위로 지정합니다.
22
선택 사항: 노드의 루트 디스크.
23
선택 사항: 부팅 가능한 디스크의 크기를 GiB로 지정합니다.
24
선택 사항: VM의 네트워크 인터페이스 목록입니다. 이 매개변수를 포함하는 경우 OpenShift Container Platform은 템플릿에서 모든 네트워크 인터페이스를 삭제하고 새 네트워크 인터페이스를 생성합니다.
25
선택 사항: vNIC 프로필 ID를 지정합니다.
26
RHV 인증 정보를 보유한 시크릿 이름을 지정합니다.
27
선택 사항: 인스턴스가 최적화된 워크로드 유형을 지정합니다. 이 값은 RHV VM 매개변수에 영향을 미칩니다. 지원되는 값은 desktop, server, high_performance입니다.
참고

RHV는 VM을 생성할 때 템플릿을 사용하므로 선택적 매개변수에 대한 값을 지정하지 않으면 RHV는 템플릿에 지정된 해당 매개변수의 값을 사용합니다.