REST Resource: projects.locations.awsClusters

Ressource : AwsCluster

Cluster Anthos s'exécutant sur AWS.

Représentation 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)
  }
}
Champs
name

string

Nom de cette ressource.

Les noms de cluster sont au format projects/<project-number>/locations/<region>/awsClusters/<cluster-id>.

Pour en savoir plus sur les noms de ressources Google Cloud Platform, consultez Noms de ressources.

description

string

Facultatif. Description lisible de ce cluster. Ne doit pas comporter plus de 255 octets encodés au format UTF-8.

networking

object (AwsClusterNetworking)

Obligatoire. Configuration réseau à l'échelle du cluster.

awsRegion

string

Obligatoire. Région AWS dans laquelle le cluster est exécuté.

Chaque région Google Cloud accepte un sous-ensemble de régions AWS à proximité. Vous pouvez appeler locations.getAwsServerConfig pour lister toutes les régions AWS prises en charge dans une région Google Cloud donnée.

controlPlane

object (AwsControlPlane)

Obligatoire. Configuration liée au plan de contrôle du cluster.

authorization

object (AwsAuthorization)

Obligatoire. Configuration liée aux paramètres RBAC du cluster.

state

enum (State)

Uniquement en sortie. État actuel du cluster.

endpoint

string

Uniquement en sortie. Point de terminaison du serveur d'API du cluster.

uid

string

Uniquement en sortie. Identifiant global unique du cluster.

reconciling

boolean

Uniquement en sortie. Si cette option est définie, des modifications sont en cours de diffusion dans le cluster.

createTime

string (Timestamp format)

Uniquement en sortie. Date et heure auxquelles ce cluster a été créé.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Uniquement en sortie. Date et heure de la dernière mise à jour de ce cluster.

Utilise la norme RFC 3339, où le résultat généré est toujours normalisé avec le suffixe Z et utilise 0, 3, 6 ou 9 chiffres décimaux. Les décalages autres que "Z" sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

etag

string

Permet aux clients d'effectuer des opérations de lecture-modification-écriture cohérentes via un contrôle de simultanéité optimiste.

Peut être envoyé lors des requêtes de mise à jour et de suppression pour s'assurer que le client dispose d'une valeur à jour avant de continuer.

annotations

map (key: string, value: string)

Facultatif. Annotations sur le cluster.

Ce champ est soumis aux mêmes restrictions que les annotations Kubernetes. La taille totale de toutes les clés et valeurs combinées est limitée à 256 000. La clé peut comporter deux segments : un préfixe (facultatif) et un nom (obligatoire), séparés par une barre oblique (/). Le préfixe doit être un sous-domaine DNS. Le nom ne doit pas dépasser 63 caractères. Il doit commencer et se terminer par un caractère alphanumérique, et contenir des tirets (-), des traits de soulignement (_) et des points (.), avec des caractères alphanumériques entre chaque symbole.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

workloadIdentityConfig

object (WorkloadIdentityConfig)

Uniquement en sortie. Paramètres Workload Identity

clusterCaCertificate

string

Uniquement en sortie. Certificat x509 encodé au format PEM de la racine de confiance du cluster.

fleet

object (Fleet)

Obligatoire. Configuration du parc.

loggingConfig

object (LoggingConfig)

Facultatif. Configuration de la journalisation pour ce cluster.

errors[]

object (AwsClusterError)

Uniquement en sortie. Ensemble d'erreurs détectées dans le cluster.

monitoringConfig

object (MonitoringConfig)

Facultatif. Configuration de la surveillance pour ce cluster.

binaryAuthorization

object (BinaryAuthorization)

Facultatif. Configuration de l'autorisation binaire pour ce cluster.

AwsClusterNetworking

ClusterNetworking définit la configuration de mise en réseau à l'échelle du cluster.

Les clusters Anthos sur AWS s'exécutent sur un seul VPC. Cela inclut les instances répliquées du plan de contrôle et les nœuds du pool de nœuds.

Représentation JSON
{
  "vpcId": string,
  "podAddressCidrBlocks": [
    string
  ],
  "serviceAddressCidrBlocks": [
    string
  ],
  "perNodePoolSgRulesDisabled": boolean
}
Champs
vpcId

string

