13.5. Cluster API マシンの設定オプション


13.5.1. Amazon Web Services の Cluster API 設定オプション

Cluster API カスタムリソースマニフェストの値を更新することで、Amazon Web Services (AWS) Cluster API マシンの設定を変更できます。

重要

Cluster API を使用したマシン管理は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

13.5.1.1. Amazon Web Services クラスターを設定するサンプル YAML

次の YAML ファイルの例は、Amazon Web Services クラスターの設定を示しています。

13.5.1.1.1. Amazon Web Services 上の Cluster API マシンテンプレートリソースのサンプル YAML

マシンテンプレートリソースはプロバイダー固有であり、コンピュートマシンセットが作成するマシンの基本的なプロパティーを定義します。コンピュートマシンセットは、マシン作成時にこのテンプレートを参照します。

apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
kind: AWSMachineTemplate 
1

metadata:
  name: <template_name> 
2

  namespace: openshift-cluster-api
spec:
  template:
    spec: 
3

      uncompressedUserData: true
      iamInstanceProfile: # ...
      instanceType: m5.large
      ignition:
        storageType: UnencryptedUserData
        version: "3.2"
      ami:
        id: # ...
      subnet:
        filters:
        - name: tag:Name
          values:
          - # ...
      additionalSecurityGroups:
      - filters:
        - name: tag:Name
          values:
          - # ...
Copy to Clipboard Toggle word wrap
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。

コンピュートマシンセットリソースは、作成するマシンの追加プロパティーを定義します。また、コンピュートマシンセットは、マシンを作成するときにクラスターリソースとマシンテンプレートを参照します。

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 
1

  namespace: openshift-cluster-api
  labels:
    cluster.x-k8s.io/cluster-name: <cluster_name> 
2

spec:
  clusterName: <cluster_name> 
3

  replicas: 1
  selector:
    matchLabels:
      test: example
      cluster.x-k8s.io/cluster-name: <cluster_name>
      cluster.x-k8s.io/set-name: <machine_set_name>
  template:
    metadata:
      labels:
        test: example
        cluster.x-k8s.io/cluster-name: <cluster_name>
        cluster.x-k8s.io/set-name: <machine_set_name>
        node-role.kubernetes.io/<role>: ""
    spec:
      bootstrap:
         dataSecretName: worker-user-data
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: AWSMachineTemplate 
4

        name: <template_name> 
5
Copy to Clipboard Toggle word wrap
1
コンピュートマシンセットの名前を指定します。通常、この値のパターンは、クラスター ID、マシンのロール、およびリージョンにより、<cluster_name>-<role>-<region> という形で構成されます。
2 3
クラスターの名前としてクラスター ID を指定します。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。

13.5.2. Google Cloud Platform の Cluster API 設定オプション

Cluster API カスタムリソースマニフェストの値を更新することで、Google Cloud Platform (GCP) Cluster API マシンの設定を変更できます。

重要

Cluster API を使用したマシン管理は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

13.5.2.1. Google Cloud Platform クラスターを設定するためのサンプル YAML

次の YAML ファイルの例は、Google Cloud Platform クラスターの設定を示しています。

13.5.2.1.1. Google Cloud Platform 上の Cluster API マシンテンプレートリソースのサンプル YAML

マシンテンプレートリソースはプロバイダー固有であり、コンピュートマシンセットが作成するマシンの基本的なプロパティーを定義します。コンピュートマシンセットは、マシン作成時にこのテンプレートを参照します。

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: GCPMachineTemplate 
1

metadata:
  name: <template_name> 
2

  namespace: openshift-cluster-api
spec:
  template:
    spec: 
3

      rootDeviceType: pd-ssd
      rootDeviceSize: 128
      instanceType: n1-standard-4
      image: projects/rhcos-cloud/global/images/rhcos-411-85-202203181601-0-gcp-x86-64
      subnet: <cluster_name>-worker-subnet
      serviceAccounts:
        email: <service_account_email_address>
        scopes:
          - https://www.googleapis.com/auth/cloud-platform
      additionalLabels:
        kubernetes-io-cluster-<cluster_name>: owned
      additionalNetworkTags:
        - <cluster_name>-worker
      ipForwarding: Disabled
Copy to Clipboard Toggle word wrap
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。
13.5.2.1.2. Google Cloud Platform 上の Cluster API コンピュートマシンセットリソースのサンプル YAML

