Package google.cloud.gkehub.v1beta1

Index

GkeHubMembershipService

Der GKE Hub MembershipService übernimmt die Registrierung vieler Kubernetes-Cluster in Google Cloud, dargestellt durch die Ressource Membership.

GKE Hub ist derzeit in der globalen Region und in allen Regionen in https://cloud.google.com/compute/docs/regions-zones verfügbar. Die Funktion ist nur in der globalen Region verfügbar, während die Mitgliedschaft die globale Region und alle Regionen umfasst.

Die Mitgliedschaftsverwaltung ist mitunter nicht einfach: Es wird empfohlen, bei der Arbeit mit Mitgliedschaftsressourcen nach Möglichkeit eine der von Google bereitgestellten Clientbibliotheken oder Tools zu verwenden.

CreateMembership

rpc CreateMembership(CreateMembershipRequest) returns (Operation)

Erstellt eine neue Mitgliedschaft.

Dies wird derzeit nur für GKE-Cluster in Google Cloud unterstützt. Folgen Sie der Anleitung unter https://cloud.google.com/kubernetes-engine/enterprise/multicluster-management/connect/registering-a-cluster, um weitere Cluster zu registrieren.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

DeleteMembership

rpc DeleteMembership(DeleteMembershipRequest) returns (Operation)

Entfernt eine Mitgliedschaft.

Dies wird derzeit nur für GKE-Cluster in Google Cloud unterstützt. Folgen Sie der Anleitung unter https://cloud.google.com/kubernetes-engine/enterprise/multicluster-management/connect/unregistering-a-cluster, um die Registrierung anderer Cluster aufzuheben.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

GenerateConnectManifest

rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse)

Generiert das Manifest für die Bereitstellung des GKE Connect-Agents.

Diese Methode wird intern von Google bereitgestellten Bibliotheken verwendet. Die meisten Clients sollten diese Methode nicht direkt aufrufen müssen.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

GenerateExclusivityManifest

rpc GenerateExclusivityManifest(GenerateExclusivityManifestRequest) returns (GenerateExclusivityManifestResponse)

GenerateExclusivityManifest generiert die Manifeste, um bei Bedarf die Exklusivitätsartefakte im Cluster zu aktualisieren.

Zu den Exklusivitätsartefakten gehören die benutzerdefinierte Ressourcendefinition (CRD) der Mitgliedschaft und die benutzerdefinierte Ressource (CR) für die Singleton-Mitgliedschaft. In Kombination mit ValidateExclsivity sorgen Exklusivitätsartefakte dafür, dass ein Kubernetes-Cluster nur in einem einzelnen GKE-Hub registriert wird.

Die Mitgliedschaft-CRD ist versioniert und erfordert möglicherweise eine Konvertierung, wenn der GKE Hub API-Server mit der Bereitstellung einer neueren Version der CRD und der entsprechenden CR beginnt. Die Antwort ist die konvertierte CRD und die CR, wenn es Unterschiede zwischen den Versionen gibt.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

GetMembership

rpc GetMembership(GetMembershipRequest) returns (Membership)

Ruft die Details einer Mitgliedschaft ab.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

ListMemberships

rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse)

Listet Instanzen in einem angegebenen Projekt und an einem angegebenen Standort auf.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

UpdateMembership

rpc UpdateMembership(UpdateMembershipRequest) returns (Operation)

Aktualisiert eine vorhandene Mitgliedschaft.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

ValidateExclusivity

rpc ValidateExclusivity(ValidateExclusivityRequest) returns (ValidateExclusivityResponse)

ValidateExclusivity validiert den Status der Exklusivität im Cluster. Die Validierung hängt nicht von einer vorhandenen Hub-Mitgliedschaftsressource ab.

Autorisierungsbereiche

Erfordert den folgenden OAuth-Bereich:

  • https://www.googleapis.com/auth/cloud-platform

Weitere Informationen finden Sie in der Authentifizierungsübersicht.

ApplianceCluster

ApplianceCluster enthält Informationen zu GDC Edge-Appliance-Clustern.

Felder

Authority-Header

Die Zertifizierungsstelle codiert, wie Google Identitäten aus dieser Mitgliedschaft erkennt. Weitere Informationen finden Sie in der Dokumentation zu Workload Identity: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity

Felder
issuer

string

Optional. Der URI eines JWT-Ausstellers (JSON Web Token). issuer muss mit https:// beginnen und eine gültige URL mit einer Länge von weniger als 2.000 Zeichen sein.

Wenn festgelegt, lässt Google gültige OIDC-Tokens von diesem Aussteller zur Authentifizierung im workload_identity_pool zu. Für diesen URI wird die OIDC-Erkennung durchgeführt, um Tokens vom Aussteller zu validieren.

