- Ressource : Membership
- MembershipEndpoint
- GkeCluster
- OnPremCluster
- OnPremCluster.ClusterType
- MultiCloudCluster
- EdgeCluster
- ApplianceCluster
- KubernetesMetadata
- KubernetesResource
- ResourceManifest
- ResourceOptions
- MembershipState
- MembershipState.Code
- Autorité
- Membership.InfrastructureType
- MonitoringConfig
- Méthodes
Ressource : Membership
La ressource Membership contient des informations sur un cluster membre.
Représentation JSON |
---|
{ "name": string, "labels": { string: string, ... }, "description": string, "state": { object ( |
Champs | |
---|---|
name |
Uniquement en sortie. Nom complet et unique de cette ressource Membership au format
Il peut être exprimé sous la forme de l'expression régulière : |
labels |
Facultatif. Étiquettes GCP pour cette appartenance. Objet contenant une liste de paires |
description |
Facultatif. Description de cette appartenance, limitée à 63 caractères. Doit correspondre à l'expression régulière : |
state |
Uniquement en sortie. État de la ressource Membership. |
authority |
Facultatif. Comment identifier les charges de travail de cette ressource Membership. Pour en savoir plus, consultez la documentation sur Workload Identity : https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity. |
createTime |
Uniquement en sortie. Date de création de la ressource Membership. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
updateTime |
Uniquement en sortie. Date de la dernière mise à jour de la ressource Membership. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
deleteTime |
Uniquement en sortie. Date de suppression de la ressource Membership. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
externalId |
Facultatif. ID généré et géré en externe pour cette ressource Membership. Cet ID peut être modifié après sa création, mais cela n'est pas recommandé. Pour les clusters GKE, "externalId" est géré par l'API Hub et les mises à jour sont ignorées. L'ID doit correspondre à l'expression régulière : Si cette ressource Membership représente un cluster Kubernetes, cette valeur doit être définie sur l'UID de l'objet d'espace de noms |
lastConnectionTime |
Uniquement en sortie. Pour les clusters utilisant Connect, horodatage de la connexion la plus récente établie avec Google Cloud. Cette heure est mise à jour toutes les quelques minutes, et non pas en continu. Pour les clusters qui n'utilisent pas GKE Connect ou qui ne se sont jamais connectés correctement, ce champ n'est pas défini. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
uniqueId |
Uniquement en sortie. UUID généré par Google pour cette ressource. Ce nom est unique pour toutes les ressources Membership. Si une ressource Membership est supprimée et qu'une autre ressource portant le même nom est créée, elle obtient un uniqueId différent. |
infrastructureType |
Facultatif. Type d'infrastructure sur lequel cette ressource Membership s'exécute. |
monitoringConfig |
Facultatif. Informations de configuration de la surveillance de cette ressource Membership. |
Champ d'union type . Le type de ressource représenté par cette ressource Membership type ne peut être que l'un des suivants : |
|
endpoint |
Facultatif. Informations sur le point de terminaison pour atteindre cette ressource Membership. |
MembershipEndpoint
La ressource MembershipEndpoint contient les informations nécessaires pour contacter une API Kubernetes, un point de terminaison et d'autres métadonnées Kubernetes.
Représentation JSON |
---|
{ "kubernetesMetadata": { object ( |
Champs | |
---|---|
kubernetesMetadata |
Uniquement en sortie. Métadonnées spécifiques à Kubernetes utiles. |
kubernetesResource |
Facultatif. Les ressources Kubernetes dans le cluster à appliquer à un cluster correctement enregistré, à l'état stable. Ces ressources :
|
Champ d'union type . Informations sur le cluster enregistré. type ne peut être qu'un des éléments suivants : |
|
gkeCluster |
Facultatif. Informations spécifiques pour un cluster GKE-on-GCP. |
onPremCluster |
Facultatif. Informations spécifiques pour un cluster GKE On-Prem. Un cluster d'utilisateur sur site qui n'a pas de lien de ressource n'est pas autorisé à utiliser ce champ. Il doit avoir un "type" nul à la place. |
multiCloudCluster |
Facultatif. Informations spécifiques pour un cluster GKE Multi-Cloud. |
edgeCluster |
Facultatif. Informations spécifiques pour un cluster Google Edge. |
applianceCluster |
Facultatif. Informations spécifiques pour un cluster GDC Edge Appliance. |
GkeCluster
GkeCluster contient des informations spécifiques aux clusters GKE.
Représentation JSON |
---|
{ "resourceLink": string, "clusterMissing": boolean } |
Champs | |
---|---|
resourceLink |
Immuable. Lien auto de la ressource GCP pour le cluster GKE. Par exemple :
Les clusters zonaux sont également acceptés. |
clusterMissing |
Uniquement en sortie. Si clusterMissing est défini, cela signifie que le cluster GKE n'existe plus dans le plan de contrôle GKE. |
OnPremCluster
OnPremCluster contient des informations spécifiques aux clusters GKE On-Prem.
Représentation JSON |
---|
{
"resourceLink": string,
"clusterMissing": boolean,
"adminCluster": boolean,
"clusterType": enum ( |
Champs | |
---|---|
resourceLink |
Immuable. Lien automatique de la ressource GCP pour le cluster GKE On-Prem. Par exemple : //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/vmwareClusters/my-cluster //gkeonprem.googleapis.com/projects/my-project/locations/us-west1-a/bareMetalClusters/my-cluster |
clusterMissing |
Uniquement en sortie. Si clusterMissing est défini, cela signifie que la ressource API(gkeonprem.googleapis.com) de ce cluster GKE On-Prem n'existe plus. |
adminCluster |
Immuable. Si le cluster est un cluster d'administrateur. |
clusterType |
Immuable. Type du cluster sur site. |
OnPremCluster.ClusterType
ClusterType décrit le type de cluster sur site.
Enums | |
---|---|
CLUSTERTYPE_UNSPECIFIED |
La ressource ClusterType n'est pas définie. |
BOOTSTRAP |
La ressource ClusterType est un cluster d'amorçage. |
HYBRID |
La ressource ClusterType est un cluster hybride Bare Metal. |
STANDALONE |
La ressource ClusterType est un cluster autonome Bare Metal. |
USER |
La ressource ClusterType est un cluster d'utilisateur. |
MultiCloudCluster
La ressource MultiCloudCluster contient des informations spécifiques aux clusters GKE Multi-Cloud.
Représentation JSON |
---|
{ "resourceLink": string, "clusterMissing": boolean } |
Champs | |
---|---|
resourceLink |
Immuable. Lien auto de la ressource GCP pour le cluster GKE Multi-Cloud. Par exemple : //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/awsClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/azureClusters/my-cluster //gkemulticloud.googleapis.com/projects/my-project/locations/us-west1-a/attachedClusters/my-cluster |
clusterMissing |
Uniquement en sortie. Si clusterMissing est défini, la ressource API(gkemulticloud.googleapis.com) n'existe plus pour ce cluster GKE Multi-Cloud. |
EdgeCluster
EdgeCluster contient des informations spécifiques aux clusters Google Edge.
Représentation JSON |
---|
{ "resourceLink": string } |
Champs | |
---|---|
resourceLink |
Immuable. Lien automatique de la ressource GCP pour le cluster Edge. Par exemple : //edgecontainer.googleapis.com/projects/my-project/locations/us-west1-a/clusters/my-cluster |
ApplianceCluster
ApplianceCluster contient des informations spécifiques aux clusters GDC Edge Appliance.
Représentation JSON |
---|
{ "resourceLink": string } |
Champs | |
---|---|
resourceLink |
Immuable. Lien automatique de la ressource GCP pour le cluster Appliance. Par exemple : //transferappliance.googleapis.com/projects/my-project/locations/us-west1-a/appliances/my-appliance |
KubernetesMetadata
KubernetesMetadata fournit des métadonnées informatives sur les ressources Memberships représentant des clusters Kubernetes.
Représentation JSON |
---|
{ "kubernetesApiServerVersion": string, "nodeProviderId": string, "nodeCount": integer, "vcpuCount": integer, "memoryMb": integer, "updateTime": string } |
Champs | |
---|---|
kubernetesApiServerVersion |
Uniquement en sortie. Chaîne de version du serveur d'API Kubernetes telle qu'indiquée par "/version". |
nodeProviderId |
Uniquement en sortie. Aucun providerID indiqué par le premier nœud de la liste des nœuds sur le point de terminaison Kubernetes. Sur les plates-formes Kubernetes qui acceptent les clusters sans nœud (comme GKE-on-GCP), nodeCount est égal à zéro et nodeProviderId est vide. |
nodeCount |
Uniquement en sortie. Nombre de nœuds indiqué par les ressources de nœuds Kubernetes. |
vcpuCount |
Uniquement en sortie. Nombre de processeurs virtuels indiqué par les ressources des nœuds Kubernetes. |
memoryMb |
Uniquement en sortie. Capacité totale de la mémoire indiquée par la somme de toutes les ressources de nœuds Kubernetes, définie en Mo. |
updateTime |
Uniquement en sortie. Date et heure de la dernière mise à jour de ces informations. Cette valeur updateTime est différente de updateTime au niveau de la ressource Membership, car les EndpointDetails sont mis à jour en interne pour les utilisateurs de l'API. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
KubernetesResource
KubernetesResource contient les fichiers manifestes et la configuration YAML pour les ressources Membership Kubernetes dans le cluster. Après memberships.create ou memberships.patch, ces ressources doivent être réappliquées dans le cluster.
Représentation JSON |
---|
{ "membershipCrManifest": string, "membershipResources": [ { object ( |
Champs | |
---|---|
membershipCrManifest |
Uniquement en entrée. Représentation YAML de la RS de la ressource Membership. Ce champ est ignoré pour les clusters GKE sur lesquels la ressource Hub peut lire directement la RS. Les appelants doivent fournir la RS actuellement présente dans le cluster lors de memberships.create ou memberships.patch, ou laisser ce champ vide s'il n'en existe pas. Le fichier manifeste de RS permet de vérifier que le cluster n'a pas été enregistré auprès d'une autre ressource Membership. |
membershipResources[] |
Uniquement en sortie. Ressources Kubernetes supplémentaires à appliquer au cluster après la création de la ressource Membership et après chaque mise à jour. Ce champ n'est renseigné que dans la ressource Membership renvoyée par une opération de longue durée réussie par memberships.create ou memberships.patch. Ce champ n'est pas renseigné lors des requêtes memberships.get ou memberships.list standards. Pour obtenir le fichier manifeste de la ressource après l'enregistrement initial, l'appelant doit effectuer un appel memberships.patch avec un masque de champ vide. |
connectResources[] |
Uniquement en sortie. Ressources Kubernetes pour l'installation de l'agent GKE Connect Ce champ n'est renseigné que dans la ressource Membership renvoyée par une opération de longue durée réussie par memberships.create ou memberships.patch. Ce champ n'est pas renseigné lors des requêtes memberships.get ou memberships.list standards. Pour obtenir le fichier manifeste de la ressource après l'enregistrement initial, l'appelant doit effectuer un appel memberships.patch avec un masque de champ vide. |
resourceOptions |
Facultatif. Options de génération de ressources Kubernetes. |
ResourceManifest
La ressource ResourceManifest représente une ressource Kubernetes unique à appliquer au cluster.
Représentation JSON |
---|
{ "manifest": string, "clusterScoped": boolean } |
Champs | |
---|---|
manifest |
Fichier manifeste YAML de la ressource. |
clusterScoped |
Indique si la ressource fournie dans le fichier manifeste est Ce champ est utilisé pour le mappage REST lors de l'application de la ressource dans un cluster. |
ResourceOptions
La ressource ResourceOptions représente les options de génération de ressources Kubernetes.
Représentation JSON |
---|
{ "connectVersion": string, "v1beta1Crd": boolean, "k8sVersion": string } |
Champs | |
---|---|
connectVersion |
Facultatif. Version de l'agent Connect à utiliser pour connectResources. Correspond par défaut à la dernière version de GKE Connect. La version doit être une version actuellement compatible. Les versions obsolètes seront refusées. |
v1beta1Crd |
Facultatif. Utilisez |
k8sVersion |
Facultatif. Version majeure du cluster Kubernetes. Cela permet uniquement de déterminer la version à utiliser pour les ressources CustomResourceDefinition, |
MembershipState
État de la ressource Membership.
Représentation JSON |
---|
{
"code": enum ( |
Champs | |
---|---|
code |
Uniquement en sortie. État actuel de la ressource Membership. |
description |
Ce champ n'est jamais défini par HubService. |
updateTime |
Ce champ n'est jamais défini par HubService. Horodatage au format RFC3339 UTC "Zulu", avec une résolution de l'ordre de la nanoseconde et jusqu'à neuf chiffres décimaux. Exemples : |
MembershipState.Code
Code décrit l'état d'une ressource Membership.
Enums | |
---|---|
CODE_UNSPECIFIED |
Le code n'est pas défini. |
CREATING |
Le cluster est en cours d'enregistrement. |
READY |
Le cluster est enregistré. |
DELETING |
L'enregistrement du cluster est en cours d'annulation. |
UPDATING |
La ressource Membership est en cours de mise à jour. |
SERVICE_UPDATING |
La ressource Membership est en cours de mise à jour par HubService. |
Autorité
L'autorité code la manière dont Google reconnaît les identités de ce membre. Pour en savoir plus, consultez la documentation sur Workload Identity : https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity.
Représentation JSON |
---|
{ "issuer": string, "workloadIdentityPool": string, "identityProvider": string, "oidcJwks": string } |
Champs | |
---|---|
issuer |
Facultatif. URI d'émetteur de jetons Web JSON (JWT). Si ce champ est défini, Google autorise les jetons OIDC valides de cet émetteur à s'authentifier dans le pool d'identités de charge de travail. La découverte OIDC sera effectuée sur cet URI pour valider les jetons de l'émetteur. Supprimer |
workloadIdentityPool |
Uniquement en sortie. Nom du pool d'identités de charge de travail dans lequel Un seul pool d'identités de charge de travail est partagé entre toutes les appartenances appartenant à ce Hub. Pour un hub hébergé dans {PROJECT_ID}, le format du pool de charges de travail est |
identityProvider |
Uniquement en sortie. Un fournisseur d'identité qui reflète la valeur |
oidcJwks |
Facultatif. Clés de validation OIDC de cette appartenance au format JWKS (RFC 7517). Lorsque ce champ est défini, la découverte OIDC n'est PAS effectuée sur Chaîne encodée en base64. |
Membership.InfrastructureType
Spécifie le type d'infrastructure d'une ressource Membership. Le type d'infrastructure est utilisé par Hub pour contrôler le comportement spécifique à l'infrastructure, y compris la tarification.
Chaque distribution GKE (sur GCP, sur site, sur X, etc.) définit ce champ automatiquement, mais les clients des clusters associés doivent spécifier un type lors de l'enregistrement.
Enums | |
---|---|
INFRASTRUCTURE_TYPE_UNSPECIFIED |
Aucun type n'a été spécifié. Certaines fonctionnalités de Hub peuvent nécessiter un type. Elles ne seront pas compatibles avec les abonnements avec cette valeur. |
ON_PREM |
Infrastructure privée détenue ou gérée par le client. Cela inclut les distributions GKE telles que GKE On-Prem et GKE-OnBareMetal. |
MULTI_CLOUD |
Infrastructure cloud publique. |
MonitoringConfig
MonitoringConfig indique aux applications, services et interfaces utilisateur basés sur le parc comment les métriques du cluster sous-jacent sont transmises aux services de surveillance cloud. Elle peut être définie sur une valeur vide ou non vide, mais ne peut pas être mutée directement pour éviter de briser accidentellement la continuité des métriques.
Représentation JSON |
---|
{ "projectId": string, "location": string, "cluster": string, "kubernetesMetricsPrefix": string, "clusterHash": string } |
Champs | |
---|---|
projectId |
Facultatif. Projet utilisé pour générer des rapports sur les métriques |
location |
Facultatif. Emplacement utilisé pour générer des rapports sur les métriques |
cluster |
Facultatif. Nom du cluster utilisé pour générer des rapports sur les métriques. Pour les clusters Anthos sur VMWare/Baremetal/MultiCloud, il serait au format {clusterType}/{clusterName}, par exemple : "awsClusters/cluster_1". |
kubernetesMetricsPrefix |
Facultatif. Les métriques système Kubernetes, si elles sont disponibles, sont écrites dans ce préfixe. La valeur par défaut est kubernetes.io pour GKE, et kubernetes.io/anthos pour Anthos. Remarque : Anthos MultiCloud utilisera le préfixe kubernetes.io aujourd'hui, mais sera migré sous kubernetes.io/anthos. |
clusterHash |
Facultatif. Pour les clusters GKE et multicloud, il s'agit de l'UUID de la ressource de cluster. Pour les clusters VMWare et Baremetal, il s'agit de l'UID kube-system. |
Méthodes |
|
---|---|
|
Crée une ressource Membership. |
|
Supprime une ressource Membership. |
|
Génère le fichier manifeste pour le déploiement de l'agent GKE Connect. |
|
GenerateExclusivityManifest génère les fichiers manifestes pour mettre à jour les artefacts d'exclusivité du cluster si nécessaire. |
|
Récupère les détails d'une ressource Membership. |
|
Récupère la stratégie de contrôle d'accès d'une ressource. |
|
Répertorie les ressources Memberships d'un projet et d'un emplacement donnés. |
|
Met à jour une ressource Membership existante. |
|
Définit la stratégie de contrôle d'accès de la ressource spécifiée. |
|
Renvoie les autorisations qu'un appelant a sur la ressource spécifiée. |
|
ValidateExclusivity valide l'état d'exclusivité du cluster. |