コンピュートマシンセットリソースは、作成するマシンの追加プロパティーを定義します。また、コンピュートマシンセットは、マシンを作成するときにクラスターリソースとマシンテンプレートを参照します。

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 
1

  namespace: openshift-cluster-api
  labels:
    cluster.x-k8s.io/cluster-name: <cluster_name> 
2

spec:
  clusterName: <cluster_name> 
3

  replicas: 1
  selector:
    matchLabels:
      test: example
      cluster.x-k8s.io/cluster-name: <cluster_name>
      cluster.x-k8s.io/set-name: <machine_set_name>
  template:
    metadata:
      labels:
        test: example
        cluster.x-k8s.io/cluster-name: <cluster_name>
        cluster.x-k8s.io/set-name: <machine_set_name>
        node-role.kubernetes.io/<role>: ""
    spec:
      bootstrap:
         dataSecretName: worker-user-data
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: GCPMachineTemplate 
4

        name: <template_name> 
5

      failureDomain: <failure_domain> 
6
Copy to Clipboard Toggle word wrap
1
コンピュートマシンセットの名前を指定します。通常、この値のパターンは、クラスター ID、マシンのロール、およびリージョンにより、<cluster_name>-<role>-<region> という形で構成されます。
2 3
クラスターの名前としてクラスター ID を指定します。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。
6
GCP リージョン内の障害ドメインを指定します。

13.5.3. Microsoft Azure の Cluster API 設定オプション

Cluster API カスタムリソースマニフェストの値を更新することで、Microsoft Azure Cluster API マシンの設定を変更できます。

重要

Cluster API を使用したマシン管理は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

13.5.3.1. Microsoft Azure クラスターを設定するためのサンプル YAML

次の YAML ファイルの例は、Azure クラスターの設定を示しています。

13.5.3.1.1. Microsoft Azure 上の Cluster API マシンテンプレートリソースのサンプル YAML

マシンテンプレートリソースはプロバイダー固有であり、コンピュートマシンセットが作成するマシンの基本的なプロパティーを定義します。コンピュートマシンセットは、マシン作成時にこのテンプレートを参照します。

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: AzureMachineTemplate 
1

metadata:
  name: <template_name> 
2

  namespace: openshift-cluster-api
spec:
  template:
    spec: 
3

      disableExtensionOperations: true
      identity: UserAssigned
      image:
        id: /subscriptions/<subscription_id>/resourceGroups/<cluster_name>-rg/providers/Microsoft.Compute/galleries/gallery_<compliant_cluster_name>/images/<cluster_name>-gen2/versions/latest 
4

      networkInterfaces:
        - acceleratedNetworking: true
          privateIPConfigs: 1
          subnetName: <cluster_name>-worker-subnet
      osDisk:
        diskSizeGB: 128
        managedDisk:
          storageAccountType: Premium_LRS
        osType: Linux
      sshPublicKey: <ssh_key_value>
      userAssignedIdentities:
        - providerID: 'azure:///subscriptions/<subscription_id>/resourcegroups/<cluster_name>-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<cluster_name>-identity'
      vmSize: Standard_D4s_v3
Copy to Clipboard Toggle word wrap
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。
4
インスタンスタイプと互換性のあるイメージを指定します。インストールプログラムによって作成された Hyper-V 世代の V2 イメージには接尾辞 -gen2 が付いていますが、V1 イメージには接尾辞のない同じ名前が付いています。
注記

デフォルトの OpenShift Container Platform クラスター名にはハイフン (-) が含まれています。これは Azure ギャラリー名の要件に準拠していません。この要件に準拠するには、この設定の <compliant_cluster_name> の値にハイフンではなくアンダースコア (_) を使用する必要があります。他の <cluster_name> は変更しません。

たとえば、クラスター名 jdoe-test-2m2npjdoe_test_2m2np に変換します。この例の gallery_<compliant_cluster_name> の完全な文字列は、gallery_jdoe-test-2m2np ではなく gallery_jdoe_test_2m2np です。この例の値を使用した spec.template.spec.image.id の完全な値は、/subscriptions/<subscription_id>/resourceGroups/jdoe-test-2m2np-rg/providers/Microsoft.Compute/galleries/gallery_jdoe_test_2m2np/images/jdoe-test-2m2np-gen2/versions/latest です。

13.5.3.1.2. Microsoft Azure 上の Cluster API コンピュートマシンセットリソースのサンプル YAML