Durch das Löschen von issuer wird Workload Identity deaktiviert. issuer kann nicht direkt geändert werden; er muss gelöscht (und Workload Identity deaktiviert) werden, bevor Sie einen neuen Aussteller verwenden (und Workload Identity wieder aktivieren).

workload_identity_pool

string

Nur Ausgabe. Der Name des Workload Identity-Pools, in dem issuer erkannt wird.

Es gibt einen einzelnen Workload Identity-Pool pro Hub, der von allen Mitgliedschaften geteilt wird, die zu diesem Hub gehören. Bei einem in {PROJECT_ID} gehosteten Hub ist das Arbeitslastpoolformat {PROJECT_ID}.hub.id.goog. Dies kann sich jedoch in neueren Versionen dieser API ändern.

identity_provider

string

Nur Ausgabe. Einen Identitätsanbieter, der die issuer im Workload Identity-Pool widerspiegelt.

oidc_jwks

bytes

Optional. OIDC-Bestätigungsschlüssel für diese Mitgliedschaft im JWKS-Format (RFC 7517).

Wenn dieses Feld festgelegt ist, wird die OIDC-Erkennung NICHT für issuer ausgeführt. Stattdessen werden OIDC-Tokens mit diesem Feld validiert.

ConnectAgent

Die von Endnutzern benötigten Informationen, um GKE Connect zu verwenden.

Felder
name
(deprecated)

string

Nicht festlegen.

proxy

bytes

Optional. URI eines Proxys, wenn für eine Verbindung vom Agent zu gkeconnect.googleapis.com die Verwendung eines Proxys erforderlich ist. Das Format muss die Form http(s)://{proxy_address} haben, je nach dem vom Proxy unterstützten HTTP-/HTTPS-Protokoll. Dadurch wird der ausgehende Traffic des Connect-Agents über einen HTTP(S)-Proxy geleitet.

namespace

string

Optional. Namespace für GKE Connect-Agent-Ressourcen. Die Standardeinstellung ist gke-connect.

Der Connect Agent wird bei Ausführung im Standard-Namespace automatisch autorisiert. Andernfalls muss eine explizite Autorisierung mit einer zusätzlichen IAM-Bindung gewährt werden.

ConnectAgentResource

ConnectAgentResource stellt ein Kubernetes-Ressourcenmanifest für die Bereitstellung des Connect-Agents dar.

Felder
type

TypeMeta

Kubernetes-Typ der Ressource.

manifest

string

YAML-Manifest der Ressource.

CreateMembershipRequest

Anfragenachricht für die Methode GkeHubMembershipService.CreateMembership.

Felder
parent

string

