pulumi-eks 4.3.0a1766451683__py3-none-any.whl → 4.3.0a1768307250__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
pulumi_eks/node_group.py CHANGED
@@ -2,8 +2,7 @@
2
2
  # *** WARNING: this file was generated by pulumi-gen-eks. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import builtins
6
- import copy
5
+ import builtins as _builtins
7
6
  import warnings
8
7
  import sys
9
8
  import pulumi
@@ -27,49 +26,49 @@ __all__ = ['NodeGroupArgs', 'NodeGroup']
27
26
  class NodeGroupArgs:
28
27
  def __init__(__self__, *,
29
28
  cluster: pulumi.Input[Union['Cluster', 'CoreDataArgs']],
30
- ami_id: Optional[pulumi.Input[builtins.str]] = None,
31
- ami_type: Optional[pulumi.Input[builtins.str]] = None,
32
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
33
- bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
29
+ ami_id: Optional[pulumi.Input[_builtins.str]] = None,
30
+ ami_type: Optional[pulumi.Input[_builtins.str]] = None,
31
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
32
+ bootstrap_extra_args: Optional[pulumi.Input[_builtins.str]] = None,
34
33
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
35
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
34
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
36
35
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
37
- cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
38
- desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
39
- enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
40
- encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
36
+ cluster_ingress_rule_id: Optional[pulumi.Input[_builtins.str]] = None,
37
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
38
+ enable_detailed_monitoring: Optional[pulumi.Input[_builtins.bool]] = None,
39
+ encrypt_root_block_device: Optional[pulumi.Input[_builtins.bool]] = None,
41
40
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
42
- gpu: Optional[pulumi.Input[builtins.bool]] = None,
41
+ gpu: Optional[pulumi.Input[_builtins.bool]] = None,
43
42
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
44
- instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
45
- instance_type: Optional[pulumi.Input[builtins.str]] = None,
46
- key_name: Optional[pulumi.Input[builtins.str]] = None,
47
- kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
48
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
49
- max_size: Optional[pulumi.Input[builtins.int]] = None,
50
- min_size: Optional[pulumi.Input[builtins.int]] = None,
51
- node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
52
- node_public_key: Optional[pulumi.Input[builtins.str]] = None,
53
- node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
54
- node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
55
- node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
56
- node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
57
- node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
58
- node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
43
+ instance_profile_name: Optional[pulumi.Input[_builtins.str]] = None,
44
+ instance_type: Optional[pulumi.Input[_builtins.str]] = None,
45
+ key_name: Optional[pulumi.Input[_builtins.str]] = None,
46
+ kubelet_extra_args: Optional[pulumi.Input[_builtins.str]] = None,
47
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
48
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
49
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
50
+ node_associate_public_ip_address: Optional[pulumi.Input[_builtins.bool]] = None,
51
+ node_public_key: Optional[pulumi.Input[_builtins.str]] = None,
52
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[_builtins.bool]] = None,
53
+ node_root_volume_encrypted: Optional[pulumi.Input[_builtins.bool]] = None,
54
+ node_root_volume_iops: Optional[pulumi.Input[_builtins.int]] = None,
55
+ node_root_volume_size: Optional[pulumi.Input[_builtins.int]] = None,
56
+ node_root_volume_throughput: Optional[pulumi.Input[_builtins.int]] = None,
57
+ node_root_volume_type: Optional[pulumi.Input[_builtins.str]] = None,
59
58
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
60
- node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
61
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
62
- node_user_data: Optional[pulumi.Input[builtins.str]] = None,
63
- node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
59
+ node_security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
60
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
61
+ node_user_data: Optional[pulumi.Input[_builtins.str]] = None,
62
+ node_user_data_override: Optional[pulumi.Input[_builtins.str]] = None,
64
63
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]]] = None,
65
64
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
66
- spot_price: Optional[pulumi.Input[builtins.str]] = None,
65
+ spot_price: Optional[pulumi.Input[_builtins.str]] = None,
67
66
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]]] = None,
68
- version: Optional[pulumi.Input[builtins.str]] = None):
67
+ version: Optional[pulumi.Input[_builtins.str]] = None):
69
68
  """
70
69
  The set of arguments for constructing a NodeGroup resource.
71
70
  :param pulumi.Input[Union['Cluster', 'CoreDataArgs']] cluster: The target EKS cluster.
72
- :param pulumi.Input[builtins.str] ami_id: The AMI ID to use for the worker nodes.
71
+ :param pulumi.Input[_builtins.str] ami_id: The AMI ID to use for the worker nodes.
73
72
 
74
73
  Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
75
74
 
@@ -77,17 +76,17 @@ class NodeGroupArgs:
77
76
 
78
77
  See for more details:
79
78
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
80
- :param pulumi.Input[builtins.str] ami_type: The AMI Type to use for the worker nodes.
79
+ :param pulumi.Input[_builtins.str] ami_type: The AMI Type to use for the worker nodes.
81
80
 
82
81
  Only applicable when setting an AMI ID that is of type `arm64`.
83
82
 
84
83
  Note: `amiType` and `gpu` are mutually exclusive.
85
- :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
84
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
86
85
 
87
86
  Per AWS, all stack-level tags, including automatically created tags, and the `cloudFormationTags` option are propagated to resources that AWS CloudFormation supports, including the AutoScalingGroup. See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
88
87
 
89
88
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
90
- :param pulumi.Input[builtins.str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
89
+ :param pulumi.Input[_builtins.str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
91
90
  :param pulumi.Input[Mapping[str, Any]] bottlerocket_settings: The configuration settings for Bottlerocket OS.
92
91
  The settings will get merged with the base settings the provider uses to configure Bottlerocket.
93
92
 
@@ -98,24 +97,24 @@ class NodeGroupArgs:
98
97
  - settings.kubernetes.cluster-dns-ip
99
98
 
100
99
  For an overview of the available settings, see https://bottlerocket.dev/en/os/1.20.x/api/settings/.
101
- :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
100
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
102
101
 
103
102
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
104
103
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroupRule'] cluster_ingress_rule: The ingress rule that gives node group access.
105
- :param pulumi.Input[builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
106
- :param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
107
- :param pulumi.Input[builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
104
+ :param pulumi.Input[_builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
105
+ :param pulumi.Input[_builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
106
+ :param pulumi.Input[_builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
108
107
 
109
108
  With detailed monitoring, all metrics, including status check metrics, are available in 1-minute intervals.
110
109
  When enabled, you can also get aggregated data across groups of similar instances.
111
110
 
112
111
  Note: You are charged per metric that is sent to CloudWatch. You are not charged for data storage.
113
112
  For more information, see "Paid tier" and "Example 1 - EC2 Detailed Monitoring" here https://aws.amazon.com/cloudwatch/pricing/.
114
- :param pulumi.Input[builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
113
+ :param pulumi.Input[_builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
115
114
  :param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]] extra_node_security_groups: Extra security groups to attach on all nodes in this worker node group.
116
115
 
117
116
  This additional set of security groups captures any user application rules that will be needed for the nodes.
118
- :param pulumi.Input[builtins.bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
117
+ :param pulumi.Input[_builtins.bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
119
118
 
120
119
  Defaults to false.
121
120
 
@@ -125,23 +124,23 @@ class NodeGroupArgs:
125
124
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
126
125
  - https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
127
126
  :param 'pulumi_aws.iam.InstanceProfile' instance_profile: The IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
128
- :param pulumi.Input[builtins.str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
129
- :param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
130
- :param pulumi.Input[builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
131
- :param pulumi.Input[builtins.str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
132
- :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
133
- :param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
134
- :param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
135
- :param pulumi.Input[builtins.bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
136
- :param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
127
+ :param pulumi.Input[_builtins.str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
128
+ :param pulumi.Input[_builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
129
+ :param pulumi.Input[_builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
130
+ :param pulumi.Input[_builtins.str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
131
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
132
+ :param pulumi.Input[_builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
133
+ :param pulumi.Input[_builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
134
+ :param pulumi.Input[_builtins.bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
135
+ :param pulumi.Input[_builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
137
136
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
138
137
  If not provided, no SSH access is enabled on VMs.
139
- :param pulumi.Input[builtins.bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
140
- :param pulumi.Input[builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
141
- :param pulumi.Input[builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
142
- :param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
143
- :param pulumi.Input[builtins.int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
144
- :param pulumi.Input[builtins.str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
138
+ :param pulumi.Input[_builtins.bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
139
+ :param pulumi.Input[_builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
140
+ :param pulumi.Input[_builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
141
+ :param pulumi.Input[_builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
142
+ :param pulumi.Input[_builtins.int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
143
+ :param pulumi.Input[_builtins.str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
145
144
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] node_security_group: The security group for the worker node group to communicate with the cluster.
146
145
 
147
146
  This security group requires specific inbound and outbound rules.
@@ -150,7 +149,7 @@ class NodeGroupArgs:
150
149
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
151
150
 
152
151
  Note: The `nodeSecurityGroup` option and the cluster option`nodeSecurityGroupTags` are mutually exclusive.
153
- :param pulumi.Input[builtins.str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
152
+ :param pulumi.Input[_builtins.str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
154
153
 
155
154
  This security group requires specific inbound and outbound rules.
156
155
 
@@ -158,11 +157,11 @@ class NodeGroupArgs:
158
157
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
159
158
 
160
159
  Note: The `nodeSecurityGroupId` option and the cluster option `nodeSecurityGroupTags` are mutually exclusive.
161
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
160
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
162
161
 
163
162
  Setting this option overrides which subnets to use for the worker node group, regardless if the cluster's `subnetIds` is set, or if `publicSubnetIds` and/or `privateSubnetIds` were set.
164
- :param pulumi.Input[builtins.str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
165
- :param pulumi.Input[builtins.str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
163
+ :param pulumi.Input[_builtins.str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
164
+ :param pulumi.Input[_builtins.str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
166
165
 
167
166
  See for more details: https://docs.aws.amazon.com/eks/latest/userguide/worker.html
168
167
  :param pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]] nodeadm_extra_options: Extra nodeadm configuration sections to be added to the nodeadm user data. This can be shell scripts, nodeadm NodeConfig or any other user data compatible script. When configuring additional nodeadm NodeConfig sections, they'll be merged with the base settings the provider sets. You can overwrite base settings or provide additional settings this way.
@@ -180,9 +179,9 @@ class NodeGroupArgs:
180
179
  Valid values are `RECOMMENDED`, `AL2`, `AL2023` and `Bottlerocket`.
181
180
 
182
181
  Defaults to the current recommended OS.
183
- :param pulumi.Input[builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
182
+ :param pulumi.Input[_builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
184
183
  :param pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]] taints: Custom k8s node taints to be attached to each worker node. Adds the given taints to the `--register-with-taints` kubelet argument
185
- :param pulumi.Input[builtins.str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
184
+ :param pulumi.Input[_builtins.str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
186
185
  """
