GKEHubFeature
| Property | Value |
|---|---|
| Google Cloud Service Name | GKE Hub |
| Google Cloud Service Documentation | /anthos/multicluster-management/connect/overview |
| Google Cloud REST Resource Name | v1beta1.projects.locations.features |
| Google Cloud REST Resource Documentation | https://gkehub.googleapis.com/$discovery/rest?version=v1beta |
| Config Connector Resource Short Names | gcpgkehubfeature gcpgkehubfeatures gkehubfeature |
| Config Connector Service Name | gkehub.googleapis.com |
| Config Connector Resource Fully Qualified Name | gkehubfeatures.gkehub.cnrm.cloud.google.com |
| Can Be Referenced by IAMPolicy/IAMPolicyMember | No |
| Config Connector Default Average Reconcile Interval In Seconds | 600 |
Custom Resource Definition Properties
Spec
Schema
location: string projectRef: external: string name: string namespace: string resourceID: string spec: fleetobservability: loggingConfig: defaultConfig: mode: string fleetScopeLogsConfig: mode: string multiclusteringress: configMembershipRef: external: string name: string namespace: string | Fields | |
|---|---|
|
Required |
Immutable. The location for the resource |
|
Required |
Immutable. The Project that this resource belongs to. |
|
Optional |
The project for the resource Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`). |
|
Optional |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
Optional |
Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
|
Optional |
Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default. |
|
Optional |
Optional. Hub-wide Feature configuration. If this Feature does not support any Hub-wide configuration, this field may be unused. |
|
Optional |
Fleet Observability spec. |
|
Optional |
Fleet Observability Logging-specific spec. |
|
Optional |
Specified if applying the default routing config to logs not specified in other configs. |
|
Optional |
The logs routing mode Possible values: MODE_UNSPECIFIED, COPY, MOVE |
|
Optional |
Specified if applying the routing config to all logs for all fleet scopes. |
|
Optional |
The logs routing mode Possible values: MODE_UNSPECIFIED, COPY, MOVE |
|
Optional |
Multicluster Ingress-specific spec. |
|
Required* |
|
|
Optional |
Fully-qualified Membership name which hosts the MultiClusterIngress CRD. Example: `projects/foo-proj/locations/global/memberships/bar` Allowed value: The Google Cloud resource name of a `GKEHubMembership` resource (format: `projects/{{project}}/locations/{{location}}/memberships/{{name}}`). |
|
Optional |
Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
|
Optional |
Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
* Field is required when parent field is specified
Status
Schema
conditions: - lastTransitionTime: string message: string reason: string status: string type: string createTime: string deleteTime: string observedGeneration: integer resourceState: hasResources: boolean state: string state: state: code: string description: string updateTime: string updateTime: string | Fields | |
|---|---|
conditions |
Conditions represent the latest available observation of the resource's current state. |
conditions[] |
|
conditions[].lastTransitionTime |
Last time the condition transitioned from one status to another. |
conditions[].message |
Human-readable message indicating details about last transition. |
conditions[].reason |
Unique, one-word, CamelCase reason for the condition's last transition. |
conditions[].status |
Status is the status of the condition. Can be True, False, Unknown. |
conditions[].type |
Type is the type of the condition. |
createTime |
Output only. When the Feature resource was created. |
deleteTime |
Output only. When the Feature resource was deleted. |
observedGeneration |
ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. |
resourceState |
State of the Feature resource itself. |
resourceState.hasResources |
Whether this Feature has outstanding resources that need to be cleaned up before it can be disabled. |
resourceState.state |
The current state of the Feature resource in the Hub API. Possible values: STATE_UNSPECIFIED, ENABLING, ACTIVE, DISABLING, UPDATING, SERVICE_UPDATING |
state |
Output only. The Hub-wide Feature state |
state.state |
Output only. The "running state" of the Feature in this Hub. |
state.state.code |
The high-level, machine-readable status of this Feature. Possible values: CODE_UNSPECIFIED, OK, WARNING, ERROR |
state.state.description |
A human-readable description of the current status. |
state.state.updateTime |
The time this status and any related Feature-specific details were updated. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z" |
updateTime |
Output only. When the Feature resource was last updated. |
Sample YAML(s)
Anthos Config Management Feature
# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: gkehub.cnrm.cloud.google.com/v1beta1 kind: GKEHubFeature metadata: name: gkehubfeature-sample-acmfeature labels: label-one: value-one spec: projectRef: name: gkehubfeature-dep-acmfeature location: global # The resourceID must be "configmanagement" if you want to use Anthos config # management feature. resourceID: configmanagement --- apiVersion: resourcemanager.cnrm.cloud.google.com/v1beta1 kind: Project metadata: annotations: cnrm.cloud.google.com/auto-create-network: "false" name: gkehubfeature-dep-acmfeature spec: name: Config Connector Sample folderRef: # Replace "${FOLDER_ID?}" with the numeric ID for your folder external: "${FOLDER_ID?}" billingAccountRef: # Replace "${BILLING_ACCOUNT_ID?}" with the numeric ID for your billing account external: "${BILLING_ACCOUNT_ID?}" --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-acmfeature-1 spec: resourceID: gkehub.googleapis.com projectRef: name: gkehubfeature-dep-acmfeature --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-acmfeature-2 spec: resourceID: anthosconfigmanagement.googleapis.com projectRef: name: gkehubfeature-dep-acmfeature Anthos Service Mesh Feature
# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: gkehub.cnrm.cloud.google.com/v1beta1 kind: GKEHubFeature metadata: name: gkehubfeature-sample-asm spec: projectRef: name: gkehubfeature-dep-asm location: global # The resourceID must be "servicemesh" if you want to use Anthos Service Mesh feature. resourceID: servicemesh --- apiVersion: resourcemanager.cnrm.cloud.google.com/v1beta1 kind: Project metadata: name: gkehubfeature-dep-asm spec: name: Config Connector Sample organizationRef: # Replace "${ORG_ID?}" with the numeric ID for your organization external: "${ORG_ID?}" billingAccountRef: # Replace "${BILLING_ACCOUNT_ID?}" with the numeric ID for your billing account external: "${BILLING_ACCOUNT_ID?}" --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-asm spec: resourceID: mesh.googleapis.com projectRef: name: gkehubfeature-dep-asm Multi Cluster Ingress Feature
# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: gkehub.cnrm.cloud.google.com/v1beta1 kind: GKEHubFeature metadata: name: gkehubfeature-sample-mcifeature labels: label-one: value-one spec: projectRef: name: gkehubfeature-dep-mcifeature location: global # The resourceID must be "multiclusteringress" if you want to use multi-cluster # ingress feature. resourceID: multiclusteringress spec: multiclusteringress: configMembershipRef: name: gkehubfeature-dep-mcifeature --- apiVersion: container.cnrm.cloud.google.com/v1beta1 kind: ContainerCluster metadata: annotations: cnrm.cloud.google.com/project-id: gkehubfeature-dep-mcifeature name: gkehubfeature-dep-mcifeature spec: location: us-central1-a initialNodeCount: 1 workloadIdentityConfig: # Workload Identity supports only a single namespace based on your project name. workloadPool: gkehubfeature-dep-mcifeature.svc.id.goog --- apiVersion: gkehub.cnrm.cloud.google.com/v1beta1 kind: GKEHubMembership metadata: annotations: cnrm.cloud.google.com/project-id: gkehubfeature-dep-mcifeature name: gkehubfeature-dep-mcifeature spec: location: global authority: # Issuer must contain a link to a valid JWT issuer. Your ContainerCluster is one. issuer: https://container.googleapis.com/v1/projects/gkehubfeature-dep-mcifeature/locations/us-central1-a/clusters/gkehubfeature-dep-mcifeature description: A sample GKE Hub membership endpoint: gkeCluster: resourceRef: name: gkehubfeature-dep-mcifeature --- apiVersion: resourcemanager.cnrm.cloud.google.com/v1beta1 kind: Project metadata: name: gkehubfeature-dep-mcifeature spec: name: Config Connector Sample organizationRef: # Replace "${ORG_ID?}" with the numeric ID for your organization external: "${ORG_ID?}" billingAccountRef: # Replace "${BILLING_ACCOUNT_ID?}" with the numeric ID for your billing account external: "${BILLING_ACCOUNT_ID?}" --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/deletion-policy: abandon name: gkehubfeature-dep-mcifeature-1 spec: resourceID: container.googleapis.com projectRef: name: gkehubfeature-dep-mcifeature --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-mcifeature-2 spec: resourceID: gkehub.googleapis.com projectRef: name: gkehubfeature-dep-mcifeature --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-mcifeature-3 spec: resourceID: multiclusteringress.googleapis.com projectRef: name: gkehubfeature-dep-mcifeature --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-mcifeature-4 spec: resourceID: multiclusterservicediscovery.googleapis.com projectRef: name: gkehubfeature-dep-mcifeature Multi Cluster Service Discovery Feature
# Copyright 2021 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. apiVersion: gkehub.cnrm.cloud.google.com/v1beta1 kind: GKEHubFeature metadata: name: gkehubfeature-sample-mcsdfeature spec: projectRef: name: gkehubfeature-dep-mcsdfeature location: global # The resourceID must be "multiclusterservicediscovery" if you want to use # multi-cluster service discovery feature. resourceID: multiclusterservicediscovery --- apiVersion: resourcemanager.cnrm.cloud.google.com/v1beta1 kind: Project metadata: annotations: cnrm.cloud.google.com/auto-create-network: "false" name: gkehubfeature-dep-mcsdfeature spec: name: Config Connector Sample folderRef: # Replace "${FOLDER_ID?}" with the numeric ID for your folder external: "${FOLDER_ID?}" billingAccountRef: # Replace "${BILLING_ACCOUNT_ID?}" with the numeric ID for your billing account external: "${BILLING_ACCOUNT_ID?}" --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-mcsdfeature-1 spec: resourceID: gkehub.googleapis.com projectRef: name: gkehubfeature-dep-mcsdfeature --- apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: annotations: cnrm.cloud.google.com/disable-dependent-services: "false" name: gkehubfeature-dep-mcsdfeature-2 spec: resourceID: multiclusterservicediscovery.googleapis.com projectRef: name: gkehubfeature-dep-mcsdfeature