Package google.cloud.gkehub.v1

索引

GkeHub

GKE Hub 服务可将大量 Kubernetes 集群注册到 Google Cloud 上,并管理可对这些集群执行的一些多集群功能。

GKE Hub 服务可在以下资源上运行:

GKE Hub 目前可在全球区域和 https://cloud.google.com/compute/docs/regions-zones 中指定的所有区域使用,具体如下:针对特征 (feature),只能在全球区域使用;对于会员资格 (membership),则可在全球区域和上述所有区域使用。

成员资格的管理工作非常重要:在处理成员资格资源时,建议尽可能使用 Google 提供的客户端库或工具。

CreateFeature

rpc CreateFeature(CreateFeatureRequest) returns (Operation)

添加新特征。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

CreateFleet

rpc CreateFleet(CreateFleetRequest) returns (Operation)

创建舰队。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

CreateMembership

rpc CreateMembership(CreateMembershipRequest) returns (Operation)

创建新成员资格。

目前只有 Google Cloud 上的 GKE 集群支持此功能。如需注册其他集群,请按照 https://cloud.google.com/kubernetes-engine/enterprise/multicluster-management/connect/registering-a-cluster 中的说明执行操作。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

CreateMembershipBinding

rpc CreateMembershipBinding(CreateMembershipBindingRequest) returns (Operation)

创建 MembershipBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

CreateScope

rpc CreateScope(CreateScopeRequest) returns (Operation)

创建范围。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

CreateScopeNamespace

rpc CreateScopeNamespace(CreateScopeNamespaceRequest) returns (Operation)

创建舰队命名空间。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

CreateScopeRBACRoleBinding

rpc CreateScopeRBACRoleBinding(CreateScopeRBACRoleBindingRequest) returns (Operation)

创建范围 RBACRoleBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteFeature

rpc DeleteFeature(DeleteFeatureRequest) returns (Operation)

移除特征。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteFleet

rpc DeleteFleet(DeleteFleetRequest) returns (Operation)

移除舰队。要移除的舰队中必须不存在任何成员资格。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteMembership

rpc DeleteMembership(DeleteMembershipRequest) returns (Operation)

移除成员资格。

目前只有 Google Cloud 上的 GKE 集群支持此功能。如需取消注册其他集群,请按照 https://cloud.google.com/kubernetes-engine/enterprise/multicluster-management/connect/unregistering-a-cluster 中的说明执行操作。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteMembershipBinding

rpc DeleteMembershipBinding(DeleteMembershipBindingRequest) returns (Operation)

删除 MembershipBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteScope

rpc DeleteScope(DeleteScopeRequest) returns (Operation)

删除范围。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteScopeNamespace

rpc DeleteScopeNamespace(DeleteScopeNamespaceRequest) returns (Operation)

删除舰队命名空间。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

DeleteScopeRBACRoleBinding

rpc DeleteScopeRBACRoleBinding(DeleteScopeRBACRoleBindingRequest) returns (Operation)

删除范围 RBACRoleBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GenerateConnectManifest

rpc GenerateConnectManifest(GenerateConnectManifestRequest) returns (GenerateConnectManifestResponse)

生成用于部署 GKE Connect Agent 的清单。

此方法供 Google 提供的库内部使用。大多数客户端不需要直接调用此方法。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetFeature

rpc GetFeature(GetFeatureRequest) returns (Feature)

获取单个特征的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetFleet

rpc GetFleet(GetFleetRequest) returns (Fleet)

返回舰队的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetMembership

rpc GetMembership(GetMembershipRequest) returns (Membership)

获取成员资格的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetMembershipBinding

rpc GetMembershipBinding(GetMembershipBindingRequest) returns (MembershipBinding)

返回 MembershipBinding 的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetScope

rpc GetScope(GetScopeRequest) returns (Scope)

返回范围的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetScopeNamespace

rpc GetScopeNamespace(GetScopeNamespaceRequest) returns (Namespace)

返回舰队命名空间的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

GetScopeRBACRoleBinding

rpc GetScopeRBACRoleBinding(GetScopeRBACRoleBindingRequest) returns (RBACRoleBinding)

返回范围 RBACRoleBinding 的详细信息。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListFeatures

rpc ListFeatures(ListFeaturesRequest) returns (ListFeaturesResponse)

列出给定项目和位置中的特征。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListFleets

rpc ListFleets(ListFleetsRequest) returns (ListFleetsResponse)

返回调用方有权访问的组织或项目中的所有舰队。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListMembershipBindings

rpc ListMembershipBindings(ListMembershipBindingsRequest) returns (ListMembershipBindingsResponse)

列出 MembershipBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListMemberships

rpc ListMemberships(ListMembershipsRequest) returns (ListMembershipsResponse)

列出给定项目和位置中的成员资格。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListScopeNamespaces

rpc ListScopeNamespaces(ListScopeNamespacesRequest) returns (ListScopeNamespacesResponse)

列出舰队命名空间。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListScopeRBACRoleBindings

rpc ListScopeRBACRoleBindings(ListScopeRBACRoleBindingsRequest) returns (ListScopeRBACRoleBindingsResponse)

列出所有范围 RBACRoleBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ListScopes

rpc ListScopes(ListScopesRequest) returns (ListScopesResponse)

列出范围。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateFeature

rpc UpdateFeature(UpdateFeatureRequest) returns (Operation)

更新现有特征。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateFleet

rpc UpdateFleet(UpdateFleetRequest) returns (Operation)

更新舰队。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateMembership

rpc UpdateMembership(UpdateMembershipRequest) returns (Operation)

更新现有成员资格。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateMembershipBinding

rpc UpdateMembershipBinding(UpdateMembershipBindingRequest) returns (Operation)

更新 MembershipBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateScope

rpc UpdateScope(UpdateScopeRequest) returns (Operation)

更新范围。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateScopeNamespace

rpc UpdateScopeNamespace(UpdateScopeNamespaceRequest) returns (Operation)

更新舰队命名空间。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

UpdateScopeRBACRoleBinding

rpc UpdateScopeRBACRoleBinding(UpdateScopeRBACRoleBindingRequest) returns (Operation)

更新范围 RBACRoleBinding。

授权范围

需要以下 OAuth 范围:

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

如需了解详情,请参阅身份验证概览

ApplianceCluster

ApplianceCluster 包含特定于 GDC Edge 设备集群的信息。

字段

目标主机

Authority 部分对 Google 用以识别此成员资格中身份的规则进行编码。如需了解详情,请参阅 Workload Identity 文档:https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity

字段
issuer

string

可选。JSON Web 令牌 (JWT) 的颁发者 URI。issuer 必须是以 https:// 开头且长度小于 2,000 个字符的有效网址;对于 GKE 集群,它必须使用 location 而不是 zone

如果设置了该字段,Google 将允许通过来自此颁发者的有效 OIDC 令牌在 workload_identity_pool 内进行身份验证。系统会对此 URI 执行 OIDC 发现,以验证来自该颁发者的令牌。

如果清除 issuer 字段,Workload Identity 会被停用。此外,issuer 字段不能直接修改;必须先清除该字段(会停用 Workload Identity),然后才能设置新颁发者(会重新启用 Workload Identity)。

workload_identity_pool

string

仅限输出。可在其中识别 issuer 的工作负载身份池的名称。

每个 Hub 都有一个工作负载身份池,这个身份池在属于该 Hub 的所有成员资格之间共享。对于托管在 {PROJECT_ID} 中的 Hub,工作负载池采用 {PROJECT_ID}.hub.id.goog 格式,不过在此 API 的后续版本中可能会发生变化。

identity_provider

string

仅限输出。用以代表工作负载身份池中的 issuer 的身份提供方。

oidc_jwks

bytes

可选。此成员资格的 OIDC 验证密钥,采用 JWKS 格式 (RFC 7517)。