187
186
  pulumi.set(__self__, "cluster", cluster)
188
187
  if ami_id is not None:
@@ -264,7 +263,7 @@ class NodeGroupArgs:
264
263
  if version is not None:
265
264
  pulumi.set(__self__, "version", version)
266
265
 
267
- @property
266
+ @_builtins.property
268
267
  @pulumi.getter
269
268
  def cluster(self) -> pulumi.Input[Union['Cluster', 'CoreDataArgs']]:
270
269
  """
@@ -276,9 +275,9 @@ class NodeGroupArgs:
276
275
  def cluster(self, value: pulumi.Input[Union['Cluster', 'CoreDataArgs']]):
277
276
  pulumi.set(self, "cluster", value)
278
277
 
279
- @property
278
+ @_builtins.property
280
279
  @pulumi.getter(name="amiId")
281
- def ami_id(self) -> Optional[pulumi.Input[builtins.str]]:
280
+ def ami_id(self) -> Optional[pulumi.Input[_builtins.str]]:
282
281
  """
283
282
  The AMI ID to use for the worker nodes.
284
283
 
@@ -292,12 +291,12 @@ class NodeGroupArgs:
292
291
  return pulumi.get(self, "ami_id")
293
292
 
294
293
  @ami_id.setter
295
- def ami_id(self, value: Optional[pulumi.Input[builtins.str]]):
294
+ def ami_id(self, value: Optional[pulumi.Input[_builtins.str]]):
296
295
  pulumi.set(self, "ami_id", value)
297
296
 
298
- @property
297
+ @_builtins.property
299
298
  @pulumi.getter(name="amiType")
300
- def ami_type(self) -> Optional[pulumi.Input[builtins.str]]:
299
+ def ami_type(self) -> Optional[pulumi.Input[_builtins.str]]:
301
300
  """
302
301
  The AMI Type to use for the worker nodes.
303
302
 
@@ -308,12 +307,12 @@ class NodeGroupArgs:
308
307
  return pulumi.get(self, "ami_type")
309
308
 
310
309
  @ami_type.setter
311
- def ami_type(self, value: Optional[pulumi.Input[builtins.str]]):
310
+ def ami_type(self, value: Optional[pulumi.Input[_builtins.str]]):
312
311
  pulumi.set(self, "ami_type", value)
313
312
 
314
- @property
313
+ @_builtins.property
315
314
  @pulumi.getter(name="autoScalingGroupTags")
316
- def auto_scaling_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
315
+ def auto_scaling_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
317
316
  """
318
317
  The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
319
318
 
@@ -324,22 +323,22 @@ class NodeGroupArgs:
324
323
  return pulumi.get(self, "auto_scaling_group_tags")
325
324
 
326
325
  @auto_scaling_group_tags.setter
327
- def auto_scaling_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
326
+ def auto_scaling_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
328
327
  pulumi.set(self, "auto_scaling_group_tags", value)
329
328
 
330
- @property
329
+ @_builtins.property
331
330
  @pulumi.getter(name="bootstrapExtraArgs")
