REST Resource: projects.locations.awsClusters

リソース: AwsCluster

AWS で実行されている Anthos クラスタ。

JSON 表現
{
  "name": string,
  "description": string,
  "networking": {
    object (AwsClusterNetworking)
  },
  "awsRegion": string,
  "controlPlane": {
    object (AwsControlPlane)
  },
  "authorization": {
    object (AwsAuthorization)
  },
  "state": enum (State),
  "endpoint": string,
  "uid": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "workloadIdentityConfig": {
    object (WorkloadIdentityConfig)
  },
  "clusterCaCertificate": string,
  "fleet": {
    object (Fleet)
  },
  "loggingConfig": {
    object (LoggingConfig)
  },
  "errors": [
    {
      object (AwsClusterError)
    }
  ],
  "monitoringConfig": {
    object (MonitoringConfig)
  },
  "binaryAuthorization": {
    object (BinaryAuthorization)
  }
}
フィールド
name

string

このリソースの名前。

クラスタ名の形式は projects/<project-number>/locations/<region>/awsClusters/<cluster-id> です。

Google Cloud Platform リソース名について詳しくは、リソース名をご覧ください。

description

string

省略可。このクラスタの説明(人が読める形式)。255 UTF-8 エンコード バイト以下にする必要があります。

networking

object (AwsClusterNetworking)

必須。クラスタ全体のネットワーキング構成。

awsRegion

string

必須。クラスタが稼働している AWS リージョン。

Google Cloud の各リージョンは、付近の AWS リージョンのサブセットをサポートします。locations.getAwsServerConfig を呼び出すと、指定した Google Cloud リージョン内でサポートされているすべての AWS リージョンを一覧表示できます。

controlPlane

object (AwsControlPlane)

必須。クラスタ コントロール プレーンに関連する構成。

authorization

object (AwsAuthorization)

必須。クラスタの RBAC 設定に関連する構成。

state

enum (State)

出力専用。クラスタの現在の状態。

endpoint

string

出力専用。クラスタの API サーバーのエンドポイント。

uid

string

出力専用。クラスタのグローバルな固有識別子。

reconciling

boolean

出力専用。設定されている場合は、現在クラスタに対して処理中の変更があります。

createTime

string (Timestamp format)

出力専用。このクラスタが作成された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

出力専用。このクラスタが最後に更新された時刻。

RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

etag

string

クライアントがオプティミスティック同時実行制御で一貫した読み取り - 修正 - 書き込みを行えるようにします。

更新リクエストと削除リクエストで送信して、クライアントが最新の値を保持していることを続行する前に確認できます。

annotations

map (key: string, value: string)

省略可。クラスタのアノテーション。

このフィールドには、Kubernetes アノテーションと同じ制限があります。結合されたすべてのキーと値の合計サイズは 256k に制限されています。キーには、スラッシュ(/)で区切られる、接頭辞(省略可)と名前(必須)の 2 つのセグメントを含めることができます。接頭辞は DNS サブドメインにする必要があります。名前は 63 文字以下にしてください。先頭と末尾には英数字を使用し、先頭と末尾の間にはダッシュ(-)、アンダースコア(_)、ドット(.)、英数字を使用します。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

workloadIdentityConfig

object (WorkloadIdentityConfig)

出力専用。Workload Identity 設定。

clusterCaCertificate

string

出力専用。クラスタのルート オブ トラストの PEM でエンコードされた x509 証明書。

fleet

object (Fleet)

必須。フリート構成。

loggingConfig

object (LoggingConfig)

省略可。このクラスタのロギング構成。

errors[]

object (AwsClusterError)

出力専用。クラスタで検出された一連のエラー。

monitoringConfig

object (MonitoringConfig)

省略可。このクラスタのモニタリング構成。

binaryAuthorization

object (BinaryAuthorization)

省略可。このクラスタの Binary Authorization 構成。

AwsClusterNetworking

ClusterNetworking は、クラスタ全体のネットワーキング構成を定義します。

Anthos clusters on AWS は単一の VPC で実行されます。これには、コントロール プレーンのレプリカとノードプールのノードが含まれます。

JSON 表現
{
  "vpcId": string,
  "podAddressCidrBlocks": [
    string
  ],
  "serviceAddressCidrBlocks": [
    string
  ],
  "perNodePoolSgRulesDisabled": boolean
}
フィールド
vpcId

string

必須。クラスタに関連付けられた VPC。すべてのコンポーネント クラスタ(コントロール プレーンとノードプール)は、単一の VPC で実行されます。