如果设置了该字段,系统将不会对 issuer 执行 OIDC 发现,而是使用此字段验证 OIDC 令牌。

BinaryAuthorizationConfig

BinaryAuthorizationConfig 定义 Binary Authorization 功能的舰队级配置。

字段
evaluation_mode

BinaryAuthorizationConfig.EvaluationMode

可选。Binauthz 政策评估的操作模式。

policy_bindings[]

BinaryAuthorizationConfig.PolicyBinding

可选。要应用于此集群的 Binauthz 政策。

EvaluationMode

Binary Authorization 操作模式。

枚举
EVALUATION_MODE_UNSPECIFIED 默认值
DISABLED 停用 BinaryAuthorization
POLICY_BINDINGS 将 policy_bindings 中指定的政策用在 Binary Authorization 中。

PolicyBinding

要应用于此集群的 Binauthz 政策。

字段
name

string

要审核的 Binauthz 平台政策所对应资源的名称。GKE 平台政策采用以下格式:projects/{project_number}/platforms/gke/policies/{policy_id}

CommonFeatureSpec

CommonFeatureSpec 包含 Hub 级配置信息

字段

联合字段 feature_spec

feature_spec 只能是下列其中一项:

multiclusteringress

FeatureSpec

多集群 Ingress 特定规范。

appdevexperience

AppDevExperienceFeatureSpec

Appdevexperience 特定规范。

fleetobservability

FeatureSpec

FleetObservability 特征规范。

clusterupgrade

FleetSpec

ClusterUpgrade(舰队级)特征规范。

dataplanev2

FeatureSpec

DataplaneV2 特征规范。

CommonFeatureState

CommonFeatureState 包含 Hub 级特征状态信息。

字段
state

FeatureState

仅限输出。此 Hub 中特征的“运行状态”。

联合字段 feature_state

feature_state 只能是下列其中一项:

appdevexperience

AppDevExperienceFeatureState

Appdevexperience 特定状态。

fleetobservability

FeatureState

FleetObservability 特征状态。

clusterupgrade

FleetState

ClusterUpgrade 舰队级状态。

CommonFleetDefaultMemberConfigSpec

CommonFleetDefaultMemberConfigSpec 包含舰队成员资格的默认配置信息

字段

联合字段 feature_spec

feature_spec 只能是下列其中一项:

mesh

MembershipSpec

Anthos Service Mesh 特定规范

configmanagement

MembershipSpec

Config Management 特定规范。

identityservice

MembershipSpec

Identity Service 特定规范。

policycontroller

MembershipSpec

Policy Controller 规范。

ConnectAgentResource

ConnectAgentResource 表示 Connect Agent 部署的 Kubernetes 资源清单。

字段
type

TypeMeta

资源的 Kubernetes 类型。

manifest

string

资源的 YAML 清单。

CreateFeatureRequest

GkeHub.CreateFeature 方法的请求消息。

字段
parent

string

必需。将在其中创建特征的父级对象(项目和位置),采用 projects/*/locations/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.features.create
feature_id

string

要创建的特征的 ID。

resource

Feature

要创建的特征资源。

request_id

string

这是用来标识请求的请求 ID。您可以指定一个唯一的请求 ID,这样,在您必须重试请求时,服务器就会知道忽略该请求(如果该请求已完成)。服务器至少可以保证在第一次完成该请求后的 60 分钟内避免重复处理该请求。

例如,假设在您最初发出一个请求后,该请求超时,然后您使用相同的请求 ID 再次发出该请求,那么服务器便可检查是否收到了最初那个具有该请求 ID 的操作。如果收到了,服务器便会忽略这第二个请求。这样可以防止客户端意外创建重复的承诺。

请求 ID 必须是有效的 UUID,且不支持全部由零组成的 UUID(即 00000000-0000-0000-0000-000000000000)。

CreateFleetRequest

GkeHub.CreateFleet 方法的请求消息。

字段
parent

string

必需。将在其中创建舰队的父级对象(项目和位置),采用 projects/*/locations/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.fleet.create
fleet

Fleet

必需。要创建的舰队。

CreateMembershipBindingRequest

请求创建 MembershipBinding 的请求消息。

字段
parent

string

必需。将在其中创建 MembershipBinding 的父级对象(项目和位置),采用 projects/*/locations/*/memberships/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.membershipbindings.create
membership_binding

MembershipBinding

必需。要创建的 MembershipBinding。

membership_binding_id

string

必需。要为该 MembershipBinding 使用的 ID。

CreateMembershipRequest

GkeHub.CreateMembership 方法的请求消息。

字段
parent

string

必需。将在其中创建成员资格的父级对象(项目和位置),采用 projects/*/locations/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.memberships.create
membership_id

string

必需。客户端为成员资格分配的 ID。membership_id 必须是符合 RFC 1123 规范的有效 DNS 标签:

  1. 长度不超过 63 个字符
  2. 必须由小写字母数字字符或 - 构成
  3. 必须以字母数字字符开头和结尾

可以用如下正则表达式来表示:[a-z0-9]([-a-z0-9]*[a-z0-9])?,且长度不超过 63 个字符。

resource

Membership

必需。要创建的成员资格。

request_id

string

可选。这是用来标识请求的请求 ID。您可以指定一个唯一的请求 ID,这样,在您必须重试请求时,服务器就会知道忽略该请求(如果该请求已完成)。服务器至少可以保证在第一次完成该请求后的 60 分钟内避免重复处理该请求。

例如,假设在您最初发出一个请求后,该请求超时,然后您使用相同的请求 ID 再次发出该请求,那么服务器便可检查是否收到了最初那个具有该请求 ID 的操作。如果收到了,服务器便会忽略这第二个请求。这样可以防止客户端意外创建重复的承诺。

请求 ID 必须是有效的 UUID,且不支持全部由零组成的 UUID(即 00000000-0000-0000-0000-000000000000)。

CreateScopeNamespaceRequest

请求创建舰队命名空间的请求消息。

字段
parent

string

必需。将在其中创建命名空间的父级对象(项目和位置),采用 projects/*/locations/*/scopes/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.namespaces.create
scope_namespace_id

string

必需。客户端为命名空间分配的 ID。namespace_id 必须是符合 RFC 1123 规范的有效 DNS 标签:

  1. 长度不超过 63 个字符
  2. 必须由小写字母数字字符或 - 构成
  3. 必须以字母数字字符开头和结尾

可以用如下正则表达式来表示:[a-z0-9]([-a-z0-9]*[a-z0-9])?,且长度不超过 63 个字符。

scope_namespace

Namespace

必需。要创建的舰队命名空间。

CreateScopeRBACRoleBindingRequest

请求创建 rbacrolebinding 的请求消息。

字段
parent

string

必需。将在其中创建 RBACRoleBinding 的父级对象(项目和位置),采用 projects/*/locations/*/scopes/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.rbacrolebindings.create
rbacrolebinding_id

string

必需。客户端为 RBACRoleBinding 分配的 ID。rbacrolebinding_id 必须是符合 RFC 1123 规范的有效 DNS 标签:

  1. 长度不超过 63 个字符
  2. 必须由小写字母数字字符或 - 构成
  3. 必须以字母数字字符开头和结尾

可以用如下正则表达式来表示:[a-z0-9]([-a-z0-9]*[a-z0-9])?,且长度不超过 63 个字符。

rbacrolebinding

RBACRoleBinding

必需。要创建的 rbacrolebinding。

CreateScopeRequest

请求创建范围的请求消息。

字段
parent

string

必需。将在其中创建范围的父级对象(项目和位置),采用 projects/*/locations/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.scopes.create
scope_id

string

必需。客户端为范围分配的 ID。scope_id 必须是 ????

scope

Scope

必需。要创建的范围。

DefaultClusterConfig

