V3 API Config Schema - Rafay Product Documentation

GKE Schema

V3 Cluster configuration for GKE clusters

apiVersion:
infra.k8smgmt.io/v3
string
kind:
Cluster
string
name: Cluster name string
description: Cluster Description string
project: under which the cluster is created string
labels:
{}
Cluster labels object
annotations:
{}
Cluster annotations object
name: Blueprint associated with the cluster string
version: Blueprint version associated with the cluster string
cloudCredentials: Cloud credentials provider used to create and manage the cluster string
enabled:
false
Enable sharing for this resource. boolean
-
name:
The name of the project to share the resource. string
type: Cluster Type Gke string
gcpProject: GCP Project name string
type: Cluster location. Supported values: "zonal" or "regional" string
enabled:
false
Enable providing default node locations boolean
zones: Zone in the region where bootstrap VM is created for cluster provisioning. string[]
controlPlaneVersion: Control plane kubernetes version string
name: Network that the Kubernetes cluster is in determines which other Compute Engine resources it is able to communicate with. Network is permanent string
subnetName: Subnetwork to which the Kubernetes cluster will belong. When VPC native is enabled, the subnetwork must contain at least two secondary ranges which are not used by other Kubernetes clusters. Subnet is permanent. string
type: Choose the type of network you want to allow to access your cluster's workloads. Supported values: "private" or "public" string
enableVPCNativetraffic:
false
This feature uses alias IP and provides a more secure integration with Google Cloud Platform services boolean
maxPodsPerNode: This value is used to optimize the partitioning of cluster's IP address range to sub-ranges at node level integer
podAddressRange: All pods in the cluster are assigned an IP address from this range. Enter a range (in CIDR notation) within a network range, a mask, or leave this field blank to use a default range string
serviceAddressRange: Cluster services will be assigned an IP address from this IP address range. Enter a range (in CIDR notation) within a network range, a mask, or leave this field blank to use a default range string
enabled:
false
Enable Control Plane Authorized Network. Configure the Networks now or later. boolean
-
name:
Name of the Authorized Network Example: Corporate Office string
-
cidr:
CIDR Example: 198.51.100.0/24 string
podSecondaryRangeName: Cluster pods are assigned an IP from the selected node subnet's secondary CIDR address range string
serviceSecondaryRangeName: Cluster services are assigned an IP from the selected node subnetes secondary CIDR address range string
enableWorkloadIdentity:
false
Workload Identity lets you connect securely to Google APIs from Kubernetes Engine workloads. boolean
enableGoogleGroupsForRbac:
false
Google Groups for RBAC allows you to grant roles to all members of a Google Workspace group boolean
securityGroup: Provide the security groups here string
enableLegacyAuthorization:
false
Enable legacy authorization to support in-cluster permissions for existing clusters or workflows. Prevents full RBAC support. boolean
issueClientCertificate:
false
Clients use this base64-encoded public certificate to authenticate to the cluster endpoint. Certificates don’t rotate automatically and are difficult to revoke. boolean
enableCloudLogging:
false
Logging collects logs emitted by your applications and by GKE infrastructure boolean
cloudLoggingComponents: List of components for cloud logging. Supported values: "SYSTEM_COMPONENTS" and "WORKLOADS" string[]
enableCloudMonitoring:
false
Monitoring collects metrics emitted by your applications and by GKE infrastructure boolean
cloudMonitoringComponents: List of components for cloud monitoring. Supported value: "SYSTEM_COMPONENTS" string[]
enableManagedServicePrometheus:
false
This option deploys managed collectors for Prometheus metrics within this cluster. These collectors must be configured using PodMonitoring resources. To enable Managed Service for Prometheus here, you'll need. Cluster version of 1.21.4-gke.300 or greater boolean
enableApplicationManagerBeta:
false
Application Manager is a GKE controller for managing the lifecycle of applications. It enables application delivery and updates following Kubernetes and GitOps best practices boolean
enableBackupForGke:
false
Backup for GKE allows you to back up and restore workloads. There is no cost for enabling this feature, but you are charged for backups based on the size of the data and the number of pods you protect boolean
enableComputeEnginePersistentDiskCSIDriver:
false
Enable to automatically deploy and manage the Compute Engine Persistent Disk CSI Driver. This feature is an alternative to using the gcePersistentDisk in-tree volume plugin boolean
enableFilestoreCSIDriver:
false
Enable to automatically deploy and manage the Filestore CSI Driver boolean
enableImageStreaming:
false
Image streaming allows your workloads to initialize without waiting for the entire image to download boolean
-
name:
Node pool names must start with a lowercase letter followed by up to 39 lowercase letters, numbers, or hyphens. They can't end with a hyphen. You cannot change the node pool's name once it's created string
-
nodeVersion:
Specify Node k8s version string
-
size:
Pod address range limits the maximum size of the cluster integer
enabled:
false
Enable providing node locations boolean
zones: Additional node zones must be from the same region as the original zone. Kubernetes Engine allocates the same resource footprint for each zone. The Node pool setting overrides the defaults set in Cluster basics string[]
minNodes: Minimum number of nodes (per zone) integer
maxNodes: Maximum number of nodes (per zone) integer
imageType: Choose which operating system image you want to run on each node of this cluster string
machineType: Choose the machine type that will best fit the resource needs of your cluster string
bootDiskType: Select Boot disk type. Storage space is less expensive for a standard persistent disk. An SSD persistent disk is better for random IOPS or for streaming throughput with low latency string
bootDiskSize: Select Boot disk size. Boot disk size is permanent integer
maxPodsPerNode: This value is used to optimize the partitioning of cluster's IP address range to sub-ranges at node level integer
networkTags: This value is used to optimize the partitioning of cluster's IP address range to sub-ranges at node level string[]
enableIntegrityMonitoring:
false
Integrity monitoring lets you monitor and verify the runtime boot integrity of your shielded nodes using Cloud Monitoring boolean
enableSecureBoot:
false
Integrity monitoring lets you monitor and verify the runtime boot integrity of your shielded nodes using Cloud Monitoring boolean
-
key:
Key for this kubernetes label string
-
value:
Value for this kubernetes lable string
-
effect:
Available effects are NoSchedule, PreferNoSchedule, NoExecute string
-
key:
Key for this Taint effect string
-
value:
Value for this Taint effect string
-
key:
Key for this kubernetes label string
-
value:
Value for this kubernetes lable string
autoUpgrade:
false
Whether the nodes will be automatically upgraded boolean
strategy: Update strategy of the node pool. Supported values: "SURGE" or "BLUE_GREEN" string
preBootstrapCommands: PreBootstrapCommands is a list of (one of more) commands that the user wants run on their target cluster.These commands will be run every time a node comes up, both during cluster creation and cluster/nodepool scale. Example: Node restart and node creation. string[]