Erforderlich. Das übergeordnete Element (Projekt und Standort), in dem die Mitgliedschaften erstellt werden. Wird im Format projects/*/locations/* angegeben.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource parent erforderlich:

  • gkehub.memberships.create
membership_id

string

Erforderlich. Vom Client ausgewählte ID für die Mitgliedschaft. membership_id muss ein gültiges RFC 1123-konformes DNS-Label sein:

  1. Maximal 63 Zeichen.
  2. Muss aus alphanumerischen Kleinbuchstaben oder - bestehen.
  3. Muss mit einem alphanumerischen Zeichen beginnen und enden.

Dies kann als regulärer Ausdruck [a-z0-9]([-a-z0-9]*[a-z0-9])? mit einer maximalen Länge von 63 Zeichen ausgedrückt werden.

resource

Membership

Erforderlich. Die zu erstellende Mitgliedschaft.

request_id

string

Optional. Eine Anfrage-ID zur Identifizierung von Anfragen. Geben Sie eine eindeutige Anfrage-ID an, damit der Server die Anfrage ignoriert, falls sie bereits abgeschlossen wurde, falls Sie Ihre Anfrage wiederholen müssen. Der Server gewährleistet dies für mindestens 60 Minuten nach der ersten Anfrage.

Stellen Sie sich beispielsweise eine Situation vor, in der Sie eine erste Anfrage stellen und diese das Zeitlimit überschreitet. Wenn Sie die Anfrage mit derselben Anfrage-ID noch einmal senden, kann der Server prüfen, ob der ursprüngliche Vorgang mit derselben Anfrage-ID empfangen wurde. Ist dies der Fall, wird die zweite Anfrage ignoriert. Dadurch wird verhindert, dass Clients versehentlich doppelte Zusicherungen erstellen.

Die Anfrage-ID muss eine gültige UUID sein, mit der Ausnahme, dass null UUID nicht unterstützt wird (00000000-0000-0000-0000-000000000000).

DeleteMembershipRequest

Anfragenachricht für die Methode GkeHubMembershipService.DeleteMembership.

Felder
name

string

Erforderlich. Der Name der Mitgliedschaftsressource im Format projects/*/locations/*/memberships/*.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource name erforderlich:

  • gkehub.memberships.delete
request_id

string

Optional. Eine Anfrage-ID zur Identifizierung von Anfragen. Geben Sie eine eindeutige Anfrage-ID an, damit der Server die Anfrage ignoriert, falls sie bereits abgeschlossen wurde, falls Sie Ihre Anfrage wiederholen müssen. Der Server gewährleistet dies für mindestens 60 Minuten nach der ersten Anfrage.

Stellen Sie sich beispielsweise eine Situation vor, in der Sie eine erste Anfrage stellen und diese das Zeitlimit überschreitet. Wenn Sie die Anfrage mit derselben Anfrage-ID noch einmal senden, kann der Server prüfen, ob der ursprüngliche Vorgang mit derselben Anfrage-ID empfangen wurde. Ist dies der Fall, wird die zweite Anfrage ignoriert. Dadurch wird verhindert, dass Clients versehentlich doppelte Zusicherungen erstellen.

Die Anfrage-ID muss eine gültige UUID sein, mit der Ausnahme, dass null UUID nicht unterstützt wird (00000000-0000-0000-0000-000000000000).

force

bool

Optional. Wenn auf "true" gesetzt, werden alle Unterressourcen aus dieser Mitgliedschaft ebenfalls gelöscht. Andernfalls funktioniert die Anfrage nur, wenn die Mitgliedschaft keine Unterressource hat.

EdgeCluster

EdgeCluster enthält spezifische Informationen für Google Edge-Cluster.

Felder

GenerateConnectManifestRequest

Anfragenachricht für die Methode GkeHubMembershipService.GenerateConnectManifest.

Felder
name

string

Erforderlich. Der Name der Mitgliedschaftsressource, mit der der Agent verknüpft werden soll, im Format projects/*/locations/*/memberships/*.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource name erforderlich:

  • gkehub.memberships.generateConnectManifest
connect_agent

ConnectAgent

Optional. Der Connect-Agent, für den ein Manifest generiert werden soll.

version

string

Optional. Die zu verwendende Connect-Agent-Version. Die Standardeinstellung ist die neueste Version.

is_upgrade

bool

Optional. Falls "true", generieren Sie die Ressourcen nur für das Upgrade. Einige Ressourcen, die nur für die Installation generiert wurden (z. B. Secrets), werden ausgeschlossen.

registry

string

Optional. Die Registry, aus der das Connect-Agent-Image abgerufen werden soll. Die Standardeinstellung ist gcr.io/gkeconnect.

image_pull_secret_content

bytes

Optional. Das Image ruft Secret-Inhalte für die Registry ab, falls es nicht öffentlich ist.

GenerateConnectManifestResponse

GenerateConnectManifestResponse enthält Manifestinformationen für die Installation/Aktualisierung eines Connect-Agents.

Felder
manifest[]

ConnectAgentResource

Die sortierte Liste der Kubernetes-Ressourcen, die für Installation/Upgrade des GKE Connect-Agents auf den Cluster angewendet werden müssen.

GenerateExclusivityManifestRequest

Die Anfrage zum Generieren der Manifeste für Exklusivitätsartefakte.

Felder
name

string

Erforderlich. Der Name der Mitgliedschaftsressource im Format projects/*/locations/*/memberships/*.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource name erforderlich:

  • gkehub.memberships.generateConnectManifest
crd_manifest

string

Optional. Das YAML-Manifest der Mitgliedschafts-CRD, das von kubectl get customresourcedefinitions membership abgerufen wurde. Lassen Sie das Feld leer, wenn die Ressource nicht vorhanden ist.

cr_manifest

string

Optional. Das YAML-Manifest der Mitgliedschafts-CR, das von kubectl get memberships membership abgerufen wurde. Lassen Sie das Feld leer, wenn die Ressource nicht vorhanden ist.

GenerateExclusivityManifestResponse

Die Antwort auf die Manifeste der Exklusivitätsartefakte, die der Client anwenden soll.

Felder
crd_manifest

string

Das YAML-Manifest der Mitgliedschafts-CRD, das angewendet werden soll, wenn eine neuere Version der CRD verfügbar ist. Leer, wenn keine Aktualisierung angewendet werden muss.

cr_manifest

string

Das YAML-Manifest der Mitgliedschafts-CR, das angewendet werden soll, wenn eine neue Version der CR verfügbar ist. Leer, wenn keine Aktualisierung angewendet werden muss.

GetMembershipRequest

Anfragenachricht für die Methode GkeHubMembershipService.GetMembership.

Felder
name

string

Erforderlich. Der Name der Mitgliedschaftsressource im Format projects/*/locations/*/memberships/*.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource name erforderlich:

  • gkehub.memberships.get

GkeCluster

GkeCluster enthält für GKE-Cluster spezifische Informationen.

Felder
cluster_missing

bool

Nur Ausgabe. Wenn cluster_missing festgelegt ist, bedeutet dies, dass der GKE-Cluster nicht mehr in der GKE-Steuerungsebene vorhanden ist.

KubernetesMetadata

KubernetesMetadata stellt Informationsmetadaten für Mitgliedschaften bereit, die Kubernetes-Cluster darstellen.

Felder
kubernetes_api_server_version

string

Nur Ausgabe. Versionsstring des Kubernetes API-Servers, wie von '/version' gemeldet.

node_provider_id

string

Nur Ausgabe. Knotenanbieter-ID, wie vom ersten Knoten in der Liste der Knoten auf dem Kubernetes-Endpunkt gemeldet. Auf Kubernetes-Plattformen, die Cluster mit null Knoten unterstützen (z. B. GKE-on-GCP), ist der Wert für „node_count“ null und die „node_provider_id“ ist leer.

node_count

int32

Nur Ausgabe. Knotenanzahl, wie von Kubernetes-Knotenressourcen gemeldet.

vcpu_count

int32

Nur Ausgabe. vCPU-Anzahl, wie von den Ressourcen der Kubernetes-Knoten gemeldet.

memory_mb

int32

Nur Ausgabe. Die gesamte Speicherkapazität, angegeben durch die Summe aller Kubernetes-Knotenressourcen, definiert in MB.

update_time

Timestamp

Nur Ausgabe. Der Zeitpunkt der letzten Aktualisierung dieser Details. Diese „update_time“ unterscheidet sich von der „update_time“ auf Mitgliedschaftsebene, da EndpointDetails intern für API-Nutzer aktualisiert werden.

KubernetesResource

KubernetesResource enthält die YAML-Manifeste und -Konfigurationen für die Kubernetes-Mitgliedschaftsressourcen im Cluster. Nach „CreateMember“ oder „Update Container“ sollten diese Ressourcen noch einmal im Cluster angewendet werden.

Felder
membership_cr_manifest

string

Nur Eingabe Die YAML-Darstellung der Mitgliedschaft-CR. Dieses Feld wird für GKE-Cluster ignoriert, in denen Hub die CR direkt lesen kann.

Aufrufer sollten die CR angeben, die derzeit im Cluster während der CreateMembership oder UpdateMembership vorhanden ist, oder dieses Feld leer lassen, wenn keine vorhanden ist. Das CR-Manifest wird verwendet, um zu prüfen, ob der Cluster nicht mit einer anderen Mitgliedschaft registriert wurde.

membership_resources[]

ResourceManifest

Nur Ausgabe. Zusätzliche Kubernetes-Ressourcen, die nach der Erstellung der Mitgliedschaft und nach jeder Aktualisierung auf den Cluster angewendet werden müssen.

Dieses Feld wird nur in der Mitgliedschaft ausgefüllt, die von einem erfolgreichen Vorgang mit langer Ausführungszeit von CreateMembership oder UpdateMembership zurückgegeben wurde. Während normaler GetMembership- oder ListMemberships-Anfragen wird es nicht ausgefüllt. Um das Ressourcenmanifest nach der ersten Registrierung abzurufen, sollte der Aufrufer einen UpdateMembership-Aufruf mit einer leeren Feldmaske ausführen.

connect_resources[]

ResourceManifest

Nur Ausgabe. Kubernetes-Ressourcen zur Installation des GKE Connect-Agents

Dieses Feld wird nur in der Mitgliedschaft ausgefüllt, die von einem erfolgreichen Vorgang mit langer Ausführungszeit von CreateMembership oder UpdateMembership zurückgegeben wurde. Während normaler GetMembership- oder ListMemberships-Anfragen wird es nicht ausgefüllt. Um das Ressourcenmanifest nach der ersten Registrierung abzurufen, sollte der Aufrufer einen UpdateMembership-Aufruf mit einer leeren Feldmaske ausführen.

resource_options

ResourceOptions

Optional. Optionen für die Generierung von Kubernetes-Ressourcen.

ListMembershipsRequest

Anfragenachricht für die Methode GkeHubMembershipService.ListMemberships.

Felder
parent

string

Erforderlich. Das übergeordnete Element (Projekt und Standort), in dem die Mitgliedschaften aufgelistet werden. Wird im Format projects/*/locations/* angegeben. projects/*/locations/- listet die Mitgliedschaften in allen Regionen auf.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource parent erforderlich:

  • gkehub.memberships.list