作成後にこのフィールドを変更することはできません。

podAddressCidrBlocks[]

string

必須。クラスタ内のすべての Pod には、これらの範囲から IPv4 アドレスが割り当てられます。単一の範囲のみがサポートされます。作成後にこのフィールドを変更することはできません。

serviceAddressCidrBlocks[]

string

必須。クラスタ内のすべてのサービスには、これらの範囲から IPv4 アドレスが割り当てられます。単一の範囲のみがサポートされます。作成後にこのフィールドを変更することはできません。

perNodePoolSgRulesDisabled

boolean

省略可。コントロール プレーンのセキュリティ グループで、ノードプールごとのサブネット セキュリティ グループ ルールを無効にします。true に設定する場合は、ノードプールが TCP/443 と TCP/8132 でコントロール プレーンにリクエストを送信できるようにする 1 つ以上のセキュリティ グループも指定する必要があります。そうしないと、ノードプールが使用できなくなる可能性があります。

AwsControlPlane

ControlPlane は、コントロール プレーン ノード間の共通パラメータを定義します。

JSON 表現
{
  "version": string,
  "instanceType": string,
  "sshConfig": {
    object (AwsSshConfig)
  },
  "subnetIds": [
    string
  ],
  "securityGroupIds": [
    string
  ],
  "iamInstanceProfile": string,
  "rootVolume": {
    object (AwsVolumeTemplate)
  },
  "mainVolume": {
    object (AwsVolumeTemplate)
  },
  "databaseEncryption": {
    object (AwsDatabaseEncryption)
  },
  "tags": {
    string: string,
    ...
  },
  "awsServicesAuthentication": {
    object (AwsServicesAuthentication)
  },
  "proxyConfig": {
    object (AwsProxyConfig)
  },
  "configEncryption": {
    object (AwsConfigEncryption)
  },
  "instancePlacement": {
    object (AwsInstancePlacement)
  }
}
フィールド
version

string

必須。コントロール プレーン レプリカで実行する Kubernetes のバージョン(1.19.10-gke.1000 など)。

locations.getAwsServerConfig を呼び出すことで、特定の Google Cloud リージョンでサポートされているすべてのバージョンを一覧表示できます。

instanceType

string

省略可。AWS インスタンス タイプ。

指定しない場合、クラスタのバージョンに基づくデフォルトが使用されます。

sshConfig

object (AwsSshConfig)

省略可。基盤となるコントロール プレーンマシンにアクセスする方法に関する SSH の構成。

subnetIds[]

string

必須。コントロール プレーン レプリカが実行されるサブネットのリスト。レプリカは各サブネットにプロビジョニングされ、最大 3 つの値を指定できます。各サブネットは、異なる AWS アベイラビリティ ゾーン(AZ)に配置する必要があります。

securityGroupIds[]

string

省略可。コントロール プレーン レプリカに追加する、追加のセキュリティ グループの ID。Anthos Multi-Cloud API は、クラスタを機能させるために必要な最小限のルールを持つセキュリティ グループを自動的に作成して管理します。

iamInstanceProfile

string

必須。各コントロール プレーン レプリカに割り当てる AWS IAM インスタンス プロファイルの名前または ARN。

rootVolume

object (AwsVolumeTemplate)

省略可。各コントロール プレーン レプリカにプロビジョニングされたルート ボリュームに関連する構成。

ボリュームは、対応するサブネットに関連付けられたアベイラビリティ ゾーンでプロビジョニングされます。

指定しない場合、GP2 ボリューム タイプではデフォルトで 32 GiB になります。

mainVolume

object (AwsVolumeTemplate)

省略可。各コントロール プレーン レプリカにプロビジョニングされたメイン ボリュームに関連する構成。メイン ボリュームは、すべてのクラスタの etcd の状態の保存に関わっています。

ボリュームは、対応するサブネットに関連付けられたアベイラビリティ ゾーンでプロビジョニングされます。

指定しない場合、GP2 ボリューム タイプではデフォルトで 8 GiB になります。

databaseEncryption

object (AwsDatabaseEncryption)

必須。クラスタ シークレットの暗号化に使用される AWS KMS 鍵の ARN。

tags

map (key: string, value: string)

省略可。基盤となるすべてのマネージド AWS リソースに適用される AWS リソースタグのセット。

英数字、スペース、記号(.+-=_:@/)を含むペアを最大 50 個指定できます。鍵は 127 文字以下の Unicode 文字です。値には 255 文字までの Unicode 文字を使用できます。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

