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


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

重要

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

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

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

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: AWSCluster 1
metadata:
  name: <cluster_name> 2
  namespace: openshift-cluster-api
spec:
  controlPlaneEndpoint: 3
    host: <control_plane_endpoint_address>
    port: 6443
  region: <region> 4
1
クラスターのインフラストラクチャーの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
クラスターの名前としてクラスター ID を指定します。
3
コントロールプレーンエンドポイントのアドレスと、それにアクセスするために使用するポートを指定します。
4
AWS リージョンを指定します。
13.5.1.1.2. 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:
          - # ...
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。
13.5.1.1.3. Amazon Web Services の 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
  template:
    metadata:
      labels:
        test: example
    spec:
      bootstrap:
         dataSecretName: worker-user-data 3
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: AWSMachineTemplate 4
        name: <template_name> 5
1
コンピュートマシンセットの名前を指定します。
2
クラスターの名前としてクラスター ID を指定します。
3
テクノロジープレビューの Cluster API では、Operator は openshift-machine-api namespace のワーカーユーザーデータシークレットを使用できます。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。

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

重要

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

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

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

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: GCPCluster 1
metadata:
  name: <cluster_name> 2
spec:
  controlPlaneEndpoint: 3
    host: <control_plane_endpoint_address>
    port: 6443
  network:
    name: <cluster_name>-network
  project: <project> 4
  region: <region> 5
1
クラスターのインフラストラクチャーの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
クラスターの名前としてクラスター ID を指定します。
3
コントロールプレーンエンドポイントの IP アドレスと、それにアクセスするために使用するポートを指定します。
4
GCP プロジェクト名を指定します。
5
GCP リージョンを指定します。
13.5.2.1.2. 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
1
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
マシンテンプレートの名前を指定します。
3
環境の詳細を指定します。ここに示す値はサンプルです。
13.5.2.1.3. Google Cloud Platform 上の 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
  template:
    metadata:
      labels:
        test: example
    spec:
      bootstrap:
         dataSecretName: worker-user-data 3
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: GCPMachineTemplate 4
        name: <template_name> 5
      failureDomain: <failure_domain> 6
1
コンピュートマシンセットの名前を指定します。
2
クラスターの名前としてクラスター ID を指定します。
3
テクノロジープレビューの Cluster API では、Operator は openshift-machine-api namespace のワーカーユーザーデータシークレットを使用できます。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。
6
GCP リージョン内の障害ドメインを指定します。

13.5.3. VMware vSphere のクラスター API 設定オプション

重要

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

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

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

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

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

13.5.3.1.1. VMware vSphere 上の Cluster API インフラストラクチャーリソースのサンプル YAML

インフラストラクチャーリソースはプロバイダー固有であり、リージョンやサブネットなど、クラスター内のすべてのコンピュートマシンセットで共有されるプロパティーを定義します。コンピュートマシンセットは、マシン作成時にこのリソースを参照します。

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: VSphereCluster 1
metadata:
  name: <cluster_name> 2
spec:
  controlPlaneEndpoint: 3
    host: <control_plane_endpoint_address>
    port: 6443
  identityRef:
    kind: Secret
    name: <cluster_name>
  server: <vsphere_server> 4
1
クラスターのインフラストラクチャーの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
2
クラスターの名前としてクラスター ID を指定します。
3
コントロールプレーンエンドポイントの IP アドレスと、それにアクセスするために使用するポートを指定します。
4
クラスターの vSphere サーバーを指定します。次のコマンドを実行すると、既存の vSphere クラスターでこの値を見つけることができます。
$ oc get infrastructure cluster \
  -o jsonpath="{.spec.platformSpec.vsphere.vcenters[0].server}"
13.5.3.1.2. 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
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.3.1.3. VMware vSphere 上の 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
  template:
    metadata:
      labels:
        test: example
    spec:
      bootstrap:
         dataSecretName: worker-user-data 3
      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
1
コンピュートマシンセットの名前を指定します。
2
クラスターの名前としてクラスター ID を指定します。
3
テクノロジープレビューの Cluster API では、Operator は openshift-machine-api namespace のワーカーユーザーデータシークレットを使用できます。
4
マシンテンプレートの種類を指定します。この値は、プラットフォームの値と一致する必要があります。
5
マシンテンプレート名を指定します。
6
障害ドメイン設定の詳細を指定します。
注記

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

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.