DefaultClusterConfig 定义要应用于在舰队中生成的所有集群的默认集群配置。

字段
security_posture_config

SecurityPostureConfig

为集群启用/停用 Security Posture 功能。

binary_authorization_config

BinaryAuthorizationConfig

可选。为集群启用/停用 Binary Authorization 功能。

DeleteFeatureRequest

GkeHub.DeleteFeature 方法的请求消息。

字段
name

string

必需。特征资源的名称,格式为 projects/*/locations/*/features/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.features.delete
force

bool

如果设置为 true,删除操作将忽略此特征的所有未完成资源(在这种情况下,FeatureState.has_resources 值为 true);系统不会以任何方式清理或修改这些资源。

request_id

string

可选。这是用来标识请求的请求 ID。您可以指定一个唯一的请求 ID,这样,在您必须重试请求时,服务器就会知道忽略该请求(如果该请求已完成)。服务器至少可以保证在第一次完成该请求后的 60 分钟内避免重复处理该请求。

例如,假设在您最初发出一个请求后,该请求超时,然后您使用相同的请求 ID 再次发出该请求,那么服务器便可检查是否收到了最初那个具有该请求 ID 的操作。如果收到了,服务器便会忽略这第二个请求。这样可以防止客户端意外创建重复的承诺。

请求 ID 必须是有效的 UUID,且不支持全部由零组成的 UUID(即 00000000-0000-0000-0000-000000000000)。

DeleteFleetRequest

GkeHub.DeleteFleet 方法的请求消息。

字段
name

string

必需。舰队资源的名称,格式为 projects/*/locations/*/fleets/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.fleet.delete

DeleteMembershipBindingRequest

请求删除绑定的请求消息。

字段
name

string

必需。MembershipBinding 资源的名称,格式为 projects/*/locations/*/memberships/*/bindings/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.membershipbindings.get

DeleteMembershipRequest

GkeHub.DeleteMembership 方法的请求消息。

字段
name

string

必需。成员资格资源的名称,格式为 projects/*/locations/*/memberships/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.memberships.delete
request_id

string

可选。这是用来标识请求的请求 ID。您可以指定一个唯一的请求 ID,这样,在您必须重试请求时,服务器就会知道忽略该请求(如果该请求已完成)。服务器至少可以保证在第一次完成该请求后的 60 分钟内避免重复处理该请求。

例如,假设在您最初发出一个请求后,该请求超时,然后您使用相同的请求 ID 再次发出该请求,那么服务器便可检查是否收到了最初那个具有该请求 ID 的操作。如果收到了,服务器便会忽略这第二个请求。这样可以防止客户端意外创建重复的承诺。

请求 ID 必须是有效的 UUID,且不支持全部由零组成的 UUID(即 00000000-0000-0000-0000-000000000000)。

force

bool

可选。如果设置为 true,则此成员资格中的所有子资源也会被删除。否则,只有当成员资格没有子资源时,请求才有效。

DeleteScopeNamespaceRequest

请求删除舰队命名空间的请求消息。

字段
name

string

必需。命名空间资源的名称,格式为 projects/*/locations/*/scopes/*/namespaces/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.namespaces.delete

DeleteScopeRBACRoleBindingRequest

请求删除范围 RBACRoleBinding 的请求消息。

字段
name

string

必需。RBACRoleBinding 资源的名称,格式为 projects/*/locations/*/scopes/*/rbacrolebindings/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.rbacrolebindings.delete

DeleteScopeRequest

请求删除范围的请求消息。

字段
name

string

必需。范围资源的名称,格式为 projects/*/locations/*/scopes/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.scopes.delete

EdgeCluster

EdgeCluster 包含特定于 Google 边缘集群的信息。

字段

特征

Feature 可定义任何 Hub 特征的设置和状态。

字段
name

string

仅限输出。此特征资源的完整唯一名称,格式为 projects/*/locations/*/features/*

labels

map<string, string>

此特征的标签。

resource_state

FeatureResourceState

仅限输出。特征资源本身的状态。

spec

CommonFeatureSpec

可选。Hub 级特征配置。如果此特征不支持任何 Hub 级配置,则可不使用此字段。

membership_specs

map<string, MembershipFeatureSpec>

可选。此特征的成员资格特定配置。如果此特征不支持任何基于成员资格的配置,则可不使用此字段。

可通过相应键来指定要应用配置的成员资格,格式如下:

projects/{p}/locations/{l}/memberships/{m}

其中,{p} 是一个项目,{l} 是一个有效位置,{m} 则是此项目中该位置的一个有效成员资格。{p} 对应于特征的项目。

{p} 将始终以项目编号形式返回,但在输入阶段也支持输入项目 ID。如果在映射中指定了同一个成员资格两次(即分别采用项目 ID 形式和项目编号形式),则只有其中一个条目会被保存下来,但无法保证确切是哪一个条目将被保存。因此,建议在更改特征时对所有条目使用相同的格式。

state

CommonFeatureState

仅限输出。Hub 级特征状态。

membership_states

map<string, MembershipFeatureState>

仅限输出。特定于成员资格的特征状态。如果此特征报告任何基于成员资格的状态,则可不使用此字段。

可通过相应键来指定要应用状态的成员资格,格式如下:

projects/{p}/locations/{l}/memberships/{m}

其中,{p} 是一个项目编号,{l} 是一个有效位置,{m} 则是此项目中该位置的一个有效成员资格。{p} 必须对应于特征的项目编号。

create_time

Timestamp

仅限输出。特征资源的创建时间。

update_time

Timestamp

仅限输出。特征资源的上次更新时间。

delete_time

Timestamp

仅限输出。特征资源被删除的时间。

fleet_default_member_config

CommonFleetDefaultMemberConfigSpec

可选。要应用于舰队所有成员资格的特征配置。

scope_specs

map<string, ScopeFeatureSpec>

可选。此特征的范围特定配置。如果此特征不支持任何基于范围的配置,则可不使用此字段。

可通过相应键来指定要应用配置的范围,格式如下:

projects/{p}/locations/global/scopes/{s}

其中,{p} 是相应项目,{s} 是此项目中的一个有效范围。{p} 对应于特征的项目。

{p} 将始终以项目编号形式返回,但在输入阶段也支持输入项目 ID。如果在映射中指定了同一个范围两次(即分别采用项目 ID 形式和项目编号形式),则只有其中一个条目会被保存下来,但无法保证确切是哪一个条目将被保存。因此,建议在更改特征时对所有条目使用相同的格式。

scope_states

map<string, ScopeFeatureState>

仅限输出。特定于范围的特征状态。如果此特征报告任何基于范围的状态,则可不使用此字段。

可通过相应键来指定要应用状态的范围,格式如下:

projects/{p}/locations/global/scopes/{s}

其中,{p} 是相应项目,{s} 是此项目中的一个有效范围。{p} 对应于特征的项目。

FeatureResourceState

FeatureResourceState 定义 GkeHub API 中特征资源的状态。请参阅 FeatureState,了解 Hub 中以及各成员资格的特征的“运行状态”。

字段
state

FeatureResourceState.State

Hub API 中特征资源的当前状态。

状态

State 定义特征的生命周期状态。

枚举
STATE_UNSPECIFIED 状态未知或未设置。
ENABLING 正在启用特征,并且正在创建特征资源。该阶段完成后,此 Hub 中将启用相应特征。
ACTIVE 此 Hub 中已启用相应特征,并且特征资源完全就绪。
DISABLING 正在此 Hub 中停用特征,并且正在删除相应特征资源。
UPDATING 正在更新特征资源。
SERVICE_UPDATING Hub 服务正在更新特征资源。

FeatureState

FeatureState 定义特征的概要状态;根据具体情境,可用于在环境级别或基于具体的成员资格定义特征的状态。

字段
code

FeatureState.Code

此特征的机器可读概要状态。

description

string

人类可读的当前状态说明。

update_time

Timestamp

此状态及任何特定于特征的相关详细信息的更新时间。

代码

Code 定义特征的机器可读概要状态。

枚举
CODE_UNSPECIFIED 未知或未设置。
OK 特征正常运行。
WARNING 特征遇到问题,处于降级运行状态。特征可能需要干预才能恢复正常运行。有关详情,请参阅相应说明及任何特定于特征的相关详细信息。
ERROR 特征未运行或处于严重降级状态。特征可能需要干预才能恢复正常运行。有关详情,请参阅相应说明及任何特定于特征的相关详细信息。

舰队

Fleet 包含舰队级元数据和配置。

字段
name

string

仅限输出。此舰队的完整唯一资源名称,格式为 projects/{project}/locations/{location}/fleets/{fleet}

每个 Google Cloud 项目最多只能有一项名为“default”的舰队资源。

display_name

string

可选。用户指定的舰队显示名称。该名称(如有)的长度必须介于 4 到 30 个字符之间。允许使用的字符包括:小写字母和大写字母、数字、连字符、单引号、双引号、空格和感叹号。

示例:Production Fleet

create_time

Timestamp

仅限输出。舰队的创建时间。

update_time

Timestamp

仅限输出。舰队的上次更新时间。

delete_time

Timestamp

仅限输出。舰队被删除的时间。

uid

string

仅限输出。Google 为此资源生成的 UUID;该 UUID 在所有舰队资源中是唯一的。如果删除了某个舰队资源并创建了另一个同名的资源,则该资源会获得一个不同的 uid。

state

FleetLifecycleState

仅限输出。命名空间资源的状态。

default_cluster_config

DefaultClusterConfig

可选。要应用于整个舰队的默认集群配置。

labels

map<string, string>

可选。此舰队的标签。

FleetLifecycleState

FleetLifecycleState 定义舰队资源的状态。

字段
code

FleetLifecycleState.Code

仅限输出。舰队资源的当前状态。

代码

Code 定义舰队资源的状态。

枚举
CODE_UNSPECIFIED 未设置代码。
CREATING 正在创建舰队。
READY 舰队处于活跃状态。
DELETING 正在删除舰队。
UPDATING 正在更新舰队。

GenerateConnectManifestRequest

GkeHub.GenerateConnectManifest 方法的请求消息。 。

字段
name

string

必需。Agent 要关联的成员资格资源的名称,格式为 projects/*/locations/*/memberships/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.memberships.generateConnectManifest
namespace

string

可选。GKE Connect Agent 资源的命名空间。默认值为 gke-connect

Connect Agent 在默认命名空间中运行时会自动获得授权;否则,必须通过额外的 IAM 绑定进行明确授权。

proxy

bytes

可选。代理的 URI(如果从 Agent 连接到 gkeconnect.googleapis.com 需要使用代理);必须采用 http(s)://{proxy_address} 格式,具体取决于代理支持的网络协议(HTTP 或 HTTPS)。设置后,系统会通过 HTTP(S) 代理定向 Connect Agent 的出站流量。

version

string

可选。要使用的 Connect Agent 版本。默认为最新版本。

is_upgrade

bool

可选。如果设为 true,则只会生成用于升级的资源,某些专为安装而生成的资源(例如 Secret)将被排除在外。

registry

string

可选。要从中提取 Connect Agent 映像的注册表。默认为 gcr.io/gkeconnect。

image_pull_secret_content

bytes

可选。注册表的映像拉取 Secret 内容(如果非公开)。

GenerateConnectManifestResponse

GenerateConnectManifestResponse 包含用于安装/升级 Connect Agent 的清单信息。

字段
manifest[]

ConnectAgentResource

需要应用于集群以安装/升级 GKE Connect Agent 的 Kubernetes 资源的有序列表。

GetFeatureRequest

GkeHub.GetFeature 方法的请求消息。

字段
name

string

必需。特征资源的名称,格式为 projects/*/locations/*/features/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.features.get

GetFleetRequest

GkeHub.GetFleet 方法的请求消息。

字段
name

string

必需。舰队资源的名称,格式为 projects/*/locations/*/fleets/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.fleet.get

GetMembershipBindingRequest

GkeHub.GetMembershipBinding 方法的请求消息。

字段
name

string

必需。MembershipBinding 资源的名称,格式为 projects/*/locations/*/memberships/*/bindings/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.membershipbindings.get

