Fork me on GitHub

Module container

@pulumi/gcp > container

Index

container/cluster.ts container/getCluster.ts container/getEngineVersions.ts container/getRegistryImage.ts container/getRegistryRepository.ts container/nodePool.ts

class Cluster

Creates a Google Kubernetes Engine (GKE) cluster. For more information see the official documentation and API.

~> Note: All arguments including the username and password will be stored in the raw state as plain-text. Read more about sensitive data in state.

constructor

new Cluster(name: string, args?: ClusterArgs, opts?: pulumi.CustomResourceOptions)

Create a Cluster resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ClusterState): Cluster

Get an existing Cluster resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property additionalZones

public additionalZones: pulumi.Output<string[]>;

The list of additional Google Compute Engine locations in which the cluster’s nodes should be located. If additional zones are configured, the number of nodes specified in initial_node_count is created in all specified zones.

property addonsConfig

public addonsConfig: pulumi.Output<{ ... }>;

The configuration for addons supported by GKE. Structure is documented below.

property clusterIpv4Cidr

public clusterIpv4Cidr: pulumi.Output<string>;

The IP address range of the kubernetes pods in this cluster. Default is an automatically assigned CIDR.

property description

public description: pulumi.Output<string | undefined>;

Description of the cluster.

property enableKubernetesAlpha

public enableKubernetesAlpha: pulumi.Output<boolean | undefined>;

Whether to enable Kubernetes Alpha features for this cluster. Note that when this option is enabled, the cluster cannot be upgraded and will be automatically deleted after 30 days.

property enableLegacyAbac

public enableLegacyAbac: pulumi.Output<boolean | undefined>;

Whether the ABAC authorizer is enabled for this cluster. When enabled, identities in the system, including service accounts, nodes, and controllers, will have statically granted permissions beyond those provided by the RBAC configuration or IAM. Defaults to false

property endpoint

public endpoint: pulumi.Output<string>;

The IP address of this cluster’s Kubernetes master.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property initialNodeCount

public initialNodeCount: pulumi.Output<number | undefined>;

The number of nodes to create in this cluster (not including the Kubernetes master). Must be set if node_pool is not set.

property instanceGroupUrls

public instanceGroupUrls: pulumi.Output<string[]>;

List of instance group URLs which have been assigned to the cluster.

property ipAllocationPolicy

public ipAllocationPolicy: pulumi.Output<{ ... } | undefined>;

Configuration for cluster IP allocation. As of now, only pre-allocated subnetworks (custom type with secondary ranges) are supported. This will activate IP aliases. See the official documentation Structure is documented below.

property loggingService

public loggingService: pulumi.Output<string>;

The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none. Defaults to logging.googleapis.com

property maintenancePolicy

public maintenancePolicy: pulumi.Output<{ ... } | undefined>;

The maintenance policy to use for the cluster. Structure is documented below.

property masterAuth

public masterAuth: pulumi.Output<{ ... }>;

The authentication information for accessing the Kubernetes master. Structure is documented below.

property masterAuthorizedNetworksConfig

public masterAuthorizedNetworksConfig: pulumi.Output<{ ... } | undefined>;

The desired configuration options for master authorized networks. Omit the nested cidr_blocks attribute to disallow external access (except the cluster node IPs, which GKE automatically whitelists).

property masterIpv4CidrBlock

public masterIpv4CidrBlock: pulumi.Output<string | undefined>;

) Specifies a private RFC1918 block for the master’s VPC. The master range must not overlap with any subnet in your cluster’s VPC. The master and your cluster use VPC peering. Must be specified in CIDR notation and must be /28 subnet.

property masterVersion

public masterVersion: pulumi.Output<string>;

The current version of the master in the cluster. This may be different than the min_master_version set in the config if the master has been updated by GKE.

property minMasterVersion

public minMasterVersion: pulumi.Output<string | undefined>;

The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version–use the read-only master_version field to obtain that. If unset, the cluster’s version will be set by GKE to the version of the most recent official release (which is not necessarily the latest version).

