ConfigControllerInstance


Property Value
Google Cloud Service Name Config Controller
Google Cloud Service Documentation /anthos-config-management/docs/concepts/config-controller-overview
Google Cloud REST Resource Name v1alpha1.krmApiHost
Google Cloud REST Resource Documentation /anthos-config-management/docs/concepts/config-controller-overview
Config Connector Resource Short Names gcpconfigcontrollerinstance
gcpconfigcontrollerinstances
configcontrollerinstance
Config Connector Service Name krmapihosting.googleapis.com
Config Connector Resource Fully Qualified Name configcontrollerinstances.configcontroller.cnrm.cloud.google.com
Can Be Referenced by IAMPolicy/IAMPolicyMember No
Config Connector Default Average Reconcile Interval In Seconds 600

Custom Resource Definition Properties

Annotations

Fields
cnrm.cloud.google.com/state-into-spec

Spec

Schema

location: string
managementConfig:
  fullManagementConfig:
    clusterCidrBlock: string
    clusterNamedRange: string
    manBlock: string
    masterIPv4CidrBlock: string
    networkRef:
      external: string
      name: string
      namespace: string
    servicesCidrBlock: string
    servicesNamedRange: string
  standardManagementConfig:
    clusterCidrBlock: string
    clusterNamedRange: string
    manBlock: string
    masterIPv4CidrBlock: string
    networkRef:
      external: string
      name: string
      namespace: string
    servicesCidrBlock: string
    servicesNamedRange: string
projectRef:
  external: string
  name: string
  namespace: string
resourceID: string
usePrivateEndpoint: boolean
Fields

location

Required

string

Immutable. The location for the resource

managementConfig

Required

object

Immutable. Configuration of the cluster management

managementConfig.fullManagementConfig

Optional

object

Immutable. Configuration of the full (Autopilot) cluster management

managementConfig.fullManagementConfig.clusterCidrBlock

Optional

string

Immutable. The IP address range for the cluster pod IPs. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

managementConfig.fullManagementConfig.clusterNamedRange

Optional

string

Immutable. The name of the existing secondary range in the cluster's subnetwork to use for pod IP addresses. Alternatively, cluster_cidr_block can be used to automatically create a GKE-managed one.

managementConfig.fullManagementConfig.manBlock

Optional

string

Immutable. Master Authorized Network. Allows access to the k8s master from this block.

managementConfig.fullManagementConfig.masterIPv4CidrBlock

Optional

string

Immutable. The /28 network that the masters will use.

managementConfig.fullManagementConfig.networkRef

Optional

object

Immutable.

managementConfig.fullManagementConfig.networkRef.external

Optional

string

Existing VPC Network to put the GKE cluster and nodes in. Allowed value: The Google Cloud resource name of a `ComputeNetwork` resource (format: `projects/{{project}}/global/networks/{{name}}`).

managementConfig.fullManagementConfig.networkRef.name

Optional

string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

managementConfig.fullManagementConfig.networkRef.namespace

Optional

string

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

managementConfig.fullManagementConfig.servicesCidrBlock

Optional

string

Immutable. The IP address range for the cluster service IPs. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

managementConfig.fullManagementConfig.servicesNamedRange

Optional

string

Immutable. The name of the existing secondary range in the cluster's subnetwork to use for service ClusterIPs. Alternatively, services_cidr_block can be used to automatically create a GKE-managed one.

managementConfig.standardManagementConfig

Optional

object

Immutable. Configuration of the standard (GKE) cluster management

managementConfig.standardManagementConfig.clusterCidrBlock

Optional

string

Immutable. The IP address range for the cluster pod IPs. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

managementConfig.standardManagementConfig.clusterNamedRange

Optional

string

Immutable. The name of the existing secondary range in the cluster's subnetwork to use for pod IP addresses. Alternatively, cluster_cidr_block can be used to automatically create a GKE-managed one.

managementConfig.standardManagementConfig.manBlock

Optional

string

Immutable. Master Authorized Network. Allows access to the k8s master from this block.

managementConfig.standardManagementConfig.masterIPv4CidrBlock