GetMembershipRequest

GkeHub.GetMembership 方法的请求消息。

字段
name

string

必需。成员资格资源的名称,格式为 projects/*/locations/*/memberships/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.memberships.get

GetScopeNamespaceRequest

GkeHub.GetNamespace 方法的请求消息。

字段
name

string

必需。命名空间资源的名称,格式为 projects/*/locations/*/scopes/*/namespaces/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.namespaces.get

GetScopeRBACRoleBindingRequest

GkeHub.GetScopeRBACRoleBinding 方法的请求消息。

字段
name

string

必需。RBACRoleBinding 资源的名称,格式为 projects/*/locations/*/scopes/*/rbacrolebindings/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.rbacrolebindings.get

GetScopeRequest

GkeHub.GetScope 方法的请求消息。

字段
name

string

必需。范围资源的名称,格式为 projects/*/locations/*/scopes/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.scopes.get

GkeCluster

GkeCluster 包含特定于 GKE 集群的信息。

字段
cluster_missing

bool

仅限输出。如果设置了 cluster_missing,则表示该 GKE 集群不再存在于 GKE 控制平面中。

KubernetesMetadata

KubernetesMetadata 为成员资格提供代表 Kubernetes 集群的信息性元数据。

字段
kubernetes_api_server_version

string

仅限输出。通过 /version 获得的 Kubernetes API 服务器版本字符串。

node_provider_id

string

仅限输出。通过 Kubernetes 端点上节点列表中的第一个节点获得的节点提供方 ID。在支持零节点集群的 Kubernetes 平台(如 GKE-on-GCP)上,node_count 将为零,且 node_provider_id 将为空。

node_count

int32

仅限输出。通过相应 Kubernetes 节点资源数获得的节点数量。

vcpu_count

int32

仅供输出。通过相应 Kubernetes 节点资源数获得的 vCPU 数量。

memory_mb

int32

仅限输出。通过所有 Kubernetes 节点资源总数获得的总内存容量(以 MB 为单位)。

update_time

Timestamp

仅限输出。这些详细信息的上次更新时间。此 update_time 与成员资格级 update_time 不同,因为 EndpointDetails 是在 API 使用方内部更新的。

KubernetesResource

KubernetesResource 包含集群中成员资格 Kubernetes 资源的 YAML 清单和配置。在完成 CreateMembership 或 UpdateMembership 操作之后,需要在集群中重新应用这些资源。

字段
membership_cr_manifest

string

仅限输入。成员资格 CR 的 YAML 表示法。对于 Hub 可以直接读取 CR 的 GKE 集群,此字段会被忽略。

调用方应在执行 CreateMembership 或 UpdateMembership 操作期间提供集群中当前存在的 CR;如果不存在 CR,则将此字段留空。可通过 CR 清单验证该集群是否尚未被其他成员资格注册。

membership_resources[]

ResourceManifest

仅限输出。在创建成员资格后以及在每次更新成员资格后需要向集群应用的其他 Kubernetes 资源。

只有在执行 CreateMembership 或 UpdateMembership 操作期间通过长时间运行的成功操作返回的成员资格中才会填充此字段。在常规的 GetMembership 或 ListMembership 请求期间不会填充该字段。要在初始注册后获取资源清单,调用方应使用空字段掩码进行 UpdateMembership 调用。

connect_resources[]

ResourceManifest

仅限输出。用于安装 GKE Connect Agent 的 Kubernetes 资源