332
- def bootstrap_extra_args(self) -> Optional[pulumi.Input[builtins.str]]:
331
+ def bootstrap_extra_args(self) -> Optional[pulumi.Input[_builtins.str]]:
333
332
  """
334
333
  Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
335
334
  """
336
335
  return pulumi.get(self, "bootstrap_extra_args")
337
336
 
338
337
  @bootstrap_extra_args.setter
339
- def bootstrap_extra_args(self, value: Optional[pulumi.Input[builtins.str]]):
338
+ def bootstrap_extra_args(self, value: Optional[pulumi.Input[_builtins.str]]):
340
339
  pulumi.set(self, "bootstrap_extra_args", value)
341
340
 
342
- @property
341
+ @_builtins.property
343
342
  @pulumi.getter(name="bottlerocketSettings")
344
343
  def bottlerocket_settings(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
345
344
  """
@@ -360,9 +359,9 @@ class NodeGroupArgs:
360
359
  def bottlerocket_settings(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
361
360
  pulumi.set(self, "bottlerocket_settings", value)
362
361
 
363
- @property
362
+ @_builtins.property
364
363
  @pulumi.getter(name="cloudFormationTags")
365
- def cloud_formation_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
364
+ def cloud_formation_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
366
365
  """
367
366
  The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
368
367
 
@@ -371,10 +370,10 @@ class NodeGroupArgs:
371
370
  return pulumi.get(self, "cloud_formation_tags")
372
371
 
373
372
  @cloud_formation_tags.setter
374
- def cloud_formation_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
373
+ def cloud_formation_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
375
374
  pulumi.set(self, "cloud_formation_tags", value)
376
375
 
377
- @property
376
+ @_builtins.property
378
377
  @pulumi.getter(name="clusterIngressRule")
379
378
  def cluster_ingress_rule(self) -> Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']]:
380
379
  """
@@ -386,33 +385,33 @@ class NodeGroupArgs:
386
385
  def cluster_ingress_rule(self, value: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']]):
387
386
  pulumi.set(self, "cluster_ingress_rule", value)
388
387
 
389
- @property
388
+ @_builtins.property
390
389
  @pulumi.getter(name="clusterIngressRuleId")
391
- def cluster_ingress_rule_id(self) -> Optional[pulumi.Input[builtins.str]]:
390
+ def cluster_ingress_rule_id(self) -> Optional[pulumi.Input[_builtins.str]]:
392
391
  """
393
392
  The ID of the ingress rule that gives node group access.
394
393
  """
395
394
  return pulumi.get(self, "cluster_ingress_rule_id")
396
395
 
397
396
  @cluster_ingress_rule_id.setter
398
- def cluster_ingress_rule_id(self, value: Optional[pulumi.Input[builtins.str]]):
397
+ def cluster_ingress_rule_id(self, value: Optional[pulumi.Input[_builtins.str]]):
399
398
  pulumi.set(self, "cluster_ingress_rule_id", value)
400
399
 
401
- @property
400
+ @_builtins.property
402
401
  @pulumi.getter(name="desiredCapacity")
403
- def desired_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
402
+ def desired_capacity(self) -> Optional[pulumi.Input[_builtins.int]]:
404
403
  """
405
404
  The number of worker nodes that should be running in the cluster. Defaults to 2.
406
405
  """
407
406
  return pulumi.get(self, "desired_capacity")
408
407
 
409
408
  @desired_capacity.setter
410
- def desired_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
409
+ def desired_capacity(self, value: Optional[pulumi.Input[_builtins.int]]):
411
410
  pulumi.set(self, "desired_capacity", value)
412
411
 
413
- @property
412
+ @_builtins.property
414
413
  @pulumi.getter(name="enableDetailedMonitoring")
415
- def enable_detailed_monitoring(self) -> Optional[pulumi.Input[builtins.bool]]:
414
+ def enable_detailed_monitoring(self) -> Optional[pulumi.Input[_builtins.bool]]:
416
415
  """
417
416
  Enables/disables detailed monitoring of the EC2 instances.
418
417
 
@@ -425,22 +424,22 @@ class NodeGroupArgs:
425
424
  return pulumi.get(self, "enable_detailed_monitoring")
426
425
 
427
426
  @enable_detailed_monitoring.setter
428
- def enable_detailed_monitoring(self, value: Optional[pulumi.Input[builtins.bool]]):
427
+ def enable_detailed_monitoring(self, value: Optional[pulumi.Input[_builtins.bool]]):
429
428
  pulumi.set(self, "enable_detailed_monitoring", value)
430
429
 
431
- @property
430
+ @_builtins.property
432
431
  @pulumi.getter(name="encryptRootBlockDevice")
433
- def encrypt_root_block_device(self) -> Optional[pulumi.Input[builtins.bool]]:
432
+ def encrypt_root_block_device(self) -> Optional[pulumi.Input[_builtins.bool]]:
434
433
  """
435
434
  Encrypt the root block device of the nodes in the node group.
436
435
  """
437
436
  return pulumi.get(self, "encrypt_root_block_device")
438
437
 
439
438
  @encrypt_root_block_device.setter
440
- def encrypt_root_block_device(self, value: Optional[pulumi.Input[builtins.bool]]):
439
+ def encrypt_root_block_device(self, value: Optional[pulumi.Input[_builtins.bool]]):
441
440
  pulumi.set(self, "encrypt_root_block_device", value)
442
441
 
443
- @property
442
+ @_builtins.property
444
443
  @pulumi.getter(name="extraNodeSecurityGroups")
445
444
  def extra_node_security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]]:
446
445
  """
@@ -454,9 +453,9 @@ class NodeGroupArgs:
454
453
  def extra_node_security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]]):
455
454
  pulumi.set(self, "extra_node_security_groups", value)
456
455
 
457
- @property
456
+ @_builtins.property
458
457
  @pulumi.getter
459
- def gpu(self) -> Optional[pulumi.Input[builtins.bool]]:
458
+ def gpu(self) -> Optional[pulumi.Input[_builtins.bool]]:
460
459
  """
461
460
  Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
462
461
 
@@ -471,10 +470,10 @@ class NodeGroupArgs:
471
470
  return pulumi.get(self, "gpu")
472
471
 
473
472
  @gpu.setter
474
- def gpu(self, value: Optional[pulumi.Input[builtins.bool]]):
473
+ def gpu(self, value: Optional[pulumi.Input[_builtins.bool]]):
475
474
  pulumi.set(self, "gpu", value)
476
475
 
477
- @property
476
+ @_builtins.property
478
477
  @pulumi.getter(name="instanceProfile")
479
478
  def instance_profile(self) -> Optional['pulumi_aws.iam.InstanceProfile']:
480
479
  """
@@ -486,105 +485,105 @@ class NodeGroupArgs:
486
485
  def instance_profile(self, value: Optional['pulumi_aws.iam.InstanceProfile']):
487
486
  pulumi.set(self, "instance_profile", value)
488
487
 
489
- @property
488
+ @_builtins.property
490
489
  @pulumi.getter(name="instanceProfileName")
491
- def instance_profile_name(self) -> Optional[pulumi.Input[builtins.str]]:
490
+ def instance_profile_name(self) -> Optional[pulumi.Input[_builtins.str]]:
492
491
  """
493
492
  The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
494
493
  """
495
494
  return pulumi.get(self, "instance_profile_name")
496
495
 
497
496
  @instance_profile_name.setter
498
- def instance_profile_name(self, value: Optional[pulumi.Input[builtins.str]]):
497
+ def instance_profile_name(self, value: Optional[pulumi.Input[_builtins.str]]):
499
498
  pulumi.set(self, "instance_profile_name", value)
500
499
 
501
- @property
500
+ @_builtins.property
502
501
  @pulumi.getter(name="instanceType")
503
- def instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
502
+ def instance_type(self) -> Optional[pulumi.Input[_builtins.str]]:
504
503
  """
505
504
  The instance type to use for the cluster's nodes. Defaults to "t3.medium".
506
505
  """
507
506
  return pulumi.get(self, "instance_type")
508
507
 
509
508
  @instance_type.setter
510
- def instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
509
+ def instance_type(self, value: Optional[pulumi.Input[_builtins.str]]):
511
510
  pulumi.set(self, "instance_type", value)
512
511
 
513
- @property
512
+ @_builtins.property
514
513
  @pulumi.getter(name="keyName")
515
- def key_name(self) -> Optional[pulumi.Input[builtins.str]]:
514
+ def key_name(self) -> Optional[pulumi.Input[_builtins.str]]:
516
515
  """
517
516
  Name of the key pair to use for SSH access to worker nodes.
518
517
  """
519
518
  return pulumi.get(self, "key_name")
520
519
 
521
520
  @key_name.setter
522
- def key_name(self, value: Optional[pulumi.Input[builtins.str]]):
521
+ def key_name(self, value: Optional[pulumi.Input[_builtins.str]]):
523
522
  pulumi.set(self, "key_name", value)
524
523
 
525
- @property
524
+ @_builtins.property
526
525
  @pulumi.getter(name="kubeletExtraArgs")
527
- def kubelet_extra_args(self) -> Optional[pulumi.Input[builtins.str]]:
526
+ def kubelet_extra_args(self) -> Optional[pulumi.Input[_builtins.str]]:
528
527
  """
529
528
  Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
530
529
  """
531
530
  return pulumi.get(self, "kubelet_extra_args")
532
531
 
533
532
  @kubelet_extra_args.setter
534
- def kubelet_extra_args(self, value: Optional[pulumi.Input[builtins.str]]):
533
+ def kubelet_extra_args(self, value: Optional[pulumi.Input[_builtins.str]]):
535
534
  pulumi.set(self, "kubelet_extra_args", value)
536
535
 
537
- @property
536
+ @_builtins.property
538
537
  @pulumi.getter
539
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
538
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
540
539
  """
541
540
  Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
542
541
  """
543
542
  return pulumi.get(self, "labels")
544
543
 
545
544
  @labels.setter
546
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
545
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
547
546
  pulumi.set(self, "labels", value)
548
547
 
549
- @property
548
+ @_builtins.property
550
549
  @pulumi.getter(name="maxSize")
551
- def max_size(self) -> Optional[pulumi.Input[builtins.int]]:
550
+ def max_size(self) -> Optional[pulumi.Input[_builtins.int]]:
552
551
  """
553
552
  The maximum number of worker nodes running in the cluster. Defaults to 2.
554
553
  """
555
554
  return pulumi.get(self, "max_size")
556
555
 
557
556
  @max_size.setter
558
- def max_size(self, value: Optional[pulumi.Input[builtins.int]]):
557
+ def max_size(self, value: Optional[pulumi.Input[_builtins.int]]):
559
558
  pulumi.set(self, "max_size", value)
560
559
 
561
- @property
560
+ @_builtins.property
562
561
  @pulumi.getter(name="minSize")
563
- def min_size(self) -> Optional[pulumi.Input[builtins.int]]:
562
+ def min_size(self) -> Optional[pulumi.Input[_builtins.int]]:
564
563
  """
565
564
  The minimum number of worker nodes running in the cluster. Defaults to 1.
566
565
  """
567
566
  return pulumi.get(self, "min_size")
568
567
 
569
568
  @min_size.setter
570
- def min_size(self, value: Optional[pulumi.Input[builtins.int]]):
569
+ def min_size(self, value: Optional[pulumi.Input[_builtins.int]]):
571
570
  pulumi.set(self, "min_size", value)
572
571
 
573
- @property
572
+ @_builtins.property
574
573
  @pulumi.getter(name="nodeAssociatePublicIpAddress")
575
- def node_associate_public_ip_address(self) -> Optional[pulumi.Input[builtins.bool]]:
574
+ def node_associate_public_ip_address(self) -> Optional[pulumi.Input[_builtins.bool]]:
576
575
  """
577
576
  Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
578
577
  """
579
578
  return pulumi.get(self, "node_associate_public_ip_address")
580
579
 
581
580
  @node_associate_public_ip_address.setter
582
- def node_associate_public_ip_address(self, value: Optional[pulumi.Input[builtins.bool]]):
581
+ def node_associate_public_ip_address(self, value: Optional[pulumi.Input[_builtins.bool]]):
583
582
  pulumi.set(self, "node_associate_public_ip_address", value)
584
583
 
585
- @property
584
+ @_builtins.property
586
585
  @pulumi.getter(name="nodePublicKey")
587
- def node_public_key(self) -> Optional[pulumi.Input[builtins.str]]:
586
+ def node_public_key(self) -> Optional[pulumi.Input[_builtins.str]]:
588
587
  """
589
588
  Public key material for SSH access to worker nodes. See allowed formats at:
590
589
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
@@ -593,82 +592,82 @@ class NodeGroupArgs:
593
592
  return pulumi.get(self, "node_public_key")
594
593
 
595
594
  @node_public_key.setter
596
- def node_public_key(self, value: Optional[pulumi.Input[builtins.str]]):
595
+ def node_public_key(self, value: Optional[pulumi.Input[_builtins.str]]):
597
596
  pulumi.set(self, "node_public_key", value)
598
597
 
599
- @property
598
+ @_builtins.property
600
599
  @pulumi.getter(name="nodeRootVolumeDeleteOnTermination")
601
- def node_root_volume_delete_on_termination(self) -> Optional[pulumi.Input[builtins.bool]]:
600
+ def node_root_volume_delete_on_termination(self) -> Optional[pulumi.Input[_builtins.bool]]:
602
601
  """
603
602
  Whether the root block device should be deleted on termination of the instance. Defaults to true.
604
603
  """
605
604
  return pulumi.get(self, "node_root_volume_delete_on_termination")
606
605
 
607
606
  @node_root_volume_delete_on_termination.setter