property monitoringService

public monitoringService: pulumi.Output<string>;

The monitoring service that the cluster should write metrics to. Automatically send metrics from pods in the cluster to the Google Cloud Monitoring API. VM metrics will be collected by Google Compute Engine regardless of this setting Available options include monitoring.googleapis.com, monitoring.googleapis.com/kubernetes (beta) and none. Defaults to monitoring.googleapis.com

property name

public name: pulumi.Output<string>;

The name of the cluster, unique within the project and zone.

property network

public network: pulumi.Output<string | undefined>;

The name or self_link of the Google Compute Engine network to which the cluster is connected. For Shared VPC, set this to the self link of the shared network.

property networkPolicy

public networkPolicy: pulumi.Output<{ ... }>;

Configuration options for the NetworkPolicy feature. Structure is documented below.

property nodeConfig

public nodeConfig: pulumi.Output<{ ... }>;

Parameters used in creating the cluster’s nodes. Structure is documented below.

property nodePools

public nodePools: pulumi.Output<{ ... }[]>;

List of node pools associated with this cluster. See google_container_node_pool for schema.

property nodeVersion

public nodeVersion: pulumi.Output<string>;

The Kubernetes version on the nodes. Must either be unset or set to the same value as min_master_version on create. Defaults to the default version set by GKE which is not necessarily the latest version.

property podSecurityPolicyConfig

public podSecurityPolicyConfig: pulumi.Output<{ ... } | undefined>;

) Configuration for the PodSecurityPolicy feature. Structure is documented below.

property privateCluster

public privateCluster: pulumi.Output<boolean | undefined>;

) If true, a private cluster will be created, meaning nodes do not get public IP addresses. It is mandatory to specify master_ipv4_cidr_block and ip_allocation_policy with this option.

property project

public project: pulumi.Output<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property region

public region: pulumi.Output<string>;

property removeDefaultNodePool

public removeDefaultNodePool: pulumi.Output<boolean | undefined>;

If true, deletes the default node pool upon cluster creation.

property resourceLabels

public resourceLabels: pulumi.Output<{ ... } | undefined>;

The GCE resource labels (a map of key/value pairs) to be applied to the cluster.

property subnetwork

public subnetwork: pulumi.Output<string>;

The name or self_link of the Google Compute Engine subnetwork in which the cluster’s instances are launched.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

The zone that the master and the number of nodes specified in initial_node_count should be created in. Only one of zone and region may be set. If neither zone nor region are set, the provider zone is used.

class NodePool

Manages a Node Pool resource within GKE. For more information see the official documentation and API.

constructor

new NodePool(name: string, args: NodePoolArgs, opts?: pulumi.CustomResourceOptions)

Create a NodePool resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NodePoolState): NodePool

Get an existing NodePool resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoscaling

public autoscaling: pulumi.Output<{ ... } | undefined>;

Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage. Structure is documented below.

property cluster

public cluster: pulumi.Output<string>;

The cluster to create the node pool for. Cluster must be present in zone provided for zonal clusters.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property initialNodeCount

public initialNodeCount: pulumi.Output<number>;

The initial node count for the pool. Changing this will force recreation of the resource.

property instanceGroupUrls

public instanceGroupUrls: pulumi.Output<string[]>;

property management

public management: pulumi.Output<{ ... }>;

Node management configuration, wherein auto-repair and auto-upgrade is configured. Structure is documented below.

property name

public name: pulumi.Output<string>;

The name of the node pool. If left blank, Terraform will auto-generate a unique name.

property namePrefix

public namePrefix: pulumi.Output<string>;

Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name.

property nodeConfig

public nodeConfig: pulumi.Output<{ ... }>;

The node configuration of the pool. See google_container_cluster for schema.

property nodeCount

public nodeCount: pulumi.Output<number>;

The number of nodes per instance group. This field can be used to update the number of nodes per instance group but should not be used alongside autoscaling.

property project

public project: pulumi.Output<string>;

The ID of the project in which to create the node pool. If blank, the provider-configured project will be used.