page_size

int32

Optional. Beim Anfordern einer „Seite“ mit Ressourcen gibt page_size die Anzahl der zurückzugebenden Ressourcen an. Wenn nicht angegeben oder auf 0 festgelegt, werden alle Ressourcen zurückgegeben.

page_token

string

Optional. Token, das vom vorherigen Aufruf an ListMemberships zurückgegeben wurde. Gibt die Position in der Liste an, von der aus die Ressourcen aufgelistet werden sollen.

filter

string

Optional. Listet Mitgliedschaften auf, die dem Filterausdruck entsprechen. Dabei wird die unter https://google.aip.dev/160 beschriebene Syntax beachtet.

Beispiele:

  • Der Name lautet bar im Projekt foo-proj und am Standort global:
  name = "projects/foo-proj/locations/global/membership/bar"
  • Mitgliedschaften mit dem Label foo:
  labels.foo:*
  • Mitgliedschaften mit dem Label foo, dessen Wert bar ist:
  labels.foo = bar
  • Mitgliedschaften mit dem Status CREATING:
  state = CREATING
order_by

string

Optional. Ein oder mehrere Felder, die verglichen und zum Sortieren der Ausgabe verwendet werden sollen. Siehe https://google.aip.dev/132#ordering.

ListMembershipsResponse