Obligatoire. VPC associé au cluster. Tous les clusters de composants (c'est-à-dire le plan de contrôle et les pools de nœuds) s'exécutent sur un seul VPC.

Une fois le compte créé, ce champ ne peut plus être modifié.

podAddressCidrBlocks[]

string

Obligatoire. Une adresse IPv4 de ces plages est attribuée à chaque pod du cluster. Une seule plage est acceptée. Une fois le compte créé, ce champ ne peut plus être modifié.

serviceAddressCidrBlocks[]

string

Obligatoire. Une adresse IPv4 de ces plages est attribuée à chaque service du cluster. Une seule plage est acceptée. Une fois le compte créé, ce champ ne peut plus être modifié.

perNodePoolSgRulesDisabled

boolean

Facultatif. Désactivez les règles de groupe de sécurité de sous-réseau par pool de nœuds sur le groupe de sécurité du plan de contrôle. Si la valeur est définie sur "true", vous devez également fournir un ou plusieurs groupes de sécurité qui garantissent que les pools de nœuds peuvent envoyer des requêtes au plan de contrôle sur TCP/443 et TCP/8132. Si vous ne le faites pas, vos pools de nœuds risquent de devenir indisponibles.

AwsControlPlane

ControlPlane définit les paramètres communs entre les nœuds du plan de contrôle.

Représentation 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)
  }
}
Champs
version

string

Obligatoire. Version de Kubernetes à exécuter sur les répliques du plan de contrôle (par exemple, 1.19.10-gke.1000).

Vous pouvez lister toutes les versions prises en charge dans une région Google Cloud donnée en appelant locations.getAwsServerConfig.

instanceType

string

Facultatif. Type d'instance AWS.

Si aucune valeur n'est spécifiée, une valeur par défaut est utilisée en fonction de la version du cluster.

sshConfig

object (AwsSshConfig)

Facultatif. Configuration SSH pour l'accès aux machines du plan de contrôle sous-jacentes.

subnetIds[]

string

Obligatoire. Liste des sous-réseaux dans lesquels les instances dupliquées du plan de contrôle s'exécuteront. Une réplique sera provisionnée sur chaque sous-réseau. Vous pouvez fournir jusqu'à trois valeurs. Chaque sous-réseau doit se trouver dans une zone de disponibilité AWS différente.

securityGroupIds[]

string

Facultatif. ID des groupes de sécurité supplémentaires à ajouter aux instances dupliquées du plan de contrôle. L'API Anthos Multi-Cloud crée et gère automatiquement des groupes de sécurité avec les règles minimales requises pour un cluster opérationnel.

iamInstanceProfile

string

Obligatoire. Nom ou ARN du profil d'instance AWS IAM à attribuer à chaque instance dupliquée du plan de contrôle.

rootVolume

object (AwsVolumeTemplate)

Facultatif. Configuration liée au volume racine provisionné pour chaque réplica du plan de contrôle.

Les volumes seront provisionnés dans la zone de disponibilité associée au sous-réseau correspondant.

Si aucune valeur n'est spécifiée, la valeur par défaut est de 32 Gio avec le type de volume GP2.

mainVolume

object (AwsVolumeTemplate)

Facultatif. Configuration liée au volume principal provisionné pour chaque instance dupliquée du plan de contrôle. Le volume principal est chargé de stocker l'état etcd du cluster.

Les volumes seront provisionnés dans la zone de disponibilité associée au sous-réseau correspondant.

Si aucune valeur n'est spécifiée, la valeur par défaut est de 8 Gio avec le type de volume GP2.

databaseEncryption

object (AwsDatabaseEncryption)

Obligatoire. ARN de la clé AWS KMS utilisée pour chiffrer les secrets du cluster.

tags

map (key: string, value: string)

Facultatif. Ensemble de tags de ressources AWS à propager à toutes les ressources AWS gérées sous-jacentes.

Spécifiez au maximum 50 paires contenant des caractères alphanumériques, des espaces et des symboles (.+-=_:@/). Les clés peuvent contenir jusqu'à 127 caractères Unicode. Les valeurs peuvent comporter jusqu'à 255 caractères Unicode.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

awsServicesAuthentication

object (AwsServicesAuthentication)

Obligatoire. Configuration de l'authentification pour la gestion des ressources AWS.

proxyConfig

object (AwsProxyConfig)

Facultatif. Configuration du proxy pour le trafic HTTP(S) sortant.

configEncryption

object (AwsConfigEncryption)

Obligatoire. Chiffrement de la configuration des données utilisateur.

instancePlacement

object (AwsInstancePlacement)

Facultatif. Emplacement à utiliser sur les instances de plan de contrôle. Lorsque cette valeur n'est pas spécifiée, la location par défaut du VPC est utilisée.