awsServicesAuthentication

object (AwsServicesAuthentication)

必須。AWS リソースの管理のための認証構成。

proxyConfig

object (AwsProxyConfig)

省略可。アウトバウンド HTTP(S) トラフィックのプロキシ構成。

configEncryption

object (AwsConfigEncryption)

必須。ユーザーデータの暗号化を設定します。

instancePlacement

object (AwsInstancePlacement)

省略可。コントロール プレーン インスタンスで使用する配置。指定しない場合、VPC のデフォルトのテナンシーが使用されます。

AwsDatabaseEncryption

アプリケーション レイヤでの Secret の暗号化に関連する構成。

JSON 表現
{
  "kmsKeyArn": string
}
フィールド
kmsKeyArn

string

必須。クラスタ シークレットの暗号化に使用される AWS KMS 鍵の ARN。

AwsServicesAuthentication

AWS リソースの管理のための認証構成。

JSON 表現
{
  "roleArn": string,
  "roleSessionName": string
}
フィールド
roleArn

string

必須。アカウントの AWS リソースを管理するときに Anthos Multi-Cloud API が想定するロールの Amazon リソース名(ARN)。

roleSessionName

string

省略可。想定されるロール セッションの ID。

指定しない場合、デフォルトで multicloud-service-agent になります。

AwsAuthorization

クラスタの RBAC 設定に関連する構成。

JSON 表現
{
  "adminUsers": [
    {
      object (AwsClusterUser)
    }
  ],
  "adminGroups": [
    {
      object (AwsClusterGroup)
    }
  ]
}
フィールド
adminUsers[]

object (AwsClusterUser)

省略可。クラスタ管理者としてオペレーションを実行できるユーザーユーザーに cluster-admin ClusterRole を付与するために、管理対象の ClusterRoleBinding が作成されます。最大 10 人の管理者ユーザーを指定できます。

RBAC の詳細については、https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles をご覧ください。

adminGroups[]

object (AwsClusterGroup)

省略可。クラスタ管理者としてオペレーションを実行できるユーザーのグループ。グループに cluster-admin ClusterRole を付与するために、管理対象の ClusterRoleBinding が作成されます。最大 10 個の管理者グループを指定できます。

RBAC の詳細については、https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles をご覧ください。

AwsClusterUser

AWS クラスタのユーザータイプのサブジェクトの ID。

JSON 表現
{
  "username": string
}
フィールド
username

string

必須。ユーザーの名前(例: my-gcp-id@gmail.com)。

AwsClusterGroup

AWS クラスタのグループタイプのサブジェクトの ID。

JSON 表現
{
  "group": string
}
フィールド
group

string

必須。グループの名前(例: my-group@domain.com)。

状態

クラスタのライフサイクル ステータス。

列挙型
STATE_UNSPECIFIED 未設定。
PROVISIONING PROVISIONING 状態は、クラスタが作成中であることを示します。
RUNNING RUNNING 状態は、クラスタが作成済みで、完全に使用可能であることを示します。
RECONCILING RECONCILING 状態は、コントロール プレーン レプリカのアップグレードなど、クラスタで何らかの作業がアクティブに実行されていることを示します。
STOPPING STOPPING 状態は、クラスタの削除中であることを示します。
ERROR ERROR 状態は、クラスタが破損して復元できない状態であることを示します。
DEGRADED DEGRADED 状態は、クラスタで完全な機能を復元するためにユーザーの操作が必要であることを示します。

AwsClusterError

AwsClusterError は、AWS クラスタで検出されたエラーを記述します。

JSON 表現
{
  "message": string
}
フィールド
message

string

エラーに関するわかりやすい説明。

メソッド

create
(deprecated)

指定された Google Cloud Platform プロジェクトとリージョンに新しい AwsCluster リソースを作成します。

delete
(deprecated)

特定の AwsCluster リソースを削除します。

generateAwsAccessToken
(deprecated)

指定された AwsCluster リソースに対する認証を行うための有効期間の短いアクセス トークンを生成します。

generateAwsClusterAgentToken
(deprecated)

クラスタ エージェントのアクセス トークンを生成します。

get
(deprecated)

特定の AwsCluster リソースについて説明します。

getJwks
(deprecated)

クラスタ署名鍵の公開コンポーネントを JSON Web Key 形式で取得します。

list
(deprecated)

指定された Google Cloud プロジェクトとリージョンのすべての AwsCluster リソースを一覧表示します。

patch
(deprecated)

AwsCluster を更新します。