Antwortnachricht für die Methode GkeHubMembershipService.ListMemberships.

Felder
resources[]

Membership

Die Liste der übereinstimmenden Mitgliedschaften.

next_page_token

string

Ein Token, mit dem die nächste Seite von Ressourcen von der Methode ListMemberships angefordert wird. Der Wert eines leeren Strings bedeutet, dass es keine weiteren Ressourcen gibt, die zurückgegeben werden können.

unreachable[]

string

Liste der Standorte, die beim Abrufen dieser Liste nicht erreicht werden konnten.

Mitgliedschaft

Die Mitgliedschaft enthält Informationen zu einem Mitgliedscluster.

Felder
name

string

Nur Ausgabe. Der vollständige, eindeutige Name dieser Mitgliedschaftsressource im Format projects/*/locations/*/memberships/{membership_id}, der während der Erstellung festgelegt wurde.

membership_id muss ein gültiges RFC 1123-konformes DNS-Label sein:

  1. Maximal 63 Zeichen.
  2. Muss aus alphanumerischen Kleinbuchstaben oder - bestehen.
  3. Muss mit einem alphanumerischen Zeichen beginnen und enden.

Dies kann als regulärer Ausdruck [a-z0-9]([-a-z0-9]*[a-z0-9])? mit einer maximalen Länge von 63 Zeichen ausgedrückt werden.

labels

map<string, string>

Optional. GCP-Labels für diese Mitgliedschaft.

description

string

Optional. Beschreibung dieser Mitgliedschaft. Ist auf maximal 63 Zeichen beschränkt. Muss mit dem regulären Ausdruck [a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]* übereinstimmen.

state

MembershipState

Nur Ausgabe. Status der Mitgliedschaftsressource.

authority

Authority

Optional. Arbeitslasten aus dieser Mitgliedschaft identifizieren. Weitere Informationen finden Sie in der Dokumentation zu Workload Identity: https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity

create_time

Timestamp

Nur Ausgabe. Wann die Mitgliedschaft erstellt wurde.

update_time

Timestamp

Nur Ausgabe. Wann die Mitgliedschaft zuletzt aktualisiert wurde.

delete_time

Timestamp

Nur Ausgabe. Wann die Mitgliedschaft gelöscht wurde.

external_id

string

Optional. Eine extern generierte und verwaltete ID für diese Mitgliedschaft. Diese ID kann nach dem Erstellen geändert werden. Das wird jedoch nicht empfohlen. Bei GKE-Clustern wird external_id von der Hub API verwaltet. Aktualisierungen werden ignoriert.

Die ID muss mit dem regulären Ausdruck [a-zA-Z0-9][a-zA-Z0-9_\-\.]* übereinstimmen.

Wenn diese Mitgliedschaft einen Kubernetes-Cluster darstellt, sollte dieser Wert auf die UID des Namespace-Objekts kube-system festgelegt werden.

last_connection_time

Timestamp

Nur Ausgabe. Bei Clustern, die Connect verwenden, der Zeitstempel der letzten Verbindung zu Google Cloud. Diese Uhrzeit wird alle paar Minuten aktualisiert, nicht kontinuierlich. Bei Clustern, die GKE Connect nicht verwenden oder nie erfolgreich verbunden wurden, wird dieses Feld nicht festgelegt.

unique_id

string