property region

public region: pulumi.Output<string | undefined>;

The region in which the cluster resides (for regional clusters).

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property version

public version: pulumi.Output<string>;

The Kubernetes version for the nodes in this pool. Note that if this field and auto_upgrade are both specified, they will fight each other for what the node version should be, so setting both is highly discouraged.

property zone

public zone: pulumi.Output<string>;

The zone in which the cluster resides.

function getCluster

getCluster(args: GetClusterArgs, opts?: pulumi.InvokeOptions): Promise<GetClusterResult>

Get info about a cluster within GKE from its name and zone.

function getEngineVersions

getEngineVersions(args?: GetEngineVersionsArgs, opts?: pulumi.InvokeOptions): Promise<GetEngineVersionsResult>

Provides access to available Google Container Engine versions in a zone for a given project.

data "google_container_engine_versions" "central1b" {
  zone = "us-central1-b"
}

resource "google_container_cluster" "foo" {
  name               = "terraform-test-cluster"
  zone               = "us-central1-b"
  node_version       = "${data.google_container_engine_versions.central1b.latest_node_version}"
  initial_node_count = 1

  master_auth {
    username = "mr.yoda"
    password = "adoy.rm"
  }
}

function getRegistryImage

getRegistryImage(args: GetRegistryImageArgs, opts?: pulumi.InvokeOptions): Promise<GetRegistryImageResult>

This data source fetches the project name, and provides the appropriate URLs to use for container registry for this project.

The URLs are computed entirely offline - as long as the project exists, they will be valid, but this data source does not contact Google Container Registry (GCR) at any point.

function getRegistryRepository

getRegistryRepository(args?: GetRegistryRepositoryArgs, opts?: pulumi.InvokeOptions): Promise<GetRegistryRepositoryResult>

This data source fetches the project name, and provides the appropriate URLs to use for container registry for this project.

The URLs are computed entirely offline - as long as the project exists, they will be valid, but this data source does not contact Google Container Registry (GCR) at any point.

interface ClusterArgs

The set of arguments for constructing a Cluster resource.

property additionalZones

additionalZones?: pulumi.Input<pulumi.Input<string>[]>;

The list of additional Google Compute Engine locations in which the cluster’s nodes should be located. If additional zones are configured, the number of nodes specified in initial_node_count is created in all specified zones.

property addonsConfig

addonsConfig?: pulumi.Input<{ ... }>;

The configuration for addons supported by GKE. Structure is documented below.

property clusterIpv4Cidr

clusterIpv4Cidr?: pulumi.Input<string>;

The IP address range of the kubernetes pods in this cluster. Default is an automatically assigned CIDR.

property description

description?: pulumi.Input<string>;

Description of the cluster.

property enableKubernetesAlpha

enableKubernetesAlpha?: pulumi.Input<boolean>;

Whether to enable Kubernetes Alpha features for this cluster. Note that when this option is enabled, the cluster cannot be upgraded and will be automatically deleted after 30 days.

property enableLegacyAbac

enableLegacyAbac?: pulumi.Input<boolean>;

Whether the ABAC authorizer is enabled for this cluster. When enabled, identities in the system, including service accounts, nodes, and controllers, will have statically granted permissions beyond those provided by the RBAC configuration or IAM. Defaults to false

property initialNodeCount

initialNodeCount?: pulumi.Input<number>;

The number of nodes to create in this cluster (not including the Kubernetes master). Must be set if node_pool is not set.

property ipAllocationPolicy

ipAllocationPolicy?: pulumi.Input<{ ... }>;

Configuration for cluster IP allocation. As of now, only pre-allocated subnetworks (custom type with secondary ranges) are supported. This will activate IP aliases. See the official documentation Structure is documented below.

property loggingService

loggingService?: pulumi.Input<string>;

The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none. Defaults to logging.googleapis.com

property maintenancePolicy

maintenancePolicy?: pulumi.Input<{ ... }>;

The maintenance policy to use for the cluster. Structure is documented below.

property masterAuth