Required*

string

Immutable. The /28 network that the masters will use.

managementConfig.standardManagementConfig.networkRef

Optional

object

Immutable.

managementConfig.standardManagementConfig.networkRef.external

Optional

string

Existing VPC Network to put the GKE cluster and nodes in. Allowed value: The Google Cloud resource name of a `ComputeNetwork` resource (format: `projects/{{project}}/global/networks/{{name}}`).

managementConfig.standardManagementConfig.networkRef.name

Optional

string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

managementConfig.standardManagementConfig.networkRef.namespace

Optional

string

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

managementConfig.standardManagementConfig.servicesCidrBlock

Optional

string

Immutable. The IP address range for the cluster service IPs. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

managementConfig.standardManagementConfig.servicesNamedRange

Optional

string

Immutable. The name of the existing secondary range in the cluster's subnetwork to use for service ClusterIPs. Alternatively, services_cidr_block can be used to automatically create a GKE-managed one.

projectRef

Required

object

Immutable. The Project that this resource belongs to.

projectRef.external

Optional

string

The project for the resource Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`).

projectRef.name

Optional

string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

projectRef.namespace

Optional

string

Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

resourceID

Optional

string

Immutable. Optional. The name of the resource. Used for creation and acquisition. When unset, the value of `metadata.name` is used as the default.

usePrivateEndpoint

Optional

boolean

Immutable. Only allow access to the master's private endpoint IP.

* Field is required when parent field is specified

Status

Schema

conditions:
- lastTransitionTime: string
  message: string
  reason: string
  status: string
  type: string
gkeResourceLink: string
observedGeneration: integer
state: string
Fields
conditions

list (object)

Conditions represent the latest available observation of the resource's current state.

conditions[]

object

conditions[].lastTransitionTime

string

Last time the condition transitioned from one status to another.

conditions[].message

string

Human-readable message indicating details about last transition.

conditions[].reason

string

Unique, one-word, CamelCase reason for the condition's last transition.

conditions[].status

string

Status is the status of the condition. Can be True, False, Unknown.

conditions[].type

string

Type is the type of the condition.

gkeResourceLink

string

Output only. KrmApiHost GCP self link used for identifying the underlying endpoint (GKE cluster currently).

observedGeneration

integer

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.

state

string

Output only. The current state of the internal state machine for the KrmApiHost. Possible values: STATE_UNSPECIFIED, CREATING, RUNNING, DELETING, SUSPENDED, READ_ONLY

Sample YAML(s)

Autopilot Config Controller Instance

# Copyright 2022 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: configcontroller.cnrm.cloud.google.com/v1beta1
kind: ConfigControllerInstance
metadata:
  labels:
    label-one: "value-one"
  # The maximum allowed length for the name of a ConfigControllerInstance is 24.
  name: cc-sample-autopilot
spec:
  projectRef:
     # Replace ${PROJECT_ID?} with your project ID
     external: "projects/${PROJECT_ID?}"
  location: us-central1
  managementConfig:
    fullManagementConfig:
      clusterCidrBlock: /20
      servicesCidrBlock: /24

Standard Config Controller Instance

# Copyright 2020 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: configcontroller.cnrm.cloud.google.com/v1beta1
kind: ConfigControllerInstance
metadata:
  labels:
    label-one: "value-one"
  # The maximum allowed length for the name of a ConfigControllerInstance is 24.
  name: cc-sample-standard
spec:
  projectRef:
     # Replace ${PROJECT_ID?} with your project ID
     external: "projects/${PROJECT_ID?}"
  location: us-central1
  managementConfig:
    standardManagementConfig:
      networkRef:
        name: configcontrollerinstance-dep
      masterIPv4CidrBlock: 172.16.123.64/28
      clusterCidrBlock: /20
      servicesCidrBlock: /24
---
apiVersion: compute.cnrm.cloud.google.com/v1beta1
kind: ComputeNetwork
metadata:
  name: configcontrollerinstance-dep
spec:
  routingMode: REGIONAL
  autoCreateSubnetworks: true