Nur Ausgabe. Von Google generierte UUID für diese Ressource. Dies ist für alle Mitgliedschaftsressourcen eindeutig. Wenn eine Mitgliedschaftsressource gelöscht und eine andere Ressource mit demselben Namen erstellt wird, erhält sie eine andere unique_ID.

infrastructure_type

Membership.InfrastructureType

Optional. Der Infrastrukturtyp, in dem diese Mitgliedschaft ausgeführt wird.

monitoring_config

MonitoringConfig

Optional. Die Informationen zur Monitoring-Konfiguration für diese Mitgliedschaft.

Union-Feld type. Der Ressourcentyp, der durch diese Mitgliedschaft type dargestellt wird, kann nur einer der folgenden sein:
endpoint

MembershipEndpoint

Optional. Endpunktinformationen zum Erreichen dieses Mitglieds.

InfrastructureType

Gibt den Infrastrukturtyp einer Mitgliedschaft an. Der Infrastrukturtyp wird von Hub verwendet, um das infrastrukturspezifische Verhalten zu steuern, einschließlich der Preise.

Bei jeder GKE-Distribution (auf der GCP, lokal, auf X, ...) wird dieses Feld automatisch festgelegt. Kunden mit angehängten Clustern sollten jedoch bei der Registrierung einen Typ angeben.

Enums
INFRASTRUCTURE_TYPE_UNSPECIFIED Es wurde kein Typ angegeben. Für einige Hub-Funktionen muss möglicherweise ein Typ angegeben werden. Mitgliedschaften mit diesem Wert werden nicht unterstützt.
ON_PREM Private Infrastruktur, die dem Kunden gehört oder von diesem betrieben wird Dazu gehören GKE-Distributionen wie GKE-OnPrem und GKE-OnBareMetal.
MULTI_CLOUD Öffentliche Cloud-Infrastruktur.

MembershipEndpoint

MemberEndpoint enthält Informationen, die zur Kontaktaufnahme mit einer Kubernetes API, einem Endpunkt und zusätzlichen Kubernetes-Metadaten erforderlich sind.

Felder
kubernetes_metadata

KubernetesMetadata

Nur Ausgabe. Nützliche Kubernetes-spezifische Metadaten.

kubernetes_resource

KubernetesResource

Optional. Die Kubernetes-Ressourcen im Cluster, die auf einen korrekt registrierten Cluster im stabilen Zustand angewendet werden sollen. Diese Ressourcen:

  • Sorgen dafür, dass der Cluster ausschließlich bei einer Hub-Mitgliedschaft registriert wird.
  • Geben Informationen zum Arbeitslastpool weiter, die im Feld "Mitgliedschaftsstelle" verfügbar sind.
  • Sorgen für eine ordnungsgemäße Erstkonfiguration der Hub-Standardfeatures.
Union-Feld type. Clusterinformationen des registrierten Clusters. Für type ist nur einer der folgenden Werte zulässig:
gke_cluster

GkeCluster

Optional. Spezifische Informationen für einen GKE-auf-GCP-Cluster

on_prem_cluster

OnPremCluster

Optional. Spezifische Informationen für einen GKE On-Prem-Cluster Ein lokaler Nutzercluster, der keinen resourceLink hat, darf dieses Feld nicht verwenden. Er sollte stattdessen einen "null"-"Typ" haben.

multi_cloud_cluster

MultiCloudCluster

Optional. Spezifische Informationen für einen GKE-Multi-Cloud-Cluster

edge_cluster

EdgeCluster

Optional. Spezifische Informationen für einen Google Edge-Cluster

appliance_cluster

ApplianceCluster

Optional. Spezifische Informationen für einen GDC Edge-Appliance-Cluster.

MembershipState

Status der Mitgliedschaftsressource.

Felder
code

MembershipState.Code

Nur Ausgabe. Der aktuelle Status der Mitgliedschaftsressource.

description
(deprecated)

string

Dieses Feld wird nie vom Hub-Dienst festgelegt.

update_time
(deprecated)

Timestamp

Dieses Feld wird nie vom Hub-Dienst festgelegt.

Code

Der Code beschreibt den Status einer Mitgliedschaftsressource.

Enums
CODE_UNSPECIFIED Der Code ist nicht festgelegt.
CREATING Der Cluster wird registriert.
READY Der Cluster ist registriert.
DELETING Der Cluster wird abgemeldet.
UPDATING Die Mitgliedschaft wird aktualisiert.
SERVICE_UPDATING Die Mitgliedschaft wird vom Hub-Dienst aktualisiert.

MonitoringConfig