只有在执行 CreateMembership 或 UpdateMembership 操作期间通过长时间运行的成功操作返回的成员资格中才会填充此字段。在常规的 GetMembership 或 ListMembership 请求期间不会填充该字段。要在初始注册后获取资源清单,调用方应使用空字段掩码进行 UpdateMembership 调用。

resource_options

ResourceOptions

可选。用于生成 Kubernetes 资源的选项。

ListFeaturesRequest

GkeHub.ListFeatures 方法的请求消息。

字段
parent

string

必需。要列出其中特征的父级对象(项目和位置),采用 projects/*/locations/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.features.list
page_size

int32

在请求返回一“页”资源时,page_size 指定要返回的资源数量。如果未指定或设为 0,则返回所有资源。

page_token

string

上一次 ListFeatures 调用返回的令牌,用于指定列表中要继续列出资源的位置。

filter

string

列出与过滤表达式(需遵循 https://google.aip.dev/160 中列出的语法)匹配的特征。

示例:

  • 项目“foo-proj”中名为“servicemesh”的特征:
  name = "projects/foo-proj/locations/global/features/servicemesh"
  • 具有名为 foo 的标签的特征:
  labels.foo:*
  • 具有名为 foo 且其值为 bar 的标签的特征:
  labels.foo = bar
order_by

string

用于对比和用于对输出进行排序的一个或多个字段。请参阅 https://google.aip.dev/132#ordering

ListFeaturesResponse

GkeHub.ListFeatures 方法的响应消息。

字段
resources[]

Feature

匹配特征的列表

next_page_token

string

用于从 ListFeatures 方法请求下一页资源的令牌。如果是空字符串值,则表示没有更多资源要返回。

ListFleetsRequest

GkeHub.ListFleets 方法的请求消息。

字段
parent

string

必需。要列出其下舰队的组织或项目,格式为 organizations/*/locations/*projects/*/locations/*

page_token

string

可选。从之前的 ListFleets 调用接收的页面令牌。利用其进行后续页面检索。

进行分页时,提供给 ListFleets 的所有其他参数必须与提供页面令牌的调用匹配。

page_size

int32

可选。要返回的舰队数量上限。服务返回的值可能小于此值。如果未指定,则最多返回 200 个舰队。最大值为 1,000;大于 1,000 的值将被强制转换为 1,000。

ListFleetsResponse

GkeHub.ListFleetsResponse 方法的响应消息。

字段
fleets[]

Fleet

匹配舰队的列表。

next_page_token

string

可作为 page_token 发送并用于检索下一页的令牌。如果省略此字段,则不存在后续页面。 令牌的有效期为 1 小时。

ListMembershipBindingsRequest

请求列出 MembershipBinding 的请求消息。

字段
parent

string

必需。要列出其下 MembershipBinding 的父级 Membership,采用 projects/*/locations/*/memberships/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.membershipbindings.list
page_size

int32

可选。在请求返回一“页”资源时,page_size 指定要返回的资源数量。如果未指定或设为 0,则返回所有资源。

page_token

string

可选。上一次 ListMembershipBindings 调用返回的令牌,用于指定列表中要继续列出资源的位置。

filter

string

可选。列出与过滤表达式(需遵循 https://google.aip.dev/160 中列出的语法)匹配的 MembershipBinding。

ListMembershipBindingsResponse

MembershipBinding 列表。

字段
membership_bindings[]

MembershipBinding

membership_bindings 列表

next_page_token

string

用于从 ListMembershipBindings 方法请求下一页资源的令牌。如果是空字符串值,则表示没有更多资源要返回。

ListMembershipsRequest

GkeHub.ListMemberships 方法的请求消息。

字段
parent

string

必需。要列出其中成员资格的父级对象(项目和位置),采用 projects/*/locations/* 格式。projects/*/locations/- 会列出所有区域中的成员资格。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.memberships.list
page_size

int32

可选。在请求返回一“页”资源时,page_size 指定要返回的资源数量。如果未指定或设为 0,则返回所有资源。

page_token

string

可选。上一次 ListMemberships 调用返回的令牌,用于指定列表中要继续列出资源的位置。

filter

string