コンピュートマシンセットリソースは、作成するマシンの追加プロパティーを定義します。また、コンピュートマシンセットは、マシンを作成するときにクラスターリソースとマシンテンプレートを参照します。

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 
1

  namespace: openshift-cluster-api
  labels:
    cluster.x-k8s.io/cluster-name: <cluster_name> 
2

spec:
  clusterName: <cluster_name>
  replicas: 1
  selector:
    matchLabels:
      test: example
      cluster.x-k8s.io/cluster-name: <cluster_name>
      cluster.x-k8s.io/set-name: <machine_set_name>
  template:
    metadata:
      labels:
        test: example
        cluster.x-k8s.io/cluster-name: <cluster_name>
        cluster.x-k8s.io/set-name: <machine_set_name>
        node-role.kubernetes.io/<role>: ""
    spec:
      bootstrap:
         dataSecretName: worker-user-data
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: AzureMachineTemplate 
3

        name: <template_name> 
4
Copy to Clipboard Toggle word wrap
1
コンピュートマシンセットの名前を指定します。通常、この値のパターンは、クラスター ID、マシンのロール、およびリージョンにより、<cluster_name>-<role>-<region> という形で構成されます。
2
クラスターの名前としてクラスター ID を指定します。
3
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
4
マシンテンプレート名を指定します。

13.5.4. Red Hat OpenStack Platform の Cluster API 設定オプション

Cluster API カスタムリソースマニフェストの値を更新することで、Red Hat OpenStack Platform (RHOSP) Cluster API マシンの設定を変更できます。

重要

Cluster API を使用したマシン管理は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

13.5.4.1. RHOSP クラスターを設定するためのサンプル YAML

次の YAML ファイルの例は、RHOSP クラスターの設定を示しています。

13.5.4.1.1. RHOSP 上の Cluster API マシンテンプレートリソースのサンプル YAML

マシンテンプレートリソースはプロバイダー固有であり、コンピュートマシンセットが作成するマシンの基本的なプロパティーを定義します。コンピュートマシンセットは、マシン作成時にこのテンプレートを参照します。

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: OpenStackMachineTemplate 
1

metadata:
  name: <template_name> 
2

  namespace: openshift-cluster-api
spec:
  template:
    spec: 
3

      flavor: <openstack_node_machine_flavor> 
4

      image:
        filter:
          name: <openstack_image> 
5
Copy to Clipboard Toggle word wrap
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。
4
使用する RHOSP フレーバーを指定します。詳細は、インスタンス起動用のフレーバーの作成 を参照してください。
5
使用するイメージを指定します。
13.5.4.1.2. RHOSP 上の Cluster API コンピュートマシンセットリソースのサンプル YAML

コンピュートマシンセットリソースは、作成するマシンの追加プロパティーを定義します。コンピュートマシンセットは、マシン作成時にインフラストラクチャーリソースとマシンテンプレートも参照します。

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 
1

  namespace: openshift-cluster-api
spec:
  clusterName: <cluster_name> 
2

  replicas: 1
  selector:
    matchLabels:
      test: example
      cluster.x-k8s.io/cluster-name: <cluster_name>
      cluster.x-k8s.io/set-name: <machine_set_name>
  template:
    metadata:
      labels:
        test: example
        cluster.x-k8s.io/cluster-name: <cluster_name>
        cluster.x-k8s.io/set-name: <machine_set_name>
        node-role.kubernetes.io/<role>: ""
    spec:
      bootstrap:
         dataSecretName: worker-user-data 
3

      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: OpenStackMachineTemplate 
4

        name: <template_name> 
5

      failureDomain: <nova_availability_zone> 
6
Copy to Clipboard Toggle word wrap
1
コンピュートマシンセットの名前を指定します。
2
クラスターの名前としてクラスター ID を指定します。
3
テクノロジープレビューの Cluster API では、Operator は openshift-machine-api namespace のワーカーユーザーデータシークレットを使用できます。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。
6
オプション: マシンを作成するマシンセットの Nova アベイラビリティーゾーンの名前を指定します。値を指定しない場合、マシンは特定のアベイラビリティーゾーンに制限されません。

13.5.5. VMware vSphere の Cluster API 設定オプション

Cluster API カスタムリソースマニフェストの値を更新することで、VMware vSphere Cluster API マシンの設定を変更できます。

重要

Cluster API を使用したマシン管理は、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。

Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。