masterAuth?: pulumi.Input<{ ... }>;

The authentication information for accessing the Kubernetes master. Structure is documented below.

property masterAuthorizedNetworksConfig

masterAuthorizedNetworksConfig?: pulumi.Input<{ ... }>;

The desired configuration options for master authorized networks. Omit the nested cidr_blocks attribute to disallow external access (except the cluster node IPs, which GKE automatically whitelists).

property masterIpv4CidrBlock

masterIpv4CidrBlock?: pulumi.Input<string>;

) Specifies a private RFC1918 block for the master’s VPC. The master range must not overlap with any subnet in your cluster’s VPC. The master and your cluster use VPC peering. Must be specified in CIDR notation and must be /28 subnet.

property minMasterVersion

minMasterVersion?: pulumi.Input<string>;

The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version–use the read-only master_version field to obtain that. If unset, the cluster’s version will be set by GKE to the version of the most recent official release (which is not necessarily the latest version).

property monitoringService

monitoringService?: pulumi.Input<string>;

The monitoring service that the cluster should write metrics to. Automatically send metrics from pods in the cluster to the Google Cloud Monitoring API. VM metrics will be collected by Google Compute Engine regardless of this setting Available options include monitoring.googleapis.com, monitoring.googleapis.com/kubernetes (beta) and none. Defaults to monitoring.googleapis.com

property name

name?: pulumi.Input<string>;

The name of the cluster, unique within the project and zone.

property network

network?: pulumi.Input<string>;

The name or self_link of the Google Compute Engine network to which the cluster is connected. For Shared VPC, set this to the self link of the shared network.

property networkPolicy

networkPolicy?: pulumi.Input<{ ... }>;

Configuration options for the NetworkPolicy feature. Structure is documented below.

property nodeConfig

nodeConfig?: pulumi.Input<{ ... }>;

Parameters used in creating the cluster’s nodes. Structure is documented below.

property nodePools

nodePools?: pulumi.Input<pulumi.Input<{ ... }>[]>;

List of node pools associated with this cluster. See google_container_node_pool for schema.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

The Kubernetes version on the nodes. Must either be unset or set to the same value as min_master_version on create. Defaults to the default version set by GKE which is not necessarily the latest version.

property podSecurityPolicyConfig

podSecurityPolicyConfig?: pulumi.Input<{ ... }>;

) Configuration for the PodSecurityPolicy feature. Structure is documented below.

property privateCluster

privateCluster?: pulumi.Input<boolean>;

) If true, a private cluster will be created, meaning nodes do not get public IP addresses. It is mandatory to specify master_ipv4_cidr_block and ip_allocation_policy with this option.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property region

region?: pulumi.Input<string>;

property removeDefaultNodePool

removeDefaultNodePool?: pulumi.Input<boolean>;

If true, deletes the default node pool upon cluster creation.

property resourceLabels

resourceLabels?: pulumi.Input<{ ... }>;

The GCE resource labels (a map of key/value pairs) to be applied to the cluster.

property subnetwork

subnetwork?: pulumi.Input<string>;

The name or self_link of the Google Compute Engine subnetwork in which the cluster’s instances are launched.

property zone

zone?: pulumi.Input<string>;

The zone that the master and the number of nodes specified in initial_node_count should be created in. Only one of zone and region may be set. If neither zone nor region are set, the provider zone is used.

interface ClusterState

Input properties used for looking up and filtering Cluster resources.

property additionalZones

additionalZones?: pulumi.Input<pulumi.Input<string>[]>;

The list of additional Google Compute Engine locations in which the cluster’s nodes should be located. If additional zones are configured, the number of nodes specified in initial_node_count is created in all specified zones.

property addonsConfig

addonsConfig?: pulumi.Input<{ ... }>;

The configuration for addons supported by GKE. Structure is documented below.

property clusterIpv4Cidr

clusterIpv4Cidr?: pulumi.Input<string>;

The IP address range of the kubernetes pods in this cluster. Default is an automatically assigned CIDR.

property description

description?: pulumi.Input<string>;

Description of the cluster.

property enableKubernetesAlpha

enableKubernetesAlpha?: pulumi.Input<boolean>;

Whether to enable Kubernetes Alpha features for this cluster. Note that when this option is enabled, the cluster cannot be upgraded and will be automatically deleted after 30 days.

property enableLegacyAbac

enableLegacyAbac?: pulumi.Input<boolean>;

Whether the ABAC authorizer is enabled for this cluster. When enabled, identities in the system, including service accounts, nodes, and controllers, will have statically granted permissions beyond those provided by the RBAC configuration or IAM. Defaults to false

property endpoint

endpoint?: pulumi.Input<string>;

The IP address of this cluster’s Kubernetes master.

property initialNodeCount

initialNodeCount?: pulumi.Input<number>;

The number of nodes to create in this cluster (not including the Kubernetes master). Must be set if node_pool is not set.

property instanceGroupUrls

instanceGroupUrls?: pulumi.Input<pulumi.Input<string>[]>;

List of instance group URLs which have been assigned to the cluster.

property ipAllocationPolicy

ipAllocationPolicy?: pulumi.Input<{ ... }>;

Configuration for cluster IP allocation. As of now, only pre-allocated subnetworks (custom type with secondary ranges) are supported. This will activate IP aliases. See the official documentation Structure is documented below.

property loggingService

loggingService?: pulumi.Input<string>;

The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none. Defaults to logging.googleapis.com

property maintenancePolicy

maintenancePolicy?: pulumi.Input<{ ... }>;

The maintenance policy to use for the cluster. Structure is documented below.

property masterAuth

masterAuth?: pulumi.Input<{ ... }>;

The authentication information for accessing the Kubernetes master. Structure is documented below.

property masterAuthorizedNetworksConfig

masterAuthorizedNetworksConfig?: pulumi.Input<{ ... }>;

The desired configuration options for master authorized networks. Omit the nested cidr_blocks attribute to disallow external access (except the cluster node IPs, which GKE automatically whitelists).

property masterIpv4CidrBlock

masterIpv4CidrBlock?: pulumi.Input<string>;

) Specifies a private RFC1918 block for the master’s VPC. The master range must not overlap with any subnet in your cluster’s VPC. The master and your cluster use VPC peering. Must be specified in CIDR notation and must be /28 subnet.

property masterVersion

masterVersion?: pulumi.Input<string>;

The current version of the master in the cluster. This may be different than the min_master_version set in the config if the master has been updated by GKE.

property minMasterVersion

minMasterVersion?: pulumi.Input<string>;

The minimum version of the master. GKE will auto-update the master to new versions, so this does not guarantee the current master version–use the read-only master_version field to obtain that. If unset, the cluster’s version will be set by GKE to the version of the most recent official release (which is not necessarily the latest version).

property monitoringService

monitoringService?: pulumi.Input<string>;

The monitoring service that the cluster should write metrics to. Automatically send metrics from pods in the cluster to the Google Cloud Monitoring API. VM metrics will be collected by Google Compute Engine regardless of this setting Available options include monitoring.googleapis.com, monitoring.googleapis.com/kubernetes (beta) and none. Defaults to monitoring.googleapis.com

property name

name?: pulumi.Input<string>;

The name of the cluster, unique within the project and zone.

property network

network?: pulumi.Input<string>;

The name or self_link of the Google Compute Engine network to which the cluster is connected. For Shared VPC, set this to the self link of the shared network.

property networkPolicy

networkPolicy?: pulumi.Input<{ ... }>;

Configuration options for the NetworkPolicy feature. Structure is documented below.

property nodeConfig

nodeConfig?: pulumi.Input<{ ... }>;

Parameters used in creating the cluster’s nodes. Structure is documented below.

property nodePools

nodePools?: pulumi.Input<pulumi.Input<{ ... }>[]>;

List of node pools associated with this cluster. See google_container_node_pool for schema.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

The Kubernetes version on the nodes. Must either be unset or set to the same value as min_master_version on create. Defaults to the default version set by GKE which is not necessarily the latest version.

property podSecurityPolicyConfig

podSecurityPolicyConfig?: pulumi.Input<{ ... }>;

) Configuration for the PodSecurityPolicy feature. Structure is documented below.

property privateCluster

privateCluster?: pulumi.Input<boolean>;

) If true, a private cluster will be created, meaning nodes do not get public IP addresses. It is mandatory to specify master_ipv4_cidr_block and ip_allocation_policy with this option.

property project

project?: pulumi.Input<string>;

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

property region

region?: pulumi.Input<string>;

property removeDefaultNodePool

removeDefaultNodePool?: pulumi.Input<boolean>;

If true, deletes the default node pool upon cluster creation.

property resourceLabels

resourceLabels?: pulumi.Input<{ ... }>;

The GCE resource labels (a map of key/value pairs) to be applied to the cluster.

property subnetwork

subnetwork?: pulumi.Input<string>;

The name or self_link of the Google Compute Engine subnetwork in which the cluster’s instances are launched.

property zone

zone?: pulumi.Input<string>;

The zone that the master and the number of nodes specified in initial_node_count should be created in. Only one of zone and region may be set. If neither zone nor region are set, the provider zone is used.

interface GetClusterArgs

A collection of arguments for invoking getCluster.

property name

name: string;

The name of the cluster.

property project

project?: string;

The project in which the resource belongs. If it is not provided, the provider project is used.

property region

region?: string;

property zone

zone?: string;

interface GetClusterResult

A collection of values returned by getCluster.

property additionalZones

additionalZones: string[];

property addonsConfigs

addonsConfigs: { ... }[];

property clusterIpv4Cidr

clusterIpv4Cidr: string;

property description

description: string;

property enableKubernetesAlpha

enableKubernetesAlpha: boolean;

property enableLegacyAbac

enableLegacyAbac: boolean;

property endpoint

endpoint: string;

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property initialNodeCount

initialNodeCount: number;

property instanceGroupUrls

instanceGroupUrls: string[];

property ipAllocationPolicies

ipAllocationPolicies: { ... }[];

property loggingService

loggingService: string;

property maintenancePolicies

maintenancePolicies: { ... }[];

property masterAuthorizedNetworksConfigs

masterAuthorizedNetworksConfigs: { ... }[];

property masterAuths

masterAuths: { ... }[];

property masterIpv4CidrBlock

masterIpv4CidrBlock: string;

property masterVersion

masterVersion: string;

property minMasterVersion

minMasterVersion: string;

property monitoringService

monitoringService: string;

property network

network: string;

property networkPolicies

networkPolicies: { ... }[];

property nodeConfigs

nodeConfigs: { ... }[];

property nodePools

nodePools: { ... }[];

property nodeVersion

nodeVersion: string;

property podSecurityPolicyConfigs

podSecurityPolicyConfigs: { ... }[];

property privateCluster

privateCluster: boolean;

property removeDefaultNodePool

removeDefaultNodePool: boolean;

property resourceLabels

resourceLabels: { ... };

property subnetwork

subnetwork: string;

interface GetEngineVersionsArgs

A collection of arguments for invoking getEngineVersions.

property project

project?: string;

ID of the project to list available cluster versions for. Should match the project the cluster will be deployed to. Defaults to the project that the provider is authenticated with.

property zone

zone?: string;

Zone to list available cluster versions for. Should match the zone the cluster will be deployed in.

interface GetEngineVersionsResult

A collection of values returned by getEngineVersions.

property defaultClusterVersion

defaultClusterVersion: string;

Version of Kubernetes the service deploys by default.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property latestMasterVersion

latestMasterVersion: string;

The latest version available in the given zone for use with master instances.

property latestNodeVersion

latestNodeVersion: string;

The latest version available in the given zone for use with node instances.

property validMasterVersions

validMasterVersions: string[];

A list of versions available in the given zone for use with master instances.

property validNodeVersions

validNodeVersions: string[];

A list of versions available in the given zone for use with node instances.

interface GetRegistryImageArgs

A collection of arguments for invoking getRegistryImage.

property digest

digest?: string;

property name

name: string;

property project

project?: string;

property region

region?: string;

property tag

tag?: string;

interface GetRegistryImageResult

A collection of values returned by getRegistryImage.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property imageUrl

imageUrl: string;

property project

project: string;

interface GetRegistryRepositoryArgs

A collection of arguments for invoking getRegistryRepository.

property project

project?: string;

property region

region?: string;

interface GetRegistryRepositoryResult

A collection of values returned by getRegistryRepository.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property project

project: string;

property repositoryUrl

repositoryUrl: string;

interface NodePoolArgs

The set of arguments for constructing a NodePool resource.

property autoscaling

autoscaling?: pulumi.Input<{ ... }>;

Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage. Structure is documented below.

property cluster

cluster: pulumi.Input<string>;

The cluster to create the node pool for. Cluster must be present in zone provided for zonal clusters.

property initialNodeCount

initialNodeCount?: pulumi.Input<number>;

The initial node count for the pool. Changing this will force recreation of the resource.

property management

management?: pulumi.Input<{ ... }>;

Node management configuration, wherein auto-repair and auto-upgrade is configured. Structure is documented below.

property name

name?: pulumi.Input<string>;

The name of the node pool. If left blank, Terraform will auto-generate a unique name.

property namePrefix

namePrefix?: pulumi.Input<string>;

Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name.

property nodeConfig

nodeConfig?: pulumi.Input<{ ... }>;

The node configuration of the pool. See google_container_cluster for schema.

property nodeCount

nodeCount?: pulumi.Input<number>;

The number of nodes per instance group. This field can be used to update the number of nodes per instance group but should not be used alongside autoscaling.

property project

project?: pulumi.Input<string>;

The ID of the project in which to create the node pool. If blank, the provider-configured project will be used.

property region

region?: pulumi.Input<string>;

The region in which the cluster resides (for regional clusters).

property version

version?: pulumi.Input<string>;

The Kubernetes version for the nodes in this pool. Note that if this field and auto_upgrade are both specified, they will fight each other for what the node version should be, so setting both is highly discouraged.

property zone

zone?: pulumi.Input<string>;

The zone in which the cluster resides.

interface NodePoolState

Input properties used for looking up and filtering NodePool resources.

property autoscaling

autoscaling?: pulumi.Input<{ ... }>;

Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage. Structure is documented below.

property cluster

cluster?: pulumi.Input<string>;

The cluster to create the node pool for. Cluster must be present in zone provided for zonal clusters.

property initialNodeCount

initialNodeCount?: pulumi.Input<number>;

The initial node count for the pool. Changing this will force recreation of the resource.

property instanceGroupUrls

instanceGroupUrls?: pulumi.Input<pulumi.Input<string>[]>;

property management

management?: pulumi.Input<{ ... }>;

Node management configuration, wherein auto-repair and auto-upgrade is configured. Structure is documented below.

property name

name?: pulumi.Input<string>;

The name of the node pool. If left blank, Terraform will auto-generate a unique name.

property namePrefix

namePrefix?: pulumi.Input<string>;

Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name.

property nodeConfig

nodeConfig?: pulumi.Input<{ ... }>;

The node configuration of the pool. See google_container_cluster for schema.

property nodeCount

nodeCount?: pulumi.Input<number>;

The number of nodes per instance group. This field can be used to update the number of nodes per instance group but should not be used alongside autoscaling.

property project

project?: pulumi.Input<string>;

The ID of the project in which to create the node pool. If blank, the provider-configured project will be used.

property region

region?: pulumi.Input<string>;

The region in which the cluster resides (for regional clusters).

property version

version?: pulumi.Input<string>;

The Kubernetes version for the nodes in this pool. Note that if this field and auto_upgrade are both specified, they will fight each other for what the node version should be, so setting both is highly discouraged.

property zone

zone?: pulumi.Input<string>;

The zone in which the cluster resides.