permalink |
---|
/container_node_pool/ |
container_node_pool
represents the google_container_node_pool
Terraform resource.
This package contains functions and utilities for setting up the resource using Jsonnet code.
fn new()
fn newAttrs()
fn withAutoscaling()
fn withAutoscalingMixin()
fn withCluster()
fn withInitialNodeCount()
fn withLocation()
fn withManagement()
fn withManagementMixin()
fn withMaxPodsPerNode()
fn withName()
fn withNamePrefix()
fn withNetworkConfig()
fn withNetworkConfigMixin()
fn withNodeConfig()
fn withNodeConfigMixin()
fn withNodeCount()
fn withNodeLocations()
fn withPlacementPolicy()
fn withPlacementPolicyMixin()
fn withProject()
fn withTimeouts()
fn withTimeoutsMixin()
fn withUpgradeSettings()
fn withUpgradeSettingsMixin()
fn withVersion()
obj autoscaling
obj management
obj network_config
obj node_config
fn new()
obj node_config.advanced_machine_features
obj node_config.confidential_nodes
obj node_config.ephemeral_storage_local_ssd_config
obj node_config.fast_socket
obj node_config.gcfs_config
obj node_config.gvnic
obj node_config.host_maintenance_policy
obj node_config.kubelet_config
obj node_config.linux_node_config
obj node_config.local_nvme_ssd_block_config
obj node_config.reservation_affinity
obj node_config.shielded_instance_config
obj node_config.sole_tenant_config
obj node_config.workload_metadata_config
obj placement_policy
obj timeouts
obj upgrade_settings
new()
google.container_node_pool.new
injects a new google_container_node_pool
Terraform resource
block into the root module document.
Additionally, this inserts a private function into the _ref
attribute that generates references to attributes of the
resource. For example, if you added a new instance to the root using:
# arguments omitted for brevity
google.container_node_pool.new('some_id')
You can get the reference to the id
field of the created google.container_node_pool
using the reference:
$._ref.google_container_node_pool.some_id.get('id')
This is the same as directly entering "${ google_container_node_pool.some_id.id }"
as the value.
NOTE: if you are chaining multiple resources together in a merge operation, you may not be able to use super
, self
,
or $
to refer to the root object. Instead, make an explicit outer object using local
.
Args:
resourceLabel
(string
): The name label of the block.cluster
(string
): The cluster to create the node pool for. Cluster must be present in location provided for zonal clusters.initial_node_count
(number
): The initial number of nodes for the pool. In regional or multi-zonal clusters, this is the number of nodes per zone. Changing this will force recreation of the resource. Whennull
, theinitial_node_count
field will be omitted from the resulting object.location
(string
): The location (region or zone) of the cluster. Whennull
, thelocation
field will be omitted from the resulting object.max_pods_per_node
(number
): The maximum number of pods per node in this node pool. Note that this does not work on node pools which are "route-based" - that is, node pools belonging to clusters that do not have IP Aliasing enabled. Whennull
, themax_pods_per_node
field will be omitted from the resulting object.name
(string
): The name of the node pool. If left blank, Terraform will auto-generate a unique name. Whennull
, thename
field will be omitted from the resulting object.name_prefix
(string
): Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name. Whennull
, thename_prefix
field will be omitted from the resulting object.node_count
(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. Whennull
, thenode_count
field will be omitted from the resulting object.node_locations
(list
): The list of zones in which the node pool's nodes should be located. Nodes must be in the region of their regional cluster or in the same region as their cluster's zone for zonal clusters. If unspecified, the cluster-level node_locations will be used. Whennull
, thenode_locations
field will be omitted from the resulting object.project
(string
): The ID of the project in which to create the node pool. If blank, the provider-configured project will be used. Whennull
, theproject
field will be omitted from the resulting object.version
(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. While a fuzzy version can be specified, it's recommended that you specify explicit versions as Terraform will see spurious diffs when fuzzy versions are used. See the google_container_engine_versions data source's version_prefix field to approximate fuzzy versions in a Terraform-compatible way. Whennull
, theversion
field will be omitted from the resulting object.autoscaling
(list[obj]
): Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage. Whennull
, theautoscaling
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.autoscaling.new constructor.management
(list[obj]
): Node management configuration, wherein auto-repair and auto-upgrade is configured. Whennull
, themanagement
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.management.new constructor.network_config
(list[obj]
): Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults. Whennull
, thenetwork_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.network_config.new constructor.node_config
(list[obj]
): The configuration of the nodepool Whennull
, thenode_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.new constructor.placement_policy
(list[obj]
): Specifies the node placement policy Whennull
, theplacement_policy
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.placement_policy.new constructor.timeouts
(obj
): Set thetimeouts
field on the resulting resource block. Whennull
, thetimeouts
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.timeouts.new constructor.upgrade_settings
(list[obj]
): Specify node upgrade settings to change how many nodes GKE attempts to upgrade at once. The number of nodes upgraded simultaneously is the sum of max_surge and max_unavailable. The maximum number of nodes upgraded simultaneously is limited to 20. Whennull
, theupgrade_settings
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.upgrade_settings.new constructor.
Returns:
- A mixin object that injects the new resource into the root Terraform configuration.
newAttrs()
google.container_node_pool.newAttrs
constructs a new object with attributes and blocks configured for the container_node_pool
Terraform resource.
Unlike google.container_node_pool.new, this function will not inject the resource
block into the root Terraform document. Instead, this must be passed in as the attrs
argument for the
tf.withResource function to build a complete block.
This is most useful when you need to preprocess the attributes with functions, conditional, or looping logic prior to injecting into a complete block.
Args:
cluster
(string
): The cluster to create the node pool for. Cluster must be present in location provided for zonal clusters.initial_node_count
(number
): The initial number of nodes for the pool. In regional or multi-zonal clusters, this is the number of nodes per zone. Changing this will force recreation of the resource. Whennull
, theinitial_node_count
field will be omitted from the resulting object.location
(string
): The location (region or zone) of the cluster. Whennull
, thelocation
field will be omitted from the resulting object.max_pods_per_node
(number
): The maximum number of pods per node in this node pool. Note that this does not work on node pools which are "route-based" - that is, node pools belonging to clusters that do not have IP Aliasing enabled. Whennull
, themax_pods_per_node
field will be omitted from the resulting object.name
(string
): The name of the node pool. If left blank, Terraform will auto-generate a unique name. Whennull
, thename
field will be omitted from the resulting object.name_prefix
(string
): Creates a unique name for the node pool beginning with the specified prefix. Conflicts with name. Whennull
, thename_prefix
field will be omitted from the resulting object.node_count
(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. Whennull
, thenode_count
field will be omitted from the resulting object.node_locations
(list
): The list of zones in which the node pool's nodes should be located. Nodes must be in the region of their regional cluster or in the same region as their cluster's zone for zonal clusters. If unspecified, the cluster-level node_locations will be used. Whennull
, thenode_locations
field will be omitted from the resulting object.project
(string
): The ID of the project in which to create the node pool. If blank, the provider-configured project will be used. Whennull
, theproject
field will be omitted from the resulting object.version
(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. While a fuzzy version can be specified, it's recommended that you specify explicit versions as Terraform will see spurious diffs when fuzzy versions are used. See the google_container_engine_versions data source's version_prefix field to approximate fuzzy versions in a Terraform-compatible way. Whennull
, theversion
field will be omitted from the resulting object.autoscaling
(list[obj]
): Configuration required by cluster autoscaler to adjust the size of the node pool to the current cluster usage. Whennull
, theautoscaling
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.autoscaling.new constructor.management
(list[obj]
): Node management configuration, wherein auto-repair and auto-upgrade is configured. Whennull
, themanagement
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.management.new constructor.network_config
(list[obj]
): Networking configuration for this NodePool. If specified, it overrides the cluster-level defaults. Whennull
, thenetwork_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.network_config.new constructor.node_config
(list[obj]
): The configuration of the nodepool Whennull
, thenode_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.new constructor.placement_policy
(list[obj]
): Specifies the node placement policy Whennull
, theplacement_policy
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.placement_policy.new constructor.timeouts
(obj
): Set thetimeouts
field on the resulting object. Whennull
, thetimeouts
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.timeouts.new constructor.upgrade_settings
(list[obj]
): Specify node upgrade settings to change how many nodes GKE attempts to upgrade at once. The number of nodes upgraded simultaneously is the sum of max_surge and max_unavailable. The maximum number of nodes upgraded simultaneously is limited to 20. Whennull
, theupgrade_settings
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.upgrade_settings.new constructor.
Returns:
- An attribute object that can be used with tf.withResource to construct a new
container_node_pool
resource into the root Terraform configuration.
withAutoscaling()
google.list[obj].withAutoscaling
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the autoscaling field.
This function will replace the array with the passed in value
. If you wish to instead append the
passed in value to the existing array, use the google.list[obj].withAutoscalingMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for theautoscaling
field.
withAutoscalingMixin()
google.list[obj].withAutoscalingMixin
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the autoscaling field.
This function will append the passed in array or object to the existing array. If you wish
to instead replace the array with the passed in value
, use the google.list[obj].withAutoscaling
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for theautoscaling
field.
withCluster()
google.string.withCluster
constructs a mixin object that can be merged into the string
Terraform resource block to set or update the cluster field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(string
): The value to set for thecluster
field.
withInitialNodeCount()
google.number.withInitialNodeCount
constructs a mixin object that can be merged into the number
Terraform resource block to set or update the initial_node_count field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(number
): The value to set for theinitial_node_count
field.
withLocation()
google.string.withLocation
constructs a mixin object that can be merged into the string
Terraform resource block to set or update the location field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(string
): The value to set for thelocation
field.
withManagement()
google.list[obj].withManagement
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the management field.
This function will replace the array with the passed in value
. If you wish to instead append the
passed in value to the existing array, use the google.list[obj].withManagementMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for themanagement
field.
withManagementMixin()
google.list[obj].withManagementMixin
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the management field.
This function will append the passed in array or object to the existing array. If you wish
to instead replace the array with the passed in value
, use the google.list[obj].withManagement
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for themanagement
field.
withMaxPodsPerNode()
google.number.withMaxPodsPerNode
constructs a mixin object that can be merged into the number
Terraform resource block to set or update the max_pods_per_node field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(number
): The value to set for themax_pods_per_node
field.
withName()
google.string.withName
constructs a mixin object that can be merged into the string
Terraform resource block to set or update the name field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(string
): The value to set for thename
field.
withNamePrefix()
google.string.withNamePrefix
constructs a mixin object that can be merged into the string
Terraform resource block to set or update the name_prefix field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(string
): The value to set for thename_prefix
field.
withNetworkConfig()
google.list[obj].withNetworkConfig
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the network_config field.
This function will replace the array with the passed in value
. If you wish to instead append the
passed in value to the existing array, use the google.list[obj].withNetworkConfigMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for thenetwork_config
field.
withNetworkConfigMixin()
google.list[obj].withNetworkConfigMixin
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the network_config field.
This function will append the passed in array or object to the existing array. If you wish
to instead replace the array with the passed in value
, use the google.list[obj].withNetworkConfig
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for thenetwork_config
field.
withNodeConfig()
google.list[obj].withNodeConfig
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the node_config field.
This function will replace the array with the passed in value
. If you wish to instead append the
passed in value to the existing array, use the google.list[obj].withNodeConfigMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for thenode_config
field.
withNodeConfigMixin()
google.list[obj].withNodeConfigMixin
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the node_config field.
This function will append the passed in array or object to the existing array. If you wish
to instead replace the array with the passed in value
, use the google.list[obj].withNodeConfig
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for thenode_config
field.
withNodeCount()
google.number.withNodeCount
constructs a mixin object that can be merged into the number
Terraform resource block to set or update the node_count field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(number
): The value to set for thenode_count
field.
withNodeLocations()
google.list.withNodeLocations
constructs a mixin object that can be merged into the list
Terraform resource block to set or update the node_locations field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list
): The value to set for thenode_locations
field.
withPlacementPolicy()
google.list[obj].withPlacementPolicy
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the placement_policy field.
This function will replace the array with the passed in value
. If you wish to instead append the
passed in value to the existing array, use the google.list[obj].withPlacementPolicyMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for theplacement_policy
field.
withPlacementPolicyMixin()
google.list[obj].withPlacementPolicyMixin
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the placement_policy field.
This function will append the passed in array or object to the existing array. If you wish
to instead replace the array with the passed in value
, use the google.list[obj].withPlacementPolicy
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for theplacement_policy
field.
withProject()
google.string.withProject
constructs a mixin object that can be merged into the string
Terraform resource block to set or update the project field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(string
): The value to set for theproject
field.
withTimeouts()
google.obj.withTimeouts
constructs a mixin object that can be merged into the obj
Terraform resource block to set or update the timeouts field.
This function will replace the map with the passed in value
. If you wish to instead merge the
passed in value to the existing map, use the google.obj.withTimeoutsMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(obj
): The value to set for thetimeouts
field.
withTimeoutsMixin()
google.obj.withTimeoutsMixin
constructs a mixin object that can be merged into the obj
Terraform resource block to set or update the timeouts field.
This function will merge the passed in value to the existing map. If you wish
to instead replace the entire map with the passed in value
, use the google.obj.withTimeouts
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(obj
): The value to set for thetimeouts
field.
withUpgradeSettings()
google.list[obj].withUpgradeSettings
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the upgrade_settings field.
This function will replace the array with the passed in value
. If you wish to instead append the
passed in value to the existing array, use the google.list[obj].withUpgradeSettingsMixin function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for theupgrade_settings
field.
withUpgradeSettingsMixin()
google.list[obj].withUpgradeSettingsMixin
constructs a mixin object that can be merged into the list[obj]
Terraform resource block to set or update the upgrade_settings field.
This function will append the passed in array or object to the existing array. If you wish
to instead replace the array with the passed in value
, use the google.list[obj].withUpgradeSettings
function.
Args:
resourceLabel
(string
): The name label of the block to update.value
(list[obj]
): The value to set for theupgrade_settings
field.
withVersion()
google.string.withVersion
constructs a mixin object that can be merged into the string
Terraform resource block to set or update the version field.
Args:
resourceLabel
(string
): The name label of the block to update.value
(string
): The value to set for theversion
field.
new()
google.container_node_pool.autoscaling.new
constructs a new object with attributes and blocks configured for the autoscaling
Terraform sub block.
Args:
location_policy
(string
): Location policy specifies the algorithm used when scaling-up the node pool. "BALANCED" - Is a best effort policy that aims to balance the sizes of available zones. "ANY" - Instructs the cluster autoscaler to prioritize utilization of unused reservations, and reduces preemption risk for Spot VMs. Whennull
, thelocation_policy
field will be omitted from the resulting object.max_node_count
(number
): Maximum number of nodes per zone in the node pool. Must be >= min_node_count. Cannot be used with total limits. Whennull
, themax_node_count
field will be omitted from the resulting object.min_node_count
(number
): Minimum number of nodes per zone in the node pool. Must be >=0 and <= max_node_count. Cannot be used with total limits. Whennull
, themin_node_count
field will be omitted from the resulting object.total_max_node_count
(number
): Maximum number of all nodes in the node pool. Must be >= total_min_node_count. Cannot be used with per zone limits. Whennull
, thetotal_max_node_count
field will be omitted from the resulting object.total_min_node_count
(number
): Minimum number of all nodes in the node pool. Must be >=0 and <= total_max_node_count. Cannot be used with per zone limits. Whennull
, thetotal_min_node_count
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
autoscaling
sub block.
new()
google.container_node_pool.management.new
constructs a new object with attributes and blocks configured for the management
Terraform sub block.
Args:
auto_repair
(bool
): Whether the nodes will be automatically repaired. Whennull
, theauto_repair
field will be omitted from the resulting object.auto_upgrade
(bool
): Whether the nodes will be automatically upgraded. Whennull
, theauto_upgrade
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
management
sub block.
new()
google.container_node_pool.network_config.new
constructs a new object with attributes and blocks configured for the network_config
Terraform sub block.
Args:
create_pod_range
(bool
): Whether to create a new range for pod IPs in this node pool. Defaults are provided for pod_range and pod_ipv4_cidr_block if they are not specified. Whennull
, thecreate_pod_range
field will be omitted from the resulting object.enable_private_nodes
(bool
): Whether nodes have internal IP addresses only. Whennull
, theenable_private_nodes
field will be omitted from the resulting object.pod_ipv4_cidr_block
(string
): The IP address range for pod IPs in this node pool. Only applicable if create_pod_range is true. 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) to pick a specific range to use. Whennull
, thepod_ipv4_cidr_block
field will be omitted from the resulting object.pod_range
(string
): The ID of the secondary range for pod IPs. If create_pod_range is true, this ID is used for the new range. If create_pod_range is false, uses an existing secondary range with this ID. Whennull
, thepod_range
field will be omitted from the resulting object.pod_cidr_overprovision_config
(list[obj]
): Configuration for node-pool level pod cidr overprovision. If not set, the cluster level setting will be inherited Whennull
, thepod_cidr_overprovision_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.network_config.pod_cidr_overprovision_config.new constructor.
Returns:
- An attribute object that represents the
network_config
sub block.
new()
google.container_node_pool.network_config.pod_cidr_overprovision_config.new
constructs a new object with attributes and blocks configured for the pod_cidr_overprovision_config
Terraform sub block.
Args:
disabled
(bool
): Set thedisabled
field on the resulting object.
Returns:
- An attribute object that represents the
pod_cidr_overprovision_config
sub block.
new()
google.container_node_pool.node_config.new
constructs a new object with attributes and blocks configured for the node_config
Terraform sub block.
Args:
boot_disk_kms_key
(string
): The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. Whennull
, theboot_disk_kms_key
field will be omitted from the resulting object.disk_size_gb
(number
): Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. Whennull
, thedisk_size_gb
field will be omitted from the resulting object.disk_type
(string
): Type of the disk attached to each node. Such as pd-standard, pd-balanced or pd-ssd Whennull
, thedisk_type
field will be omitted from the resulting object.guest_accelerator
(list
): List of the type and count of accelerator cards attached to the instance. Whennull
, theguest_accelerator
field will be omitted from the resulting object.image_type
(string
): The image type to use for this node. Note that for a given image type, the latest version of it will be used. Whennull
, theimage_type
field will be omitted from the resulting object.labels
(obj
): The map of Kubernetes labels (key/value pairs) to be applied to each node. These will added in addition to any default label(s) that Kubernetes may apply to the node. Whennull
, thelabels
field will be omitted from the resulting object.local_ssd_count
(number
): The number of local SSD disks to be attached to the node. Whennull
, thelocal_ssd_count
field will be omitted from the resulting object.logging_variant
(string
): Type of logging agent that is used as the default value for node pools in the cluster. Valid values include DEFAULT and MAX_THROUGHPUT. Whennull
, thelogging_variant
field will be omitted from the resulting object.machine_type
(string
): The name of a Google Compute Engine machine type. Whennull
, themachine_type
field will be omitted from the resulting object.metadata
(obj
): The metadata key/value pairs assigned to instances in the cluster. Whennull
, themetadata
field will be omitted from the resulting object.min_cpu_platform
(string
): Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform. Whennull
, themin_cpu_platform
field will be omitted from the resulting object.node_group
(string
): Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on sole tenant nodes. Whennull
, thenode_group
field will be omitted from the resulting object.oauth_scopes
(list
): The set of Google API scopes to be made available on all of the node VMs. Whennull
, theoauth_scopes
field will be omitted from the resulting object.preemptible
(bool
): Whether the nodes are created as preemptible VM instances. Whennull
, thepreemptible
field will be omitted from the resulting object.resource_labels
(obj
): The GCE resource labels (a map of key/value pairs) to be applied to the node pool. Whennull
, theresource_labels
field will be omitted from the resulting object.service_account
(string
): The Google Cloud Platform Service Account to be used by the node VMs. Whennull
, theservice_account
field will be omitted from the resulting object.spot
(bool
): Whether the nodes are created as spot VM instances. Whennull
, thespot
field will be omitted from the resulting object.tags
(list
): The list of instance tags applied to all nodes. Whennull
, thetags
field will be omitted from the resulting object.taint
(list
): List of Kubernetes taints to be applied to each node. Whennull
, thetaint
field will be omitted from the resulting object.advanced_machine_features
(list[obj]
): Specifies options for controlling advanced machine features. Whennull
, theadvanced_machine_features
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.advanced_machine_features.new constructor.confidential_nodes
(list[obj]
): Configuration for the confidential nodes feature, which makes nodes run on confidential VMs. Warning: This configuration can't be changed (or added/removed) after pool creation without deleting and recreating the entire pool. Whennull
, theconfidential_nodes
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.confidential_nodes.new constructor.ephemeral_storage_local_ssd_config
(list[obj]
): Parameters for the ephemeral storage filesystem. If unspecified, ephemeral storage is backed by the boot disk. Whennull
, theephemeral_storage_local_ssd_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.ephemeral_storage_local_ssd_config.new constructor.fast_socket
(list[obj]
): Enable or disable NCCL Fast Socket in the node pool. Whennull
, thefast_socket
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.fast_socket.new constructor.gcfs_config
(list[obj]
): GCFS configuration for this node. Whennull
, thegcfs_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.gcfs_config.new constructor.gvnic
(list[obj]
): Enable or disable gvnic in the node pool. Whennull
, thegvnic
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.gvnic.new constructor.host_maintenance_policy
(list[obj]
): The maintenance policy for the hosts on which the GKE VMs run on. Whennull
, thehost_maintenance_policy
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.host_maintenance_policy.new constructor.kubelet_config
(list[obj]
): Node kubelet configs. Whennull
, thekubelet_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.kubelet_config.new constructor.linux_node_config
(list[obj]
): Parameters that can be configured on Linux nodes. Whennull
, thelinux_node_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.linux_node_config.new constructor.local_nvme_ssd_block_config
(list[obj]
): Parameters for raw-block local NVMe SSDs. Whennull
, thelocal_nvme_ssd_block_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.local_nvme_ssd_block_config.new constructor.reservation_affinity
(list[obj]
): The reservation affinity configuration for the node pool. Whennull
, thereservation_affinity
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.reservation_affinity.new constructor.shielded_instance_config
(list[obj]
): Shielded Instance options. Whennull
, theshielded_instance_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.shielded_instance_config.new constructor.sole_tenant_config
(list[obj]
): Node affinity options for sole tenant node pools. Whennull
, thesole_tenant_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.sole_tenant_config.new constructor.workload_metadata_config
(list[obj]
): The workload metadata configuration for this node. Whennull
, theworkload_metadata_config
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.workload_metadata_config.new constructor.
Returns:
- An attribute object that represents the
node_config
sub block.
new()
google.container_node_pool.node_config.advanced_machine_features.new
constructs a new object with attributes and blocks configured for the advanced_machine_features
Terraform sub block.
Args:
threads_per_core
(number
): The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
Returns:
- An attribute object that represents the
advanced_machine_features
sub block.
new()
google.container_node_pool.node_config.confidential_nodes.new
constructs a new object with attributes and blocks configured for the confidential_nodes
Terraform sub block.
Args:
enabled
(bool
): Whether Confidential Nodes feature is enabled for all nodes in this pool.
Returns:
- An attribute object that represents the
confidential_nodes
sub block.
new()
google.container_node_pool.node_config.ephemeral_storage_local_ssd_config.new
constructs a new object with attributes and blocks configured for the ephemeral_storage_local_ssd_config
Terraform sub block.
Args:
local_ssd_count
(number
): Number of local SSDs to use to back ephemeral storage. Uses NVMe interfaces. Each local SSD must be 375 or 3000 GB in size, and all local SSDs must share the same size.
Returns:
- An attribute object that represents the
ephemeral_storage_local_ssd_config
sub block.
new()
google.container_node_pool.node_config.fast_socket.new
constructs a new object with attributes and blocks configured for the fast_socket
Terraform sub block.
Args:
enabled
(bool
): Whether or not NCCL Fast Socket is enabled
Returns:
- An attribute object that represents the
fast_socket
sub block.
new()
google.container_node_pool.node_config.gcfs_config.new
constructs a new object with attributes and blocks configured for the gcfs_config
Terraform sub block.
Args:
enabled
(bool
): Whether or not GCFS is enabled
Returns:
- An attribute object that represents the
gcfs_config
sub block.
new()
google.container_node_pool.node_config.gvnic.new
constructs a new object with attributes and blocks configured for the gvnic
Terraform sub block.
Args:
enabled
(bool
): Whether or not gvnic is enabled
Returns:
- An attribute object that represents the
gvnic
sub block.
new()
google.container_node_pool.node_config.host_maintenance_policy.new
constructs a new object with attributes and blocks configured for the host_maintenance_policy
Terraform sub block.
Args:
maintenance_interval
(string
): .
Returns:
- An attribute object that represents the
host_maintenance_policy
sub block.
new()
google.container_node_pool.node_config.kubelet_config.new
constructs a new object with attributes and blocks configured for the kubelet_config
Terraform sub block.
Args:
cpu_cfs_quota
(bool
): Enable CPU CFS quota enforcement for containers that specify CPU limits. Whennull
, thecpu_cfs_quota
field will be omitted from the resulting object.cpu_cfs_quota_period
(string
): Set the CPU CFS quota period value 'cpu.cfs_period_us'. Whennull
, thecpu_cfs_quota_period
field will be omitted from the resulting object.cpu_manager_policy
(string
): Control the CPU management policy on the node.pod_pids_limit
(number
): Controls the maximum number of processes allowed to run in a pod. Whennull
, thepod_pids_limit
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
kubelet_config
sub block.
new()
google.container_node_pool.node_config.linux_node_config.new
constructs a new object with attributes and blocks configured for the linux_node_config
Terraform sub block.
Args:
sysctls
(obj
): The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
Returns:
- An attribute object that represents the
linux_node_config
sub block.
new()
google.container_node_pool.node_config.local_nvme_ssd_block_config.new
constructs a new object with attributes and blocks configured for the local_nvme_ssd_block_config
Terraform sub block.
Args:
local_ssd_count
(number
): Number of raw-block local NVMe SSD disks to be attached to the node. Each local SSD is 375 GB in size.
Returns:
- An attribute object that represents the
local_nvme_ssd_block_config
sub block.
new()
google.container_node_pool.node_config.reservation_affinity.new
constructs a new object with attributes and blocks configured for the reservation_affinity
Terraform sub block.
Args:
consume_reservation_type
(string
): Corresponds to the type of reservation consumption.key
(string
): The label key of a reservation resource. Whennull
, thekey
field will be omitted from the resulting object.values
(list
): The label values of the reservation resource. Whennull
, thevalues
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
reservation_affinity
sub block.
new()
google.container_node_pool.node_config.shielded_instance_config.new
constructs a new object with attributes and blocks configured for the shielded_instance_config
Terraform sub block.
Args:
enable_integrity_monitoring
(bool
): Defines whether the instance has integrity monitoring enabled. Whennull
, theenable_integrity_monitoring
field will be omitted from the resulting object.enable_secure_boot
(bool
): Defines whether the instance has Secure Boot enabled. Whennull
, theenable_secure_boot
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
shielded_instance_config
sub block.
new()
google.container_node_pool.node_config.sole_tenant_config.new
constructs a new object with attributes and blocks configured for the sole_tenant_config
Terraform sub block.
Args:
node_affinity
(list[obj]
): . Whennull
, thenode_affinity
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.node_config.sole_tenant_config.node_affinity.new constructor.
Returns:
- An attribute object that represents the
sole_tenant_config
sub block.
new()
google.container_node_pool.node_config.sole_tenant_config.node_affinity.new
constructs a new object with attributes and blocks configured for the node_affinity
Terraform sub block.
Args:
key
(string
): .operator
(string
): .values
(list
): .
Returns:
- An attribute object that represents the
node_affinity
sub block.
new()
google.container_node_pool.node_config.workload_metadata_config.new
constructs a new object with attributes and blocks configured for the workload_metadata_config
Terraform sub block.
Args:
mode
(string
): Mode is the configuration for how to expose metadata to workloads running on the node.
Returns:
- An attribute object that represents the
workload_metadata_config
sub block.
new()
google.container_node_pool.placement_policy.new
constructs a new object with attributes and blocks configured for the placement_policy
Terraform sub block.
Args:
policy_name
(string
): If set, refers to the name of a custom resource policy supplied by the user. The resource policy must be in the same project and region as the node pool. If not found, InvalidArgument error is returned. Whennull
, thepolicy_name
field will be omitted from the resulting object.tpu_topology
(string
): TPU placement topology for pod slice node pool. https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies Whennull
, thetpu_topology
field will be omitted from the resulting object.type
(string
): Type defines the type of placement policy
Returns:
- An attribute object that represents the
placement_policy
sub block.
new()
google.container_node_pool.timeouts.new
constructs a new object with attributes and blocks configured for the timeouts
Terraform sub block.
Args:
create
(string
): Set thecreate
field on the resulting object. Whennull
, thecreate
field will be omitted from the resulting object.delete
(string
): Set thedelete
field on the resulting object. Whennull
, thedelete
field will be omitted from the resulting object.update
(string
): Set theupdate
field on the resulting object. Whennull
, theupdate
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
timeouts
sub block.
new()
google.container_node_pool.upgrade_settings.new
constructs a new object with attributes and blocks configured for the upgrade_settings
Terraform sub block.
Args:
max_surge
(number
): The number of additional nodes that can be added to the node pool during an upgrade. Increasing max_surge raises the number of nodes that can be upgraded simultaneously. Can be set to 0 or greater. Whennull
, themax_surge
field will be omitted from the resulting object.max_unavailable
(number
): The number of nodes that can be simultaneously unavailable during an upgrade. Increasing max_unavailable raises the number of nodes that can be upgraded in parallel. Can be set to 0 or greater. Whennull
, themax_unavailable
field will be omitted from the resulting object.strategy
(string
): Update strategy for the given nodepool. Whennull
, thestrategy
field will be omitted from the resulting object.blue_green_settings
(list[obj]
): Settings for BlueGreen node pool upgrade. Whennull
, theblue_green_settings
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.upgrade_settings.blue_green_settings.new constructor.
Returns:
- An attribute object that represents the
upgrade_settings
sub block.
new()
google.container_node_pool.upgrade_settings.blue_green_settings.new
constructs a new object with attributes and blocks configured for the blue_green_settings
Terraform sub block.
Args:
node_pool_soak_duration
(string
): Time needed after draining entire blue pool. After this period, blue pool will be cleaned up. Whennull
, thenode_pool_soak_duration
field will be omitted from the resulting object.standard_rollout_policy
(list[obj]
): Standard rollout policy is the default policy for blue-green. Whennull
, thestandard_rollout_policy
sub block will be omitted from the resulting object. When setting the sub block, it is recommended to construct the object using the google.container_node_pool.upgrade_settings.blue_green_settings.standard_rollout_policy.new constructor.
Returns:
- An attribute object that represents the
blue_green_settings
sub block.
new()
google.container_node_pool.upgrade_settings.blue_green_settings.standard_rollout_policy.new
constructs a new object with attributes and blocks configured for the standard_rollout_policy
Terraform sub block.
Args:
batch_node_count
(number
): Number of blue nodes to drain in a batch. Whennull
, thebatch_node_count
field will be omitted from the resulting object.batch_percentage
(number
): Percentage of the blue pool nodes to drain in a batch. Whennull
, thebatch_percentage
field will be omitted from the resulting object.batch_soak_duration
(string
): Soak time after each batch gets drained. Whennull
, thebatch_soak_duration
field will be omitted from the resulting object.
Returns:
- An attribute object that represents the
standard_rollout_policy
sub block.