13.5.5.1. VMware vSphere クラスターを設定するためのサンプル YAML

次の YAML ファイルの例は、VMware vSphere クラスターの設定を示しています。

13.5.5.1.1. VMware vSphere 上の Cluster API マシンテンプレートリソースのサンプル YAML

マシンテンプレートリソースはプロバイダー固有であり、コンピュートマシンセットが作成するマシンの基本的なプロパティーを定義します。コンピュートマシンセットは、マシン作成時にこのテンプレートを参照します。

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: VSphereMachineTemplate 
1

metadata:
  name: <template_name> 
2

  namespace: openshift-cluster-api
spec:
  template:
    spec: 
3

      template: <vm_template_name> 
4

      server: <vcenter_server_ip> 
5

      diskGiB: 128
      cloneMode: linkedClone 
6

      datacenter: <vcenter_data_center_name> 
7

      datastore: <vcenter_datastore_name> 
8

      folder: <vcenter_vm_folder_path> 
9

      resourcePool: <vsphere_resource_pool> 
10

      numCPUs: 4
      memoryMiB: 16384
      network:
        devices:
        - dhcp4: true
          networkName: "<vm_network_name>" 
11
Copy to Clipboard Toggle word wrap
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。
4
user-5ddjd-rhcos などの使用する vSphere 仮想マシンテンプレートを指定します。
5
vCenter サーバーの IP または完全修飾ドメイン名を指定します。
6
使用する仮想マシンクローンのタイプを指定します。次の値が有効です。
  • fullClone
  • linkedClone

linkedClone タイプを使用する場合、ディスクサイズは diskGiB 値を使用するのではなく、クローンソースと同じになります。詳細は、仮想マシンのクローンタイプに関する vSphere のドキュメントを参照してください。

7
コンピュートマシンセットをデプロイする vCenter データセンターを指定します。
8
コンピュートマシンセットをデプロイする vCenter データストアを指定します。
9
/dc1/vm/user-inst-5ddjd などの vCenter の vSphere 仮想マシンフォルダーへのパスを指定します。
10
仮想マシンの vSphere リソースプールを指定します。
11
コンピュートマシンセットをデプロイする vSphere 仮想マシンネットワークを指定します。この仮想マシンネットワークは、他のコンピューティングマシンがクラスター内に存在する場所である必要があります。
13.5.5.1.2. VMware vSphere 上の Cluster API コンピュートマシンセットリソースのサンプル YAML

コンピュートマシンセットリソースは、作成するマシンの追加プロパティーを定義します。また、コンピュートマシンセットは、マシンを作成するときにクラスターリソースとマシンテンプレートを参照します。

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 
1

  namespace: openshift-cluster-api
  labels:
    cluster.x-k8s.io/cluster-name: <cluster_name> 
2

spec:
  clusterName: <cluster_name> 
3

  replicas: 1
  selector:
    matchLabels:
      test: example
      cluster.x-k8s.io/cluster-name: <cluster_name>
      cluster.x-k8s.io/set-name: <machine_set_name>
  template:
    metadata:
      labels:
        test: example
        cluster.x-k8s.io/cluster-name: <cluster_name>
        cluster.x-k8s.io/set-name: <machine_set_name>
        node-role.kubernetes.io/<role>: ""
    spec:
      bootstrap:
         dataSecretName: worker-user-data
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: VSphereMachineTemplate 
4

        name: <template_name> 
5

      failureDomain: 
6

        - name: <failure_domain_name>
          region: <region_a>
          zone: <zone_a>
          server: <vcenter_server_name>
          topology:
            datacenter: <region_a_data_center>
            computeCluster: "</region_a_data_center/host/zone_a_cluster>"
            resourcePool: "</region_a_data_center/host/zone_a_cluster/Resources/resource_pool>"
            datastore: "</region_a_data_center/datastore/datastore_a>"
            networks:
            - port-group
Copy to Clipboard Toggle word wrap
1
コンピュートマシンセットの名前を指定します。通常、この値のパターンは、クラスター ID、マシンのロール、およびリージョンにより、<cluster_name>-<role>-<region> という形で構成されます。
2 3
クラスターの名前としてクラスター ID を指定します。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。
6
障害ドメイン設定の詳細を指定します。
注記

Cluster API を使用する vSphere クラスターで複数のリージョンとゾーンを使用することは、検証済みの設定ではありません。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat