pulumi-eks 3.9.0a1742626547__py3-none-any.whl → 4.2.0__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/__init__.py +1 -0
- pulumi_eks/_enums.py +16 -7
- pulumi_eks/_inputs.py +491 -490
- pulumi_eks/_utilities.py +8 -4
- pulumi_eks/addon.py +51 -49
- pulumi_eks/cluster.py +346 -304
- pulumi_eks/cluster_creation_role_provider.py +12 -10
- pulumi_eks/managed_node_group.py +162 -160
- pulumi_eks/node_group.py +221 -219
- pulumi_eks/node_group_security_group.py +16 -14
- pulumi_eks/node_group_v2.py +234 -232
- pulumi_eks/outputs.py +148 -147
- pulumi_eks/provider.py +2 -0
- pulumi_eks/pulumi-plugin.json +1 -1
- pulumi_eks/vpc_cni_addon.py +170 -168
- {pulumi_eks-3.9.0a1742626547.dist-info → pulumi_eks-4.2.0.dist-info}/METADATA +4 -4
- pulumi_eks-4.2.0.dist-info/RECORD +20 -0
- {pulumi_eks-3.9.0a1742626547.dist-info → pulumi_eks-4.2.0.dist-info}/WHEEL +1 -1
- pulumi_eks-3.9.0a1742626547.dist-info/RECORD +0 -20
- {pulumi_eks-3.9.0a1742626547.dist-info → pulumi_eks-4.2.0.dist-info}/top_level.txt +0 -0
pulumi_eks/cluster.py
CHANGED
|
@@ -2,6 +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
|
|
5
6
|
import copy
|
|
6
7
|
import warnings
|
|
7
8
|
import sys
|
|
@@ -28,58 +29,60 @@ class ClusterArgs:
|
|
|
28
29
|
access_entries: Optional[Mapping[str, 'AccessEntryArgs']] = None,
|
|
29
30
|
authentication_mode: Optional['AuthenticationMode'] = None,
|
|
30
31
|
auto_mode: Optional['AutoModeOptionsArgs'] = None,
|
|
32
|
+
bootstrap_self_managed_addons: Optional[pulumi.Input[builtins.bool]] = None,
|
|
31
33
|
cluster_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
|
|
32
|
-
cluster_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
33
|
-
cluster_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
34
|
+
cluster_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
35
|
+
cluster_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
34
36
|
coredns_addon_options: Optional['CoreDnsAddonOptionsArgs'] = None,
|
|
35
|
-
create_instance_role: Optional[bool] = None,
|
|
36
|
-
create_oidc_provider: Optional[pulumi.Input[bool]] = None,
|
|
37
|
+
create_instance_role: Optional[builtins.bool] = None,
|
|
38
|
+
create_oidc_provider: Optional[pulumi.Input[builtins.bool]] = None,
|
|
37
39
|
creation_role_provider: Optional['CreationRoleProviderArgs'] = None,
|
|
38
|
-
|
|
39
|
-
desired_capacity: Optional[pulumi.Input[int]] = None,
|
|
40
|
-
enable_config_map_mutable: Optional[pulumi.Input[bool]] = None,
|
|
41
|
-
enabled_cluster_log_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
42
|
-
encryption_config_key_arn: Optional[pulumi.Input[str]] = None,
|
|
43
|
-
endpoint_private_access: Optional[pulumi.Input[bool]] = None,
|
|
44
|
-
endpoint_public_access: Optional[pulumi.Input[bool]] = None,
|
|
45
|
-
fargate: Optional[pulumi.Input[Union[bool, 'FargateProfileArgs']]] = None,
|
|
46
|
-
gpu: Optional[pulumi.Input[bool]] = None,
|
|
47
|
-
instance_profile_name: Optional[pulumi.Input[str]] = None,
|
|
40
|
+
deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
|
|
41
|
+
desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
|
|
42
|
+
enable_config_map_mutable: Optional[pulumi.Input[builtins.bool]] = None,
|
|
43
|
+
enabled_cluster_log_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
44
|
+
encryption_config_key_arn: Optional[pulumi.Input[builtins.str]] = None,
|
|
45
|
+
endpoint_private_access: Optional[pulumi.Input[builtins.bool]] = None,
|
|
46
|
+
endpoint_public_access: Optional[pulumi.Input[builtins.bool]] = None,
|
|
47
|
+
fargate: Optional[pulumi.Input[Union[builtins.bool, 'FargateProfileArgs']]] = None,
|
|
48
|
+
gpu: Optional[pulumi.Input[builtins.bool]] = None,
|
|
49
|
+
instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
48
50
|
instance_role: Optional[pulumi.Input['pulumi_aws.iam.Role']] = None,
|
|
49
51
|
instance_roles: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.iam.Role']]]] = None,
|
|
50
|
-
instance_type: Optional[pulumi.Input[str]] = None,
|
|
51
|
-
ip_family: Optional[pulumi.Input[str]] = None,
|
|
52
|
+
instance_type: Optional[pulumi.Input[builtins.str]] = None,
|
|
53
|
+
ip_family: Optional[pulumi.Input[builtins.str]] = None,
|
|
52
54
|
kube_proxy_addon_options: Optional['KubeProxyAddonOptionsArgs'] = None,
|
|
53
|
-
kubernetes_service_ip_address_range: Optional[pulumi.Input[str]] = None,
|
|
54
|
-
max_size: Optional[pulumi.Input[int]] = None,
|
|
55
|
-
min_size: Optional[pulumi.Input[int]] = None,
|
|
56
|
-
name: Optional[pulumi.Input[str]] = None,
|
|
57
|
-
node_ami_id: Optional[pulumi.Input[str]] = None,
|
|
58
|
-
node_associate_public_ip_address: Optional[bool] = None,
|
|
55
|
+
kubernetes_service_ip_address_range: Optional[pulumi.Input[builtins.str]] = None,
|
|
56
|
+
max_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
57
|
+
min_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
58
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
|
59
|
+
node_ami_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
60
|
+
node_associate_public_ip_address: Optional[builtins.bool] = None,
|
|
59
61
|
node_group_options: Optional['ClusterNodeGroupOptionsArgs'] = None,
|
|
60
|
-
node_public_key: Optional[pulumi.Input[str]] = None,
|
|
61
|
-
node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
62
|
-
node_root_volume_size: Optional[pulumi.Input[int]] = None,
|
|
63
|
-
node_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
64
|
-
node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
65
|
-
node_user_data: Optional[pulumi.Input[str]] = None,
|
|
66
|
-
private_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
62
|
+
node_public_key: Optional[pulumi.Input[builtins.str]] = None,
|
|
63
|
+
node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
|
|
64
|
+
node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
65
|
+
node_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
66
|
+
node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
67
|
+
node_user_data: Optional[pulumi.Input[builtins.str]] = None,
|
|
68
|
+
private_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
67
69
|
provider_credential_opts: Optional[pulumi.Input['KubeconfigOptionsArgs']] = None,
|
|
68
|
-
proxy: Optional[str] = None,
|
|
69
|
-
public_access_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
70
|
-
public_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
70
|
+
proxy: Optional[builtins.str] = None,
|
|
71
|
+
public_access_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
72
|
+
public_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
71
73
|
role_mappings: Optional[pulumi.Input[Sequence[pulumi.Input['RoleMappingArgs']]]] = None,
|
|
72
74
|
service_role: Optional[pulumi.Input['pulumi_aws.iam.Role']] = None,
|
|
73
|
-
skip_default_node_group: Optional[bool] = None,
|
|
74
|
-
skip_default_security_groups: Optional[bool] = None,
|
|
75
|
-
storage_classes: Optional[Union[str, Mapping[str, 'StorageClassArgs']]] = None,
|
|
76
|
-
subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
77
|
-
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
78
|
-
|
|
75
|
+
skip_default_node_group: Optional[builtins.bool] = None,
|
|
76
|
+
skip_default_security_groups: Optional[builtins.bool] = None,
|
|
77
|
+
storage_classes: Optional[Union[builtins.str, Mapping[str, 'StorageClassArgs']]] = None,
|
|
78
|
+
subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
79
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
80
|
+
upgrade_policy: Optional[pulumi.Input['pulumi_aws.eks.ClusterUpgradePolicyArgs']] = None,
|
|
81
|
+
use_default_vpc_cni: Optional[builtins.bool] = None,
|
|
79
82
|
user_mappings: Optional[pulumi.Input[Sequence[pulumi.Input['UserMappingArgs']]]] = None,
|
|
80
|
-
version: Optional[pulumi.Input[str]] = None,
|
|
83
|
+
version: Optional[pulumi.Input[builtins.str]] = None,
|
|
81
84
|
vpc_cni_options: Optional['VpcCniOptionsArgs'] = None,
|
|
82
|
-
vpc_id: Optional[pulumi.Input[str]] = None):
|
|
85
|
+
vpc_id: Optional[pulumi.Input[builtins.str]] = None):
|
|
83
86
|
"""
|
|
84
87
|
The set of arguments for constructing a Cluster resource.
|
|
85
88
|
:param Mapping[str, 'AccessEntryArgs'] access_entries: Access entries to add to the EKS cluster. They can be used to allow IAM principals to access the cluster. Access entries are only supported with authentication mode `API` or `API_AND_CONFIG_MAP`.
|
|
@@ -93,16 +96,17 @@ class ClusterArgs:
|
|
|
93
96
|
:param 'AutoModeOptionsArgs' auto_mode: Configuration Options for EKS Auto Mode. If EKS Auto Mode is enabled, AWS will manage cluster infrastructure on your behalf.
|
|
94
97
|
|
|
95
98
|
For more information, see: https://docs.aws.amazon.com/eks/latest/userguide/automode.html
|
|
99
|
+
:param pulumi.Input[builtins.bool] bootstrap_self_managed_addons: Install default unmanaged add-ons, such as `aws-cni`, `kube-proxy`, and CoreDNS during cluster creation. If `false`, you must manually install desired add-ons. Changing this value will force a new cluster to be created. Defaults to `true`
|
|
96
100
|
:param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] cluster_security_group: The security group to use for the cluster API endpoint. If not provided, a new security group will be created with full internet egress and ingress from node groups.
|
|
97
101
|
|
|
98
102
|
Note: The security group resource should not contain any inline ingress or egress rules.
|
|
99
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] cluster_security_group_tags: The tags to apply to the cluster security group.
|
|
100
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] cluster_tags: The tags to apply to the EKS cluster.
|
|
103
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cluster_security_group_tags: The tags to apply to the cluster security group.
|
|
104
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cluster_tags: The tags to apply to the EKS cluster.
|
|
101
105
|
:param 'CoreDnsAddonOptionsArgs' coredns_addon_options: Options for managing the `coredns` addon.
|
|
102
|
-
:param bool create_instance_role: Whether to create the instance role for the EKS cluster. Defaults to true when using the default node group, false otherwise.
|
|
106
|
+
:param builtins.bool create_instance_role: Whether to create the instance role for the EKS cluster. Defaults to true when using the default node group, false otherwise.
|
|
103
107
|
If set to false when using the default node group, an instance role or instance profile must be provided.n
|
|
104
108
|
Note: this option has no effect if a custom instance role is provided with `instanceRole` or `instanceRoles`.
|
|
105
|
-
:param pulumi.Input[bool] create_oidc_provider: Indicates whether an IAM OIDC Provider is created for the EKS cluster.
|
|
109
|
+
:param pulumi.Input[builtins.bool] create_oidc_provider: Indicates whether an IAM OIDC Provider is created for the EKS cluster.
|
|
106
110
|
|
|
107
111
|
The OIDC provider is used in the cluster in combination with k8s Service Account annotations to provide IAM roles at the k8s Pod level.
|
|
108
112
|
|
|
@@ -114,22 +118,22 @@ class ClusterArgs:
|
|
|
114
118
|
:param 'CreationRoleProviderArgs' creation_role_provider: The IAM Role Provider used to create & authenticate against the EKS cluster. This role is given `[system:masters]` permission in K8S, See: https://docs.aws.amazon.com/eks/latest/userguide/add-user-role.html
|
|
115
119
|
|
|
116
120
|
Note: This option is only supported with Pulumi nodejs programs. Please use `ProviderCredentialOpts` as an alternative instead.
|
|
117
|
-
:param pulumi.Input[
|
|
118
|
-
:param pulumi.Input[int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
|
|
119
|
-
:param pulumi.Input[bool] enable_config_map_mutable: Sets the 'enableConfigMapMutable' option on the cluster kubernetes provider.
|
|
121
|
+
:param pulumi.Input[builtins.bool] deletion_protection: Whether to enable deletion protection for the cluster. When enabled, the cluster cannot be deleted unless deletion protection is first disabled. Default: `false`.
|
|
122
|
+
:param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
|
|
123
|
+
:param pulumi.Input[builtins.bool] enable_config_map_mutable: Sets the 'enableConfigMapMutable' option on the cluster kubernetes provider.
|
|
120
124
|
|
|
121
125
|
Applies updates to the aws-auth ConfigMap in place over a replace operation if set to true.
|
|
122
126
|
https://www.pulumi.com/registry/packages/kubernetes/api-docs/provider/#enableconfigmapmutable_nodejs
|
|
123
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] enabled_cluster_log_types: Enable EKS control plane logging. This sends logs to cloudwatch. Possible list of values are: ["api", "audit", "authenticator", "controllerManager", "scheduler"]. By default it is off.
|
|
124
|
-
:param pulumi.Input[str] encryption_config_key_arn: KMS Key ARN to use with the encryption configuration for the cluster.
|
|
127
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] enabled_cluster_log_types: Enable EKS control plane logging. This sends logs to cloudwatch. Possible list of values are: ["api", "audit", "authenticator", "controllerManager", "scheduler"]. By default it is off.
|
|
128
|
+
:param pulumi.Input[builtins.str] encryption_config_key_arn: KMS Key ARN to use with the encryption configuration for the cluster.
|
|
125
129
|
|
|
126
130
|
Only available on Kubernetes 1.13+ clusters created after March 6, 2020.
|
|
127
131
|
See for more details:
|
|
128
132
|
- https://aws.amazon.com/about-aws/whats-new/2020/03/amazon-eks-adds-envelope-encryption-for-secrets-with-aws-kms/
|
|
129
|
-
:param pulumi.Input[bool] endpoint_private_access: Indicates whether or not the Amazon EKS private API server endpoint is enabled. Default is `false`.
|
|
130
|
-
:param pulumi.Input[bool] endpoint_public_access: Indicates whether or not the Amazon EKS public API server endpoint is enabled. Default is `true`.
|
|
131
|
-
:param pulumi.Input[Union[bool, 'FargateProfileArgs']] fargate: Add support for launching pods in Fargate. Defaults to launching pods in the `default` namespace. If specified, the default node group is skipped as though `skipDefaultNodeGroup: true` had been passed.
|
|
132
|
-
:param pulumi.Input[bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
|
|
133
|
+
:param pulumi.Input[builtins.bool] endpoint_private_access: Indicates whether or not the Amazon EKS private API server endpoint is enabled. Default is `false`.
|
|
134
|
+
:param pulumi.Input[builtins.bool] endpoint_public_access: Indicates whether or not the Amazon EKS public API server endpoint is enabled. Default is `true`.
|
|
135
|
+
:param pulumi.Input[Union[builtins.bool, 'FargateProfileArgs']] fargate: Add support for launching pods in Fargate. Defaults to launching pods in the `default` namespace. If specified, the default node group is skipped as though `skipDefaultNodeGroup: true` had been passed.
|
|
136
|
+
: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.
|
|
133
137
|
|
|
134
138
|
Defaults to false.
|
|
135
139
|
|
|
@@ -138,18 +142,18 @@ class ClusterArgs:
|
|
|
138
142
|
See for more details:
|
|
139
143
|
- https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
|
|
140
144
|
- https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
|
|
141
|
-
:param pulumi.Input[str] instance_profile_name: The default IAM InstanceProfile to use on the Worker NodeGroups, if one is not already set in the NodeGroup.
|
|
145
|
+
:param pulumi.Input[builtins.str] instance_profile_name: The default IAM InstanceProfile to use on the Worker NodeGroups, if one is not already set in the NodeGroup.
|
|
142
146
|
:param pulumi.Input['pulumi_aws.iam.Role'] instance_role: This enables the simple case of only registering a *single* IAM instance role with the cluster, that is required to be shared by *all* node groups in their instance profiles.
|
|
143
147
|
|
|
144
148
|
Note: options `instanceRole` and `instanceRoles` are mutually exclusive.
|
|
145
149
|
:param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.iam.Role']]] instance_roles: This enables the advanced case of registering *many* IAM instance roles with the cluster for per node group IAM, instead of the simpler, shared case of `instanceRole`.
|
|
146
150
|
|
|
147
151
|
Note: options `instanceRole` and `instanceRoles` are mutually exclusive.
|
|
148
|
-
:param pulumi.Input[str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
|
|
149
|
-
:param pulumi.Input[str] ip_family: The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`.
|
|
152
|
+
:param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
|
|
153
|
+
:param pulumi.Input[builtins.str] ip_family: The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`.
|
|
150
154
|
You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
|
|
151
155
|
:param 'KubeProxyAddonOptionsArgs' kube_proxy_addon_options: Options for managing the `kube-proxy` addon.
|
|
152
|
-
:param pulumi.Input[str] kubernetes_service_ip_address_range: The CIDR block to assign Kubernetes service IP addresses from. If you don't
|
|
156
|
+
:param pulumi.Input[builtins.str] kubernetes_service_ip_address_range: The CIDR block to assign Kubernetes service IP addresses from. If you don't
|
|
153
157
|
specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or
|
|
154
158
|
172.20.0.0/16 CIDR blocks. This setting only applies to IPv4 clusters. We recommend that you specify a block
|
|
155
159
|
that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify
|
|
@@ -159,14 +163,14 @@ class ClusterArgs:
|
|
|
159
163
|
- Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0.0/12, or 192.168.0.0/16.
|
|
160
164
|
- Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.
|
|
161
165
|
- Between /24 and /12.
|
|
162
|
-
:param pulumi.Input[int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
|
|
163
|
-
:param pulumi.Input[int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
|
|
164
|
-
:param pulumi.Input[str] name: The cluster's physical resource name.
|
|
166
|
+
:param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
|
|
167
|
+
:param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
|
|
168
|
+
:param pulumi.Input[builtins.str] name: The cluster's physical resource name.
|
|
165
169
|
|
|
166
170
|
If not specified, the default is to use auto-naming for the cluster's name, resulting in a physical name with the format `${name}-eksCluster-0123abcd`.
|
|
167
171
|
|
|
168
172
|
See for more details: https://www.pulumi.com/docs/intro/concepts/programming-model/#autonaming
|
|
169
|
-
:param pulumi.Input[str] node_ami_id: The AMI ID to use for the worker nodes.
|
|
173
|
+
:param pulumi.Input[builtins.str] node_ami_id: The AMI ID to use for the worker nodes.
|
|
170
174
|
|
|
171
175
|
Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
|
|
172
176
|
|
|
@@ -174,19 +178,19 @@ class ClusterArgs:
|
|
|
174
178
|
|
|
175
179
|
See for more details:
|
|
176
180
|
- https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
|
|
177
|
-
:param bool node_associate_public_ip_address: Whether or not to auto-assign the EKS worker nodes public IP addresses. 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.
|
|
181
|
+
:param builtins.bool node_associate_public_ip_address: Whether or not to auto-assign the EKS worker nodes public IP addresses. 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.
|
|
178
182
|
:param 'ClusterNodeGroupOptionsArgs' node_group_options: The common configuration settings for NodeGroups.
|
|
179
|
-
:param pulumi.Input[str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
|
|
183
|
+
:param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
|
|
180
184
|
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
|
|
181
185
|
If not provided, no SSH access is enabled on VMs.
|
|
182
|
-
:param pulumi.Input[bool] node_root_volume_encrypted: Encrypt the root block device of the nodes in the node group.
|
|
183
|
-
:param pulumi.Input[int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
|
|
184
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] node_security_group_tags: The tags to apply to the default `nodeSecurityGroup` created by the cluster.
|
|
186
|
+
:param pulumi.Input[builtins.bool] node_root_volume_encrypted: Encrypt the root block device of the nodes in the node group.
|
|
187
|
+
:param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
|
|
188
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] node_security_group_tags: The tags to apply to the default `nodeSecurityGroup` created by the cluster.
|
|
185
189
|
|
|
186
190
|
Note: The `nodeSecurityGroupTags` option and the node group option `nodeSecurityGroup` are mutually exclusive.
|
|
187
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] node_subnet_ids: The subnets to use for worker nodes. Defaults to the value of subnetIds.
|
|
188
|
-
:param pulumi.Input[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 `#!`).
|
|
189
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] private_subnet_ids: The set of private subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
191
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The subnets to use for worker nodes. Defaults to the value of subnetIds.
|
|
192
|
+
: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 `#!`).
|
|
193
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] private_subnet_ids: The set of private subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
190
194
|
|
|
191
195
|
If `vpcId` is not set, the cluster will use the AWS account's default VPC subnets.
|
|
192
196
|
|
|
@@ -214,7 +218,7 @@ class ClusterArgs:
|
|
|
214
218
|
- https://www.pulumi.com/docs/intro/cloud-providers/aws/setup/
|
|
215
219
|
- https://www.pulumi.com/docs/intro/cloud-providers/aws/#configuration
|
|
216
220
|
- https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
|
|
217
|
-
:param str proxy: The HTTP(S) proxy to use within a proxied environment.
|
|
221
|
+
:param builtins.str proxy: The HTTP(S) proxy to use within a proxied environment.
|
|
218
222
|
|
|
219
223
|
The proxy is used during cluster creation, and OIDC configuration.
|
|
220
224
|
|
|
@@ -229,8 +233,8 @@ class ClusterArgs:
|
|
|
229
233
|
- "http://proxy.example.com:3128"
|
|
230
234
|
- "https://proxy.example.com"
|
|
231
235
|
- "http://username:password@proxy.example.com:3128"
|
|
232
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] public_access_cidrs: Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
|
|
233
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] public_subnet_ids: The set of public subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
236
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] public_access_cidrs: Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
|
|
237
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] public_subnet_ids: The set of public subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
234
238
|
|
|
235
239
|
If `vpcId` is not set, the cluster will use the AWS account's default VPC subnets.
|
|
236
240
|
|
|
@@ -245,14 +249,14 @@ class ClusterArgs:
|
|
|
245
249
|
See for more details: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html.Note: The use of `subnetIds`, along with `publicSubnetIds` and/or `privateSubnetIds` is mutually exclusive. The use of `publicSubnetIds` and `privateSubnetIds` is encouraged.
|
|
246
250
|
:param pulumi.Input[Sequence[pulumi.Input['RoleMappingArgs']]] role_mappings: Optional mappings from AWS IAM roles to Kubernetes users and groups. Only supported with authentication mode `CONFIG_MAP` or `API_AND_CONFIG_MAP`
|
|
247
251
|
:param pulumi.Input['pulumi_aws.iam.Role'] service_role: IAM Service Role for EKS to use to manage the cluster.
|
|
248
|
-
:param bool skip_default_node_group: If this toggle is set to true, the EKS cluster will be created without node group attached. Defaults to false, unless `fargate` or `autoMode` is enabled.
|
|
249
|
-
:param bool skip_default_security_groups: If this toggle is set to true, the EKS cluster will be created without the default node and cluster security groups. Defaults to false, unless `autoMode` is enabled.
|
|
252
|
+
:param builtins.bool skip_default_node_group: If this toggle is set to true, the EKS cluster will be created without node group attached. Defaults to false, unless `fargate` or `autoMode` is enabled.
|
|
253
|
+
:param builtins.bool skip_default_security_groups: If this toggle is set to true, the EKS cluster will be created without the default node and cluster security groups. Defaults to false, unless `autoMode` is enabled.
|
|
250
254
|
|
|
251
255
|
See for more details: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
|
|
252
|
-
:param Union[str, Mapping[str, 'StorageClassArgs']] storage_classes: An optional set of StorageClasses to enable for the cluster. If this is a single volume type rather than a map, a single StorageClass will be created for that volume type.
|
|
256
|
+
:param Union[builtins.str, Mapping[str, 'StorageClassArgs']] storage_classes: An optional set of StorageClasses to enable for the cluster. If this is a single volume type rather than a map, a single StorageClass will be created for that volume type.
|
|
253
257
|
|
|
254
258
|
Note: As of Kubernetes v1.11+ on EKS, a default `gp2` storage class will always be created automatically for the cluster by the EKS service. See https://docs.aws.amazon.com/eks/latest/userguide/storage-classes.html
|
|
255
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: The set of all subnets, public and private, to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
259
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] subnet_ids: The set of all subnets, public and private, to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
256
260
|
|
|
257
261
|
If `vpcId` is not set, the cluster will use the AWS account's default VPC subnets.
|
|
258
262
|
|
|
@@ -261,13 +265,14 @@ class ClusterArgs:
|
|
|
261
265
|
See for more details: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html.
|
|
262
266
|
|
|
263
267
|
Note: The use of `subnetIds`, along with `publicSubnetIds` and/or `privateSubnetIds` is mutually exclusive. The use of `publicSubnetIds` and `privateSubnetIds` is encouraged.
|
|
264
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value mapping of tags that are automatically applied to all AWS resources directly under management with this cluster, which support tagging.
|
|
265
|
-
:param
|
|
268
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] tags: Key-value mapping of tags that are automatically applied to all AWS resources directly under management with this cluster, which support tagging.
|
|
269
|
+
:param pulumi.Input['pulumi_aws.eks.ClusterUpgradePolicyArgs'] upgrade_policy: The cluster's upgrade policy. Valid support types are "STANDARD" and "EXTENDED". Defaults to "EXTENDED".
|
|
270
|
+
:param builtins.bool use_default_vpc_cni: Use the default VPC CNI instead of creating a custom one. Should not be used in conjunction with `vpcCniOptions`.
|
|
266
271
|
Defaults to true, unless `autoMode` is enabled.
|
|
267
272
|
:param pulumi.Input[Sequence[pulumi.Input['UserMappingArgs']]] user_mappings: Optional mappings from AWS IAM users to Kubernetes users and groups. Only supported with authentication mode `CONFIG_MAP` or `API_AND_CONFIG_MAP`.
|
|
268
|
-
:param pulumi.Input[str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
|
|
273
|
+
: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.
|
|
269
274
|
:param 'VpcCniOptionsArgs' vpc_cni_options: The configuration of the Amazon VPC CNI plugin for this instance. Defaults are described in the documentation for the VpcCniOptions type.
|
|
270
|
-
:param pulumi.Input[str] vpc_id: The VPC in which to create the cluster and its worker nodes. If unset, the cluster will be created in the default VPC.
|
|
275
|
+
:param pulumi.Input[builtins.str] vpc_id: The VPC in which to create the cluster and its worker nodes. If unset, the cluster will be created in the default VPC.
|
|
271
276
|
"""
|
|
272
277
|
if access_entries is not None:
|
|
273
278
|
pulumi.set(__self__, "access_entries", access_entries)
|
|
@@ -275,6 +280,8 @@ class ClusterArgs:
|
|
|
275
280
|
pulumi.set(__self__, "authentication_mode", authentication_mode)
|
|
276
281
|
if auto_mode is not None:
|
|
277
282
|
pulumi.set(__self__, "auto_mode", auto_mode)
|
|
283
|
+
if bootstrap_self_managed_addons is not None:
|
|
284
|
+
pulumi.set(__self__, "bootstrap_self_managed_addons", bootstrap_self_managed_addons)
|
|
278
285
|
if cluster_security_group is not None:
|
|
279
286
|
pulumi.set(__self__, "cluster_security_group", cluster_security_group)
|
|
280
287
|
if cluster_security_group_tags is not None:
|
|
@@ -289,8 +296,8 @@ class ClusterArgs:
|
|
|
289
296
|
pulumi.set(__self__, "create_oidc_provider", create_oidc_provider)
|
|
290
297
|
if creation_role_provider is not None:
|
|
291
298
|
pulumi.set(__self__, "creation_role_provider", creation_role_provider)
|
|
292
|
-
if
|
|
293
|
-
pulumi.set(__self__, "
|
|
299
|
+
if deletion_protection is not None:
|
|
300
|
+
pulumi.set(__self__, "deletion_protection", deletion_protection)
|
|
294
301
|
if desired_capacity is not None:
|
|
295
302
|
pulumi.set(__self__, "desired_capacity", desired_capacity)
|
|
296
303
|
if enable_config_map_mutable is not None:
|
|
@@ -369,6 +376,8 @@ class ClusterArgs:
|
|
|
369
376
|
pulumi.set(__self__, "subnet_ids", subnet_ids)
|
|
370
377
|
if tags is not None:
|
|
371
378
|
pulumi.set(__self__, "tags", tags)
|
|
379
|
+
if upgrade_policy is not None:
|
|
380
|
+
pulumi.set(__self__, "upgrade_policy", upgrade_policy)
|
|
372
381
|
if use_default_vpc_cni is not None:
|
|
373
382
|
pulumi.set(__self__, "use_default_vpc_cni", use_default_vpc_cni)
|
|
374
383
|
if user_mappings is not None:
|
|
@@ -424,6 +433,18 @@ class ClusterArgs:
|
|
|
424
433
|
def auto_mode(self, value: Optional['AutoModeOptionsArgs']):
|
|
425
434
|
pulumi.set(self, "auto_mode", value)
|
|
426
435
|
|
|
436
|
+
@property
|
|
437
|
+
@pulumi.getter(name="bootstrapSelfManagedAddons")
|
|
438
|
+
def bootstrap_self_managed_addons(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
439
|
+
"""
|
|
440
|
+
Install default unmanaged add-ons, such as `aws-cni`, `kube-proxy`, and CoreDNS during cluster creation. If `false`, you must manually install desired add-ons. Changing this value will force a new cluster to be created. Defaults to `true`
|
|
441
|
+
"""
|
|
442
|
+
return pulumi.get(self, "bootstrap_self_managed_addons")
|
|
443
|
+
|
|
444
|
+
@bootstrap_self_managed_addons.setter
|
|
445
|
+
def bootstrap_self_managed_addons(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
446
|
+
pulumi.set(self, "bootstrap_self_managed_addons", value)
|
|
447
|
+
|
|
427
448
|
@property
|
|
428
449
|
@pulumi.getter(name="clusterSecurityGroup")
|
|
429
450
|
def cluster_security_group(self) -> Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]:
|
|
@@ -440,26 +461,26 @@ class ClusterArgs:
|
|
|
440
461
|
|
|
441
462
|
@property
|
|
442
463
|
@pulumi.getter(name="clusterSecurityGroupTags")
|
|
443
|
-
def cluster_security_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
464
|
+
def cluster_security_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
|
444
465
|
"""
|
|
445
466
|
The tags to apply to the cluster security group.
|
|
446
467
|
"""
|
|
447
468
|
return pulumi.get(self, "cluster_security_group_tags")
|
|
448
469
|
|
|
449
470
|
@cluster_security_group_tags.setter
|
|
450
|
-
def cluster_security_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
471
|
+
def cluster_security_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
|
451
472
|
pulumi.set(self, "cluster_security_group_tags", value)
|
|
452
473
|
|
|
453
474
|
@property
|
|
454
475
|
@pulumi.getter(name="clusterTags")
|
|
455
|
-
def cluster_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
476
|
+
def cluster_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
|
456
477
|
"""
|
|
457
478
|
The tags to apply to the EKS cluster.
|
|
458
479
|
"""
|
|
459
480
|
return pulumi.get(self, "cluster_tags")
|
|
460
481
|
|
|
461
482
|
@cluster_tags.setter
|
|
462
|
-
def cluster_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
483
|
+
def cluster_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
|
463
484
|
pulumi.set(self, "cluster_tags", value)
|
|
464
485
|
|
|
465
486
|
@property
|
|
@@ -476,7 +497,7 @@ class ClusterArgs:
|
|
|
476
497
|
|
|
477
498
|
@property
|
|
478
499
|
@pulumi.getter(name="createInstanceRole")
|
|
479
|
-
def create_instance_role(self) -> Optional[bool]:
|
|
500
|
+
def create_instance_role(self) -> Optional[builtins.bool]:
|
|
480
501
|
"""
|
|
481
502
|
Whether to create the instance role for the EKS cluster. Defaults to true when using the default node group, false otherwise.
|
|
482
503
|
If set to false when using the default node group, an instance role or instance profile must be provided.n
|
|
@@ -485,12 +506,12 @@ class ClusterArgs:
|
|
|
485
506
|
return pulumi.get(self, "create_instance_role")
|
|
486
507
|
|
|
487
508
|
@create_instance_role.setter
|
|
488
|
-
def create_instance_role(self, value: Optional[bool]):
|
|
509
|
+
def create_instance_role(self, value: Optional[builtins.bool]):
|
|
489
510
|
pulumi.set(self, "create_instance_role", value)
|
|
490
511
|
|
|
491
512
|
@property
|
|
492
513
|
@pulumi.getter(name="createOidcProvider")
|
|
493
|
-
def create_oidc_provider(self) -> Optional[pulumi.Input[bool]]:
|
|
514
|
+
def create_oidc_provider(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
494
515
|
"""
|
|
495
516
|
Indicates whether an IAM OIDC Provider is created for the EKS cluster.
|
|
496
517
|
|
|
@@ -505,7 +526,7 @@ class ClusterArgs:
|
|
|
505
526
|
return pulumi.get(self, "create_oidc_provider")
|
|
506
527
|
|
|
507
528
|
@create_oidc_provider.setter
|
|
508
|
-
def create_oidc_provider(self, value: Optional[pulumi.Input[bool]]):
|
|
529
|
+
def create_oidc_provider(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
509
530
|
pulumi.set(self, "create_oidc_provider", value)
|
|
510
531
|
|
|
511
532
|
@property
|
|
@@ -523,32 +544,32 @@ class ClusterArgs:
|
|
|
523
544
|
pulumi.set(self, "creation_role_provider", value)
|
|
524
545
|
|
|
525
546
|
@property
|
|
526
|
-
@pulumi.getter(name="
|
|
527
|
-
def
|
|
547
|
+
@pulumi.getter(name="deletionProtection")
|
|
548
|
+
def deletion_protection(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
528
549
|
"""
|
|
529
|
-
|
|
550
|
+
Whether to enable deletion protection for the cluster. When enabled, the cluster cannot be deleted unless deletion protection is first disabled. Default: `false`.
|
|
530
551
|
"""
|
|
531
|
-
return pulumi.get(self, "
|
|
552
|
+
return pulumi.get(self, "deletion_protection")
|
|
532
553
|
|
|
533
|
-
@
|
|
534
|
-
def
|
|
535
|
-
pulumi.set(self, "
|
|
554
|
+
@deletion_protection.setter
|
|
555
|
+
def deletion_protection(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
556
|
+
pulumi.set(self, "deletion_protection", value)
|
|
536
557
|
|
|
537
558
|
@property
|
|
538
559
|
@pulumi.getter(name="desiredCapacity")
|
|
539
|
-
def desired_capacity(self) -> Optional[pulumi.Input[int]]:
|
|
560
|
+
def desired_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
|
|
540
561
|
"""
|
|
541
562
|
The number of worker nodes that should be running in the cluster. Defaults to 2.
|
|
542
563
|
"""
|
|
543
564
|
return pulumi.get(self, "desired_capacity")
|
|
544
565
|
|
|
545
566
|
@desired_capacity.setter
|
|
546
|
-
def desired_capacity(self, value: Optional[pulumi.Input[int]]):
|
|
567
|
+
def desired_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
|
|
547
568
|
pulumi.set(self, "desired_capacity", value)
|
|
548
569
|
|
|
549
570
|
@property
|
|
550
571
|
@pulumi.getter(name="enableConfigMapMutable")
|
|
551
|
-
def enable_config_map_mutable(self) -> Optional[pulumi.Input[bool]]:
|
|
572
|
+
def enable_config_map_mutable(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
552
573
|
"""
|
|
553
574
|
Sets the 'enableConfigMapMutable' option on the cluster kubernetes provider.
|
|
554
575
|
|
|
@@ -558,24 +579,24 @@ class ClusterArgs:
|
|
|
558
579
|
return pulumi.get(self, "enable_config_map_mutable")
|
|
559
580
|
|
|
560
581
|
@enable_config_map_mutable.setter
|
|
561
|
-
def enable_config_map_mutable(self, value: Optional[pulumi.Input[bool]]):
|
|
582
|
+
def enable_config_map_mutable(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
562
583
|
pulumi.set(self, "enable_config_map_mutable", value)
|
|
563
584
|
|
|
564
585
|
@property
|
|
565
586
|
@pulumi.getter(name="enabledClusterLogTypes")
|
|
566
|
-
def enabled_cluster_log_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
587
|
+
def enabled_cluster_log_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
|
567
588
|
"""
|
|
568
589
|
Enable EKS control plane logging. This sends logs to cloudwatch. Possible list of values are: ["api", "audit", "authenticator", "controllerManager", "scheduler"]. By default it is off.
|
|
569
590
|
"""
|
|
570
591
|
return pulumi.get(self, "enabled_cluster_log_types")
|
|
571
592
|
|
|
572
593
|
@enabled_cluster_log_types.setter
|
|
573
|
-
def enabled_cluster_log_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
594
|
+
def enabled_cluster_log_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
|
574
595
|
pulumi.set(self, "enabled_cluster_log_types", value)
|
|
575
596
|
|
|
576
597
|
@property
|
|
577
598
|
@pulumi.getter(name="encryptionConfigKeyArn")
|
|
578
|
-
def encryption_config_key_arn(self) -> Optional[pulumi.Input[str]]:
|
|
599
|
+
def encryption_config_key_arn(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
579
600
|
"""
|
|
580
601
|
KMS Key ARN to use with the encryption configuration for the cluster.
|
|
581
602
|
|
|
@@ -586,48 +607,48 @@ class ClusterArgs:
|
|
|
586
607
|
return pulumi.get(self, "encryption_config_key_arn")
|
|
587
608
|
|
|
588
609
|
@encryption_config_key_arn.setter
|
|
589
|
-
def encryption_config_key_arn(self, value: Optional[pulumi.Input[str]]):
|
|
610
|
+
def encryption_config_key_arn(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
590
611
|
pulumi.set(self, "encryption_config_key_arn", value)
|
|
591
612
|
|
|
592
613
|
@property
|
|
593
614
|
@pulumi.getter(name="endpointPrivateAccess")
|
|
594
|
-
def endpoint_private_access(self) -> Optional[pulumi.Input[bool]]:
|
|
615
|
+
def endpoint_private_access(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
595
616
|
"""
|
|
596
617
|
Indicates whether or not the Amazon EKS private API server endpoint is enabled. Default is `false`.
|
|
597
618
|
"""
|
|
598
619
|
return pulumi.get(self, "endpoint_private_access")
|
|
599
620
|
|
|
600
621
|
@endpoint_private_access.setter
|
|
601
|
-
def endpoint_private_access(self, value: Optional[pulumi.Input[bool]]):
|
|
622
|
+
def endpoint_private_access(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
602
623
|
pulumi.set(self, "endpoint_private_access", value)
|
|
603
624
|
|
|
604
625
|
@property
|
|
605
626
|
@pulumi.getter(name="endpointPublicAccess")
|
|
606
|
-
def endpoint_public_access(self) -> Optional[pulumi.Input[bool]]:
|
|
627
|
+
def endpoint_public_access(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
607
628
|
"""
|
|
608
629
|
Indicates whether or not the Amazon EKS public API server endpoint is enabled. Default is `true`.
|
|
609
630
|
"""
|
|
610
631
|
return pulumi.get(self, "endpoint_public_access")
|
|
611
632
|
|
|
612
633
|
@endpoint_public_access.setter
|
|
613
|
-
def endpoint_public_access(self, value: Optional[pulumi.Input[bool]]):
|
|
634
|
+
def endpoint_public_access(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
614
635
|
pulumi.set(self, "endpoint_public_access", value)
|
|
615
636
|
|
|
616
637
|
@property
|
|
617
638
|
@pulumi.getter
|
|
618
|
-
def fargate(self) -> Optional[pulumi.Input[Union[bool, 'FargateProfileArgs']]]:
|
|
639
|
+
def fargate(self) -> Optional[pulumi.Input[Union[builtins.bool, 'FargateProfileArgs']]]:
|
|
619
640
|
"""
|
|
620
641
|
Add support for launching pods in Fargate. Defaults to launching pods in the `default` namespace. If specified, the default node group is skipped as though `skipDefaultNodeGroup: true` had been passed.
|
|
621
642
|
"""
|
|
622
643
|
return pulumi.get(self, "fargate")
|
|
623
644
|
|
|
624
645
|
@fargate.setter
|
|
625
|
-
def fargate(self, value: Optional[pulumi.Input[Union[bool, 'FargateProfileArgs']]]):
|
|
646
|
+
def fargate(self, value: Optional[pulumi.Input[Union[builtins.bool, 'FargateProfileArgs']]]):
|
|
626
647
|
pulumi.set(self, "fargate", value)
|
|
627
648
|
|
|
628
649
|
@property
|
|
629
650
|
@pulumi.getter
|
|
630
|
-
def gpu(self) -> Optional[pulumi.Input[bool]]:
|
|
651
|
+
def gpu(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
631
652
|
"""
|
|
632
653
|
Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
|
|
633
654
|
|
|
@@ -642,19 +663,19 @@ class ClusterArgs:
|
|
|
642
663
|
return pulumi.get(self, "gpu")
|
|
643
664
|
|
|
644
665
|
@gpu.setter
|
|
645
|
-
def gpu(self, value: Optional[pulumi.Input[bool]]):
|
|
666
|
+
def gpu(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
646
667
|
pulumi.set(self, "gpu", value)
|
|
647
668
|
|
|
648
669
|
@property
|
|
649
670
|
@pulumi.getter(name="instanceProfileName")
|
|
650
|
-
def instance_profile_name(self) -> Optional[pulumi.Input[str]]:
|
|
671
|
+
def instance_profile_name(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
651
672
|
"""
|
|
652
673
|
The default IAM InstanceProfile to use on the Worker NodeGroups, if one is not already set in the NodeGroup.
|
|
653
674
|
"""
|
|
654
675
|
return pulumi.get(self, "instance_profile_name")
|
|
655
676
|
|
|
656
677
|
@instance_profile_name.setter
|
|
657
|
-
def instance_profile_name(self, value: Optional[pulumi.Input[str]]):
|
|
678
|
+
def instance_profile_name(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
658
679
|
pulumi.set(self, "instance_profile_name", value)
|
|
659
680
|
|
|
660
681
|
@property
|
|
@@ -687,19 +708,19 @@ class ClusterArgs:
|
|
|
687
708
|
|
|
688
709
|
@property
|
|
689
710
|
@pulumi.getter(name="instanceType")
|
|
690
|
-
def instance_type(self) -> Optional[pulumi.Input[str]]:
|
|
711
|
+
def instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
691
712
|
"""
|
|
692
713
|
The instance type to use for the cluster's nodes. Defaults to "t3.medium".
|
|
693
714
|
"""
|
|
694
715
|
return pulumi.get(self, "instance_type")
|
|
695
716
|
|
|
696
717
|
@instance_type.setter
|
|
697
|
-
def instance_type(self, value: Optional[pulumi.Input[str]]):
|
|
718
|
+
def instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
698
719
|
pulumi.set(self, "instance_type", value)
|
|
699
720
|
|
|
700
721
|
@property
|
|
701
722
|
@pulumi.getter(name="ipFamily")
|
|
702
|
-
def ip_family(self) -> Optional[pulumi.Input[str]]:
|
|
723
|
+
def ip_family(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
703
724
|
"""
|
|
704
725
|
The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`.
|
|
705
726
|
You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
|
|
@@ -707,7 +728,7 @@ class ClusterArgs:
|
|
|
707
728
|
return pulumi.get(self, "ip_family")
|
|
708
729
|
|
|
709
730
|
@ip_family.setter
|
|
710
|
-
def ip_family(self, value: Optional[pulumi.Input[str]]):
|
|
731
|
+
def ip_family(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
711
732
|
pulumi.set(self, "ip_family", value)
|
|
712
733
|
|
|
713
734
|
@property
|
|
@@ -724,7 +745,7 @@ class ClusterArgs:
|
|
|
724
745
|
|
|
725
746
|
@property
|
|
726
747
|
@pulumi.getter(name="kubernetesServiceIpAddressRange")
|
|
727
|
-
def kubernetes_service_ip_address_range(self) -> Optional[pulumi.Input[str]]:
|
|
748
|
+
def kubernetes_service_ip_address_range(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
728
749
|
"""
|
|
729
750
|
The CIDR block to assign Kubernetes service IP addresses from. If you don't
|
|
730
751
|
specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or
|
|
@@ -740,36 +761,36 @@ class ClusterArgs:
|
|
|
740
761
|
return pulumi.get(self, "kubernetes_service_ip_address_range")
|
|
741
762
|
|
|
742
763
|
@kubernetes_service_ip_address_range.setter
|
|
743
|
-
def kubernetes_service_ip_address_range(self, value: Optional[pulumi.Input[str]]):
|
|
764
|
+
def kubernetes_service_ip_address_range(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
744
765
|
pulumi.set(self, "kubernetes_service_ip_address_range", value)
|
|
745
766
|
|
|
746
767
|
@property
|
|
747
768
|
@pulumi.getter(name="maxSize")
|
|
748
|
-
def max_size(self) -> Optional[pulumi.Input[int]]:
|
|
769
|
+
def max_size(self) -> Optional[pulumi.Input[builtins.int]]:
|
|
749
770
|
"""
|
|
750
771
|
The maximum number of worker nodes running in the cluster. Defaults to 2.
|
|
751
772
|
"""
|
|
752
773
|
return pulumi.get(self, "max_size")
|
|
753
774
|
|
|
754
775
|
@max_size.setter
|
|
755
|
-
def max_size(self, value: Optional[pulumi.Input[int]]):
|
|
776
|
+
def max_size(self, value: Optional[pulumi.Input[builtins.int]]):
|
|
756
777
|
pulumi.set(self, "max_size", value)
|
|
757
778
|
|
|
758
779
|
@property
|
|
759
780
|
@pulumi.getter(name="minSize")
|
|
760
|
-
def min_size(self) -> Optional[pulumi.Input[int]]:
|
|
781
|
+
def min_size(self) -> Optional[pulumi.Input[builtins.int]]:
|
|
761
782
|
"""
|
|
762
783
|
The minimum number of worker nodes running in the cluster. Defaults to 1.
|
|
763
784
|
"""
|
|
764
785
|
return pulumi.get(self, "min_size")
|
|
765
786
|
|
|
766
787
|
@min_size.setter
|
|
767
|
-
def min_size(self, value: Optional[pulumi.Input[int]]):
|
|
788
|
+
def min_size(self, value: Optional[pulumi.Input[builtins.int]]):
|
|
768
789
|
pulumi.set(self, "min_size", value)
|
|
769
790
|
|
|
770
791
|
@property
|
|
771
792
|
@pulumi.getter
|
|
772
|
-
def name(self) -> Optional[pulumi.Input[str]]:
|
|
793
|
+
def name(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
773
794
|
"""
|
|
774
795
|
The cluster's physical resource name.
|
|
775
796
|
|
|
@@ -780,12 +801,12 @@ class ClusterArgs:
|
|
|
780
801
|
return pulumi.get(self, "name")
|
|
781
802
|
|
|
782
803
|
@name.setter
|
|
783
|
-
def name(self, value: Optional[pulumi.Input[str]]):
|
|
804
|
+
def name(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
784
805
|
pulumi.set(self, "name", value)
|
|
785
806
|
|
|
786
807
|
@property
|
|
787
808
|
@pulumi.getter(name="nodeAmiId")
|
|
788
|
-
def node_ami_id(self) -> Optional[pulumi.Input[str]]:
|
|
809
|
+
def node_ami_id(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
789
810
|
"""
|
|
790
811
|
The AMI ID to use for the worker nodes.
|
|
791
812
|
|
|
@@ -799,19 +820,19 @@ class ClusterArgs:
|
|
|
799
820
|
return pulumi.get(self, "node_ami_id")
|
|
800
821
|
|
|
801
822
|
@node_ami_id.setter
|
|
802
|
-
def node_ami_id(self, value: Optional[pulumi.Input[str]]):
|
|
823
|
+
def node_ami_id(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
803
824
|
pulumi.set(self, "node_ami_id", value)
|
|
804
825
|
|
|
805
826
|
@property
|
|
806
827
|
@pulumi.getter(name="nodeAssociatePublicIpAddress")
|
|
807
|
-
def node_associate_public_ip_address(self) -> Optional[bool]:
|
|
828
|
+
def node_associate_public_ip_address(self) -> Optional[builtins.bool]:
|
|
808
829
|
"""
|
|
809
830
|
Whether or not to auto-assign the EKS worker nodes public IP addresses. 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.
|
|
810
831
|
"""
|
|
811
832
|
return pulumi.get(self, "node_associate_public_ip_address")
|
|
812
833
|
|
|
813
834
|
@node_associate_public_ip_address.setter
|
|
814
|
-
def node_associate_public_ip_address(self, value: Optional[bool]):
|
|
835
|
+
def node_associate_public_ip_address(self, value: Optional[builtins.bool]):
|
|
815
836
|
pulumi.set(self, "node_associate_public_ip_address", value)
|
|
816
837
|
|
|
817
838
|
@property
|
|
@@ -828,7 +849,7 @@ class ClusterArgs:
|
|
|
828
849
|
|
|
829
850
|
@property
|
|
830
851
|
@pulumi.getter(name="nodePublicKey")
|
|
831
|
-
def node_public_key(self) -> Optional[pulumi.Input[str]]:
|
|
852
|
+
def node_public_key(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
832
853
|
"""
|
|
833
854
|
Public key material for SSH access to worker nodes. See allowed formats at:
|
|
834
855
|
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
|
|
@@ -837,36 +858,36 @@ class ClusterArgs:
|
|
|
837
858
|
return pulumi.get(self, "node_public_key")
|
|
838
859
|
|
|
839
860
|
@node_public_key.setter
|
|
840
|
-
def node_public_key(self, value: Optional[pulumi.Input[str]]):
|
|
861
|
+
def node_public_key(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
841
862
|
pulumi.set(self, "node_public_key", value)
|
|
842
863
|
|
|
843
864
|
@property
|
|
844
865
|
@pulumi.getter(name="nodeRootVolumeEncrypted")
|
|
845
|
-
def node_root_volume_encrypted(self) -> Optional[pulumi.Input[bool]]:
|
|
866
|
+
def node_root_volume_encrypted(self) -> Optional[pulumi.Input[builtins.bool]]:
|
|
846
867
|
"""
|
|
847
868
|
Encrypt the root block device of the nodes in the node group.
|
|
848
869
|
"""
|
|
849
870
|
return pulumi.get(self, "node_root_volume_encrypted")
|
|
850
871
|
|
|
851
872
|
@node_root_volume_encrypted.setter
|
|
852
|
-
def node_root_volume_encrypted(self, value: Optional[pulumi.Input[bool]]):
|
|
873
|
+
def node_root_volume_encrypted(self, value: Optional[pulumi.Input[builtins.bool]]):
|
|
853
874
|
pulumi.set(self, "node_root_volume_encrypted", value)
|
|
854
875
|
|
|
855
876
|
@property
|
|
856
877
|
@pulumi.getter(name="nodeRootVolumeSize")
|
|
857
|
-
def node_root_volume_size(self) -> Optional[pulumi.Input[int]]:
|
|
878
|
+
def node_root_volume_size(self) -> Optional[pulumi.Input[builtins.int]]:
|
|
858
879
|
"""
|
|
859
880
|
The size in GiB of a cluster node's root volume. Defaults to 20.
|
|
860
881
|
"""
|
|
861
882
|
return pulumi.get(self, "node_root_volume_size")
|
|
862
883
|
|
|
863
884
|
@node_root_volume_size.setter
|
|
864
|
-
def node_root_volume_size(self, value: Optional[pulumi.Input[int]]):
|
|
885
|
+
def node_root_volume_size(self, value: Optional[pulumi.Input[builtins.int]]):
|
|
865
886
|
pulumi.set(self, "node_root_volume_size", value)
|
|
866
887
|
|
|
867
888
|
@property
|
|
868
889
|
@pulumi.getter(name="nodeSecurityGroupTags")
|
|
869
|
-
def node_security_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
890
|
+
def node_security_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
|
870
891
|
"""
|
|
871
892
|
The tags to apply to the default `nodeSecurityGroup` created by the cluster.
|
|
872
893
|
|
|
@@ -875,36 +896,36 @@ class ClusterArgs:
|
|
|
875
896
|
return pulumi.get(self, "node_security_group_tags")
|
|
876
897
|
|
|
877
898
|
@node_security_group_tags.setter
|
|
878
|
-
def node_security_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
899
|
+
def node_security_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
|
879
900
|
pulumi.set(self, "node_security_group_tags", value)
|
|
880
901
|
|
|
881
902
|
@property
|
|
882
903
|
@pulumi.getter(name="nodeSubnetIds")
|
|
883
|
-
def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
904
|
+
def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
|
884
905
|
"""
|
|
885
906
|
The subnets to use for worker nodes. Defaults to the value of subnetIds.
|
|
886
907
|
"""
|
|
887
908
|
return pulumi.get(self, "node_subnet_ids")
|
|
888
909
|
|
|
889
910
|
@node_subnet_ids.setter
|
|
890
|
-
def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
911
|
+
def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
|
891
912
|
pulumi.set(self, "node_subnet_ids", value)
|
|
892
913
|
|
|
893
914
|
@property
|
|
894
915
|
@pulumi.getter(name="nodeUserData")
|
|
895
|
-
def node_user_data(self) -> Optional[pulumi.Input[str]]:
|
|
916
|
+
def node_user_data(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
896
917
|
"""
|
|
897
918
|
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 `#!`).
|
|
898
919
|
"""
|
|
899
920
|
return pulumi.get(self, "node_user_data")
|
|
900
921
|
|
|
901
922
|
@node_user_data.setter
|
|
902
|
-
def node_user_data(self, value: Optional[pulumi.Input[str]]):
|
|
923
|
+
def node_user_data(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
903
924
|
pulumi.set(self, "node_user_data", value)
|
|
904
925
|
|
|
905
926
|
@property
|
|
906
927
|
@pulumi.getter(name="privateSubnetIds")
|
|
907
|
-
def private_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
928
|
+
def private_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
|
908
929
|
"""
|
|
909
930
|
The set of private subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
910
931
|
|
|
@@ -925,7 +946,7 @@ class ClusterArgs:
|
|
|
925
946
|
return pulumi.get(self, "private_subnet_ids")
|
|
926
947
|
|
|
927
948
|
@private_subnet_ids.setter
|
|
928
|
-
def private_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
949
|
+
def private_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
|
929
950
|
pulumi.set(self, "private_subnet_ids", value)
|
|
930
951
|
|
|
931
952
|
@property
|
|
@@ -954,7 +975,7 @@ class ClusterArgs:
|
|
|
954
975
|
|
|
955
976
|
@property
|
|
956
977
|
@pulumi.getter
|
|
957
|
-
def proxy(self) -> Optional[str]:
|
|
978
|
+
def proxy(self) -> Optional[builtins.str]:
|
|
958
979
|
"""
|
|
959
980
|
The HTTP(S) proxy to use within a proxied environment.
|
|
960
981
|
|
|
@@ -975,24 +996,24 @@ class ClusterArgs:
|
|
|
975
996
|
return pulumi.get(self, "proxy")
|
|
976
997
|
|
|
977
998
|
@proxy.setter
|
|
978
|
-
def proxy(self, value: Optional[str]):
|
|
999
|
+
def proxy(self, value: Optional[builtins.str]):
|
|
979
1000
|
pulumi.set(self, "proxy", value)
|
|
980
1001
|
|
|
981
1002
|
@property
|
|
982
1003
|
@pulumi.getter(name="publicAccessCidrs")
|
|
983
|
-
def public_access_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1004
|
+
def public_access_cidrs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
|
984
1005
|
"""
|
|
985
1006
|
Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
|
|
986
1007
|
"""
|
|
987
1008
|
return pulumi.get(self, "public_access_cidrs")
|
|
988
1009
|
|
|
989
1010
|
@public_access_cidrs.setter
|
|
990
|
-
def public_access_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1011
|
+
def public_access_cidrs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
|
991
1012
|
pulumi.set(self, "public_access_cidrs", value)
|
|
992
1013
|
|
|
993
1014
|
@property
|
|
994
1015
|
@pulumi.getter(name="publicSubnetIds")
|
|
995
|
-
def public_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1016
|
+
def public_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
|
996
1017
|
"""
|
|
997
1018
|
The set of public subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
998
1019
|
|
|
@@ -1011,7 +1032,7 @@ class ClusterArgs:
|
|
|
1011
1032
|
return pulumi.get(self, "public_subnet_ids")
|
|
1012
1033
|
|
|
1013
1034
|
@public_subnet_ids.setter
|
|
1014
|
-
def public_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1035
|
+
def public_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
|
1015
1036
|
pulumi.set(self, "public_subnet_ids", value)
|
|
1016
1037
|
|
|
1017
1038
|
@property
|
|
@@ -1040,19 +1061,19 @@ class ClusterArgs:
|
|
|
1040
1061
|
|
|
1041
1062
|
@property
|
|
1042
1063
|
@pulumi.getter(name="skipDefaultNodeGroup")
|
|
1043
|
-
def skip_default_node_group(self) -> Optional[bool]:
|
|
1064
|
+
def skip_default_node_group(self) -> Optional[builtins.bool]:
|
|
1044
1065
|
"""
|
|
1045
1066
|
If this toggle is set to true, the EKS cluster will be created without node group attached. Defaults to false, unless `fargate` or `autoMode` is enabled.
|
|
1046
1067
|
"""
|
|
1047
1068
|
return pulumi.get(self, "skip_default_node_group")
|
|
1048
1069
|
|
|
1049
1070
|
@skip_default_node_group.setter
|
|
1050
|
-
def skip_default_node_group(self, value: Optional[bool]):
|
|
1071
|
+
def skip_default_node_group(self, value: Optional[builtins.bool]):
|
|
1051
1072
|
pulumi.set(self, "skip_default_node_group", value)
|
|
1052
1073
|
|
|
1053
1074
|
@property
|
|
1054
1075
|
@pulumi.getter(name="skipDefaultSecurityGroups")
|
|
1055
|
-
def skip_default_security_groups(self) -> Optional[bool]:
|
|
1076
|
+
def skip_default_security_groups(self) -> Optional[builtins.bool]:
|
|
1056
1077
|
"""
|
|
1057
1078
|
If this toggle is set to true, the EKS cluster will be created without the default node and cluster security groups. Defaults to false, unless `autoMode` is enabled.
|
|
1058
1079
|
|
|
@@ -1061,12 +1082,12 @@ class ClusterArgs:
|
|
|
1061
1082
|
return pulumi.get(self, "skip_default_security_groups")
|
|
1062
1083
|
|
|
1063
1084
|
@skip_default_security_groups.setter
|
|
1064
|
-
def skip_default_security_groups(self, value: Optional[bool]):
|
|
1085
|
+
def skip_default_security_groups(self, value: Optional[builtins.bool]):
|
|
1065
1086
|
pulumi.set(self, "skip_default_security_groups", value)
|
|
1066
1087
|
|
|
1067
1088
|
@property
|
|
1068
1089
|
@pulumi.getter(name="storageClasses")
|
|
1069
|
-
def storage_classes(self) -> Optional[Union[str, Mapping[str, 'StorageClassArgs']]]:
|
|
1090
|
+
def storage_classes(self) -> Optional[Union[builtins.str, Mapping[str, 'StorageClassArgs']]]:
|
|
1070
1091
|
"""
|
|
1071
1092
|
An optional set of StorageClasses to enable for the cluster. If this is a single volume type rather than a map, a single StorageClass will be created for that volume type.
|
|
1072
1093
|
|
|
@@ -1075,12 +1096,12 @@ class ClusterArgs:
|
|
|
1075
1096
|
return pulumi.get(self, "storage_classes")
|
|
1076
1097
|
|
|
1077
1098
|
@storage_classes.setter
|
|
1078
|
-
def storage_classes(self, value: Optional[Union[str, Mapping[str, 'StorageClassArgs']]]):
|
|
1099
|
+
def storage_classes(self, value: Optional[Union[builtins.str, Mapping[str, 'StorageClassArgs']]]):
|
|
1079
1100
|
pulumi.set(self, "storage_classes", value)
|
|
1080
1101
|
|
|
1081
1102
|
@property
|
|
1082
1103
|
@pulumi.getter(name="subnetIds")
|
|
1083
|
-
def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
1104
|
+
def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
|
|
1084
1105
|
"""
|
|
1085
1106
|
The set of all subnets, public and private, to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1086
1107
|
|
|
@@ -1095,24 +1116,36 @@ class ClusterArgs:
|
|
|
1095
1116
|
return pulumi.get(self, "subnet_ids")
|
|
1096
1117
|
|
|
1097
1118
|
@subnet_ids.setter
|
|
1098
|
-
def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
1119
|
+
def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
|
|
1099
1120
|
pulumi.set(self, "subnet_ids", value)
|
|
1100
1121
|
|
|
1101
1122
|
@property
|
|
1102
1123
|
@pulumi.getter
|
|
1103
|
-
def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
|
|
1124
|
+
def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
|
|
1104
1125
|
"""
|
|
1105
1126
|
Key-value mapping of tags that are automatically applied to all AWS resources directly under management with this cluster, which support tagging.
|
|
1106
1127
|
"""
|
|
1107
1128
|
return pulumi.get(self, "tags")
|
|
1108
1129
|
|
|
1109
1130
|
@tags.setter
|
|
1110
|
-
def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
|
|
1131
|
+
def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
|
|
1111
1132
|
pulumi.set(self, "tags", value)
|
|
1112
1133
|
|
|
1134
|
+
@property
|
|
1135
|
+
@pulumi.getter(name="upgradePolicy")
|
|
1136
|
+
def upgrade_policy(self) -> Optional[pulumi.Input['pulumi_aws.eks.ClusterUpgradePolicyArgs']]:
|
|
1137
|
+
"""
|
|
1138
|
+
The cluster's upgrade policy. Valid support types are "STANDARD" and "EXTENDED". Defaults to "EXTENDED".
|
|
1139
|
+
"""
|
|
1140
|
+
return pulumi.get(self, "upgrade_policy")
|
|
1141
|
+
|
|
1142
|
+
@upgrade_policy.setter
|
|
1143
|
+
def upgrade_policy(self, value: Optional[pulumi.Input['pulumi_aws.eks.ClusterUpgradePolicyArgs']]):
|
|
1144
|
+
pulumi.set(self, "upgrade_policy", value)
|
|
1145
|
+
|
|
1113
1146
|
@property
|
|
1114
1147
|
@pulumi.getter(name="useDefaultVpcCni")
|
|
1115
|
-
def use_default_vpc_cni(self) -> Optional[bool]:
|
|
1148
|
+
def use_default_vpc_cni(self) -> Optional[builtins.bool]:
|
|
1116
1149
|
"""
|
|
1117
1150
|
Use the default VPC CNI instead of creating a custom one. Should not be used in conjunction with `vpcCniOptions`.
|
|
1118
1151
|
Defaults to true, unless `autoMode` is enabled.
|
|
@@ -1120,7 +1153,7 @@ class ClusterArgs:
|
|
|
1120
1153
|
return pulumi.get(self, "use_default_vpc_cni")
|
|
1121
1154
|
|
|
1122
1155
|
@use_default_vpc_cni.setter
|
|
1123
|
-
def use_default_vpc_cni(self, value: Optional[bool]):
|
|
1156
|
+
def use_default_vpc_cni(self, value: Optional[builtins.bool]):
|
|
1124
1157
|
pulumi.set(self, "use_default_vpc_cni", value)
|
|
1125
1158
|
|
|
1126
1159
|
@property
|
|
@@ -1137,14 +1170,14 @@ class ClusterArgs:
|
|
|
1137
1170
|
|
|
1138
1171
|
@property
|
|
1139
1172
|
@pulumi.getter
|
|
1140
|
-
def version(self) -> Optional[pulumi.Input[str]]:
|
|
1173
|
+
def version(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
1141
1174
|
"""
|
|
1142
1175
|
Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
|
|
1143
1176
|
"""
|
|
1144
1177
|
return pulumi.get(self, "version")
|
|
1145
1178
|
|
|
1146
1179
|
@version.setter
|
|
1147
|
-
def version(self, value: Optional[pulumi.Input[str]]):
|
|
1180
|
+
def version(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
1148
1181
|
pulumi.set(self, "version", value)
|
|
1149
1182
|
|
|
1150
1183
|
@property
|
|
@@ -1161,17 +1194,18 @@ class ClusterArgs:
|
|
|
1161
1194
|
|
|
1162
1195
|
@property
|
|
1163
1196
|
@pulumi.getter(name="vpcId")
|
|
1164
|
-
def vpc_id(self) -> Optional[pulumi.Input[str]]:
|
|
1197
|
+
def vpc_id(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
1165
1198
|
"""
|
|
1166
1199
|
The VPC in which to create the cluster and its worker nodes. If unset, the cluster will be created in the default VPC.
|
|
1167
1200
|
"""
|
|
1168
1201
|
return pulumi.get(self, "vpc_id")
|
|
1169
1202
|
|
|
1170
1203
|
@vpc_id.setter
|
|
1171
|
-
def vpc_id(self, value: Optional[pulumi.Input[str]]):
|
|
1204
|
+
def vpc_id(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
1172
1205
|
pulumi.set(self, "vpc_id", value)
|
|
1173
1206
|
|
|
1174
1207
|
|
|
1208
|
+
@pulumi.type_token("eks:index:Cluster")
|
|
1175
1209
|
class Cluster(pulumi.ComponentResource):
|
|
1176
1210
|
@overload
|
|
1177
1211
|
def __init__(__self__,
|
|
@@ -1180,58 +1214,60 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1180
1214
|
access_entries: Optional[Mapping[str, Union['AccessEntryArgs', 'AccessEntryArgsDict']]] = None,
|
|
1181
1215
|
authentication_mode: Optional['AuthenticationMode'] = None,
|
|
1182
1216
|
auto_mode: Optional[Union['AutoModeOptionsArgs', 'AutoModeOptionsArgsDict']] = None,
|
|
1217
|
+
bootstrap_self_managed_addons: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1183
1218
|
cluster_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
|
|
1184
|
-
cluster_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1185
|
-
cluster_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1219
|
+
cluster_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1220
|
+
cluster_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1186
1221
|
coredns_addon_options: Optional[Union['CoreDnsAddonOptionsArgs', 'CoreDnsAddonOptionsArgsDict']] = None,
|
|
1187
|
-
create_instance_role: Optional[bool] = None,
|
|
1188
|
-
create_oidc_provider: Optional[pulumi.Input[bool]] = None,
|
|
1222
|
+
create_instance_role: Optional[builtins.bool] = None,
|
|
1223
|
+
create_oidc_provider: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1189
1224
|
creation_role_provider: Optional[Union['CreationRoleProviderArgs', 'CreationRoleProviderArgsDict']] = None,
|
|
1190
|
-
|
|
1191
|
-
desired_capacity: Optional[pulumi.Input[int]] = None,
|
|
1192
|
-
enable_config_map_mutable: Optional[pulumi.Input[bool]] = None,
|
|
1193
|
-
enabled_cluster_log_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1194
|
-
encryption_config_key_arn: Optional[pulumi.Input[str]] = None,
|
|
1195
|
-
endpoint_private_access: Optional[pulumi.Input[bool]] = None,
|
|
1196
|
-
endpoint_public_access: Optional[pulumi.Input[bool]] = None,
|
|
1197
|
-
fargate: Optional[pulumi.Input[Union[bool, Union['FargateProfileArgs', 'FargateProfileArgsDict']]]] = None,
|
|
1198
|
-
gpu: Optional[pulumi.Input[bool]] = None,
|
|
1199
|
-
instance_profile_name: Optional[pulumi.Input[str]] = None,
|
|
1225
|
+
deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1226
|
+
desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
|
|
1227
|
+
enable_config_map_mutable: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1228
|
+
enabled_cluster_log_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1229
|
+
encryption_config_key_arn: Optional[pulumi.Input[builtins.str]] = None,
|
|
1230
|
+
endpoint_private_access: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1231
|
+
endpoint_public_access: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1232
|
+
fargate: Optional[pulumi.Input[Union[builtins.bool, Union['FargateProfileArgs', 'FargateProfileArgsDict']]]] = None,
|
|
1233
|
+
gpu: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1234
|
+
instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
1200
1235
|
instance_role: Optional[pulumi.Input['pulumi_aws.iam.Role']] = None,
|
|
1201
1236
|
instance_roles: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.iam.Role']]]] = None,
|
|
1202
|
-
instance_type: Optional[pulumi.Input[str]] = None,
|
|
1203
|
-
ip_family: Optional[pulumi.Input[str]] = None,
|
|
1237
|
+
instance_type: Optional[pulumi.Input[builtins.str]] = None,
|
|
1238
|
+
ip_family: Optional[pulumi.Input[builtins.str]] = None,
|
|
1204
1239
|
kube_proxy_addon_options: Optional[Union['KubeProxyAddonOptionsArgs', 'KubeProxyAddonOptionsArgsDict']] = None,
|
|
1205
|
-
kubernetes_service_ip_address_range: Optional[pulumi.Input[str]] = None,
|
|
1206
|
-
max_size: Optional[pulumi.Input[int]] = None,
|
|
1207
|
-
min_size: Optional[pulumi.Input[int]] = None,
|
|
1208
|
-
name: Optional[pulumi.Input[str]] = None,
|
|
1209
|
-
node_ami_id: Optional[pulumi.Input[str]] = None,
|
|
1210
|
-
node_associate_public_ip_address: Optional[bool] = None,
|
|
1240
|
+
kubernetes_service_ip_address_range: Optional[pulumi.Input[builtins.str]] = None,
|
|
1241
|
+
max_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
1242
|
+
min_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
1243
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
|
1244
|
+
node_ami_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
1245
|
+
node_associate_public_ip_address: Optional[builtins.bool] = None,
|
|
1211
1246
|
node_group_options: Optional[Union['ClusterNodeGroupOptionsArgs', 'ClusterNodeGroupOptionsArgsDict']] = None,
|
|
1212
|
-
node_public_key: Optional[pulumi.Input[str]] = None,
|
|
1213
|
-
node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
1214
|
-
node_root_volume_size: Optional[pulumi.Input[int]] = None,
|
|
1215
|
-
node_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1216
|
-
node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1217
|
-
node_user_data: Optional[pulumi.Input[str]] = None,
|
|
1218
|
-
private_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1247
|
+
node_public_key: Optional[pulumi.Input[builtins.str]] = None,
|
|
1248
|
+
node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1249
|
+
node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
1250
|
+
node_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1251
|
+
node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1252
|
+
node_user_data: Optional[pulumi.Input[builtins.str]] = None,
|
|
1253
|
+
private_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1219
1254
|
provider_credential_opts: Optional[pulumi.Input[Union['KubeconfigOptionsArgs', 'KubeconfigOptionsArgsDict']]] = None,
|
|
1220
|
-
proxy: Optional[str] = None,
|
|
1221
|
-
public_access_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1222
|
-
public_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1255
|
+
proxy: Optional[builtins.str] = None,
|
|
1256
|
+
public_access_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1257
|
+
public_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1223
1258
|
role_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RoleMappingArgs', 'RoleMappingArgsDict']]]]] = None,
|
|
1224
1259
|
service_role: Optional[pulumi.Input['pulumi_aws.iam.Role']] = None,
|
|
1225
|
-
skip_default_node_group: Optional[bool] = None,
|
|
1226
|
-
skip_default_security_groups: Optional[bool] = None,
|
|
1227
|
-
storage_classes: Optional[Union[str, Mapping[str, Union['StorageClassArgs', 'StorageClassArgsDict']]]] = None,
|
|
1228
|
-
subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1229
|
-
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1230
|
-
|
|
1260
|
+
skip_default_node_group: Optional[builtins.bool] = None,
|
|
1261
|
+
skip_default_security_groups: Optional[builtins.bool] = None,
|
|
1262
|
+
storage_classes: Optional[Union[builtins.str, Mapping[str, Union['StorageClassArgs', 'StorageClassArgsDict']]]] = None,
|
|
1263
|
+
subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1264
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1265
|
+
upgrade_policy: Optional[pulumi.Input[pulumi.InputType['pulumi_aws.eks.ClusterUpgradePolicyArgs']]] = None,
|
|
1266
|
+
use_default_vpc_cni: Optional[builtins.bool] = None,
|
|
1231
1267
|
user_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserMappingArgs', 'UserMappingArgsDict']]]]] = None,
|
|
1232
|
-
version: Optional[pulumi.Input[str]] = None,
|
|
1268
|
+
version: Optional[pulumi.Input[builtins.str]] = None,
|
|
1233
1269
|
vpc_cni_options: Optional[Union['VpcCniOptionsArgs', 'VpcCniOptionsArgsDict']] = None,
|
|
1234
|
-
vpc_id: Optional[pulumi.Input[str]] = None,
|
|
1270
|
+
vpc_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
1235
1271
|
__props__=None):
|
|
1236
1272
|
"""
|
|
1237
1273
|
Cluster is a component that wraps the AWS and Kubernetes resources necessary to run an EKS cluster, its worker nodes, its optional StorageClasses, and an optional deployment of the Kubernetes Dashboard.
|
|
@@ -1267,16 +1303,17 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1267
1303
|
:param Union['AutoModeOptionsArgs', 'AutoModeOptionsArgsDict'] auto_mode: Configuration Options for EKS Auto Mode. If EKS Auto Mode is enabled, AWS will manage cluster infrastructure on your behalf.
|
|
1268
1304
|
|
|
1269
1305
|
For more information, see: https://docs.aws.amazon.com/eks/latest/userguide/automode.html
|
|
1306
|
+
:param pulumi.Input[builtins.bool] bootstrap_self_managed_addons: Install default unmanaged add-ons, such as `aws-cni`, `kube-proxy`, and CoreDNS during cluster creation. If `false`, you must manually install desired add-ons. Changing this value will force a new cluster to be created. Defaults to `true`
|
|
1270
1307
|
:param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] cluster_security_group: The security group to use for the cluster API endpoint. If not provided, a new security group will be created with full internet egress and ingress from node groups.
|
|
1271
1308
|
|
|
1272
1309
|
Note: The security group resource should not contain any inline ingress or egress rules.
|
|
1273
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] cluster_security_group_tags: The tags to apply to the cluster security group.
|
|
1274
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] cluster_tags: The tags to apply to the EKS cluster.
|
|
1310
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cluster_security_group_tags: The tags to apply to the cluster security group.
|
|
1311
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cluster_tags: The tags to apply to the EKS cluster.
|
|
1275
1312
|
:param Union['CoreDnsAddonOptionsArgs', 'CoreDnsAddonOptionsArgsDict'] coredns_addon_options: Options for managing the `coredns` addon.
|
|
1276
|
-
:param bool create_instance_role: Whether to create the instance role for the EKS cluster. Defaults to true when using the default node group, false otherwise.
|
|
1313
|
+
:param builtins.bool create_instance_role: Whether to create the instance role for the EKS cluster. Defaults to true when using the default node group, false otherwise.
|
|
1277
1314
|
If set to false when using the default node group, an instance role or instance profile must be provided.n
|
|
1278
1315
|
Note: this option has no effect if a custom instance role is provided with `instanceRole` or `instanceRoles`.
|
|
1279
|
-
:param pulumi.Input[bool] create_oidc_provider: Indicates whether an IAM OIDC Provider is created for the EKS cluster.
|
|
1316
|
+
:param pulumi.Input[builtins.bool] create_oidc_provider: Indicates whether an IAM OIDC Provider is created for the EKS cluster.
|
|
1280
1317
|
|
|
1281
1318
|
The OIDC provider is used in the cluster in combination with k8s Service Account annotations to provide IAM roles at the k8s Pod level.
|
|
1282
1319
|
|
|
@@ -1288,22 +1325,22 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1288
1325
|
:param Union['CreationRoleProviderArgs', 'CreationRoleProviderArgsDict'] creation_role_provider: The IAM Role Provider used to create & authenticate against the EKS cluster. This role is given `[system:masters]` permission in K8S, See: https://docs.aws.amazon.com/eks/latest/userguide/add-user-role.html
|
|
1289
1326
|
|
|
1290
1327
|
Note: This option is only supported with Pulumi nodejs programs. Please use `ProviderCredentialOpts` as an alternative instead.
|
|
1291
|
-
:param pulumi.Input[
|
|
1292
|
-
:param pulumi.Input[int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
|
|
1293
|
-
:param pulumi.Input[bool] enable_config_map_mutable: Sets the 'enableConfigMapMutable' option on the cluster kubernetes provider.
|
|
1328
|
+
:param pulumi.Input[builtins.bool] deletion_protection: Whether to enable deletion protection for the cluster. When enabled, the cluster cannot be deleted unless deletion protection is first disabled. Default: `false`.
|
|
1329
|
+
:param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
|
|
1330
|
+
:param pulumi.Input[builtins.bool] enable_config_map_mutable: Sets the 'enableConfigMapMutable' option on the cluster kubernetes provider.
|
|
1294
1331
|
|
|
1295
1332
|
Applies updates to the aws-auth ConfigMap in place over a replace operation if set to true.
|
|
1296
1333
|
https://www.pulumi.com/registry/packages/kubernetes/api-docs/provider/#enableconfigmapmutable_nodejs
|
|
1297
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] enabled_cluster_log_types: Enable EKS control plane logging. This sends logs to cloudwatch. Possible list of values are: ["api", "audit", "authenticator", "controllerManager", "scheduler"]. By default it is off.
|
|
1298
|
-
:param pulumi.Input[str] encryption_config_key_arn: KMS Key ARN to use with the encryption configuration for the cluster.
|
|
1334
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] enabled_cluster_log_types: Enable EKS control plane logging. This sends logs to cloudwatch. Possible list of values are: ["api", "audit", "authenticator", "controllerManager", "scheduler"]. By default it is off.
|
|
1335
|
+
:param pulumi.Input[builtins.str] encryption_config_key_arn: KMS Key ARN to use with the encryption configuration for the cluster.
|
|
1299
1336
|
|
|
1300
1337
|
Only available on Kubernetes 1.13+ clusters created after March 6, 2020.
|
|
1301
1338
|
See for more details:
|
|
1302
1339
|
- https://aws.amazon.com/about-aws/whats-new/2020/03/amazon-eks-adds-envelope-encryption-for-secrets-with-aws-kms/
|
|
1303
|
-
:param pulumi.Input[bool] endpoint_private_access: Indicates whether or not the Amazon EKS private API server endpoint is enabled. Default is `false`.
|
|
1304
|
-
:param pulumi.Input[bool] endpoint_public_access: Indicates whether or not the Amazon EKS public API server endpoint is enabled. Default is `true`.
|
|
1305
|
-
:param pulumi.Input[Union[bool, Union['FargateProfileArgs', 'FargateProfileArgsDict']]] fargate: Add support for launching pods in Fargate. Defaults to launching pods in the `default` namespace. If specified, the default node group is skipped as though `skipDefaultNodeGroup: true` had been passed.
|
|
1306
|
-
:param pulumi.Input[bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
|
|
1340
|
+
:param pulumi.Input[builtins.bool] endpoint_private_access: Indicates whether or not the Amazon EKS private API server endpoint is enabled. Default is `false`.
|
|
1341
|
+
:param pulumi.Input[builtins.bool] endpoint_public_access: Indicates whether or not the Amazon EKS public API server endpoint is enabled. Default is `true`.
|
|
1342
|
+
:param pulumi.Input[Union[builtins.bool, Union['FargateProfileArgs', 'FargateProfileArgsDict']]] fargate: Add support for launching pods in Fargate. Defaults to launching pods in the `default` namespace. If specified, the default node group is skipped as though `skipDefaultNodeGroup: true` had been passed.
|
|
1343
|
+
: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.
|
|
1307
1344
|
|
|
1308
1345
|
Defaults to false.
|
|
1309
1346
|
|
|
@@ -1312,18 +1349,18 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1312
1349
|
See for more details:
|
|
1313
1350
|
- https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
|
|
1314
1351
|
- https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
|
|
1315
|
-
:param pulumi.Input[str] instance_profile_name: The default IAM InstanceProfile to use on the Worker NodeGroups, if one is not already set in the NodeGroup.
|
|
1352
|
+
:param pulumi.Input[builtins.str] instance_profile_name: The default IAM InstanceProfile to use on the Worker NodeGroups, if one is not already set in the NodeGroup.
|
|
1316
1353
|
:param pulumi.Input['pulumi_aws.iam.Role'] instance_role: This enables the simple case of only registering a *single* IAM instance role with the cluster, that is required to be shared by *all* node groups in their instance profiles.
|
|
1317
1354
|
|
|
1318
1355
|
Note: options `instanceRole` and `instanceRoles` are mutually exclusive.
|
|
1319
1356
|
:param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.iam.Role']]] instance_roles: This enables the advanced case of registering *many* IAM instance roles with the cluster for per node group IAM, instead of the simpler, shared case of `instanceRole`.
|
|
1320
1357
|
|
|
1321
1358
|
Note: options `instanceRole` and `instanceRoles` are mutually exclusive.
|
|
1322
|
-
:param pulumi.Input[str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
|
|
1323
|
-
:param pulumi.Input[str] ip_family: The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`.
|
|
1359
|
+
:param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
|
|
1360
|
+
:param pulumi.Input[builtins.str] ip_family: The IP family used to assign Kubernetes pod and service addresses. Valid values are `ipv4` (default) and `ipv6`.
|
|
1324
1361
|
You can only specify an IP family when you create a cluster, changing this value will force a new cluster to be created.
|
|
1325
1362
|
:param Union['KubeProxyAddonOptionsArgs', 'KubeProxyAddonOptionsArgsDict'] kube_proxy_addon_options: Options for managing the `kube-proxy` addon.
|
|
1326
|
-
:param pulumi.Input[str] kubernetes_service_ip_address_range: The CIDR block to assign Kubernetes service IP addresses from. If you don't
|
|
1363
|
+
:param pulumi.Input[builtins.str] kubernetes_service_ip_address_range: The CIDR block to assign Kubernetes service IP addresses from. If you don't
|
|
1327
1364
|
specify a block, Kubernetes assigns addresses from either the 10.100.0.0/16 or
|
|
1328
1365
|
172.20.0.0/16 CIDR blocks. This setting only applies to IPv4 clusters. We recommend that you specify a block
|
|
1329
1366
|
that does not overlap with resources in other networks that are peered or connected to your VPC. You can only specify
|
|
@@ -1333,14 +1370,14 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1333
1370
|
- Within one of the following private IP address blocks: 10.0.0.0/8, 172.16.0.0.0/12, or 192.168.0.0/16.
|
|
1334
1371
|
- Doesn't overlap with any CIDR block assigned to the VPC that you selected for VPC.
|
|
1335
1372
|
- Between /24 and /12.
|
|
1336
|
-
:param pulumi.Input[int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
|
|
1337
|
-
:param pulumi.Input[int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
|
|
1338
|
-
:param pulumi.Input[str] name: The cluster's physical resource name.
|
|
1373
|
+
:param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
|
|
1374
|
+
:param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
|
|
1375
|
+
:param pulumi.Input[builtins.str] name: The cluster's physical resource name.
|
|
1339
1376
|
|
|
1340
1377
|
If not specified, the default is to use auto-naming for the cluster's name, resulting in a physical name with the format `${name}-eksCluster-0123abcd`.
|
|
1341
1378
|
|
|
1342
1379
|
See for more details: https://www.pulumi.com/docs/intro/concepts/programming-model/#autonaming
|
|
1343
|
-
:param pulumi.Input[str] node_ami_id: The AMI ID to use for the worker nodes.
|
|
1380
|
+
:param pulumi.Input[builtins.str] node_ami_id: The AMI ID to use for the worker nodes.
|
|
1344
1381
|
|
|
1345
1382
|
Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
|
|
1346
1383
|
|
|
@@ -1348,19 +1385,19 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1348
1385
|
|
|
1349
1386
|
See for more details:
|
|
1350
1387
|
- https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
|
|
1351
|
-
:param bool node_associate_public_ip_address: Whether or not to auto-assign the EKS worker nodes public IP addresses. 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.
|
|
1388
|
+
:param builtins.bool node_associate_public_ip_address: Whether or not to auto-assign the EKS worker nodes public IP addresses. 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.
|
|
1352
1389
|
:param Union['ClusterNodeGroupOptionsArgs', 'ClusterNodeGroupOptionsArgsDict'] node_group_options: The common configuration settings for NodeGroups.
|
|
1353
|
-
:param pulumi.Input[str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
|
|
1390
|
+
:param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
|
|
1354
1391
|
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
|
|
1355
1392
|
If not provided, no SSH access is enabled on VMs.
|
|
1356
|
-
:param pulumi.Input[bool] node_root_volume_encrypted: Encrypt the root block device of the nodes in the node group.
|
|
1357
|
-
:param pulumi.Input[int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
|
|
1358
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] node_security_group_tags: The tags to apply to the default `nodeSecurityGroup` created by the cluster.
|
|
1393
|
+
:param pulumi.Input[builtins.bool] node_root_volume_encrypted: Encrypt the root block device of the nodes in the node group.
|
|
1394
|
+
:param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
|
|
1395
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] node_security_group_tags: The tags to apply to the default `nodeSecurityGroup` created by the cluster.
|
|
1359
1396
|
|
|
1360
1397
|
Note: The `nodeSecurityGroupTags` option and the node group option `nodeSecurityGroup` are mutually exclusive.
|
|
1361
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] node_subnet_ids: The subnets to use for worker nodes. Defaults to the value of subnetIds.
|
|
1362
|
-
:param pulumi.Input[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 `#!`).
|
|
1363
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] private_subnet_ids: The set of private subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1398
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The subnets to use for worker nodes. Defaults to the value of subnetIds.
|
|
1399
|
+
: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 `#!`).
|
|
1400
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] private_subnet_ids: The set of private subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1364
1401
|
|
|
1365
1402
|
If `vpcId` is not set, the cluster will use the AWS account's default VPC subnets.
|
|
1366
1403
|
|
|
@@ -1388,7 +1425,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1388
1425
|
- https://www.pulumi.com/docs/intro/cloud-providers/aws/setup/
|
|
1389
1426
|
- https://www.pulumi.com/docs/intro/cloud-providers/aws/#configuration
|
|
1390
1427
|
- https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
|
|
1391
|
-
:param str proxy: The HTTP(S) proxy to use within a proxied environment.
|
|
1428
|
+
:param builtins.str proxy: The HTTP(S) proxy to use within a proxied environment.
|
|
1392
1429
|
|
|
1393
1430
|
The proxy is used during cluster creation, and OIDC configuration.
|
|
1394
1431
|
|
|
@@ -1403,8 +1440,8 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1403
1440
|
- "http://proxy.example.com:3128"
|
|
1404
1441
|
- "https://proxy.example.com"
|
|
1405
1442
|
- "http://username:password@proxy.example.com:3128"
|
|
1406
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] public_access_cidrs: Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
|
|
1407
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] public_subnet_ids: The set of public subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1443
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] public_access_cidrs: Indicates which CIDR blocks can access the Amazon EKS public API server endpoint.
|
|
1444
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] public_subnet_ids: The set of public subnets to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1408
1445
|
|
|
1409
1446
|
If `vpcId` is not set, the cluster will use the AWS account's default VPC subnets.
|
|
1410
1447
|
|
|
@@ -1419,14 +1456,14 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1419
1456
|
See for more details: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html.Note: The use of `subnetIds`, along with `publicSubnetIds` and/or `privateSubnetIds` is mutually exclusive. The use of `publicSubnetIds` and `privateSubnetIds` is encouraged.
|
|
1420
1457
|
:param pulumi.Input[Sequence[pulumi.Input[Union['RoleMappingArgs', 'RoleMappingArgsDict']]]] role_mappings: Optional mappings from AWS IAM roles to Kubernetes users and groups. Only supported with authentication mode `CONFIG_MAP` or `API_AND_CONFIG_MAP`
|
|
1421
1458
|
:param pulumi.Input['pulumi_aws.iam.Role'] service_role: IAM Service Role for EKS to use to manage the cluster.
|
|
1422
|
-
:param bool skip_default_node_group: If this toggle is set to true, the EKS cluster will be created without node group attached. Defaults to false, unless `fargate` or `autoMode` is enabled.
|
|
1423
|
-
:param bool skip_default_security_groups: If this toggle is set to true, the EKS cluster will be created without the default node and cluster security groups. Defaults to false, unless `autoMode` is enabled.
|
|
1459
|
+
:param builtins.bool skip_default_node_group: If this toggle is set to true, the EKS cluster will be created without node group attached. Defaults to false, unless `fargate` or `autoMode` is enabled.
|
|
1460
|
+
:param builtins.bool skip_default_security_groups: If this toggle is set to true, the EKS cluster will be created without the default node and cluster security groups. Defaults to false, unless `autoMode` is enabled.
|
|
1424
1461
|
|
|
1425
1462
|
See for more details: https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
|
|
1426
|
-
:param Union[str, Mapping[str, Union['StorageClassArgs', 'StorageClassArgsDict']]] storage_classes: An optional set of StorageClasses to enable for the cluster. If this is a single volume type rather than a map, a single StorageClass will be created for that volume type.
|
|
1463
|
+
:param Union[builtins.str, Mapping[str, Union['StorageClassArgs', 'StorageClassArgsDict']]] storage_classes: An optional set of StorageClasses to enable for the cluster. If this is a single volume type rather than a map, a single StorageClass will be created for that volume type.
|
|
1427
1464
|
|
|
1428
1465
|
Note: As of Kubernetes v1.11+ on EKS, a default `gp2` storage class will always be created automatically for the cluster by the EKS service. See https://docs.aws.amazon.com/eks/latest/userguide/storage-classes.html
|
|
1429
|
-
:param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: The set of all subnets, public and private, to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1466
|
+
:param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] subnet_ids: The set of all subnets, public and private, to use for the worker node groups on the EKS cluster. These subnets are automatically tagged by EKS for Kubernetes purposes.
|
|
1430
1467
|
|
|
1431
1468
|
If `vpcId` is not set, the cluster will use the AWS account's default VPC subnets.
|
|
1432
1469
|
|
|
@@ -1435,13 +1472,14 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1435
1472
|
See for more details: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html.
|
|
1436
1473
|
|
|
1437
1474
|
Note: The use of `subnetIds`, along with `publicSubnetIds` and/or `privateSubnetIds` is mutually exclusive. The use of `publicSubnetIds` and `privateSubnetIds` is encouraged.
|
|
1438
|
-
:param pulumi.Input[Mapping[str, pulumi.Input[str]]] tags: Key-value mapping of tags that are automatically applied to all AWS resources directly under management with this cluster, which support tagging.
|
|
1439
|
-
:param
|
|
1475
|
+
:param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] tags: Key-value mapping of tags that are automatically applied to all AWS resources directly under management with this cluster, which support tagging.
|
|
1476
|
+
:param pulumi.Input[pulumi.InputType['pulumi_aws.eks.ClusterUpgradePolicyArgs']] upgrade_policy: The cluster's upgrade policy. Valid support types are "STANDARD" and "EXTENDED". Defaults to "EXTENDED".
|
|
1477
|
+
:param builtins.bool use_default_vpc_cni: Use the default VPC CNI instead of creating a custom one. Should not be used in conjunction with `vpcCniOptions`.
|
|
1440
1478
|
Defaults to true, unless `autoMode` is enabled.
|
|
1441
1479
|
:param pulumi.Input[Sequence[pulumi.Input[Union['UserMappingArgs', 'UserMappingArgsDict']]]] user_mappings: Optional mappings from AWS IAM users to Kubernetes users and groups. Only supported with authentication mode `CONFIG_MAP` or `API_AND_CONFIG_MAP`.
|
|
1442
|
-
:param pulumi.Input[str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
|
|
1480
|
+
: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.
|
|
1443
1481
|
:param Union['VpcCniOptionsArgs', 'VpcCniOptionsArgsDict'] vpc_cni_options: The configuration of the Amazon VPC CNI plugin for this instance. Defaults are described in the documentation for the VpcCniOptions type.
|
|
1444
|
-
:param pulumi.Input[str] vpc_id: The VPC in which to create the cluster and its worker nodes. If unset, the cluster will be created in the default VPC.
|
|
1482
|
+
:param pulumi.Input[builtins.str] vpc_id: The VPC in which to create the cluster and its worker nodes. If unset, the cluster will be created in the default VPC.
|
|
1445
1483
|
"""
|
|
1446
1484
|
...
|
|
1447
1485
|
@overload
|
|
@@ -1488,58 +1526,60 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1488
1526
|
access_entries: Optional[Mapping[str, Union['AccessEntryArgs', 'AccessEntryArgsDict']]] = None,
|
|
1489
1527
|
authentication_mode: Optional['AuthenticationMode'] = None,
|
|
1490
1528
|
auto_mode: Optional[Union['AutoModeOptionsArgs', 'AutoModeOptionsArgsDict']] = None,
|
|
1529
|
+
bootstrap_self_managed_addons: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1491
1530
|
cluster_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
|
|
1492
|
-
cluster_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1493
|
-
cluster_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1531
|
+
cluster_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1532
|
+
cluster_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1494
1533
|
coredns_addon_options: Optional[Union['CoreDnsAddonOptionsArgs', 'CoreDnsAddonOptionsArgsDict']] = None,
|
|
1495
|
-
create_instance_role: Optional[bool] = None,
|
|
1496
|
-
create_oidc_provider: Optional[pulumi.Input[bool]] = None,
|
|
1534
|
+
create_instance_role: Optional[builtins.bool] = None,
|
|
1535
|
+
create_oidc_provider: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1497
1536
|
creation_role_provider: Optional[Union['CreationRoleProviderArgs', 'CreationRoleProviderArgsDict']] = None,
|
|
1498
|
-
|
|
1499
|
-
desired_capacity: Optional[pulumi.Input[int]] = None,
|
|
1500
|
-
enable_config_map_mutable: Optional[pulumi.Input[bool]] = None,
|
|
1501
|
-
enabled_cluster_log_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1502
|
-
encryption_config_key_arn: Optional[pulumi.Input[str]] = None,
|
|
1503
|
-
endpoint_private_access: Optional[pulumi.Input[bool]] = None,
|
|
1504
|
-
endpoint_public_access: Optional[pulumi.Input[bool]] = None,
|
|
1505
|
-
fargate: Optional[pulumi.Input[Union[bool, Union['FargateProfileArgs', 'FargateProfileArgsDict']]]] = None,
|
|
1506
|
-
gpu: Optional[pulumi.Input[bool]] = None,
|
|
1507
|
-
instance_profile_name: Optional[pulumi.Input[str]] = None,
|
|
1537
|
+
deletion_protection: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1538
|
+
desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
|
|
1539
|
+
enable_config_map_mutable: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1540
|
+
enabled_cluster_log_types: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1541
|
+
encryption_config_key_arn: Optional[pulumi.Input[builtins.str]] = None,
|
|
1542
|
+
endpoint_private_access: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1543
|
+
endpoint_public_access: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1544
|
+
fargate: Optional[pulumi.Input[Union[builtins.bool, Union['FargateProfileArgs', 'FargateProfileArgsDict']]]] = None,
|
|
1545
|
+
gpu: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1546
|
+
instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
1508
1547
|
instance_role: Optional[pulumi.Input['pulumi_aws.iam.Role']] = None,
|
|
1509
1548
|
instance_roles: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.iam.Role']]]] = None,
|
|
1510
|
-
instance_type: Optional[pulumi.Input[str]] = None,
|
|
1511
|
-
ip_family: Optional[pulumi.Input[str]] = None,
|
|
1549
|
+
instance_type: Optional[pulumi.Input[builtins.str]] = None,
|
|
1550
|
+
ip_family: Optional[pulumi.Input[builtins.str]] = None,
|
|
1512
1551
|
kube_proxy_addon_options: Optional[Union['KubeProxyAddonOptionsArgs', 'KubeProxyAddonOptionsArgsDict']] = None,
|
|
1513
|
-
kubernetes_service_ip_address_range: Optional[pulumi.Input[str]] = None,
|
|
1514
|
-
max_size: Optional[pulumi.Input[int]] = None,
|
|
1515
|
-
min_size: Optional[pulumi.Input[int]] = None,
|
|
1516
|
-
name: Optional[pulumi.Input[str]] = None,
|
|
1517
|
-
node_ami_id: Optional[pulumi.Input[str]] = None,
|
|
1518
|
-
node_associate_public_ip_address: Optional[bool] = None,
|
|
1552
|
+
kubernetes_service_ip_address_range: Optional[pulumi.Input[builtins.str]] = None,
|
|
1553
|
+
max_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
1554
|
+
min_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
1555
|
+
name: Optional[pulumi.Input[builtins.str]] = None,
|
|
1556
|
+
node_ami_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
1557
|
+
node_associate_public_ip_address: Optional[builtins.bool] = None,
|
|
1519
1558
|
node_group_options: Optional[Union['ClusterNodeGroupOptionsArgs', 'ClusterNodeGroupOptionsArgsDict']] = None,
|
|
1520
|
-
node_public_key: Optional[pulumi.Input[str]] = None,
|
|
1521
|
-
node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
|
|
1522
|
-
node_root_volume_size: Optional[pulumi.Input[int]] = None,
|
|
1523
|
-
node_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1524
|
-
node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1525
|
-
node_user_data: Optional[pulumi.Input[str]] = None,
|
|
1526
|
-
private_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1559
|
+
node_public_key: Optional[pulumi.Input[builtins.str]] = None,
|
|
1560
|
+
node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
|
|
1561
|
+
node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
|
|
1562
|
+
node_security_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1563
|
+
node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1564
|
+
node_user_data: Optional[pulumi.Input[builtins.str]] = None,
|
|
1565
|
+
private_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1527
1566
|
provider_credential_opts: Optional[pulumi.Input[Union['KubeconfigOptionsArgs', 'KubeconfigOptionsArgsDict']]] = None,
|
|
1528
|
-
proxy: Optional[str] = None,
|
|
1529
|
-
public_access_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1530
|
-
public_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1567
|
+
proxy: Optional[builtins.str] = None,
|
|
1568
|
+
public_access_cidrs: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1569
|
+
public_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1531
1570
|
role_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RoleMappingArgs', 'RoleMappingArgsDict']]]]] = None,
|
|
1532
1571
|
service_role: Optional[pulumi.Input['pulumi_aws.iam.Role']] = None,
|
|
1533
|
-
skip_default_node_group: Optional[bool] = None,
|
|
1534
|
-
skip_default_security_groups: Optional[bool] = None,
|
|
1535
|
-
storage_classes: Optional[Union[str, Mapping[str, Union['StorageClassArgs', 'StorageClassArgsDict']]]] = None,
|
|
1536
|
-
subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
1537
|
-
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
|
|
1538
|
-
|
|
1572
|
+
skip_default_node_group: Optional[builtins.bool] = None,
|
|
1573
|
+
skip_default_security_groups: Optional[builtins.bool] = None,
|
|
1574
|
+
storage_classes: Optional[Union[builtins.str, Mapping[str, Union['StorageClassArgs', 'StorageClassArgsDict']]]] = None,
|
|
1575
|
+
subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
|
|
1576
|
+
tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
|
|
1577
|
+
upgrade_policy: Optional[pulumi.Input[pulumi.InputType['pulumi_aws.eks.ClusterUpgradePolicyArgs']]] = None,
|
|
1578
|
+
use_default_vpc_cni: Optional[builtins.bool] = None,
|
|
1539
1579
|
user_mappings: Optional[pulumi.Input[Sequence[pulumi.Input[Union['UserMappingArgs', 'UserMappingArgsDict']]]]] = None,
|
|
1540
|
-
version: Optional[pulumi.Input[str]] = None,
|
|
1580
|
+
version: Optional[pulumi.Input[builtins.str]] = None,
|
|
1541
1581
|
vpc_cni_options: Optional[Union['VpcCniOptionsArgs', 'VpcCniOptionsArgsDict']] = None,
|
|
1542
|
-
vpc_id: Optional[pulumi.Input[str]] = None,
|
|
1582
|
+
vpc_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
1543
1583
|
__props__=None):
|
|
1544
1584
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
1545
1585
|
if not isinstance(opts, pulumi.ResourceOptions):
|
|
@@ -1554,6 +1594,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1554
1594
|
__props__.__dict__["access_entries"] = access_entries
|
|
1555
1595
|
__props__.__dict__["authentication_mode"] = authentication_mode
|
|
1556
1596
|
__props__.__dict__["auto_mode"] = auto_mode
|
|
1597
|
+
__props__.__dict__["bootstrap_self_managed_addons"] = bootstrap_self_managed_addons
|
|
1557
1598
|
__props__.__dict__["cluster_security_group"] = cluster_security_group
|
|
1558
1599
|
__props__.__dict__["cluster_security_group_tags"] = cluster_security_group_tags
|
|
1559
1600
|
__props__.__dict__["cluster_tags"] = cluster_tags
|
|
@@ -1561,7 +1602,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1561
1602
|
__props__.__dict__["create_instance_role"] = create_instance_role
|
|
1562
1603
|
__props__.__dict__["create_oidc_provider"] = create_oidc_provider
|
|
1563
1604
|
__props__.__dict__["creation_role_provider"] = creation_role_provider
|
|
1564
|
-
__props__.__dict__["
|
|
1605
|
+
__props__.__dict__["deletion_protection"] = deletion_protection
|
|
1565
1606
|
__props__.__dict__["desired_capacity"] = desired_capacity
|
|
1566
1607
|
__props__.__dict__["enable_config_map_mutable"] = enable_config_map_mutable
|
|
1567
1608
|
__props__.__dict__["enabled_cluster_log_types"] = enabled_cluster_log_types
|
|
@@ -1601,6 +1642,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1601
1642
|
__props__.__dict__["storage_classes"] = storage_classes
|
|
1602
1643
|
__props__.__dict__["subnet_ids"] = subnet_ids
|
|
1603
1644
|
__props__.__dict__["tags"] = tags
|
|
1645
|
+
__props__.__dict__["upgrade_policy"] = upgrade_policy
|
|
1604
1646
|
__props__.__dict__["use_default_vpc_cni"] = use_default_vpc_cni
|
|
1605
1647
|
__props__.__dict__["user_mappings"] = user_mappings
|
|
1606
1648
|
__props__.__dict__["version"] = version
|
|
@@ -1633,7 +1675,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1633
1675
|
|
|
1634
1676
|
@property
|
|
1635
1677
|
@pulumi.getter(name="autoModeNodeRoleName")
|
|
1636
|
-
def auto_mode_node_role_name(self) -> pulumi.Output[str]:
|
|
1678
|
+
def auto_mode_node_role_name(self) -> pulumi.Output[builtins.str]:
|
|
1637
1679
|
"""
|
|
1638
1680
|
The name of the IAM role created for nodes managed by EKS Auto Mode. Defaults to an empty string.
|
|
1639
1681
|
"""
|
|
@@ -1649,7 +1691,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1649
1691
|
|
|
1650
1692
|
@property
|
|
1651
1693
|
@pulumi.getter(name="clusterIngressRuleId")
|
|
1652
|
-
def cluster_ingress_rule_id(self) -> pulumi.Output[str]:
|
|
1694
|
+
def cluster_ingress_rule_id(self) -> pulumi.Output[builtins.str]:
|
|
1653
1695
|
"""
|
|
1654
1696
|
The ID of the security group rule that gives node group access to the cluster API server. Defaults to an empty string if `skipDefaultSecurityGroups` is set to true.
|
|
1655
1697
|
"""
|
|
@@ -1665,7 +1707,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1665
1707
|
|
|
1666
1708
|
@property
|
|
1667
1709
|
@pulumi.getter(name="clusterSecurityGroupId")
|
|
1668
|
-
def cluster_security_group_id(self) -> pulumi.Output[str]:
|
|
1710
|
+
def cluster_security_group_id(self) -> pulumi.Output[builtins.str]:
|
|
1669
1711
|
"""
|
|
1670
1712
|
The cluster security group ID of the EKS cluster. Returns the EKS created security group if `skipDefaultSecurityGroups` is set to true.
|
|
1671
1713
|
"""
|
|
@@ -1689,7 +1731,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1689
1731
|
|
|
1690
1732
|
@property
|
|
1691
1733
|
@pulumi.getter(name="defaultNodeGroupAsgName")
|
|
1692
|
-
def default_node_group_asg_name(self) -> pulumi.Output[str]:
|
|
1734
|
+
def default_node_group_asg_name(self) -> pulumi.Output[builtins.str]:
|
|
1693
1735
|
"""
|
|
1694
1736
|
The name of the default node group's AutoScaling Group. Defaults to an empty string if `skipDefaultNodeGroup` is set to true.
|
|
1695
1737
|
"""
|
|
@@ -1713,7 +1755,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1713
1755
|
|
|
1714
1756
|
@property
|
|
1715
1757
|
@pulumi.getter(name="fargateProfileId")
|
|
1716
|
-
def fargate_profile_id(self) -> pulumi.Output[str]:
|
|
1758
|
+
def fargate_profile_id(self) -> pulumi.Output[builtins.str]:
|
|
1717
1759
|
"""
|
|
1718
1760
|
The ID of the Fargate Profile. Defaults to an empty string if no Fargate profile is configured.
|
|
1719
1761
|
"""
|
|
@@ -1721,7 +1763,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1721
1763
|
|
|
1722
1764
|
@property
|
|
1723
1765
|
@pulumi.getter(name="fargateProfileStatus")
|
|
1724
|
-
def fargate_profile_status(self) -> pulumi.Output[str]:
|
|
1766
|
+
def fargate_profile_status(self) -> pulumi.Output[builtins.str]:
|
|
1725
1767
|
"""
|
|
1726
1768
|
The status of the Fargate Profile. Defaults to an empty string if no Fargate profile is configured.
|
|
1727
1769
|
"""
|
|
@@ -1745,7 +1787,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1745
1787
|
|
|
1746
1788
|
@property
|
|
1747
1789
|
@pulumi.getter(name="kubeconfigJson")
|
|
1748
|
-
def kubeconfig_json(self) -> pulumi.Output[str]:
|
|
1790
|
+
def kubeconfig_json(self) -> pulumi.Output[builtins.str]:
|
|
1749
1791
|
"""
|
|
1750
1792
|
A kubeconfig that can be used to connect to the EKS cluster as a JSON string.
|
|
1751
1793
|
"""
|
|
@@ -1761,7 +1803,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1761
1803
|
|
|
1762
1804
|
@property
|
|
1763
1805
|
@pulumi.getter(name="nodeSecurityGroupId")
|
|
1764
|
-
def node_security_group_id(self) -> pulumi.Output[str]:
|
|
1806
|
+
def node_security_group_id(self) -> pulumi.Output[builtins.str]:
|
|
1765
1807
|
"""
|
|
1766
1808
|
The node security group ID of the EKS cluster. Returns the EKS created security group if `skipDefaultSecurityGroups` is set to true.
|
|
1767
1809
|
"""
|
|
@@ -1769,7 +1811,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1769
1811
|
|
|
1770
1812
|
@property
|
|
1771
1813
|
@pulumi.getter(name="oidcIssuer")
|
|
1772
|
-
def oidc_issuer(self) -> pulumi.Output[str]:
|
|
1814
|
+
def oidc_issuer(self) -> pulumi.Output[builtins.str]:
|
|
1773
1815
|
"""
|
|
1774
1816
|
The OIDC Issuer of the EKS cluster (OIDC Provider URL without leading `https://`).
|
|
1775
1817
|
|
|
@@ -1779,7 +1821,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1779
1821
|
|
|
1780
1822
|
@property
|
|
1781
1823
|
@pulumi.getter(name="oidcProviderArn")
|
|
1782
|
-
def oidc_provider_arn(self) -> pulumi.Output[str]:
|
|
1824
|
+
def oidc_provider_arn(self) -> pulumi.Output[builtins.str]:
|
|
1783
1825
|
"""
|
|
1784
1826
|
The ARN of the IAM OpenID Connect Provider for the EKS cluster. Defaults to an empty string if no OIDC provider is configured.
|
|
1785
1827
|
"""
|
|
@@ -1787,7 +1829,7 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1787
1829
|
|
|
1788
1830
|
@property
|
|
1789
1831
|
@pulumi.getter(name="oidcProviderUrl")
|
|
1790
|
-
def oidc_provider_url(self) -> pulumi.Output[str]:
|
|
1832
|
+
def oidc_provider_url(self) -> pulumi.Output[builtins.str]:
|
|
1791
1833
|
"""
|
|
1792
1834
|
Issuer URL for the OpenID Connect identity provider of the EKS cluster.
|
|
1793
1835
|
"""
|
|
@@ -1802,15 +1844,15 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1802
1844
|
|
|
1803
1845
|
@property
|
|
1804
1846
|
@pulumi.getter
|
|
1805
|
-
def result(self) -> str:
|
|
1847
|
+
def result(self) -> builtins.str:
|
|
1806
1848
|
"""
|
|
1807
1849
|
The kubeconfig for the cluster.
|
|
1808
1850
|
"""
|
|
1809
1851
|
return pulumi.get(self, "result")
|
|
1810
1852
|
|
|
1811
1853
|
def get_kubeconfig(__self__, *,
|
|
1812
|
-
profile_name: Optional[pulumi.Input[str]] = None,
|
|
1813
|
-
role_arn: Optional[pulumi.Input[str]] = None) -> pulumi.Output['str']:
|
|
1854
|
+
profile_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
1855
|
+
role_arn: Optional[pulumi.Input[builtins.str]] = None) -> pulumi.Output['str']:
|
|
1814
1856
|
"""
|
|
1815
1857
|
Generate a kubeconfig for cluster authentication that does not use the default AWS credential provider chain, and instead is scoped to the supported options in `KubeconfigOptions`.
|
|
1816
1858
|
|
|
@@ -1822,10 +1864,10 @@ class Cluster(pulumi.ComponentResource):
|
|
|
1822
1864
|
- https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html
|
|
1823
1865
|
|
|
1824
1866
|
|
|
1825
|
-
:param pulumi.Input[str] profile_name: AWS credential profile name to always use instead of the default AWS credential provider chain.
|
|
1867
|
+
:param pulumi.Input[builtins.str] profile_name: AWS credential profile name to always use instead of the default AWS credential provider chain.
|
|
1826
1868
|
|
|
1827
1869
|
The profile is passed to kubeconfig as an authentication environment setting.
|
|
1828
|
-
:param pulumi.Input[str] role_arn: Role ARN to assume instead of the default AWS credential provider chain.
|
|
1870
|
+
:param pulumi.Input[builtins.str] role_arn: Role ARN to assume instead of the default AWS credential provider chain.
|
|
1829
1871
|
|
|
1830
1872
|
The role is passed to kubeconfig as an authentication exec argument.
|
|
1831
1873
|
"""
|