608
- def node_root_volume_delete_on_termination(self, value: Optional[pulumi.Input[builtins.bool]]):
607
+ def node_root_volume_delete_on_termination(self, value: Optional[pulumi.Input[_builtins.bool]]):
609
608
  pulumi.set(self, "node_root_volume_delete_on_termination", value)
610
609
 
611
- @property
610
+ @_builtins.property
612
611
  @pulumi.getter(name="nodeRootVolumeEncrypted")
613
- def node_root_volume_encrypted(self) -> Optional[pulumi.Input[builtins.bool]]:
612
+ def node_root_volume_encrypted(self) -> Optional[pulumi.Input[_builtins.bool]]:
614
613
  """
615
614
  Whether to encrypt a cluster node's root volume. Defaults to false.
616
615
  """
617
616
  return pulumi.get(self, "node_root_volume_encrypted")
618
617
 
619
618
  @node_root_volume_encrypted.setter
620
- def node_root_volume_encrypted(self, value: Optional[pulumi.Input[builtins.bool]]):
619
+ def node_root_volume_encrypted(self, value: Optional[pulumi.Input[_builtins.bool]]):
621
620
  pulumi.set(self, "node_root_volume_encrypted", value)
622
621
 
623
- @property
622
+ @_builtins.property
624
623
  @pulumi.getter(name="nodeRootVolumeIops")
625
- def node_root_volume_iops(self) -> Optional[pulumi.Input[builtins.int]]:
624
+ def node_root_volume_iops(self) -> Optional[pulumi.Input[_builtins.int]]:
626
625
  """
627
626
  The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
628
627
  """
629
628
  return pulumi.get(self, "node_root_volume_iops")
630
629
 
631
630
  @node_root_volume_iops.setter
632
- def node_root_volume_iops(self, value: Optional[pulumi.Input[builtins.int]]):
631
+ def node_root_volume_iops(self, value: Optional[pulumi.Input[_builtins.int]]):
633
632
  pulumi.set(self, "node_root_volume_iops", value)
634
633
 
635
- @property
634
+ @_builtins.property
636
635
  @pulumi.getter(name="nodeRootVolumeSize")
637
- def node_root_volume_size(self) -> Optional[pulumi.Input[builtins.int]]:
636
+ def node_root_volume_size(self) -> Optional[pulumi.Input[_builtins.int]]:
638
637
  """
639
638
  The size in GiB of a cluster node's root volume. Defaults to 20.
640
639
  """
641
640
  return pulumi.get(self, "node_root_volume_size")
642
641
 
643
642
  @node_root_volume_size.setter
644
- def node_root_volume_size(self, value: Optional[pulumi.Input[builtins.int]]):
643
+ def node_root_volume_size(self, value: Optional[pulumi.Input[_builtins.int]]):
645
644
  pulumi.set(self, "node_root_volume_size", value)
646
645
 
647
- @property
646
+ @_builtins.property
648
647
  @pulumi.getter(name="nodeRootVolumeThroughput")
649
- def node_root_volume_throughput(self) -> Optional[pulumi.Input[builtins.int]]:
648
+ def node_root_volume_throughput(self) -> Optional[pulumi.Input[_builtins.int]]:
650
649
  """
651
650
  Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
652
651
  """
653
652
  return pulumi.get(self, "node_root_volume_throughput")
654
653
 
655
654
  @node_root_volume_throughput.setter
656
- def node_root_volume_throughput(self, value: Optional[pulumi.Input[builtins.int]]):
655
+ def node_root_volume_throughput(self, value: Optional[pulumi.Input[_builtins.int]]):
657
656
  pulumi.set(self, "node_root_volume_throughput", value)
658
657
 
659
- @property
658
+ @_builtins.property
660
659
  @pulumi.getter(name="nodeRootVolumeType")
661
- def node_root_volume_type(self) -> Optional[pulumi.Input[builtins.str]]:
660
+ def node_root_volume_type(self) -> Optional[pulumi.Input[_builtins.str]]:
662
661
  """
663
662
  Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
664
663
  """
665
664
  return pulumi.get(self, "node_root_volume_type")
666
665
 
667
666
  @node_root_volume_type.setter
668
- def node_root_volume_type(self, value: Optional[pulumi.Input[builtins.str]]):
667
+ def node_root_volume_type(self, value: Optional[pulumi.Input[_builtins.str]]):
669
668
  pulumi.set(self, "node_root_volume_type", value)
670
669
 
671
- @property
670
+ @_builtins.property
672
671
  @pulumi.getter(name="nodeSecurityGroup")
673
672
  def node_security_group(self) -> Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]:
674
673
  """
@@ -687,9 +686,9 @@ class NodeGroupArgs:
687
686
  def node_security_group(self, value: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]):
688
687
  pulumi.set(self, "node_security_group", value)
689
688
 
690
- @property
689
+ @_builtins.property
691
690
  @pulumi.getter(name="nodeSecurityGroupId")
692
- def node_security_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
691
+ def node_security_group_id(self) -> Optional[pulumi.Input[_builtins.str]]:
693
692
  """
694
693
  The ID of the security group for the worker node group to communicate with the cluster.
695
694
 
@@ -703,12 +702,12 @@ class NodeGroupArgs:
703
702
  return pulumi.get(self, "node_security_group_id")
704
703
 
705
704
  @node_security_group_id.setter
706
- def node_security_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
705
+ def node_security_group_id(self, value: Optional[pulumi.Input[_builtins.str]]):
707
706
  pulumi.set(self, "node_security_group_id", value)
708
707
 
709
- @property
708
+ @_builtins.property
710
709
  @pulumi.getter(name="nodeSubnetIds")
711
- def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
710
+ def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
712
711
  """
713
712
  The set of subnets to override and use for the worker node group.
714
713
 
@@ -717,24 +716,24 @@ class NodeGroupArgs:
717
716
  return pulumi.get(self, "node_subnet_ids")
718
717
 
719
718
  @node_subnet_ids.setter
720
- def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
719
+ def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
721
720
  pulumi.set(self, "node_subnet_ids", value)
722
721
 
723
- @property
722
+ @_builtins.property
724
723
  @pulumi.getter(name="nodeUserData")
725
- def node_user_data(self) -> Optional[pulumi.Input[builtins.str]]:
724
+ def node_user_data(self) -> Optional[pulumi.Input[_builtins.str]]:
726
725
  """
727
726
  Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
728
727
  """
729
728
  return pulumi.get(self, "node_user_data")
730
729
 
731
730
  @node_user_data.setter
732
- def node_user_data(self, value: Optional[pulumi.Input[builtins.str]]):
731
+ def node_user_data(self, value: Optional[pulumi.Input[_builtins.str]]):
733
732
  pulumi.set(self, "node_user_data", value)
734
733
 
735
- @property
734
+ @_builtins.property
736
735
  @pulumi.getter(name="nodeUserDataOverride")
737
- def node_user_data_override(self) -> Optional[pulumi.Input[builtins.str]]:
736
+ def node_user_data_override(self) -> Optional[pulumi.Input[_builtins.str]]:
738
737
  """
739
738
  User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
740
739
 
@@ -743,10 +742,10 @@ class NodeGroupArgs:
743
742
  return pulumi.get(self, "node_user_data_override")
744
743
 
745
744
  @node_user_data_override.setter
746
- def node_user_data_override(self, value: Optional[pulumi.Input[builtins.str]]):
745
+ def node_user_data_override(self, value: Optional[pulumi.Input[_builtins.str]]):
747
746
  pulumi.set(self, "node_user_data_override", value)
748
747
 
749
- @property
748
+ @_builtins.property
750
749
  @pulumi.getter(name="nodeadmExtraOptions")
751
750
  def nodeadm_extra_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]]]:
752
751
  """
@@ -768,7 +767,7 @@ class NodeGroupArgs:
768
767
  def nodeadm_extra_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]]]):
769
768
  pulumi.set(self, "nodeadm_extra_options", value)
770
769
 
771
- @property
770
+ @_builtins.property
772
771
  @pulumi.getter(name="operatingSystem")
773
772
  def operating_system(self) -> Optional[pulumi.Input['OperatingSystem']]:
774
773
  """
@@ -783,19 +782,19 @@ class NodeGroupArgs:
783
782
  def operating_system(self, value: Optional[pulumi.Input['OperatingSystem']]):
784
783
  pulumi.set(self, "operating_system", value)
785
784
 
786
- @property
785
+ @_builtins.property
787
786
  @pulumi.getter(name="spotPrice")
788
- def spot_price(self) -> Optional[pulumi.Input[builtins.str]]:
787
+ def spot_price(self) -> Optional[pulumi.Input[_builtins.str]]:
789
788
  """
790
789
  Bidding price for spot instance. If set, only spot instances will be added as worker node.
791
790
  """
792
791
  return pulumi.get(self, "spot_price")
793
792
 
794
793
  @spot_price.setter
795
- def spot_price(self, value: Optional[pulumi.Input[builtins.str]]):
794
+ def spot_price(self, value: Optional[pulumi.Input[_builtins.str]]):
796
795
  pulumi.set(self, "spot_price", value)
797
796
 
798
- @property
797
+ @_builtins.property
799
798
  @pulumi.getter
800
799
  def taints(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]]]:
801
800
  """
@@ -807,16 +806,16 @@ class NodeGroupArgs:
807
806
  def taints(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]]]):
808
807
  pulumi.set(self, "taints", value)
809
808
 
810
- @property
809
+ @_builtins.property
811
810
  @pulumi.getter
812
- def version(self) -> Optional[pulumi.Input[builtins.str]]:
811
+ def version(self) -> Optional[pulumi.Input[_builtins.str]]:
813
812
  """
814
813
  Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
815
814
  """
816
815
  return pulumi.get(self, "version")
817
816
 
818
817
  @version.setter
819
- def version(self, value: Optional[pulumi.Input[builtins.str]]):
818
+ def version(self, value: Optional[pulumi.Input[_builtins.str]]):
820
819
  pulumi.set(self, "version", value)
821
820
 
822
821
 
@@ -831,53 +830,53 @@ class NodeGroup(pulumi.ComponentResource):
831
830
  def __init__(__self__,
832
831
  resource_name: str,
833
832
  opts: Optional[pulumi.ResourceOptions] = None,
834
- ami_id: Optional[pulumi.Input[builtins.str]] = None,
835
- ami_type: Optional[pulumi.Input[builtins.str]] = None,
836
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
837
- bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
833
+ ami_id: Optional[pulumi.Input[_builtins.str]] = None,
834
+ ami_type: Optional[pulumi.Input[_builtins.str]] = None,
835
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
836
+ bootstrap_extra_args: Optional[pulumi.Input[_builtins.str]] = None,
838
837
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
839
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
838
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
840
839
  cluster: Optional[pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]]] = None,
841
840
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
842
- cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
843
- desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
844
- enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
845
- encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
841
+ cluster_ingress_rule_id: Optional[pulumi.Input[_builtins.str]] = None,
842
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
843
+ enable_detailed_monitoring: Optional[pulumi.Input[_builtins.bool]] = None,
844
+ encrypt_root_block_device: Optional[pulumi.Input[_builtins.bool]] = None,
846
845
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
847
- gpu: Optional[pulumi.Input[builtins.bool]] = None,
846
+ gpu: Optional[pulumi.Input[_builtins.bool]] = None,
848
847
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
849
- instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
850
- instance_type: Optional[pulumi.Input[builtins.str]] = None,
851
- key_name: Optional[pulumi.Input[builtins.str]] = None,
852
- kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
853
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
854
- max_size: Optional[pulumi.Input[builtins.int]] = None,
855
- min_size: Optional[pulumi.Input[builtins.int]] = None,
856
- node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
857
- node_public_key: Optional[pulumi.Input[builtins.str]] = None,
858
- node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
859
- node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
860
- node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
861
- node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
862
- node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
863
- node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
848
+ instance_profile_name: Optional[pulumi.Input[_builtins.str]] = None,
849
+ instance_type: Optional[pulumi.Input[_builtins.str]] = None,
850
+ key_name: Optional[pulumi.Input[_builtins.str]] = None,
851
+ kubelet_extra_args: Optional[pulumi.Input[_builtins.str]] = None,
852
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
853
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
854
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
855
+ node_associate_public_ip_address: Optional[pulumi.Input[_builtins.bool]] = None,
856
+ node_public_key: Optional[pulumi.Input[_builtins.str]] = None,
857
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[_builtins.bool]] = None,
858
+ node_root_volume_encrypted: Optional[pulumi.Input[_builtins.bool]] = None,
859
+ node_root_volume_iops: Optional[pulumi.Input[_builtins.int]] = None,
860
+ node_root_volume_size: Optional[pulumi.Input[_builtins.int]] = None,
861
+ node_root_volume_throughput: Optional[pulumi.Input[_builtins.int]] = None,
862
+ node_root_volume_type: Optional[pulumi.Input[_builtins.str]] = None,
864
863
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
865
- node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
866
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
867
- node_user_data: Optional[pulumi.Input[builtins.str]] = None,
868
- node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
864
+ node_security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
865
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
866
+ node_user_data: Optional[pulumi.Input[_builtins.str]] = None,
867
+ node_user_data_override: Optional[pulumi.Input[_builtins.str]] = None,
869
868
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]]] = None,
870
869
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
871
- spot_price: Optional[pulumi.Input[builtins.str]] = None,
870
+ spot_price: Optional[pulumi.Input[_builtins.str]] = None,
872
871
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]]] = None,
873
- version: Optional[pulumi.Input[builtins.str]] = None,
872
+ version: Optional[pulumi.Input[_builtins.str]] = None,
874
873
  __props__=None):
875
874
  """
876
875
  NodeGroup is a component that wraps the AWS EC2 instances that provide compute capacity for an EKS cluster.
877
876
 
878
877
  :param str resource_name: The name of the resource.
879
878
  :param pulumi.ResourceOptions opts: Options for the resource.
