aws-cdk-lib 2.200.2__py3-none-any.whl → 2.201.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.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +105 -13
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.200.2.jsii.tgz → aws-cdk-lib@2.201.0.jsii.tgz} +0 -0
- aws_cdk/aws_amazonmq/__init__.py +2 -3
- aws_cdk/aws_amplify/__init__.py +3 -3
- aws_cdk/aws_apigateway/__init__.py +21 -17
- aws_cdk/aws_apigatewayv2/__init__.py +87 -45
- aws_cdk/aws_appconfig/__init__.py +38 -1
- aws_cdk/aws_appsync/__init__.py +10 -10
- aws_cdk/aws_athena/__init__.py +226 -0
- aws_cdk/aws_autoscaling/__init__.py +38 -37
- aws_cdk/aws_bedrock/__init__.py +5108 -1571
- aws_cdk/aws_cloudfront/__init__.py +8 -0
- aws_cdk/aws_cloudtrail/__init__.py +178 -0
- aws_cdk/aws_cloudwatch/__init__.py +7 -3
- aws_cdk/aws_codepipeline_actions/__init__.py +746 -0
- aws_cdk/aws_connect/__init__.py +5 -5
- aws_cdk/aws_customerprofiles/__init__.py +377 -8
- aws_cdk/aws_datasync/__init__.py +189 -160
- aws_cdk/aws_datazone/__init__.py +512 -170
- aws_cdk/aws_deadline/__init__.py +32 -4
- aws_cdk/aws_dsql/__init__.py +150 -10
- aws_cdk/aws_ec2/__init__.py +793 -56
- aws_cdk/aws_ecs/__init__.py +94 -11
- aws_cdk/aws_efs/__init__.py +92 -12
- aws_cdk/aws_eks/__init__.py +166 -19
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
- aws_cdk/aws_emr/__init__.py +10 -4
- aws_cdk/aws_entityresolution/__init__.py +25 -10
- aws_cdk/aws_evs/__init__.py +2204 -0
- aws_cdk/aws_fsx/__init__.py +7 -7
- aws_cdk/aws_lambda/__init__.py +409 -32
- aws_cdk/aws_lightsail/__init__.py +17 -13
- aws_cdk/aws_logs/__init__.py +1 -0
- aws_cdk/aws_networkfirewall/__init__.py +562 -0
- aws_cdk/aws_opensearchservice/__init__.py +3 -3
- aws_cdk/aws_opsworkscm/__init__.py +9 -43
- aws_cdk/aws_rds/__init__.py +284 -87
- aws_cdk/aws_s3/__init__.py +23 -15
- aws_cdk/aws_sagemaker/__init__.py +223 -3
- aws_cdk/aws_securityhub/__init__.py +18 -34
- aws_cdk/aws_ssm/__init__.py +83 -1
- aws_cdk/aws_stepfunctions/__init__.py +235 -45
- aws_cdk/aws_synthetics/__init__.py +74 -0
- aws_cdk/aws_transfer/__init__.py +3 -3
- aws_cdk/aws_verifiedpermissions/__init__.py +17 -6
- aws_cdk/aws_wafv2/__init__.py +39 -2
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/METADATA +2 -2
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/RECORD +53 -52
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_eks/__init__.py
CHANGED
|
@@ -1144,6 +1144,12 @@ eks.Cluster(self, "Cluster",
|
|
|
1144
1144
|
)
|
|
1145
1145
|
```
|
|
1146
1146
|
|
|
1147
|
+
### Self-Managed Add-ons
|
|
1148
|
+
|
|
1149
|
+
Amazon EKS automatically installs self-managed add-ons such as the Amazon VPC CNI plugin for Kubernetes, kube-proxy, and CoreDNS for every cluster. You can change the default configuration of the add-ons and update them when desired. If you wish to create a cluster without the default add-ons, set `bootstrapSelfManagedAddons` as `false`. When this is set to false, make sure to install the necessary alternatives which provide functionality that enables pod and service operations for your EKS cluster.
|
|
1150
|
+
|
|
1151
|
+
> Changing the value of `bootstrapSelfManagedAddons` after the EKS cluster creation will result in a replacement of the cluster.
|
|
1152
|
+
|
|
1147
1153
|
## Permissions and Security
|
|
1148
1154
|
|
|
1149
1155
|
Amazon EKS provides several mechanism of securing the cluster and granting permissions to specific IAM users and roles.
|
|
@@ -6090,7 +6096,7 @@ class CfnCluster(
|
|
|
6090
6096
|
|
|
6091
6097
|
Amazon EKS nodes run in your AWS account and connect to your cluster's control plane over the Kubernetes API server endpoint and a certificate file that is created for your cluster.
|
|
6092
6098
|
|
|
6093
|
-
You can use the ``endpointPublicAccess`` and ``endpointPrivateAccess`` parameters to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. For more information, see `Amazon EKS Cluster Endpoint Access Control <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
6099
|
+
You can use the ``endpointPublicAccess`` and ``endpointPrivateAccess`` parameters to enable or disable public and private access to your cluster's Kubernetes API server endpoint. By default, public access is enabled, and private access is disabled. The endpoint domain name and IP address family depends on the value of the ``ipFamily`` for the cluster. For more information, see `Amazon EKS Cluster Endpoint Access Control <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
6094
6100
|
|
|
6095
6101
|
You can use the ``logging`` parameter to enable or disable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs. By default, cluster control plane logs aren't exported to CloudWatch Logs. For more information, see `Amazon EKS Cluster Control Plane Logs <https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html>`_ in the **Amazon EKS User Guide** .
|
|
6096
6102
|
.. epigraph::
|
|
@@ -7859,9 +7865,9 @@ class CfnCluster(
|
|
|
7859
7865
|
- ``PublicAccessCidrs``
|
|
7860
7866
|
|
|
7861
7867
|
:param subnet_ids: Specify subnets for your Amazon EKS nodes. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your nodes and the Kubernetes control plane.
|
|
7862
|
-
:param endpoint_private_access: Set this value to ``true`` to enable private access for your cluster's Kubernetes API server endpoint. If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is ``false`` , which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that ``publicAccessCidrs`` includes the necessary CIDR blocks for communication with the nodes or Fargate pods. For more information, see `
|
|
7863
|
-
:param endpoint_public_access: Set this value to ``false`` to disable public access to your cluster's Kubernetes API server endpoint. If you disable public access, your cluster's Kubernetes API server can only receive requests from within the cluster VPC. The default value for this parameter is ``true`` , which enables public access for your Kubernetes API server. For more information, see `
|
|
7864
|
-
:param public_access_cidrs: The CIDR blocks that are allowed access to your cluster's public Kubernetes API server endpoint. Communication to the endpoint from addresses outside of the CIDR blocks that you specify is denied. The default value is ``0.0.0.0/0`` . If you've disabled private endpoint access, make sure that you specify the necessary CIDR blocks for every node and AWS Fargate ``Pod`` in the cluster. For more information, see `
|
|
7868
|
+
:param endpoint_private_access: Set this value to ``true`` to enable private access for your cluster's Kubernetes API server endpoint. If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is ``false`` , which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that ``publicAccessCidrs`` includes the necessary CIDR blocks for communication with the nodes or Fargate pods. For more information, see `Cluster API server endpoint <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
7869
|
+
:param endpoint_public_access: Set this value to ``false`` to disable public access to your cluster's Kubernetes API server endpoint. If you disable public access, your cluster's Kubernetes API server can only receive requests from within the cluster VPC. The default value for this parameter is ``true`` , which enables public access for your Kubernetes API server. The endpoint domain name and IP address family depends on the value of the ``ipFamily`` for the cluster. For more information, see `Cluster API server endpoint <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
7870
|
+
:param public_access_cidrs: The CIDR blocks that are allowed access to your cluster's public Kubernetes API server endpoint. Communication to the endpoint from addresses outside of the CIDR blocks that you specify is denied. The default value is ``0.0.0.0/0`` and additionally ``::/0`` for dual-stack ``IPv6`` clusters. If you've disabled private endpoint access, make sure that you specify the necessary CIDR blocks for every node and AWS Fargate ``Pod`` in the cluster. For more information, see `Cluster API server endpoint <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** . Note that the public endpoints are dual-stack for only ``IPv6`` clusters that are made after October 2024. You can't add ``IPv6`` CIDR blocks to ``IPv4`` clusters or ``IPv6`` clusters that were made before October 2024.
|
|
7865
7871
|
:param security_group_ids: Specify one or more security groups for the cross-account elastic network interfaces that Amazon EKS creates to use that allow communication between your nodes and the Kubernetes control plane. If you don't specify any security groups, then familiarize yourself with the difference between Amazon EKS defaults for clusters deployed with Kubernetes. For more information, see `Amazon EKS security group considerations <https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html>`_ in the **Amazon EKS User Guide** .
|
|
7866
7872
|
|
|
7867
7873
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html
|
|
@@ -7920,7 +7926,7 @@ class CfnCluster(
|
|
|
7920
7926
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
7921
7927
|
'''Set this value to ``true`` to enable private access for your cluster's Kubernetes API server endpoint.
|
|
7922
7928
|
|
|
7923
|
-
If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is ``false`` , which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that ``publicAccessCidrs`` includes the necessary CIDR blocks for communication with the nodes or Fargate pods. For more information, see `
|
|
7929
|
+
If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is ``false`` , which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that ``publicAccessCidrs`` includes the necessary CIDR blocks for communication with the nodes or Fargate pods. For more information, see `Cluster API server endpoint <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
7924
7930
|
|
|
7925
7931
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-endpointprivateaccess
|
|
7926
7932
|
'''
|
|
@@ -7933,7 +7939,7 @@ class CfnCluster(
|
|
|
7933
7939
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
7934
7940
|
'''Set this value to ``false`` to disable public access to your cluster's Kubernetes API server endpoint.
|
|
7935
7941
|
|
|
7936
|
-
If you disable public access, your cluster's Kubernetes API server can only receive requests from within the cluster VPC. The default value for this parameter is ``true`` , which enables public access for your Kubernetes API server. For more information, see `
|
|
7942
|
+
If you disable public access, your cluster's Kubernetes API server can only receive requests from within the cluster VPC. The default value for this parameter is ``true`` , which enables public access for your Kubernetes API server. The endpoint domain name and IP address family depends on the value of the ``ipFamily`` for the cluster. For more information, see `Cluster API server endpoint <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
7937
7943
|
|
|
7938
7944
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-endpointpublicaccess
|
|
7939
7945
|
'''
|
|
@@ -7944,7 +7950,9 @@ class CfnCluster(
|
|
|
7944
7950
|
def public_access_cidrs(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
7945
7951
|
'''The CIDR blocks that are allowed access to your cluster's public Kubernetes API server endpoint.
|
|
7946
7952
|
|
|
7947
|
-
Communication to the endpoint from addresses outside of the CIDR blocks that you specify is denied. The default value is ``0.0.0.0/0`` . If you've disabled private endpoint access, make sure that you specify the necessary CIDR blocks for every node and AWS Fargate ``Pod`` in the cluster. For more information, see `
|
|
7953
|
+
Communication to the endpoint from addresses outside of the CIDR blocks that you specify is denied. The default value is ``0.0.0.0/0`` and additionally ``::/0`` for dual-stack ``IPv6`` clusters. If you've disabled private endpoint access, make sure that you specify the necessary CIDR blocks for every node and AWS Fargate ``Pod`` in the cluster. For more information, see `Cluster API server endpoint <https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html>`_ in the **Amazon EKS User Guide** .
|
|
7954
|
+
|
|
7955
|
+
Note that the public endpoints are dual-stack for only ``IPv6`` clusters that are made after October 2024. You can't add ``IPv6`` CIDR blocks to ``IPv4`` clusters or ``IPv6`` clusters that were made before October 2024.
|
|
7948
7956
|
|
|
7949
7957
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html#cfn-eks-cluster-resourcesvpcconfig-publicaccesscidrs
|
|
7950
7958
|
'''
|
|
@@ -11207,10 +11215,12 @@ class CfnPodIdentityAssociation(
|
|
|
11207
11215
|
service_account="serviceAccount",
|
|
11208
11216
|
|
|
11209
11217
|
# the properties below are optional
|
|
11218
|
+
disable_session_tags=False,
|
|
11210
11219
|
tags=[CfnTag(
|
|
11211
11220
|
key="key",
|
|
11212
11221
|
value="value"
|
|
11213
|
-
)]
|
|
11222
|
+
)],
|
|
11223
|
+
target_role_arn="targetRoleArn"
|
|
11214
11224
|
)
|
|
11215
11225
|
'''
|
|
11216
11226
|
|
|
@@ -11223,7 +11233,9 @@ class CfnPodIdentityAssociation(
|
|
|
11223
11233
|
namespace: builtins.str,
|
|
11224
11234
|
role_arn: builtins.str,
|
|
11225
11235
|
service_account: builtins.str,
|
|
11236
|
+
disable_session_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
11226
11237
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
11238
|
+
target_role_arn: typing.Optional[builtins.str] = None,
|
|
11227
11239
|
) -> None:
|
|
11228
11240
|
'''
|
|
11229
11241
|
:param scope: Scope in which this resource is defined.
|
|
@@ -11232,7 +11244,9 @@ class CfnPodIdentityAssociation(
|
|
|
11232
11244
|
:param namespace: The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
|
|
11233
11245
|
:param role_arn: The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
|
|
11234
11246
|
:param service_account: The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
|
|
11247
|
+
:param disable_session_tags: The Disable Session Tags of the pod identity association.
|
|
11235
11248
|
:param tags: Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or AWS resources. The following basic restrictions apply to tags: - Maximum number of tags per resource – 50 - For each resource, each tag key must be unique, and each tag key can have only one value. - Maximum key length – 128 Unicode characters in UTF-8 - Maximum value length – 256 Unicode characters in UTF-8 - If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
|
|
11249
|
+
:param target_role_arn: The Target Role Arn of the pod identity association.
|
|
11236
11250
|
'''
|
|
11237
11251
|
if __debug__:
|
|
11238
11252
|
type_hints = typing.get_type_hints(_typecheckingstub__be8311b6089cea26f85c63a586f0c5b063230a1b4a96ffcd4c6c983a331d8652)
|
|
@@ -11243,7 +11257,9 @@ class CfnPodIdentityAssociation(
|
|
|
11243
11257
|
namespace=namespace,
|
|
11244
11258
|
role_arn=role_arn,
|
|
11245
11259
|
service_account=service_account,
|
|
11260
|
+
disable_session_tags=disable_session_tags,
|
|
11246
11261
|
tags=tags,
|
|
11262
|
+
target_role_arn=target_role_arn,
|
|
11247
11263
|
)
|
|
11248
11264
|
|
|
11249
11265
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
@@ -11296,6 +11312,15 @@ class CfnPodIdentityAssociation(
|
|
|
11296
11312
|
'''
|
|
11297
11313
|
return typing.cast(builtins.str, jsii.get(self, "attrAssociationId"))
|
|
11298
11314
|
|
|
11315
|
+
@builtins.property
|
|
11316
|
+
@jsii.member(jsii_name="attrExternalId")
|
|
11317
|
+
def attr_external_id(self) -> builtins.str:
|
|
11318
|
+
'''The External Id of the pod identity association.
|
|
11319
|
+
|
|
11320
|
+
:cloudformationAttribute: ExternalId
|
|
11321
|
+
'''
|
|
11322
|
+
return typing.cast(builtins.str, jsii.get(self, "attrExternalId"))
|
|
11323
|
+
|
|
11299
11324
|
@builtins.property
|
|
11300
11325
|
@jsii.member(jsii_name="cdkTagManager")
|
|
11301
11326
|
def cdk_tag_manager(self) -> _TagManager_0a598cb3:
|
|
@@ -11359,6 +11384,24 @@ class CfnPodIdentityAssociation(
|
|
|
11359
11384
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11360
11385
|
jsii.set(self, "serviceAccount", value) # pyright: ignore[reportArgumentType]
|
|
11361
11386
|
|
|
11387
|
+
@builtins.property
|
|
11388
|
+
@jsii.member(jsii_name="disableSessionTags")
|
|
11389
|
+
def disable_session_tags(
|
|
11390
|
+
self,
|
|
11391
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
11392
|
+
'''The Disable Session Tags of the pod identity association.'''
|
|
11393
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "disableSessionTags"))
|
|
11394
|
+
|
|
11395
|
+
@disable_session_tags.setter
|
|
11396
|
+
def disable_session_tags(
|
|
11397
|
+
self,
|
|
11398
|
+
value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
|
|
11399
|
+
) -> None:
|
|
11400
|
+
if __debug__:
|
|
11401
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cb3dbe4cc3b44e9265bbfe13e41235db909b0c1dc0e052b3bdda07fd4b228e8b)
|
|
11402
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11403
|
+
jsii.set(self, "disableSessionTags", value) # pyright: ignore[reportArgumentType]
|
|
11404
|
+
|
|
11362
11405
|
@builtins.property
|
|
11363
11406
|
@jsii.member(jsii_name="tags")
|
|
11364
11407
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
@@ -11372,6 +11415,19 @@ class CfnPodIdentityAssociation(
|
|
|
11372
11415
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11373
11416
|
jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
|
|
11374
11417
|
|
|
11418
|
+
@builtins.property
|
|
11419
|
+
@jsii.member(jsii_name="targetRoleArn")
|
|
11420
|
+
def target_role_arn(self) -> typing.Optional[builtins.str]:
|
|
11421
|
+
'''The Target Role Arn of the pod identity association.'''
|
|
11422
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "targetRoleArn"))
|
|
11423
|
+
|
|
11424
|
+
@target_role_arn.setter
|
|
11425
|
+
def target_role_arn(self, value: typing.Optional[builtins.str]) -> None:
|
|
11426
|
+
if __debug__:
|
|
11427
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cb6220c6db8cf93a8a307b1ba0630d6bc64b4a09325e7cfe5854228aa75ff833)
|
|
11428
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11429
|
+
jsii.set(self, "targetRoleArn", value) # pyright: ignore[reportArgumentType]
|
|
11430
|
+
|
|
11375
11431
|
|
|
11376
11432
|
@jsii.data_type(
|
|
11377
11433
|
jsii_type="aws-cdk-lib.aws_eks.CfnPodIdentityAssociationProps",
|
|
@@ -11381,7 +11437,9 @@ class CfnPodIdentityAssociation(
|
|
|
11381
11437
|
"namespace": "namespace",
|
|
11382
11438
|
"role_arn": "roleArn",
|
|
11383
11439
|
"service_account": "serviceAccount",
|
|
11440
|
+
"disable_session_tags": "disableSessionTags",
|
|
11384
11441
|
"tags": "tags",
|
|
11442
|
+
"target_role_arn": "targetRoleArn",
|
|
11385
11443
|
},
|
|
11386
11444
|
)
|
|
11387
11445
|
class CfnPodIdentityAssociationProps:
|
|
@@ -11392,7 +11450,9 @@ class CfnPodIdentityAssociationProps:
|
|
|
11392
11450
|
namespace: builtins.str,
|
|
11393
11451
|
role_arn: builtins.str,
|
|
11394
11452
|
service_account: builtins.str,
|
|
11453
|
+
disable_session_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
11395
11454
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
11455
|
+
target_role_arn: typing.Optional[builtins.str] = None,
|
|
11396
11456
|
) -> None:
|
|
11397
11457
|
'''Properties for defining a ``CfnPodIdentityAssociation``.
|
|
11398
11458
|
|
|
@@ -11400,7 +11460,9 @@ class CfnPodIdentityAssociationProps:
|
|
|
11400
11460
|
:param namespace: The name of the Kubernetes namespace inside the cluster to create the association in. The service account and the pods that use the service account must be in this namespace.
|
|
11401
11461
|
:param role_arn: The Amazon Resource Name (ARN) of the IAM role to associate with the service account. The EKS Pod Identity agent manages credentials to assume this role for applications in the containers in the pods that use this service account.
|
|
11402
11462
|
:param service_account: The name of the Kubernetes service account inside the cluster to associate the IAM credentials with.
|
|
11463
|
+
:param disable_session_tags: The Disable Session Tags of the pod identity association.
|
|
11403
11464
|
:param tags: Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or AWS resources. The following basic restrictions apply to tags: - Maximum number of tags per resource – 50 - For each resource, each tag key must be unique, and each tag key can have only one value. - Maximum key length – 128 Unicode characters in UTF-8 - Maximum value length – 256 Unicode characters in UTF-8 - If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
|
|
11465
|
+
:param target_role_arn: The Target Role Arn of the pod identity association.
|
|
11404
11466
|
|
|
11405
11467
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html
|
|
11406
11468
|
:exampleMetadata: fixture=_generated
|
|
@@ -11418,10 +11480,12 @@ class CfnPodIdentityAssociationProps:
|
|
|
11418
11480
|
service_account="serviceAccount",
|
|
11419
11481
|
|
|
11420
11482
|
# the properties below are optional
|
|
11483
|
+
disable_session_tags=False,
|
|
11421
11484
|
tags=[CfnTag(
|
|
11422
11485
|
key="key",
|
|
11423
11486
|
value="value"
|
|
11424
|
-
)]
|
|
11487
|
+
)],
|
|
11488
|
+
target_role_arn="targetRoleArn"
|
|
11425
11489
|
)
|
|
11426
11490
|
'''
|
|
11427
11491
|
if __debug__:
|
|
@@ -11430,15 +11494,21 @@ class CfnPodIdentityAssociationProps:
|
|
|
11430
11494
|
check_type(argname="argument namespace", value=namespace, expected_type=type_hints["namespace"])
|
|
11431
11495
|
check_type(argname="argument role_arn", value=role_arn, expected_type=type_hints["role_arn"])
|
|
11432
11496
|
check_type(argname="argument service_account", value=service_account, expected_type=type_hints["service_account"])
|
|
11497
|
+
check_type(argname="argument disable_session_tags", value=disable_session_tags, expected_type=type_hints["disable_session_tags"])
|
|
11433
11498
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
11499
|
+
check_type(argname="argument target_role_arn", value=target_role_arn, expected_type=type_hints["target_role_arn"])
|
|
11434
11500
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
11435
11501
|
"cluster_name": cluster_name,
|
|
11436
11502
|
"namespace": namespace,
|
|
11437
11503
|
"role_arn": role_arn,
|
|
11438
11504
|
"service_account": service_account,
|
|
11439
11505
|
}
|
|
11506
|
+
if disable_session_tags is not None:
|
|
11507
|
+
self._values["disable_session_tags"] = disable_session_tags
|
|
11440
11508
|
if tags is not None:
|
|
11441
11509
|
self._values["tags"] = tags
|
|
11510
|
+
if target_role_arn is not None:
|
|
11511
|
+
self._values["target_role_arn"] = target_role_arn
|
|
11442
11512
|
|
|
11443
11513
|
@builtins.property
|
|
11444
11514
|
def cluster_name(self) -> builtins.str:
|
|
@@ -11484,6 +11554,17 @@ class CfnPodIdentityAssociationProps:
|
|
|
11484
11554
|
assert result is not None, "Required property 'service_account' is missing"
|
|
11485
11555
|
return typing.cast(builtins.str, result)
|
|
11486
11556
|
|
|
11557
|
+
@builtins.property
|
|
11558
|
+
def disable_session_tags(
|
|
11559
|
+
self,
|
|
11560
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
11561
|
+
'''The Disable Session Tags of the pod identity association.
|
|
11562
|
+
|
|
11563
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html#cfn-eks-podidentityassociation-disablesessiontags
|
|
11564
|
+
'''
|
|
11565
|
+
result = self._values.get("disable_session_tags")
|
|
11566
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
11567
|
+
|
|
11487
11568
|
@builtins.property
|
|
11488
11569
|
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
11489
11570
|
'''Metadata that assists with categorization and organization.
|
|
@@ -11509,6 +11590,15 @@ class CfnPodIdentityAssociationProps:
|
|
|
11509
11590
|
result = self._values.get("tags")
|
|
11510
11591
|
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
|
|
11511
11592
|
|
|
11593
|
+
@builtins.property
|
|
11594
|
+
def target_role_arn(self) -> typing.Optional[builtins.str]:
|
|
11595
|
+
'''The Target Role Arn of the pod identity association.
|
|
11596
|
+
|
|
11597
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-podidentityassociation.html#cfn-eks-podidentityassociation-targetrolearn
|
|
11598
|
+
'''
|
|
11599
|
+
result = self._values.get("target_role_arn")
|
|
11600
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
11601
|
+
|
|
11512
11602
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
11513
11603
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
11514
11604
|
|
|
@@ -12007,7 +12097,7 @@ class CommonClusterOptions:
|
|
|
12007
12097
|
:param version: The Kubernetes version to run in the cluster.
|
|
12008
12098
|
:param cluster_name: Name for the cluster. Default: - Automatically generated name
|
|
12009
12099
|
:param output_cluster_name: Determines whether a CloudFormation output with the name of the cluster will be synthesized. Default: false
|
|
12010
|
-
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and
|
|
12100
|
+
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and the ARN of the masters IAM role. Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted. Default: true
|
|
12011
12101
|
:param role: Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Default: - A role is automatically created for you
|
|
12012
12102
|
:param security_group: Security Group to use for Control Plane ENIs. Default: - A security group is automatically created
|
|
12013
12103
|
:param vpc: The VPC in which to create the Cluster. Default: - a VPC with default configuration will be created and can be accessed through ``cluster.vpc``.
|
|
@@ -12108,9 +12198,13 @@ class CommonClusterOptions:
|
|
|
12108
12198
|
'''Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized.
|
|
12109
12199
|
|
|
12110
12200
|
This command will include
|
|
12111
|
-
the cluster name and
|
|
12201
|
+
the cluster name and the ARN of the masters IAM role.
|
|
12202
|
+
|
|
12203
|
+
Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted.
|
|
12112
12204
|
|
|
12113
12205
|
:default: true
|
|
12206
|
+
|
|
12207
|
+
:see: https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_eks-readme.html#masters-role
|
|
12114
12208
|
'''
|
|
12115
12209
|
result = self._values.get("output_config_command")
|
|
12116
12210
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -18591,6 +18685,7 @@ class Cluster(
|
|
|
18591
18685
|
id: builtins.str,
|
|
18592
18686
|
*,
|
|
18593
18687
|
bootstrap_cluster_creator_admin_permissions: typing.Optional[builtins.bool] = None,
|
|
18688
|
+
bootstrap_self_managed_addons: typing.Optional[builtins.bool] = None,
|
|
18594
18689
|
default_capacity: typing.Optional[jsii.Number] = None,
|
|
18595
18690
|
default_capacity_instance: typing.Optional[_InstanceType_f64915b9] = None,
|
|
18596
18691
|
default_capacity_type: typing.Optional[DefaultCapacityType] = None,
|
|
@@ -18631,6 +18726,7 @@ class Cluster(
|
|
|
18631
18726
|
:param scope: a Construct, most likely a cdk.Stack created.
|
|
18632
18727
|
:param id: the id of the Construct to create.
|
|
18633
18728
|
:param bootstrap_cluster_creator_admin_permissions: Whether or not IAM principal of the cluster creator was set as a cluster admin access entry during cluster creation time. Changing this value after the cluster has been created will result in the cluster being replaced. Default: true
|
|
18729
|
+
:param bootstrap_self_managed_addons: If you set this value to False when creating a cluster, the default networking add-ons will not be installed. The default networking addons include vpc-cni, coredns, and kube-proxy. Use this option when you plan to install third-party alternative add-ons or self-manage the default networking add-ons. Changing this value after the cluster has been created will result in the cluster being replaced. Default: true
|
|
18634
18730
|
:param default_capacity: Number of instances to allocate as an initial capacity for this cluster. Instance type can be configured through ``defaultCapacityInstanceType``, which defaults to ``m5.large``. Use ``cluster.addAutoScalingGroupCapacity`` to add additional customized capacity. Set this to ``0`` is you wish to avoid the initial capacity allocation. Default: 2
|
|
18635
18731
|
:param default_capacity_instance: The instance type to use for the default capacity. This will only be taken into account if ``defaultCapacity`` is > 0. Default: m5.large
|
|
18636
18732
|
:param default_capacity_type: The default capacity type for the cluster. Default: NODEGROUP
|
|
@@ -18660,7 +18756,7 @@ class Cluster(
|
|
|
18660
18756
|
:param version: The Kubernetes version to run in the cluster.
|
|
18661
18757
|
:param cluster_name: Name for the cluster. Default: - Automatically generated name
|
|
18662
18758
|
:param output_cluster_name: Determines whether a CloudFormation output with the name of the cluster will be synthesized. Default: false
|
|
18663
|
-
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and
|
|
18759
|
+
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and the ARN of the masters IAM role. Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted. Default: true
|
|
18664
18760
|
:param role: Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Default: - A role is automatically created for you
|
|
18665
18761
|
:param security_group: Security Group to use for Control Plane ENIs. Default: - A security group is automatically created
|
|
18666
18762
|
:param vpc: The VPC in which to create the Cluster. Default: - a VPC with default configuration will be created and can be accessed through ``cluster.vpc``.
|
|
@@ -18672,6 +18768,7 @@ class Cluster(
|
|
|
18672
18768
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
18673
18769
|
props = ClusterProps(
|
|
18674
18770
|
bootstrap_cluster_creator_admin_permissions=bootstrap_cluster_creator_admin_permissions,
|
|
18771
|
+
bootstrap_self_managed_addons=bootstrap_self_managed_addons,
|
|
18675
18772
|
default_capacity=default_capacity,
|
|
18676
18773
|
default_capacity_instance=default_capacity_instance,
|
|
18677
18774
|
default_capacity_type=default_capacity_type,
|
|
@@ -19686,7 +19783,7 @@ class ClusterOptions(CommonClusterOptions):
|
|
|
19686
19783
|
:param version: The Kubernetes version to run in the cluster.
|
|
19687
19784
|
:param cluster_name: Name for the cluster. Default: - Automatically generated name
|
|
19688
19785
|
:param output_cluster_name: Determines whether a CloudFormation output with the name of the cluster will be synthesized. Default: false
|
|
19689
|
-
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and
|
|
19786
|
+
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and the ARN of the masters IAM role. Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted. Default: true
|
|
19690
19787
|
:param role: Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Default: - A role is automatically created for you
|
|
19691
19788
|
:param security_group: Security Group to use for Control Plane ENIs. Default: - A security group is automatically created
|
|
19692
19789
|
:param vpc: The VPC in which to create the Cluster. Default: - a VPC with default configuration will be created and can be accessed through ``cluster.vpc``.
|
|
@@ -19920,9 +20017,13 @@ class ClusterOptions(CommonClusterOptions):
|
|
|
19920
20017
|
'''Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized.
|
|
19921
20018
|
|
|
19922
20019
|
This command will include
|
|
19923
|
-
the cluster name and
|
|
20020
|
+
the cluster name and the ARN of the masters IAM role.
|
|
20021
|
+
|
|
20022
|
+
Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted.
|
|
19924
20023
|
|
|
19925
20024
|
:default: true
|
|
20025
|
+
|
|
20026
|
+
:see: https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_eks-readme.html#masters-role
|
|
19926
20027
|
'''
|
|
19927
20028
|
result = self._values.get("output_config_command")
|
|
19928
20029
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -20262,6 +20363,7 @@ class ClusterOptions(CommonClusterOptions):
|
|
|
20262
20363
|
"secrets_encryption_key": "secretsEncryptionKey",
|
|
20263
20364
|
"service_ipv4_cidr": "serviceIpv4Cidr",
|
|
20264
20365
|
"bootstrap_cluster_creator_admin_permissions": "bootstrapClusterCreatorAdminPermissions",
|
|
20366
|
+
"bootstrap_self_managed_addons": "bootstrapSelfManagedAddons",
|
|
20265
20367
|
"default_capacity": "defaultCapacity",
|
|
20266
20368
|
"default_capacity_instance": "defaultCapacityInstance",
|
|
20267
20369
|
"default_capacity_type": "defaultCapacityType",
|
|
@@ -20303,6 +20405,7 @@ class ClusterProps(ClusterOptions):
|
|
|
20303
20405
|
secrets_encryption_key: typing.Optional[_IKey_5f11635f] = None,
|
|
20304
20406
|
service_ipv4_cidr: typing.Optional[builtins.str] = None,
|
|
20305
20407
|
bootstrap_cluster_creator_admin_permissions: typing.Optional[builtins.bool] = None,
|
|
20408
|
+
bootstrap_self_managed_addons: typing.Optional[builtins.bool] = None,
|
|
20306
20409
|
default_capacity: typing.Optional[jsii.Number] = None,
|
|
20307
20410
|
default_capacity_instance: typing.Optional[_InstanceType_f64915b9] = None,
|
|
20308
20411
|
default_capacity_type: typing.Optional[DefaultCapacityType] = None,
|
|
@@ -20314,7 +20417,7 @@ class ClusterProps(ClusterOptions):
|
|
|
20314
20417
|
:param version: The Kubernetes version to run in the cluster.
|
|
20315
20418
|
:param cluster_name: Name for the cluster. Default: - Automatically generated name
|
|
20316
20419
|
:param output_cluster_name: Determines whether a CloudFormation output with the name of the cluster will be synthesized. Default: false
|
|
20317
|
-
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and
|
|
20420
|
+
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and the ARN of the masters IAM role. Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted. Default: true
|
|
20318
20421
|
:param role: Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Default: - A role is automatically created for you
|
|
20319
20422
|
:param security_group: Security Group to use for Control Plane ENIs. Default: - A security group is automatically created
|
|
20320
20423
|
:param vpc: The VPC in which to create the Cluster. Default: - a VPC with default configuration will be created and can be accessed through ``cluster.vpc``.
|
|
@@ -20341,6 +20444,7 @@ class ClusterProps(ClusterOptions):
|
|
|
20341
20444
|
:param secrets_encryption_key: KMS secret for envelope encryption for Kubernetes secrets. Default: - By default, Kubernetes stores all secret object data within etcd and all etcd volumes used by Amazon EKS are encrypted at the disk-level using AWS-Managed encryption keys.
|
|
20342
20445
|
:param service_ipv4_cidr: The CIDR block to assign Kubernetes service IP addresses from. Default: - Kubernetes assigns addresses from either the 10.100.0.0/16 or 172.20.0.0/16 CIDR blocks
|
|
20343
20446
|
:param bootstrap_cluster_creator_admin_permissions: Whether or not IAM principal of the cluster creator was set as a cluster admin access entry during cluster creation time. Changing this value after the cluster has been created will result in the cluster being replaced. Default: true
|
|
20447
|
+
:param bootstrap_self_managed_addons: If you set this value to False when creating a cluster, the default networking add-ons will not be installed. The default networking addons include vpc-cni, coredns, and kube-proxy. Use this option when you plan to install third-party alternative add-ons or self-manage the default networking add-ons. Changing this value after the cluster has been created will result in the cluster being replaced. Default: true
|
|
20344
20448
|
:param default_capacity: Number of instances to allocate as an initial capacity for this cluster. Instance type can be configured through ``defaultCapacityInstanceType``, which defaults to ``m5.large``. Use ``cluster.addAutoScalingGroupCapacity`` to add additional customized capacity. Set this to ``0`` is you wish to avoid the initial capacity allocation. Default: 2
|
|
20345
20449
|
:param default_capacity_instance: The instance type to use for the default capacity. This will only be taken into account if ``defaultCapacity`` is > 0. Default: m5.large
|
|
20346
20450
|
:param default_capacity_type: The default capacity type for the cluster. Default: NODEGROUP
|
|
@@ -20402,6 +20506,7 @@ class ClusterProps(ClusterOptions):
|
|
|
20402
20506
|
check_type(argname="argument secrets_encryption_key", value=secrets_encryption_key, expected_type=type_hints["secrets_encryption_key"])
|
|
20403
20507
|
check_type(argname="argument service_ipv4_cidr", value=service_ipv4_cidr, expected_type=type_hints["service_ipv4_cidr"])
|
|
20404
20508
|
check_type(argname="argument bootstrap_cluster_creator_admin_permissions", value=bootstrap_cluster_creator_admin_permissions, expected_type=type_hints["bootstrap_cluster_creator_admin_permissions"])
|
|
20509
|
+
check_type(argname="argument bootstrap_self_managed_addons", value=bootstrap_self_managed_addons, expected_type=type_hints["bootstrap_self_managed_addons"])
|
|
20405
20510
|
check_type(argname="argument default_capacity", value=default_capacity, expected_type=type_hints["default_capacity"])
|
|
20406
20511
|
check_type(argname="argument default_capacity_instance", value=default_capacity_instance, expected_type=type_hints["default_capacity_instance"])
|
|
20407
20512
|
check_type(argname="argument default_capacity_type", value=default_capacity_type, expected_type=type_hints["default_capacity_type"])
|
|
@@ -20467,6 +20572,8 @@ class ClusterProps(ClusterOptions):
|
|
|
20467
20572
|
self._values["service_ipv4_cidr"] = service_ipv4_cidr
|
|
20468
20573
|
if bootstrap_cluster_creator_admin_permissions is not None:
|
|
20469
20574
|
self._values["bootstrap_cluster_creator_admin_permissions"] = bootstrap_cluster_creator_admin_permissions
|
|
20575
|
+
if bootstrap_self_managed_addons is not None:
|
|
20576
|
+
self._values["bootstrap_self_managed_addons"] = bootstrap_self_managed_addons
|
|
20470
20577
|
if default_capacity is not None:
|
|
20471
20578
|
self._values["default_capacity"] = default_capacity
|
|
20472
20579
|
if default_capacity_instance is not None:
|
|
@@ -20508,9 +20615,13 @@ class ClusterProps(ClusterOptions):
|
|
|
20508
20615
|
'''Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized.
|
|
20509
20616
|
|
|
20510
20617
|
This command will include
|
|
20511
|
-
the cluster name and
|
|
20618
|
+
the cluster name and the ARN of the masters IAM role.
|
|
20619
|
+
|
|
20620
|
+
Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted.
|
|
20512
20621
|
|
|
20513
20622
|
:default: true
|
|
20623
|
+
|
|
20624
|
+
:see: https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_eks-readme.html#masters-role
|
|
20514
20625
|
'''
|
|
20515
20626
|
result = self._values.get("output_config_command")
|
|
20516
20627
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -20817,6 +20928,20 @@ class ClusterProps(ClusterOptions):
|
|
|
20817
20928
|
result = self._values.get("bootstrap_cluster_creator_admin_permissions")
|
|
20818
20929
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
20819
20930
|
|
|
20931
|
+
@builtins.property
|
|
20932
|
+
def bootstrap_self_managed_addons(self) -> typing.Optional[builtins.bool]:
|
|
20933
|
+
'''If you set this value to False when creating a cluster, the default networking add-ons will not be installed.
|
|
20934
|
+
|
|
20935
|
+
The default networking addons include vpc-cni, coredns, and kube-proxy.
|
|
20936
|
+
Use this option when you plan to install third-party alternative add-ons or self-manage the default networking add-ons.
|
|
20937
|
+
|
|
20938
|
+
Changing this value after the cluster has been created will result in the cluster being replaced.
|
|
20939
|
+
|
|
20940
|
+
:default: true
|
|
20941
|
+
'''
|
|
20942
|
+
result = self._values.get("bootstrap_self_managed_addons")
|
|
20943
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
20944
|
+
|
|
20820
20945
|
@builtins.property
|
|
20821
20946
|
def default_capacity(self) -> typing.Optional[jsii.Number]:
|
|
20822
20947
|
'''Number of instances to allocate as an initial capacity for this cluster.
|
|
@@ -20971,7 +21096,7 @@ class FargateCluster(
|
|
|
20971
21096
|
:param version: The Kubernetes version to run in the cluster.
|
|
20972
21097
|
:param cluster_name: Name for the cluster. Default: - Automatically generated name
|
|
20973
21098
|
:param output_cluster_name: Determines whether a CloudFormation output with the name of the cluster will be synthesized. Default: false
|
|
20974
|
-
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and
|
|
21099
|
+
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and the ARN of the masters IAM role. Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted. Default: true
|
|
20975
21100
|
:param role: Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Default: - A role is automatically created for you
|
|
20976
21101
|
:param security_group: Security Group to use for Control Plane ENIs. Default: - A security group is automatically created
|
|
20977
21102
|
:param vpc: The VPC in which to create the Cluster. Default: - a VPC with default configuration will be created and can be accessed through ``cluster.vpc``.
|
|
@@ -21105,7 +21230,7 @@ class FargateClusterProps(ClusterOptions):
|
|
|
21105
21230
|
:param version: The Kubernetes version to run in the cluster.
|
|
21106
21231
|
:param cluster_name: Name for the cluster. Default: - Automatically generated name
|
|
21107
21232
|
:param output_cluster_name: Determines whether a CloudFormation output with the name of the cluster will be synthesized. Default: false
|
|
21108
|
-
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and
|
|
21233
|
+
:param output_config_command: Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized. This command will include the cluster name and the ARN of the masters IAM role. Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted. Default: true
|
|
21109
21234
|
:param role: Role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf. Default: - A role is automatically created for you
|
|
21110
21235
|
:param security_group: Security Group to use for Control Plane ENIs. Default: - A security group is automatically created
|
|
21111
21236
|
:param vpc: The VPC in which to create the Cluster. Default: - a VPC with default configuration will be created and can be accessed through ``cluster.vpc``.
|
|
@@ -21272,9 +21397,13 @@ class FargateClusterProps(ClusterOptions):
|
|
|
21272
21397
|
'''Determines whether a CloudFormation output with the ``aws eks update-kubeconfig`` command will be synthesized.
|
|
21273
21398
|
|
|
21274
21399
|
This command will include
|
|
21275
|
-
the cluster name and
|
|
21400
|
+
the cluster name and the ARN of the masters IAM role.
|
|
21401
|
+
|
|
21402
|
+
Note: If mastersRole is not specified, this property will be ignored and no config command will be emitted.
|
|
21276
21403
|
|
|
21277
21404
|
:default: true
|
|
21405
|
+
|
|
21406
|
+
:see: https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_eks-readme.html#masters-role
|
|
21278
21407
|
'''
|
|
21279
21408
|
result = self._values.get("output_config_command")
|
|
21280
21409
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -22950,7 +23079,9 @@ def _typecheckingstub__be8311b6089cea26f85c63a586f0c5b063230a1b4a96ffcd4c6c983a3
|
|
|
22950
23079
|
namespace: builtins.str,
|
|
22951
23080
|
role_arn: builtins.str,
|
|
22952
23081
|
service_account: builtins.str,
|
|
23082
|
+
disable_session_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
22953
23083
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
23084
|
+
target_role_arn: typing.Optional[builtins.str] = None,
|
|
22954
23085
|
) -> None:
|
|
22955
23086
|
"""Type checking stubs"""
|
|
22956
23087
|
pass
|
|
@@ -22991,19 +23122,33 @@ def _typecheckingstub__ea3bb34348aff57e29a5352e7460510bda8dd51720dbf7d275297137f
|
|
|
22991
23122
|
"""Type checking stubs"""
|
|
22992
23123
|
pass
|
|
22993
23124
|
|
|
23125
|
+
def _typecheckingstub__cb3dbe4cc3b44e9265bbfe13e41235db909b0c1dc0e052b3bdda07fd4b228e8b(
|
|
23126
|
+
value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
|
|
23127
|
+
) -> None:
|
|
23128
|
+
"""Type checking stubs"""
|
|
23129
|
+
pass
|
|
23130
|
+
|
|
22994
23131
|
def _typecheckingstub__b0e0a0551adefc10761733af04b8c51e7dad6b483be9252882ecff10539c7dcc(
|
|
22995
23132
|
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
22996
23133
|
) -> None:
|
|
22997
23134
|
"""Type checking stubs"""
|
|
22998
23135
|
pass
|
|
22999
23136
|
|
|
23137
|
+
def _typecheckingstub__cb6220c6db8cf93a8a307b1ba0630d6bc64b4a09325e7cfe5854228aa75ff833(
|
|
23138
|
+
value: typing.Optional[builtins.str],
|
|
23139
|
+
) -> None:
|
|
23140
|
+
"""Type checking stubs"""
|
|
23141
|
+
pass
|
|
23142
|
+
|
|
23000
23143
|
def _typecheckingstub__40e8da56b529234cdbb596fa46af952a935adf744e907347861dfc232b89038b(
|
|
23001
23144
|
*,
|
|
23002
23145
|
cluster_name: builtins.str,
|
|
23003
23146
|
namespace: builtins.str,
|
|
23004
23147
|
role_arn: builtins.str,
|
|
23005
23148
|
service_account: builtins.str,
|
|
23149
|
+
disable_session_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
23006
23150
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
23151
|
+
target_role_arn: typing.Optional[builtins.str] = None,
|
|
23007
23152
|
) -> None:
|
|
23008
23153
|
"""Type checking stubs"""
|
|
23009
23154
|
pass
|
|
@@ -23644,6 +23789,7 @@ def _typecheckingstub__786576ad54eacdb9ab8e92277c0fd07f813bc56d4243937f3b5a85c0c
|
|
|
23644
23789
|
id: builtins.str,
|
|
23645
23790
|
*,
|
|
23646
23791
|
bootstrap_cluster_creator_admin_permissions: typing.Optional[builtins.bool] = None,
|
|
23792
|
+
bootstrap_self_managed_addons: typing.Optional[builtins.bool] = None,
|
|
23647
23793
|
default_capacity: typing.Optional[jsii.Number] = None,
|
|
23648
23794
|
default_capacity_instance: typing.Optional[_InstanceType_f64915b9] = None,
|
|
23649
23795
|
default_capacity_type: typing.Optional[DefaultCapacityType] = None,
|
|
@@ -23946,6 +24092,7 @@ def _typecheckingstub__ce7a73a63de29ba5e5b5cd5cabde7aca1c4bc7d119de52fc4c0f11d99
|
|
|
23946
24092
|
secrets_encryption_key: typing.Optional[_IKey_5f11635f] = None,
|
|
23947
24093
|
service_ipv4_cidr: typing.Optional[builtins.str] = None,
|
|
23948
24094
|
bootstrap_cluster_creator_admin_permissions: typing.Optional[builtins.bool] = None,
|
|
24095
|
+
bootstrap_self_managed_addons: typing.Optional[builtins.bool] = None,
|
|
23949
24096
|
default_capacity: typing.Optional[jsii.Number] = None,
|
|
23950
24097
|
default_capacity_instance: typing.Optional[_InstanceType_f64915b9] = None,
|
|
23951
24098
|
default_capacity_type: typing.Optional[DefaultCapacityType] = None,
|
|
@@ -10130,7 +10130,7 @@ class CfnTargetGroup(
|
|
|
10130
10130
|
) -> None:
|
|
10131
10131
|
'''Specifies a target group attribute.
|
|
10132
10132
|
|
|
10133
|
-
:param key: The name of the attribute. The following attributes are supported by all load balancers: - ``deregistration_delay.timeout_seconds`` - The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from ``draining`` to ``unused`` . The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported. - ``stickiness.enabled`` - Indicates whether target stickiness is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``stickiness.type`` - Indicates the type of stickiness. The possible values are: - ``lb_cookie`` and ``app_cookie`` for Application Load Balancers. - ``source_ip`` for Network Load Balancers. - ``source_ip_dest_ip`` and ``source_ip_dest_ip_proto`` for Gateway Load Balancers. The following attributes are supported by Application Load Balancers and Network Load Balancers: - ``load_balancing.cross_zone.enabled`` - Indicates whether cross zone load balancing is enabled. The value is ``true`` , ``false`` or ``use_load_balancer_configuration`` . The default is ``use_load_balancer_configuration`` . - ``target_group_health.dns_failover.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to the maximum number of targets. The default is
|
|
10133
|
+
:param key: The name of the attribute. The following attributes are supported by all load balancers: - ``deregistration_delay.timeout_seconds`` - The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target from ``draining`` to ``unused`` . The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported. - ``stickiness.enabled`` - Indicates whether target stickiness is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``stickiness.type`` - Indicates the type of stickiness. The possible values are: - ``lb_cookie`` and ``app_cookie`` for Application Load Balancers. - ``source_ip`` for Network Load Balancers. - ``source_ip_dest_ip`` and ``source_ip_dest_ip_proto`` for Gateway Load Balancers. The following attributes are supported by Application Load Balancers and Network Load Balancers: - ``load_balancing.cross_zone.enabled`` - Indicates whether cross zone load balancing is enabled. The value is ``true`` , ``false`` or ``use_load_balancer_configuration`` . The default is ``use_load_balancer_configuration`` . - ``target_group_health.dns_failover.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to the maximum number of targets. The default is 1. - ``target_group_health.dns_failover.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` . - ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are 1 to the maximum number of targets. The default is 1. - ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` . The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address: - ``load_balancing.algorithm.type`` - The load balancing algorithm determines how the load balancer selects targets when routing requests. The value is ``round_robin`` , ``least_outstanding_requests`` , or ``weighted_random`` . The default is ``round_robin`` . - ``load_balancing.algorithm.anomaly_mitigation`` - Only available when ``load_balancing.algorithm.type`` is ``weighted_random`` . Indicates whether anomaly mitigation is enabled. The value is ``on`` or ``off`` . The default is ``off`` . - ``slow_start.duration_seconds`` - The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled). - ``stickiness.app_cookie.cookie_name`` - Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed: ``AWSALB`` , ``AWSALBAPP`` , and ``AWSALBTG`` ; they're reserved for use by the load balancer. - ``stickiness.app_cookie.duration_seconds`` - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). - ``stickiness.lb_cookie.duration_seconds`` - The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function: - ``lambda.multi_value_headers.enabled`` - Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value is ``true`` or ``false`` . The default is ``false`` . If the value is ``false`` and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client. The following attributes are supported only by Network Load Balancers: - ``deregistration_delay.connection_termination.enabled`` - Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value is ``true`` or ``false`` . For new UDP/TCP_UDP target groups the default is ``true`` . Otherwise, the default is ``false`` . - ``preserve_client_ip.enabled`` - Indicates whether client IP preservation is enabled. The value is ``true`` or ``false`` . The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation can't be disabled for UDP and TCP_UDP target groups. - ``proxy_protocol_v2.enabled`` - Indicates whether Proxy Protocol version 2 is enabled. The value is ``true`` or ``false`` . The default is ``false`` . - ``target_health_state.unhealthy.connection_termination.enabled`` - Indicates whether the load balancer terminates connections to unhealthy targets. The value is ``true`` or ``false`` . The default is ``true`` . This attribute can't be enabled for UDP and TCP_UDP target groups. - ``target_health_state.unhealthy.draining_interval_seconds`` - The amount of time for Elastic Load Balancing to wait before changing the state of an unhealthy target from ``unhealthy.draining`` to ``unhealthy`` . The range is 0-360000 seconds. The default value is 0 seconds. Note: This attribute can only be configured when ``target_health_state.unhealthy.connection_termination.enabled`` is ``false`` . The following attributes are supported only by Gateway Load Balancers: - ``target_failover.on_deregistration`` - Indicates how the Gateway Load Balancer handles existing flows when a target is deregistered. The possible values are ``rebalance`` and ``no_rebalance`` . The default is ``no_rebalance`` . The two attributes ( ``target_failover.on_deregistration`` and ``target_failover.on_unhealthy`` ) can't be set independently. The value you set for both attributes must be the same. - ``target_failover.on_unhealthy`` - Indicates how the Gateway Load Balancer handles existing flows when a target is unhealthy. The possible values are ``rebalance`` and ``no_rebalance`` . The default is ``no_rebalance`` . The two attributes ( ``target_failover.on_deregistration`` and ``target_failover.on_unhealthy`` ) can't be set independently. The value you set for both attributes must be the same.
|
|
10134
10134
|
:param value: The value of the attribute.
|
|
10135
10135
|
|
|
10136
10136
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattribute.html
|
|
@@ -10173,7 +10173,7 @@ class CfnTargetGroup(
|
|
|
10173
10173
|
The following attributes are supported by Application Load Balancers and Network Load Balancers:
|
|
10174
10174
|
|
|
10175
10175
|
- ``load_balancing.cross_zone.enabled`` - Indicates whether cross zone load balancing is enabled. The value is ``true`` , ``false`` or ``use_load_balancer_configuration`` . The default is ``use_load_balancer_configuration`` .
|
|
10176
|
-
- ``target_group_health.dns_failover.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to the maximum number of targets. The default is
|
|
10176
|
+
- ``target_group_health.dns_failover.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to the maximum number of targets. The default is 1.
|
|
10177
10177
|
- ``target_group_health.dns_failover.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, mark the zone as unhealthy in DNS, so that traffic is routed only to healthy zones. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` .
|
|
10178
10178
|
- ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.count`` - The minimum number of targets that must be healthy. If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are 1 to the maximum number of targets. The default is 1.
|
|
10179
10179
|
- ``target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage`` - The minimum percentage of targets that must be healthy. If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets. The possible values are ``off`` or an integer from 1 to 100. The default is ``off`` .
|