MonitoringConfig informiert flottenbasierte Anwendungen/Dienste/UIs darüber, wie die Messwerte für den zugrunde liegenden Cluster an Cloud-Monitoring-Dienste gemeldet werden. Ein Wert kann von leer auf nicht leer gesetzt, aber nicht direkt angepasst werden, um zu verhindern, dass versehentlich die Kontinuität von Messwerten unterbrochen wird.

Felder
project_id

string

Optional. Projekt zum Melden von Messwerten

location

string

Optional. Ort zum Melden von Messwerten

cluster

string

Optional. Zum Melden von Messwerten verwendeter Clustername. Bei Anthos on VMWare/Baremetal/MultiCloud-Clustern hat die Datei das Format {cluster_type}/{cluster_name}, z. B. "awsClusters/cluster_1".

kubernetes_metrics_prefix

string

Optional. Kubernetes-Systemmesswerte werden, sofern verfügbar, in dieses Präfix geschrieben. Standardmäßig wird in GKE „kubernetes.io“ und für Anthos „kubernetes.io/anthos“ verwendet. Hinweis: Anthos MultiCloud hat heute das Präfix „kubernetes.io“, wird aber unter kubernetes.io/anthos migriert.

cluster_hash

string

Optional. Bei GKE- und Multi-Cloud-Clustern ist dies die UUID der Clusterressource. Für VMWare- und Baremetal-Cluster ist dies die kube-system-UID.

MultiCloudCluster

MultiCloudCluster enthält spezifische Informationen für GKE-Multi-Cloud-Cluster.

Felder
cluster_missing

bool

Nur Ausgabe. Wenn „cluster_missing“ festgelegt ist, bedeutet dies, dass die API(gkemulticloud.googleapis.com)-Ressource für diesen GKE-Multi-Cloud-Cluster nicht mehr vorhanden ist.

OnPremCluster

OnPremCluster enthält spezifische Informationen für GKE On-Prem-Cluster.

Felder
cluster_missing

bool

Nur Ausgabe. Wenn „cluster_missing“ festgelegt ist, bedeutet dies, dass die API(gkeonprem.googleapis.com)-Ressource für diesen GKE On-Prem-Cluster nicht mehr vorhanden ist.

admin_cluster

bool

Nicht veränderbar. Ob der Cluster ein Administratorcluster ist.

cluster_type

OnPremCluster.ClusterType

Nicht veränderbar. Der Typ des lokalen Clusters.

ClusterType

ClusterType beschreibt den Typ des lokalen Clusters.

Enums
CLUSTERTYPE_UNSPECIFIED Der ClusterType ist nicht festgelegt.
BOOTSTRAP Der ClusterType ist Bootstrap-Cluster.
HYBRID Der ClusterType ist ein Bare-Metal-Hybridcluster.
STANDALONE Der ClusterType ist ein eigenständiger Bare-Metal-Cluster.
USER Der ClusterType ist ein Nutzercluster.

OperationMetadata

Stellt die Metadaten des Vorgangs mit langer Ausführungszeit dar.

Felder
create_time

Timestamp

[Nur Ausgabe] Die Zeit, zu der die Vorgang erstellt wurde.

end_time

Timestamp

[Nur Ausgabe] Der Zeitpunkt, zu dem der Vorgang abgeschlossen wurde.

target

string

Nur Ausgabe. Serverdefinierter Ressourcenpfad für das Ziel des Vorgangs.

verb

string

Nur Ausgabe. Name des vom Vorgang ausgeführten Verbs.

status_detail

string

Nur Ausgabe. Lesbarer Status des Vorgangs, falls vorhanden.

cancel_requested

bool

Nur Ausgabe. Gibt an, ob der Nutzer einen Abbruch angefordert hat. Vorgänge, die erfolgreich abgebrochen wurden, haben den Wert [Operation.error][] mit einem google.rpc.Status.code von 1, was Code.CANCELLED entspricht.

api_version

string

Nur Ausgabe. Zum Starten des Vorgangs verwendete API-Version.

ResourceManifest

ResourceManifest stellt eine einzelne Kubernetes-Ressource dar, die auf den Cluster angewendet werden soll.

Felder
manifest

string

YAML-Manifest der Ressource.

cluster_scoped

bool

Ob die im Manifest angegebene Ressource cluster_scoped ist. Wenn kein Wert festgelegt ist, wird davon ausgegangen, dass das Manifest Namespace-bezogen ist.

Dieses Feld wird für die REST-Zuordnung verwendet, wenn die Ressource in einem Cluster angewendet wird.

ResourceOptions

ResourceOptions stellen Optionen für die Generierung von Kubernetes-Ressourcen dar.

Felder
connect_version

string

Optional. Die Connect-Agent-Version, die für connect_resources verwendet werden soll. Die Standardeinstellung ist die neueste GKE Connect-Version. Die Version muss eine derzeit unterstützte Version sein. Veraltete Versionen werden abgelehnt.