可选。列出与过滤表达式(需遵循 https://google.aip.dev/160 中列出的语法)匹配的成员资格。

示例:

  • 位于项目 foo-proj 和位置 global 且名为 bar
  name = "projects/foo-proj/locations/global/membership/bar"
  • 具有名为 foo 的标签的成员资格:
  labels.foo:*
  • 具有名为 foo 且其值为 bar 的标签的成员资格:
  labels.foo = bar
  • 处于“正在创建”状态的成员资格:
  state = CREATING
order_by

string

可选。用于对比和用于对输出进行排序的一个或多个字段。请参阅 https://google.aip.dev/132#ordering

ListMembershipsResponse

GkeHub.ListMemberships 方法的响应消息。

字段
resources[]

Membership

匹配成员资格的列表。

next_page_token

string

用于从 ListMemberships 方法请求下一页资源的令牌。如果是空字符串值,则表示没有更多资源要返回。

unreachable[]

string

提取此列表时无法访问的位置的列表。

ListScopeNamespacesRequest

请求列出舰队命名空间的请求消息。

字段
parent

string

必需。要列出其中特征的父级对象(项目和位置),采用 projects/*/locations/*/scopes/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.namespaces.list
page_size

int32

可选。在请求返回一“页”资源时,page_size 指定要返回的资源数量。如果未指定或设为 0,则返回所有资源。

page_token

string

可选。上一次 ListFeatures 调用返回的令牌,用于指定列表中要继续列出资源的位置。

ListScopeNamespacesResponse

舰队命名空间的列表。

字段
scope_namespaces[]

Namespace

舰队命名空间的列表

next_page_token

string

用于从 ListNamespaces 方法请求下一页资源的令牌。如果是空字符串值,则表示没有更多资源要返回。

ListScopeRBACRoleBindingsRequest

请求列出范围 RBACRoleBinding 的请求消息。

字段
parent

string

必需。要列出其中特征的父级对象(项目和位置),采用 projects/*/locations/*/scopes/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.rbacrolebindings.list
page_size

int32

可选。在请求返回一“页”资源时,page_size 指定要返回的资源数量。如果未指定或设为 0,则返回所有资源。

page_token

string

可选。上一次 ListScopeRBACRoleBindings 调用返回的令牌,用于指定列表中要继续列出资源的位置。

ListScopeRBACRoleBindingsResponse

范围 RBACRoleBinding 的列表。

字段
rbacrolebindings[]

RBACRoleBinding

范围 RBACRoleBinding 的列表。

next_page_token

string

用于从 ListScopeRBACRoleBindings 方法请求下一页资源的令牌。如果是空字符串值,则表示没有更多资源要返回。

ListScopesRequest

请求列出范围的请求消息。

字段
parent

string

必需。要列出其中范围的父级对象(项目和位置),采用 projects/*/locations/* 格式。

必须对指定的资源 parent 具有以下 IAM 权限才能进行授权:

  • gkehub.scopes.list
page_size

int32

可选。在请求返回一“页”资源时,page_size 指定要返回的资源数量。如果未指定或设为 0,则返回所有资源。

page_token

string

可选。上一次 ListScopes 调用返回的令牌,用于指定列表中要继续列出资源的位置。

ListScopesResponse

范围列表。

字段
scopes[]

Scope

范围列表

next_page_token

string

用于从 ListScopes 方法请求下一页资源的令牌。如果是空字符串值,则表示没有更多资源要返回。

会员

Membership 包含有关成员集群的信息。

字段
name

string

仅限输出。此成员资格资源的完整唯一名称,格式为 projects/*/locations/*/memberships/{membership_id},在创建期间设置。

membership_id 必须是符合 RFC 1123 规范的有效 DNS 标签:

  1. 长度不超过 63 个字符
  2. 必须由小写字母数字字符或 - 构成
  3. 必须以字母数字字符开头和结尾

可以用如下正则表达式来表示:[a-z0-9]([-a-z0-9]*[a-z0-9])?,且长度不超过 63 个字符。

labels

map<string, string>

可选。此成员资格的标签。

description

string

仅限输出。此成员资格的说明,长度不超过 63 个字符。必须符合如下正则表达式:[a-zA-Z0-9][a-zA-Z0-9_\-\.\ ]*

此字段只在旧版本中使用。

state

MembershipState

仅限输出。成员资格资源的状态。

create_time

Timestamp

仅限输出。成员资格的创建时间。

update_time

Timestamp

仅限输出。成员资格的上次更新时间。

delete_time

Timestamp

仅限输出。成员资格被删除的时间。

external_id

string

可选。为此成员资格在外部生成且在外部进行管理的 ID。此 ID 在创建后可以修改,但不建议这样做。

此 ID 必须符合如下正则表达式:[a-zA-Z0-9][a-zA-Z0-9_\-\.]*

如果此成员资格代表的是一个 Kubernetes 集群,则此值应设置为 kube-system 命名空间对象的 UID。

last_connection_time

Timestamp

仅限输出。对于使用 Connect 的集群,则该字段是最近与 Google Cloud 建立连接时的时间戳。此时间每隔几分钟更新一次,不是实时更新的。对于未使用 GKE Connect 或从未成功连接的集群,此字段将处于未设置状态。

unique_id

string

仅限输出。Google 为此资源生成的 UUID;该 UUID 在所有成员资格资源中是唯一的。如果删除了某个成员资格资源并创建了另一个同名的资源,则该资源会获得一个不同的 unique_id。

authority

Authority

可选。指定如何识别此成员资格中的工作负载。如需了解详情,请参阅有关 Workload Identity 的文档:https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity

monitoring_config

MonitoringConfig

可选。此成员资格的监控配置信息。

联合字段 type。由此成员资格的 type 表示的资源类型只能是以下其中一项:
endpoint

MembershipEndpoint

可选。用于访问此成员的端点信息。

MembershipBinding

MembershipBinding 是成员资格的子资源,表示成员资格所绑定的舰队范围(或进一步的舰队资源)。

字段
name

string

MembershipBinding 本身 projects/{project}/locations/{location}/memberships/{membership}/bindings/{membershipbinding} 的资源名称

uid

string

仅限输出。Google 为此资源生成的 UUID;该 UUID 在所有 MembershipBinding 资源中是唯一的。如果删除了某个 MembershipBinding 资源并创建了另一个同名的资源,则该资源会获得一个不同的 uid。

create_time

Timestamp

仅限输出。成员资格绑定的创建时间。

update_time

Timestamp

仅限输出。成员资格绑定的上次更新时间。

delete_time

Timestamp

仅限输出。成员资格绑定被删除的时间。

state

MembershipBindingLifecycleState

仅限输出。成员资格绑定资源的状态。

labels

map<string, string>

可选。此 MembershipBinding 的标签。

联合字段 target。指定该 MembershipBinding 的类型。target 只能是下列其中一项:
scope

string

范围资源的名称,格式为 projects/*/locations/*/scopes/*

MembershipBindingLifecycleState

MembershipBindingLifecycleState 定义绑定资源的状态。

字段
code

MembershipBindingLifecycleState.Code

仅限输出。MembershipBinding 资源的当前状态。

代码

Code 定义 MembershipBinding 资源的状态。

枚举
CODE_UNSPECIFIED 未设置代码。
CREATING 正在创建 MembershipBinding。
READY MembershipBinding 处于活跃状态。
DELETING 正在删除 MembershipBinding。
UPDATING 正在更新 MembershipBinding。

MembershipEndpoint

MembershipEndpoint 包含访问 Kubernetes API、端点以及任何其他 Kubernetes 元数据所需的信息。

字段
kubernetes_metadata

KubernetesMetadata

仅限输出。一些有用的 Kubernetes 特定元数据。

kubernetes_resource

KubernetesResource

可选。应该在稳定状态下应用于正确注册的集群的集群内 Kubernetes 资源。这些资源应满足以下要求:

  • 确保只向一个 Hub 成员资格注册该集群,即该集群专属于一个成员资格。
  • 能够传播“成员资格授权”字段中提供的工作负载池信息。
  • 确保对默认的 Hub 功能进行正确的初始配置。
google_managed

bool

仅限输出。指定此成员资格的生命周期是否由 Google 集群平台服务进行管理。

联合字段 type。所注册集群的集群信息。type 只能是下列其中一项:
gke_cluster

GkeCluster

可选。GKE-on-GCP 集群的特定信息。

on_prem_cluster

OnPremCluster

可选。GKE On-Prem 集群的特定信息。没有 resourceLink 的本地用户集群不能使用此字段,因为这类集群的“type”为 nil。

multi_cloud_cluster

MultiCloudCluster

可选。GKE Multi-Cloud 集群的特定信息。

edge_cluster

EdgeCluster

可选。Google 边缘集群的特定信息。

appliance_cluster

ApplianceCluster

可选。GDC Edge 设备集群的特定信息。

MembershipFeatureSpec

MembershipFeatureSpec 包含单个成员资格的配置信息。注意:特征名称请采用蛇形命名法。

字段
origin

MembershipFeatureSpec.Origin

指定该基于成员资格的规范是否继承自舰队级默认配置。用户可以通过替换成员资格配置(即隐式更新为 USER)或明确设置为 FLEET 来更新此字段。

联合字段 feature_spec

feature_spec 只能是下列其中一项:

configmanagement

MembershipSpec

Config Management 特定规范。

identityservice

MembershipSpec

Identity Service 特定规范。

mesh

MembershipSpec

Anthos Service Mesh 特定规范

policycontroller

MembershipSpec

Policy Controller 规范。

fleetobservability

MembershipSpec

舰队可观测性成员资格规范

来源

Origin 定义此 MembershipFeatureSpec 的来源。

字段
type

MembershipFeatureSpec.Origin.Type

“type”指定所设置的来源类型。

类型

Type 指定保留配置的角色。

枚举
TYPE_UNSPECIFIED 类型未知或未设置。
FLEET 基于成员资格的规范继承自舰队级默认配置。
FLEET_OUT_OF_SYNC 基于成员资格的规范继承自舰队级默认配置,但目前与最新的默认配置不同步。
USER 基于成员资格的规范继承自用户规范。

MembershipFeatureState

MembershipFeatureState 包含单个成员资格的特征状态信息。

字段
state

FeatureState

单个成员资格此特征的概要状态。

联合字段 feature_state

feature_state 只能是下列其中一项:

servicemesh

MembershipState

Service Mesh 特定状态。

configmanagement

MembershipState

Config Management 特定状态。

identityservice

MembershipState

Identity Service 特定状态。

appdevexperience

AppDevExperienceFeatureState

Appdevexperience 特定状态。

policycontroller

MembershipState

Policycontroller 特定状态。

clusterupgrade

MembershipState

ClusterUpgrade 状态。

fleetobservability

MembershipState

舰队可观测性成员资格状态。

MembershipState

MembershipState 定义成员资格资源的状态。

字段
code

MembershipState.Code

仅限输出。成员资格资源的当前状态。

代码

Code 定义成员资格资源的状态。

枚举
CODE_UNSPECIFIED 未设置代码。
CREATING 正在注册集群。
READY 已注册集群。
DELETING 正在取消注册集群。
UPDATING 正在更新成员资格。
SERVICE_UPDATING Hub 服务正在更新成员资格。

MonitoringConfig

MonitoringConfig 指示舰队级应用/服务/界面如何将底层集群的指标报告给 Cloud Monitoring 服务。如果该配置为空,可以对该配置进行设置;但如果不为空,则不能直接更改该配置,以防止意外破坏指标的连续性。

字段
project_id

string

可选。要报告指标的项目

location

string

可选。要报告指标的位置

cluster

string

可选。要报告指标的集群的名称。对于 Anthos on VMWare/Baremetal/MultiCloud 集群,格式为 {cluster_type}/{cluster_name},例如:“awsClusters/cluster_1”。

kubernetes_metrics_prefix

string

可选。Kubernetes 系统指标(如果有)将带有此前缀。对于 GKE,默认为 kubernetes.io;对于 Anthos,默认为 kubernetes.io/anthos。注意:Anthos MultiCloud 目前具有 kubernetes.io 前缀,但日后将迁移到 kubernetes.io/anthos 下。

cluster_hash

string

可选。对于 GKE 和 Multicloud 集群,这是集群资源的 UUID。对于 VMWare 和 Baremetal 集群,这是 kube-system UID。

MultiCloudCluster

MultiCloudCluster 包含特定于 GKE Multi-Cloud 集群的信息。

字段
cluster_missing

bool

仅限输出。如果设置了 cluster_missing,则表示此 GKE Multi-Cloud 集群的 API (gkemulticloud.googleapis.com) 资源已不存在。

命名空间

Namespace 定义整个舰队的命名空间

字段
name

string

命名空间 projects/{project}/locations/{location}/namespaces/{namespace} 的资源名称

uid

string

仅限输出。Google 为此资源生成的 UUID;该 UUID 在所有命名空间资源中是唯一的。如果删除了某个命名空间资源并创建了另一个同名的资源,则该资源会获得一个不同的 uid。

create_time

Timestamp

仅限输出。命名空间的创建时间。

update_time

Timestamp

仅限输出。命名空间的上次更新时间。

delete_time

Timestamp

仅限输出。命名空间被删除的时间。

state

NamespaceLifecycleState

仅限输出。命名空间资源的状态。

scope

string

必需。与命名空间关联的范围

namespace_labels

map<string, string>

可选。命名空间级集群命名空间标签。 这些标签将应用于与父级范围绑定的成员集群的相关命名空间。范围级标签(舰队范围资源中的 namespace_labels)优先于命名空间级标签(如果它们共用一个键)。键和值必须符合 Kubernetes 的要求。

labels

map<string, string>

可选。此命名空间的标签。

NamespaceLifecycleState

NamespaceLifecycleState 定义命名空间资源的状态。

字段
code

NamespaceLifecycleState.Code

仅限输出。命名空间资源的当前状态。

代码

Code 定义命名空间资源的状态。

枚举
CODE_UNSPECIFIED 未设置代码。
CREATING 正在创建命名空间。
READY 命名空间处于活跃状态。
DELETING 正在删除命名空间。
UPDATING 正在更新命名空间。

OnPremCluster

OnPremCluster 包含特定于 GKE On-Prem 集群的信息。

字段
cluster_missing

bool

仅限输出。如果设置了 cluster_missing,则表示此 GKE On-Prem 集群的 API (gkeonprem.googleapis.com) 资源已不存在。

admin_cluster

bool

不可变。指定集群是否为管理员集群。

cluster_type

OnPremCluster.ClusterType

不可变。本地集群的类型。

ClusterType

ClusterType 定义本地集群的类型。

枚举
CLUSTERTYPE_UNSPECIFIED 未设置 ClusterType。
BOOTSTRAP ClusterType 是引导集群。
HYBRID ClusterType 是裸金属混合集群。
STANDALONE ClusterType 是裸金属独立集群。
USER ClusterType 是用户集群。

OperationMetadata

表示长时间运行的操作的元数据。

字段
create_time

Timestamp

仅供输出。操作的创建时间。

end_time

Timestamp

仅供输出。操作完成运行的时间。

target

string

仅限输出。由服务器定义的操作目标的资源路径。

verb

string

仅限输出。操作执行的谓词的名称。

status_detail

string

仅限输出。人类可读的操作状态(如果有)。

cancel_requested

bool

仅限输出。标识用户是否已请求取消操作。已成功取消的操作具有 [Operation.error][] 值且 google.rpc.Status.code 为 1,对应于 Code.CANCELLED

api_version

string

仅限输出。用于启动操作的 API 版本。

RBACRoleBinding

RBACRoleBinding 定义整个舰队中的 rbacrolebinding

字段
name

string

rbacrolebinding projects/{project}/locations/{location}/scopes/{scope}/rbacrolebindings/{rbacrolebinding}projects/{project}/locations/{location}/memberships/{membership}/rbacrolebindings/{rbacrolebinding} 的资源名称

uid

string

仅限输出。Google 为此资源生成的 UUID;该 UUID 在所有 rbacrolebinding 资源中是唯一的。如果删除了某个 rbacrolebinding 资源并创建了另一个同名的资源,则该资源会获得一个不同的 uid。

create_time

Timestamp

仅限输出。rbacrolebinding 的创建时间。

update_time

Timestamp

仅限输出。rbacrolebinding 的上次更新时间。

delete_time

Timestamp

仅限输出。rbacrolebinding 被删除的时间。

state

RBACRoleBindingLifecycleState

仅限输出。rbacrolebinding 资源的状态。

role

RBACRoleBinding.Role

必需。要绑定到主账号的角色

labels

map<string, string>

可选。此 RBACRolebinding 的标签。

联合字段 principal。在集群中授权的主账号(至少需要一个主账号)。设置新的主账号会自动取消设置之前的主账号。principal 只能是下列其中一项:
user

string

user 是显示给 kubernetes 集群的用户名,例如“alice”或“alice@domain.tld”

group

string

group 是显示给 Kubernetes 集群的群组。

角色

Role 定义 Kubernetes 角色的类型

字段
predefined_role

RBACRoleBinding.Role.PredefinedRoles

predefined_role 是将使用的默认 Kubernetes 角色

PredefinedRoles

PredefinedRoles 枚举了默认的 Kubernetes 角色

枚举
UNKNOWN 未知
ADMIN ADMIN 具有 EDIT 和 RBAC 权限
EDIT EDIT 能够修改除 RBAC 以外的所有资源
VIEW VIEW 只能读取资源
ANTHOS_SUPPORT ANTHOS_SUPPORT 为 Google 支持团队提供对诸多集群资源的只读权限。

RBACRoleBindingLifecycleState

RBACRoleBindingLifecycleState 定义 RbacRoleBinding 资源的状态。

字段
code

RBACRoleBindingLifecycleState.Code

仅限输出。rbacrolebinding 资源的当前状态。

代码

Code 定义 rbacrolebinding 资源的状态。

枚举
CODE_UNSPECIFIED 未设置代码。
CREATING 正在创建 rbacrolebinding。
READY rbacrolebinding 处于活跃状态。
DELETING 正在删除 rbacrolebinding。
UPDATING 正在更新 rbacrolebinding。

ResourceManifest

ResourceManifest 定义要应用于集群的单个 Kubernetes 资源。

字段
manifest

string

资源的 YAML 清单。

cluster_scoped

bool

指定清单中提供的资源是否为 cluster_scoped。如果未设置,则假定清单的范围为命名空间。

在集群中应用资源时,此字段用于 REST 映射。

ResourceOptions

ResourceOptions 定义用于生成 Kubernetes 资源的选项。

字段
connect_version

string

可选。用于 connect_resources 的 Connect Agent 版本。默认为最新的 GKE Connect 版本。必须使用当前受支持的版本,已过时的版本会被拒绝。

v1beta1_crd

bool

可选。对于 CustomResourceDefinition 资源,请使用 apiextensions/v1beta1(而不是 apiextensions/v1)。应为 Kubernetes apiserver 版本低于 1.16 的集群设置此选项。

k8s_version

string

可选。Kubernetes 集群的主要版本。此字段仅用于确定要用于 CustomResourceDefinition 资源的版本(apiextensions/v1beta1 还是 apiextensions/v1)。

范围

Scope 定义舰队中的范围。

字段
name

string

范围 projects/{project}/locations/{location}/scopes/{scope} 的资源名称

uid

string

仅限输出。Google 为此资源生成的 UUID;该 UUID 在所有范围资源中是唯一的。如果删除了某个范围资源并创建了另一个同名的资源,则该资源会获得一个不同的 uid。

create_time

Timestamp

仅限输出。范围的创建时间。

update_time

Timestamp

仅限输出。范围的上次更新时间。

delete_time

Timestamp

仅限输出。范围被删除的时间。

state

ScopeLifecycleState

仅限输出。范围资源的状态。

namespace_labels

map<string, string>

可选。范围级集群命名空间标签。 对于绑定到范围的成员集群,这些标签将应用于范围下的每个命名空间。在共用一个键的情况下,范围级标签优先于命名空间级标签(舰队命名空间资源中的 namespace_labels)。键和值必须符合 Kubernetes 的要求。

labels

map<string, string>

可选。此范围的标签。

ScopeFeatureSpec

此类型没有字段。

ScopeFeatureSpec 包含舰队范围的特征规范。

ScopeFeatureState

ScopeFeatureState 包含范围级特征状态信息。

字段
state

FeatureState

仅限输出。此范围中特征的“运行状态”。

ScopeLifecycleState

ScopeLifecycleState 定义范围资源的状态。

字段
code

ScopeLifecycleState.Code

仅限输出。范围资源的当前状态。

代码

Code 定义范围资源的状态。

枚举
CODE_UNSPECIFIED 未设置代码。
CREATING 正在创建范围。
READY 范围处于活跃状态。
DELETING 正在删除范围。
UPDATING 正在更新范围。

SecurityPostureConfig

SecurityPostureConfig 定义启用/停用 Security Posture API 功能所需的标志。

字段
mode

SecurityPostureConfig.Mode

设置 Security Posture 功能要使用的模式。

vulnerability_mode

SecurityPostureConfig.VulnerabilityMode

设置漏洞扫描要使用的模式。

模式

Mode 定义 GKE Security Posture 功能的启用模式。

枚举
MODE_UNSPECIFIED 未指定默认值。
DISABLED 在集群上停用 Security Posture 功能。
BASIC 在集群上应用 Security Posture 功能。

VulnerabilityMode

VulnerabilityMode 定义漏洞扫描的启用模式。

枚举
VULNERABILITY_MODE_UNSPECIFIED 未指定默认值。
VULNERABILITY_DISABLED 在集群上停用漏洞扫描。
VULNERABILITY_BASIC 在集群上应用基本漏洞扫描。
VULNERABILITY_ENTERPRISE 在集群上应用企业级 Security Posture 漏洞扫描功能。

TypeMeta

TypeMeta 是对清单中的 Kubernetes 资源进行内容解组所需的类型信息。

字段
kind

string

资源的种类(例如部署)。

api_version

string

资源的 APIVersion(例如 v1)。

UpdateFeatureRequest

GkeHub.UpdateFeature 方法的请求消息。

字段
name

string

必需。特征资源的名称,格式为 projects/*/locations/*/features/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.features.update
update_mask

FieldMask

要更新的字段掩码。

resource

Feature

只有 update_mask 中指定的字段会被更新。如果您在 update_mask 中指定了字段,但未在此处指定其值,则该字段将被删除。如果要更新映射字段,可将键值设置为 null 或空字符串,以从映射中删除相应键。无法将现有键值更改为空字符串。如果将 update_mask 指定为特殊路径“*”,请完全替换用户可修改的所有字段以与 resource 相匹配。

request_id

string

这是用来标识请求的请求 ID。您可以指定一个唯一的请求 ID,这样,在您必须重试请求时,服务器就会知道忽略该请求(如果该请求已完成)。服务器至少可以保证在第一次完成该请求后的 60 分钟内避免重复处理该请求。

例如,假设在您最初发出一个请求后,该请求超时,然后您使用相同的请求 ID 再次发出该请求,那么服务器便可检查是否收到了最初那个具有该请求 ID 的操作。如果收到了,服务器便会忽略这第二个请求。这样可以防止客户端意外创建重复的承诺。

请求 ID 必须是有效的 UUID,且不支持全部由零组成的 UUID(即 00000000-0000-0000-0000-000000000000)。

UpdateFleetRequest

GkeHub.UpdateFleet 方法的请求消息。

字段
fleet

Fleet

必需。要更新的舰队。

舰队对象的 name 字段标识要更新的舰队。

必须对指定的资源 fleet 具有以下 IAM 权限才能进行授权:

  • gkehub.fleet.update
update_mask

FieldMask

必需。要更新的字段。

UpdateMembershipBindingRequest

请求更新 MembershipBinding 的请求消息。

字段
membership_binding

MembershipBinding

必需。字段已被更新的 MembershipBinding 对象。

必须对指定的资源 membershipBinding 具有以下 IAM 权限才能进行授权:

  • gkehub.membershipbindings.update
update_mask

FieldMask

必需。要更新的字段。

UpdateMembershipRequest

GkeHub.UpdateMembership 方法的请求消息。

字段
name

string

必需。成员资格资源的名称,格式为 projects/*/locations/*/memberships/*

必须对指定的资源 name 具有以下 IAM 权限才能进行授权:

  • gkehub.memberships.update
update_mask

FieldMask

必需。要更新的字段掩码。

resource

Membership

必需。只有 update_mask 中指定的字段会被更新。如果您在 update_mask 中指定了字段,但未在此处指定其值,则该字段将被删除。如果要更新映射字段,可将键值设置为 null 或空字符串,以从映射中删除相应键。无法将现有键值更改为空字符串。如果将 update_mask 指定为特殊路径“*”,请完全替换用户可修改的所有字段以与 resource 相匹配。

request_id

string

可选。这是用来标识请求的请求 ID。您可以指定一个唯一的请求 ID,这样,在您必须重试请求时,服务器就会知道忽略该请求(如果该请求已完成)。服务器至少可以保证在第一次完成该请求后的 60 分钟内避免重复处理该请求。

例如,假设在您最初发出一个请求后,该请求超时,然后您使用相同的请求 ID 再次发出该请求,那么服务器便可检查是否收到了最初那个具有该请求 ID 的操作。如果收到了,服务器便会忽略这第二个请求。这样可以防止客户端意外创建重复的承诺。

请求 ID 必须是有效的 UUID,且不支持全部由零组成的 UUID(即 00000000-0000-0000-0000-000000000000)。

UpdateScopeNamespaceRequest

请求更新舰队命名空间的请求消息。

字段
scope_namespace

Namespace

必需。字段已被更新的命名空间。此命名空间中的“name”字段用于标识要更新的资源。给定“updated”前缀应遵循 go/proto-best-practices-checkers#keyword_conflict 中的说明

必须对指定的资源 scopeNamespace 具有以下 IAM 权限才能进行授权:

  • gkehub.namespace.update
update_mask

FieldMask

必需。要更新的字段。

UpdateScopeRBACRoleBindingRequest

请求更新范围 rbacrolebinding 的请求消息。

字段
rbacrolebinding

RBACRoleBinding

必需。字段已被更新的 rbacrolebinding。此 rbacrolebinding 中的“name”字段用于标识要更新的资源。

必须对指定的资源 rbacrolebinding 具有以下 IAM 权限才能进行授权:

  • gkehub.rbacrolebindings.update
update_mask

FieldMask

必需。要更新的字段。

UpdateScopeRequest

请求更新范围的请求消息。

字段
scope

Scope

必需。字段已被更新的范围。此命名空间中的“name”字段用于标识要更新的资源。

必须对指定的资源 scope 具有以下 IAM 权限才能进行授权:

  • gkehub.scopes.update
update_mask

FieldMask

必需。要更新的字段。