880
- :param pulumi.Input[builtins.str] ami_id: The AMI ID to use for the worker nodes.
879
+ :param pulumi.Input[_builtins.str] ami_id: The AMI ID to use for the worker nodes.
881
880
 
882
881
  Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
883
882
 
@@ -885,17 +884,17 @@ class NodeGroup(pulumi.ComponentResource):
885
884
 
886
885
  See for more details:
887
886
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
888
- :param pulumi.Input[builtins.str] ami_type: The AMI Type to use for the worker nodes.
887
+ :param pulumi.Input[_builtins.str] ami_type: The AMI Type to use for the worker nodes.
889
888
 
890
889
  Only applicable when setting an AMI ID that is of type `arm64`.
891
890
 
892
891
  Note: `amiType` and `gpu` are mutually exclusive.
893
- :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
892
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
894
893
 
895
894
  Per AWS, all stack-level tags, including automatically created tags, and the `cloudFormationTags` option are propagated to resources that AWS CloudFormation supports, including the AutoScalingGroup. See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
896
895
 
897
896
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
898
- :param pulumi.Input[builtins.str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
897
+ :param pulumi.Input[_builtins.str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
899
898
  :param pulumi.Input[Mapping[str, Any]] bottlerocket_settings: The configuration settings for Bottlerocket OS.
900
899
  The settings will get merged with the base settings the provider uses to configure Bottlerocket.
901
900
 
@@ -906,25 +905,25 @@ class NodeGroup(pulumi.ComponentResource):
906
905
  - settings.kubernetes.cluster-dns-ip
907
906
 
908
907
  For an overview of the available settings, see https://bottlerocket.dev/en/os/1.20.x/api/settings/.
909
- :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
908
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
910
909
 
911
910
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
912
911
  :param pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]] cluster: The target EKS cluster.