v1beta1_crd

bool

Optional. Verwenden Sie apiextensions/v1beta1 anstelle von apiextensions/v1 für CustomResourceDefinition-Ressourcen. Diese Option sollte für Cluster mit Kubernetes API-Serverversionen < 1.16 festgelegt werden.

k8s_version

string

Optional. Hauptversion des Kubernetes-Clusters. Damit wird lediglich ermittelt, welche Version für die CustomResourceDefinition-Ressourcen (apiextensions/v1beta1 oder apiextensions/v1) verwendet werden soll.

TypeMeta

TypeMeta sind die Typinformationen, die für das Unmarshalling von Kubernetes-Ressourcen im Manifest erforderlich sind.

Felder
kind

string

Art der Ressource (z. B. Bereitstellung).

api_version

string

APIVersion der Ressource (z.B. v1).

UpdateMembershipRequest

Anfragenachricht für die Methode GkeHubMembershipService.UpdateMembership.

Felder
name

string

Erforderlich. Der Name der Mitgliedschaftsressource im Format projects/[project_id]/locations/global/memberships/[membership_id].

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource name erforderlich:

  • gkehub.memberships.update
update_mask

FieldMask

Erforderlich. Maske der zu aktualisierenden Felder. In dieser Maske muss mindestens ein Feldpfad angegeben werden.

resource

Membership

Erforderlich. Nur in „update_mask“ angegebene Felder werden aktualisiert. Wenn Sie ein Feld in „update_mask“ angeben, aber hier keinen Wert angeben, wird dieses Feld gelöscht. Wenn Sie ein Zuordnungsfeld aktualisieren, setzen Sie den Wert eines Schlüssels auf null oder einen leeren String, um den Schlüssel aus der Zuordnung zu löschen. Es ist nicht möglich, den Wert eines Schlüssels auf einen leeren String zu aktualisieren. Wenn Sie „update_mask“ als speziellen Pfad „*“ angeben, werden alle vom Nutzer änderbaren Felder vollständig ersetzt, sodass sie mit resource übereinstimmen.

request_id

string

Optional. Eine Anfrage-ID zur Identifizierung von Anfragen. Geben Sie eine eindeutige Anfrage-ID an, damit der Server die Anfrage ignoriert, falls sie bereits abgeschlossen wurde, falls Sie Ihre Anfrage wiederholen müssen. Der Server gewährleistet dies für mindestens 60 Minuten nach der ersten Anfrage.

Stellen Sie sich beispielsweise eine Situation vor, in der Sie eine erste Anfrage stellen und diese das Zeitlimit überschreitet. Wenn Sie die Anfrage mit derselben Anfrage-ID noch einmal senden, kann der Server prüfen, ob der ursprüngliche Vorgang mit derselben Anfrage-ID empfangen wurde. Ist dies der Fall, wird die zweite Anfrage ignoriert. Dadurch wird verhindert, dass Clients versehentlich doppelte Zusicherungen erstellen.

Die Anfrage-ID muss eine gültige UUID sein, mit der Ausnahme, dass null UUID nicht unterstützt wird (00000000-0000-0000-0000-000000000000).

ValidateExclusivityRequest

Die Anfrage zum Validieren des vorhandenen Status der Mitgliedschaft-CR im Cluster.

Felder
parent

string

Erforderlich. Das übergeordnete Element (Projekt und Standort), in dem die Mitgliedschaften erstellt werden. Wird im Format projects/*/locations/* angegeben.

Für die Autorisierung ist die folgende IAM-Berechtigung für die angegebene Ressource parent erforderlich:

  • gkehub.memberships.generateConnectManifest
cr_manifest

string

Optional. Die YAML-Datei der Mitgliedschafts-CR im Cluster. Leer, wenn die Mitgliedschaft-CR nicht vorhanden ist.

intended_membership

string

Erforderlich. Der beabsichtigte Mitgliedschaftsname unter parent. Diese Methode führt nur eine Validierung in Erwartung eines CreateMitgliedschaft-Aufrufs mit demselben Namen durch.

ValidateExclusivityResponse

Die Antwort auf den Ergebnisstatus der Validierung von Exklusivitätsartefakten.

Felder
status

Status

Das Validierungsergebnis.

  • OK bedeutet, dass die Exklusivität validiert wird, unter der Annahme, dass das von GenerateExclasivityManifest erzeugte Manifest erfolgreich angewendet wurde.
  • ALREADY_EXISTS bedeutet, dass die Mitgliedschafts-CRD bereits einem anderen Hub gehört. Weitere Informationen finden Sie unter status.message.