AwsDatabaseEncryption

Configuration liée au chiffrement des secrets au niveau de la couche d'application.

Représentation JSON
{
  "kmsKeyArn": string
}
Champs
kmsKeyArn

string

Obligatoire. ARN de la clé AWS KMS utilisée pour chiffrer les secrets du cluster.

AwsServicesAuthentication

Configuration de l'authentification pour la gestion des ressources AWS.

Représentation JSON
{
  "roleArn": string,
  "roleSessionName": string
}
Champs
roleArn

string

Obligatoire. Nom de ressource Amazon (ARN) du rôle que l'API Anthos Multi-Cloud assumera lors de la gestion des ressources AWS sur votre compte.

roleSessionName

string

Facultatif. Identifiant de la session du rôle pris en compte.

Si cette valeur n'est pas spécifiée, elle est définie par défaut sur multicloud-service-agent.

AwsAuthorization

Configuration liée aux paramètres RBAC du cluster.

Représentation JSON
{
  "adminUsers": [
    {
      object (AwsClusterUser)
    }
  ],
  "adminGroups": [
    {
      object (AwsClusterGroup)
    }
  ]
}
Champs
adminUsers[]

object (AwsClusterUser)

Facultatif. Utilisateurs pouvant effectuer des opérations en tant qu'administrateurs de cluster. Un objet ClusterRoleBinding géré sera créé pour accorder le ClusterRole cluster-admin aux utilisateurs. Vous pouvez fournir jusqu'à dix utilisateurs administrateurs.

Pour en savoir plus sur le contrôle des accès basé sur les rôles, consultez la page https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles.

adminGroups[]

object (AwsClusterGroup)

Facultatif. Groupes d'utilisateurs pouvant effectuer des opérations en tant qu'administrateurs de cluster. Un ClusterRoleBinding géré sera créé pour accorder le ClusterRole cluster-admin aux groupes. Vous pouvez fournir jusqu'à dix groupes d'administrateurs.

Pour en savoir plus sur le contrôle des accès basé sur les rôles, consultez la page https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles.

AwsClusterUser

Identités d'un sujet de type utilisateur pour les clusters AWS.

Représentation JSON
{
  "username": string
}
Champs
username

string

Obligatoire. Nom de l'utilisateur, par exemple my-gcp-id@gmail.com.

AwsClusterGroup

Identités d'un sujet de type groupe pour les clusters AWS.

Représentation JSON
{
  "group": string
}
Champs
group

string

Obligatoire. Nom du groupe, par exemple my-group@domain.com.

État

État du cycle de vie du cluster.

Énumérations
STATE_UNSPECIFIED Non défini.
PROVISIONING L'état "PROVISIONING" (En cours de provisionnement) indique que le cluster est en cours de création.
RUNNING L'état "RUNNING" (En cours d'exécution) indique que le cluster a été créé et qu'il est entièrement utilisable.
RECONCILING L'état "RECONCILING" (Rapprochement) indique que des opérations sont en cours sur le cluster, comme la mise à niveau des répliques du plan de contrôle.
STOPPING L'état "STOPPING" (Arrêt) indique que le cluster est en cours de suppression.
ERROR L'état "ERROR" (Erreur) indique que le cluster est dans un état défaillant irrécupérable.
DEGRADED L'état "DEGRADED" (Dégradé) indique que le cluster nécessite une action de l'utilisateur pour restaurer toutes les fonctionnalités.

AwsClusterError

AwsClusterError décrit les erreurs détectées dans les clusters AWS.

Représentation JSON
{
  "message": string
}
Champs
message

string

Description de l'erreur compréhensible par l'utilisateur.

Méthodes

create
(deprecated)

Crée une ressource AwsCluster dans un projet et une région Google Cloud Platform donnés.

delete
(deprecated)

Supprime une ressource AwsCluster spécifique.

generateAwsAccessToken
(deprecated)

Génère un jeton d'accès de courte durée pour s'authentifier auprès d'une ressource AwsCluster donnée.

generateAwsClusterAgentToken
(deprecated)

Génère un jeton d'accès pour un agent de cluster.

get
(deprecated)

Décrit une ressource AwsCluster spécifique.

getJwks
(deprecated)

Récupère le composant public des clés de signature du cluster au format de clé Web JSON.

list
(deprecated)

Répertorie toutes les ressources AwsCluster d'un projet et d'une région Google Cloud donnés.

patch
(deprecated)

Met à jour un AwsCluster.