913
912
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroupRule'] cluster_ingress_rule: The ingress rule that gives node group access.
914
- :param pulumi.Input[builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
915
- :param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
916
- :param pulumi.Input[builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
913
+ :param pulumi.Input[_builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
914
+ :param pulumi.Input[_builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
915
+ :param pulumi.Input[_builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
917
916
 
918
917
  With detailed monitoring, all metrics, including status check metrics, are available in 1-minute intervals.
919
918
  When enabled, you can also get aggregated data across groups of similar instances.
920
919
 
921
920
  Note: You are charged per metric that is sent to CloudWatch. You are not charged for data storage.
922
921
  For more information, see "Paid tier" and "Example 1 - EC2 Detailed Monitoring" here https://aws.amazon.com/cloudwatch/pricing/.
923
- :param pulumi.Input[builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
922
+ :param pulumi.Input[_builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
924
923
  :param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]] extra_node_security_groups: Extra security groups to attach on all nodes in this worker node group.
925
924
 
926
925
  This additional set of security groups captures any user application rules that will be needed for the nodes.
927
- :param pulumi.Input[builtins.bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
926
+ :param pulumi.Input[_builtins.bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
928
927
 
929
928
  Defaults to false.
930
929
 
@@ -934,23 +933,23 @@ class NodeGroup(pulumi.ComponentResource):
934
933
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
935
934
  - https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
936
935
  :param 'pulumi_aws.iam.InstanceProfile' instance_profile: The IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
937
- :param pulumi.Input[builtins.str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
938
- :param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
939
- :param pulumi.Input[builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
940
- :param pulumi.Input[builtins.str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
941
- :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
942
- :param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
943
- :param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
944
- :param pulumi.Input[builtins.bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
945
- :param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
936
+ :param pulumi.Input[_builtins.str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
937
+ :param pulumi.Input[_builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
938
+ :param pulumi.Input[_builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
939
+ :param pulumi.Input[_builtins.str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
940
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
941
+ :param pulumi.Input[_builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
942
+ :param pulumi.Input[_builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
943
+ :param pulumi.Input[_builtins.bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
944
+ :param pulumi.Input[_builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
946
945
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
947
946
  If not provided, no SSH access is enabled on VMs.
948
- :param pulumi.Input[builtins.bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
949
- :param pulumi.Input[builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
950
- :param pulumi.Input[builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
951
- :param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
952
- :param pulumi.Input[builtins.int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
953
- :param pulumi.Input[builtins.str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
947
+ :param pulumi.Input[_builtins.bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
948
+ :param pulumi.Input[_builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
949
+ :param pulumi.Input[_builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
950
+ :param pulumi.Input[_builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
951
+ :param pulumi.Input[_builtins.int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
952
+ :param pulumi.Input[_builtins.str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
954
953
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] node_security_group: The security group for the worker node group to communicate with the cluster.
955
954
 
956
955
  This security group requires specific inbound and outbound rules.
@@ -959,7 +958,7 @@ class NodeGroup(pulumi.ComponentResource):
959
958
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
960
959
 
961
960
  Note: The `nodeSecurityGroup` option and the cluster option`nodeSecurityGroupTags` are mutually exclusive.
962
- :param pulumi.Input[builtins.str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
961
+ :param pulumi.Input[_builtins.str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
963
962
 
964
963
  This security group requires specific inbound and outbound rules.
965
964
 
@@ -967,11 +966,11 @@ class NodeGroup(pulumi.ComponentResource):
967
966
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
968
967
 
969
968
  Note: The `nodeSecurityGroupId` option and the cluster option `nodeSecurityGroupTags` are mutually exclusive.
970
- :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
969
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
971
970
 
972
971
  Setting this option overrides which subnets to use for the worker node group, regardless if the cluster's `subnetIds` is set, or if `publicSubnetIds` and/or `privateSubnetIds` were set.
973
- :param pulumi.Input[builtins.str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
974
- :param pulumi.Input[builtins.str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
972
+ :param pulumi.Input[_builtins.str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
973
+ :param pulumi.Input[_builtins.str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
975
974
 
976
975
  See for more details: https://docs.aws.amazon.com/eks/latest/userguide/worker.html
977
976
  :param pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]] nodeadm_extra_options: Extra nodeadm configuration sections to be added to the nodeadm user data. This can be shell scripts, nodeadm NodeConfig or any other user data compatible script. When configuring additional nodeadm NodeConfig sections, they'll be merged with the base settings the provider sets. You can overwrite base settings or provide additional settings this way.
@@ -989,9 +988,9 @@ class NodeGroup(pulumi.ComponentResource):
989
988
  Valid values are `RECOMMENDED`, `AL2`, `AL2023` and `Bottlerocket`.
990
989
 
991
990
  Defaults to the current recommended OS.
992
- :param pulumi.Input[builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
991
+ :param pulumi.Input[_builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
993
992
  :param pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]] taints: Custom k8s node taints to be attached to each worker node. Adds the given taints to the `--register-with-taints` kubelet argument
994
- :param pulumi.Input[builtins.str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
993
+ :param pulumi.Input[_builtins.str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
995
994
  """
996
995
  ...
997
996
  @overload
@@ -1017,46 +1016,46 @@ class NodeGroup(pulumi.ComponentResource):
1017
1016
  def _internal_init(__self__,
1018
1017
  resource_name: str,
1019
1018
  opts: Optional[pulumi.ResourceOptions] = None,
1020
- ami_id: Optional[pulumi.Input[builtins.str]] = None,
1021
- ami_type: Optional[pulumi.Input[builtins.str]] = None,
1022
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1023
- bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
1019
+ ami_id: Optional[pulumi.Input[_builtins.str]] = None,
1020
+ ami_type: Optional[pulumi.Input[_builtins.str]] = None,
1021
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1022
+ bootstrap_extra_args: Optional[pulumi.Input[_builtins.str]] = None,
1024
1023
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1025
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1024
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1026
1025
  cluster: Optional[pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]]] = None,
1027
1026
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
1028
- cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
1029
- desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
1030
- enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
1031
- encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
1027
+ cluster_ingress_rule_id: Optional[pulumi.Input[_builtins.str]] = None,
1028
+ desired_capacity: Optional[pulumi.Input[_builtins.int]] = None,
1029
+ enable_detailed_monitoring: Optional[pulumi.Input[_builtins.bool]] = None,
1030
+ encrypt_root_block_device: Optional[pulumi.Input[_builtins.bool]] = None,
1032
1031
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
1033
- gpu: Optional[pulumi.Input[builtins.bool]] = None,
1032
+ gpu: Optional[pulumi.Input[_builtins.bool]] = None,
1034
1033
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
1035
- instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
1036
- instance_type: Optional[pulumi.Input[builtins.str]] = None,
1037
- key_name: Optional[pulumi.Input[builtins.str]] = None,
1038
- kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
1039
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1040
- max_size: Optional[pulumi.Input[builtins.int]] = None,
1041
- min_size: Optional[pulumi.Input[builtins.int]] = None,
1042
- node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
1043
- node_public_key: Optional[pulumi.Input[builtins.str]] = None,
1044
- node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
1045
- node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
1046
- node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
1047
- node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
1048
- node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
1049
- node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
1034
+ instance_profile_name: Optional[pulumi.Input[_builtins.str]] = None,
1035
+ instance_type: Optional[pulumi.Input[_builtins.str]] = None,
1036
+ key_name: Optional[pulumi.Input[_builtins.str]] = None,
1037
+ kubelet_extra_args: Optional[pulumi.Input[_builtins.str]] = None,
1038
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1039
+ max_size: Optional[pulumi.Input[_builtins.int]] = None,
1040
+ min_size: Optional[pulumi.Input[_builtins.int]] = None,
1041
+ node_associate_public_ip_address: Optional[pulumi.Input[_builtins.bool]] = None,
1042
+ node_public_key: Optional[pulumi.Input[_builtins.str]] = None,
1043
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[_builtins.bool]] = None,
1044
+ node_root_volume_encrypted: Optional[pulumi.Input[_builtins.bool]] = None,
1045
+ node_root_volume_iops: Optional[pulumi.Input[_builtins.int]] = None,
1046
+ node_root_volume_size: Optional[pulumi.Input[_builtins.int]] = None,
1047
+ node_root_volume_throughput: Optional[pulumi.Input[_builtins.int]] = None,
1048
+ node_root_volume_type: Optional[pulumi.Input[_builtins.str]] = None,
1050
1049
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
1051
- node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
1052
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1053
- node_user_data: Optional[pulumi.Input[builtins.str]] = None,
1054
- node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
1050
+ node_security_group_id: Optional[pulumi.Input[_builtins.str]] = None,
1051
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1052
+ node_user_data: Optional[pulumi.Input[_builtins.str]] = None,
1053
+ node_user_data_override: Optional[pulumi.Input[_builtins.str]] = None,
1055
1054
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]]] = None,
1056
1055
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
1057
- spot_price: Optional[pulumi.Input[builtins.str]] = None,
1056
+ spot_price: Optional[pulumi.Input[_builtins.str]] = None,
1058
1057
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]]] = None,
1059
- version: Optional[pulumi.Input[builtins.str]] = None,
1058
+ version: Optional[pulumi.Input[_builtins.str]] = None,
1060
1059
  __props__=None):
1061
1060
  pulumi.log.warn("""NodeGroup is deprecated: NodeGroup uses AWS EC2 LaunchConfiguration which has been deprecated by AWS and doesn't support the newest instance types. Please use NodeGroupV2 instead.""")
1062
1061
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1120,15 +1119,15 @@ class NodeGroup(pulumi.ComponentResource):
1120
1119
  opts,
1121
1120
  remote=True)
1122
1121
 
1123
- @property
1122
+ @_builtins.property
1124
1123
  @pulumi.getter(name="autoScalingGroupName")
1125
- def auto_scaling_group_name(self) -> pulumi.Output[builtins.str]:
1124
+ def auto_scaling_group_name(self) -> pulumi.Output[_builtins.str]:
1126
1125
  """
1127
1126
  The AutoScalingGroup name for the Node group.
1128
1127
  """
1129
1128
  return pulumi.get(self, "auto_scaling_group_name")
1130
1129
 
1131
- @property
1130
+ @_builtins.property
1132
1131
  @pulumi.getter(name="cfnStack")
1133
1132
  def cfn_stack(self) -> pulumi.Output['pulumi_aws.cloudformation.Stack']:
1134
1133
  """
@@ -1136,7 +1135,7 @@ class NodeGroup(pulumi.ComponentResource):
1136
1135
  """
1137
1136
  return pulumi.get(self, "cfn_stack")
1138
1137
 
1139
- @property
1138
+ @_builtins.property
1140
1139
  @pulumi.getter(name="extraNodeSecurityGroups")
1141
1140
  def extra_node_security_groups(self) -> pulumi.Output[Sequence['pulumi_aws.ec2.SecurityGroup']]:
1142
1141
  """
@@ -1144,7 +1143,7 @@ class NodeGroup(pulumi.ComponentResource):
1144
1143
  """
1145
1144
  return pulumi.get(self, "extra_node_security_groups")
1146
1145
 
1147
- @property
1146
+ @_builtins.property
1148
1147
  @pulumi.getter(name="nodeSecurityGroup")
1149
1148
  def node_security_group(self) -> pulumi.Output[Optional['pulumi_aws.ec2.SecurityGroup']]:
1150
1149
  """
@@ -1152,9 +1151,9 @@ class NodeGroup(pulumi.ComponentResource):
1152
1151
  """
1153
1152
  return pulumi.get(self, "node_security_group")
1154
1153
 
1155
- @property
1154
+ @_builtins.property
1156
1155
  @pulumi.getter(name="nodeSecurityGroupId")
1157
- def node_security_group_id(self) -> pulumi.Output[builtins.str]:
1156
+ def node_security_group_id(self) -> pulumi.Output[_builtins.str]:
1158
1157
  """
1159
1158
  The ID of the security group for the node group to communicate with the cluster.
1160
1159
  """