aws-cdk-lib 2.142.1__py3-none-any.whl → 2.143.1__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/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.142.1.jsii.tgz → aws-cdk-lib@2.143.1.jsii.tgz} +0 -0
- aws_cdk/aws_amplify/__init__.py +12 -5
- aws_cdk/aws_backup/__init__.py +3 -3
- aws_cdk/aws_batch/__init__.py +237 -0
- aws_cdk/aws_bedrock/__init__.py +700 -16
- aws_cdk/aws_budgets/__init__.py +282 -3
- aws_cdk/aws_cloudtrail/__init__.py +12 -2
- aws_cdk/aws_codebuild/__init__.py +44 -0
- aws_cdk/aws_codepipeline/__init__.py +91 -4
- aws_cdk/aws_cognito/__init__.py +75 -0
- aws_cdk/aws_datazone/__init__.py +1743 -448
- aws_cdk/aws_dynamodb/__init__.py +60 -25
- aws_cdk/aws_ec2/__init__.py +112 -39
- aws_cdk/aws_ecs/__init__.py +3 -3
- aws_cdk/aws_ecs_patterns/__init__.py +106 -0
- aws_cdk/aws_eks/__init__.py +13 -10
- aws_cdk/aws_elasticache/__init__.py +9 -0
- aws_cdk/aws_events/__init__.py +219 -14
- aws_cdk/aws_events_targets/__init__.py +140 -3
- aws_cdk/aws_fms/__init__.py +42 -43
- aws_cdk/aws_fsx/__init__.py +3 -3
- aws_cdk/aws_identitystore/__init__.py +11 -11
- aws_cdk/aws_lambda/__init__.py +45 -0
- aws_cdk/aws_lambda_nodejs/__init__.py +16 -6
- aws_cdk/aws_lightsail/__init__.py +9 -0
- aws_cdk/aws_location/__init__.py +8 -4
- aws_cdk/aws_mediaconnect/__init__.py +1789 -39
- aws_cdk/aws_mediatailor/__init__.py +21 -1
- aws_cdk/aws_mwaa/__init__.py +82 -0
- aws_cdk/aws_neptune/__init__.py +374 -0
- aws_cdk/aws_personalize/__init__.py +9 -3
- aws_cdk/aws_pipes/__init__.py +7 -7
- aws_cdk/aws_quicksight/__init__.py +684 -156
- aws_cdk/aws_rds/__init__.py +88 -24
- aws_cdk/aws_redshift/__init__.py +0 -46
- aws_cdk/aws_route53resolver/__init__.py +23 -0
- aws_cdk/aws_s3/__init__.py +4 -4
- aws_cdk/aws_sagemaker/__init__.py +185 -4
- aws_cdk/aws_securityhub/__init__.py +387 -1
- aws_cdk/aws_ssm/__init__.py +14 -6
- aws_cdk/aws_sso/__init__.py +1243 -34
- aws_cdk/cx_api/__init__.py +16 -0
- {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.1.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.1.dist-info}/RECORD +49 -49
- {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.1.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.1.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.1.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.1.dist-info}/top_level.txt +0 -0
aws_cdk/aws_dynamodb/__init__.py
CHANGED
|
@@ -1587,7 +1587,7 @@ class CfnGlobalTable(
|
|
|
1587
1587
|
:param stream_specification: Specifies the streams settings on your global table. You must provide a value for this property if your global table contains more than one replica. You can only change the streams settings if your global table has only one replica.
|
|
1588
1588
|
:param table_name: A name for the global table. If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID as the table name. For more information, see `Name type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ . .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
|
|
1589
1589
|
:param time_to_live_specification: Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas.
|
|
1590
|
-
:param write_on_demand_throughput_settings:
|
|
1590
|
+
:param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
1591
1591
|
:param write_provisioned_throughput_settings: Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if ``BillingMode`` is set to ``PROVISIONED`` .
|
|
1592
1592
|
'''
|
|
1593
1593
|
if __debug__:
|
|
@@ -1859,6 +1859,7 @@ class CfnGlobalTable(
|
|
|
1859
1859
|
def write_on_demand_throughput_settings(
|
|
1860
1860
|
self,
|
|
1861
1861
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WriteOnDemandThroughputSettingsProperty"]]:
|
|
1862
|
+
'''Sets the write request settings for a global table or a global secondary index.'''
|
|
1862
1863
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WriteOnDemandThroughputSettingsProperty"]], jsii.get(self, "writeOnDemandThroughputSettings"))
|
|
1863
1864
|
|
|
1864
1865
|
@write_on_demand_throughput_settings.setter
|
|
@@ -2174,7 +2175,7 @@ class CfnGlobalTable(
|
|
|
2174
2175
|
:param index_name: The name of the global secondary index. The name must be unique among all other indexes on this table.
|
|
2175
2176
|
:param key_schema: The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types: - ``HASH`` - partition key - ``RANGE`` - sort key > The partition key of an item is also known as its *hash attribute* . The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. .. epigraph:: The sort key of an item is also known as its *range attribute* . The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
|
|
2176
2177
|
:param projection: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
|
|
2177
|
-
:param write_on_demand_throughput_settings:
|
|
2178
|
+
:param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
2178
2179
|
:param write_provisioned_throughput_settings: Defines write capacity settings for the global secondary index. You must specify a value for this property if the table's ``BillingMode`` is ``PROVISIONED`` . All replicas will have the same write capacity settings for this global secondary index.
|
|
2179
2180
|
|
|
2180
2181
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html
|
|
@@ -2284,7 +2285,10 @@ class CfnGlobalTable(
|
|
|
2284
2285
|
def write_on_demand_throughput_settings(
|
|
2285
2286
|
self,
|
|
2286
2287
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WriteOnDemandThroughputSettingsProperty"]]:
|
|
2287
|
-
'''
|
|
2288
|
+
'''Sets the write request settings for a global table or a global secondary index.
|
|
2289
|
+
|
|
2290
|
+
You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
2291
|
+
|
|
2288
2292
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html#cfn-dynamodb-globaltable-globalsecondaryindex-writeondemandthroughputsettings
|
|
2289
2293
|
'''
|
|
2290
2294
|
result = self._values.get("write_on_demand_throughput_settings")
|
|
@@ -2740,8 +2744,11 @@ class CfnGlobalTable(
|
|
|
2740
2744
|
*,
|
|
2741
2745
|
max_read_request_units: typing.Optional[jsii.Number] = None,
|
|
2742
2746
|
) -> None:
|
|
2743
|
-
'''
|
|
2744
|
-
|
|
2747
|
+
'''Sets the read request settings for a replica table or a replica global secondary index.
|
|
2748
|
+
|
|
2749
|
+
You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
2750
|
+
|
|
2751
|
+
:param max_read_request_units: Maximum number of read request units for the specified replica of a global table.
|
|
2745
2752
|
|
|
2746
2753
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-readondemandthroughputsettings.html
|
|
2747
2754
|
:exampleMetadata: fixture=_generated
|
|
@@ -2765,7 +2772,8 @@ class CfnGlobalTable(
|
|
|
2765
2772
|
|
|
2766
2773
|
@builtins.property
|
|
2767
2774
|
def max_read_request_units(self) -> typing.Optional[jsii.Number]:
|
|
2768
|
-
'''
|
|
2775
|
+
'''Maximum number of read request units for the specified replica of a global table.
|
|
2776
|
+
|
|
2769
2777
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-readondemandthroughputsettings.html#cfn-dynamodb-globaltable-readondemandthroughputsettings-maxreadrequestunits
|
|
2770
2778
|
'''
|
|
2771
2779
|
result = self._values.get("max_read_request_units")
|
|
@@ -2896,7 +2904,7 @@ class CfnGlobalTable(
|
|
|
2896
2904
|
|
|
2897
2905
|
:param index_name: The name of the global secondary index. The name must be unique among all other indexes on this table.
|
|
2898
2906
|
:param contributor_insights_specification: Updates the status for contributor insights for a specific table or index. CloudWatch Contributor Insights for DynamoDB graphs display the partition key and (if applicable) sort key of frequently accessed items and frequently throttled items in plaintext. If you require the use of AWS Key Management Service (KMS) to encrypt this table’s partition key and sort key data with an AWS managed key or customer managed key, you should not enable CloudWatch Contributor Insights for DynamoDB for this table.
|
|
2899
|
-
:param read_on_demand_throughput_settings:
|
|
2907
|
+
:param read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
2900
2908
|
:param read_provisioned_throughput_settings: Allows you to specify the read capacity settings for a replica global secondary index when the ``BillingMode`` is set to ``PROVISIONED`` .
|
|
2901
2909
|
|
|
2902
2910
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html
|
|
@@ -2983,7 +2991,10 @@ class CfnGlobalTable(
|
|
|
2983
2991
|
def read_on_demand_throughput_settings(
|
|
2984
2992
|
self,
|
|
2985
2993
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.ReadOnDemandThroughputSettingsProperty"]]:
|
|
2986
|
-
'''
|
|
2994
|
+
'''Sets the read request settings for a replica global secondary index.
|
|
2995
|
+
|
|
2996
|
+
You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
2997
|
+
|
|
2987
2998
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html#cfn-dynamodb-globaltable-replicaglobalsecondaryindexspecification-readondemandthroughputsettings
|
|
2988
2999
|
'''
|
|
2989
3000
|
result = self._values.get("read_on_demand_throughput_settings")
|
|
@@ -3112,7 +3123,7 @@ class CfnGlobalTable(
|
|
|
3112
3123
|
:param global_secondary_indexes: Defines additional settings for the global secondary indexes of this replica.
|
|
3113
3124
|
:param kinesis_stream_specification: Defines the Kinesis Data Streams configuration for the specified replica.
|
|
3114
3125
|
:param point_in_time_recovery_specification: The settings used to enable point in time recovery. When not specified, defaults to point in time recovery disabled for the replica.
|
|
3115
|
-
:param read_on_demand_throughput_settings:
|
|
3126
|
+
:param read_on_demand_throughput_settings: Sets read request settings for the replica table.
|
|
3116
3127
|
:param read_provisioned_throughput_settings: Defines read capacity settings for the replica table.
|
|
3117
3128
|
:param replica_stream_specification: Represents the DynamoDB Streams configuration for a global table replica.
|
|
3118
3129
|
:param resource_policy: A resource-based policy document that contains permissions to add to the specified replica of a DynamoDB global table. Resource-based policies let you define access permissions by specifying who has access to each resource, and the actions they are allowed to perform on each resource. In a CloudFormation template, you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to DynamoDB . For more information about resource-based policies, see `Using resource-based policies for DynamoDB <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html>`_ and `Resource-based policy examples <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-examples.html>`_ .
|
|
@@ -3334,7 +3345,8 @@ class CfnGlobalTable(
|
|
|
3334
3345
|
def read_on_demand_throughput_settings(
|
|
3335
3346
|
self,
|
|
3336
3347
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.ReadOnDemandThroughputSettingsProperty"]]:
|
|
3337
|
-
'''
|
|
3348
|
+
'''Sets read request settings for the replica table.
|
|
3349
|
+
|
|
3338
3350
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-readondemandthroughputsettings
|
|
3339
3351
|
'''
|
|
3340
3352
|
result = self._values.get("read_on_demand_throughput_settings")
|
|
@@ -3904,8 +3916,11 @@ class CfnGlobalTable(
|
|
|
3904
3916
|
*,
|
|
3905
3917
|
max_write_request_units: typing.Optional[jsii.Number] = None,
|
|
3906
3918
|
) -> None:
|
|
3907
|
-
'''
|
|
3908
|
-
|
|
3919
|
+
'''Sets the write request settings for a global table or a global secondary index.
|
|
3920
|
+
|
|
3921
|
+
You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
3922
|
+
|
|
3923
|
+
:param max_write_request_units: Maximum number of write request settings for the specified replica of a global table.
|
|
3909
3924
|
|
|
3910
3925
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-writeondemandthroughputsettings.html
|
|
3911
3926
|
:exampleMetadata: fixture=_generated
|
|
@@ -3929,7 +3944,8 @@ class CfnGlobalTable(
|
|
|
3929
3944
|
|
|
3930
3945
|
@builtins.property
|
|
3931
3946
|
def max_write_request_units(self) -> typing.Optional[jsii.Number]:
|
|
3932
|
-
'''
|
|
3947
|
+
'''Maximum number of write request settings for the specified replica of a global table.
|
|
3948
|
+
|
|
3933
3949
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-writeondemandthroughputsettings.html#cfn-dynamodb-globaltable-writeondemandthroughputsettings-maxwriterequestunits
|
|
3934
3950
|
'''
|
|
3935
3951
|
result = self._values.get("max_write_request_units")
|
|
@@ -4069,7 +4085,7 @@ class CfnGlobalTableProps:
|
|
|
4069
4085
|
:param stream_specification: Specifies the streams settings on your global table. You must provide a value for this property if your global table contains more than one replica. You can only change the streams settings if your global table has only one replica.
|
|
4070
4086
|
:param table_name: A name for the global table. If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID as the table name. For more information, see `Name type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ . .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
|
|
4071
4087
|
:param time_to_live_specification: Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas.
|
|
4072
|
-
:param write_on_demand_throughput_settings:
|
|
4088
|
+
:param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
4073
4089
|
:param write_provisioned_throughput_settings: Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if ``BillingMode`` is set to ``PROVISIONED`` .
|
|
4074
4090
|
|
|
4075
4091
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html
|
|
@@ -4445,7 +4461,10 @@ class CfnGlobalTableProps:
|
|
|
4445
4461
|
def write_on_demand_throughput_settings(
|
|
4446
4462
|
self,
|
|
4447
4463
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.WriteOnDemandThroughputSettingsProperty]]:
|
|
4448
|
-
'''
|
|
4464
|
+
'''Sets the write request settings for a global table or a global secondary index.
|
|
4465
|
+
|
|
4466
|
+
You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
|
|
4467
|
+
|
|
4449
4468
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-writeondemandthroughputsettings
|
|
4450
4469
|
'''
|
|
4451
4470
|
result = self._values.get("write_on_demand_throughput_settings")
|
|
@@ -4661,7 +4680,7 @@ class CfnTable(
|
|
|
4661
4680
|
:param import_source_specification: Specifies the properties of data being imported from the S3 bucket source to the table. .. epigraph:: If you specify the ``ImportSourceSpecification`` property, and also specify either the ``StreamSpecification`` , the ``TableClass`` property, or the ``DeletionProtectionEnabled`` property, the IAM entity creating/updating stack must have ``UpdateTable`` permission.
|
|
4662
4681
|
:param kinesis_stream_specification: The Kinesis Data Streams configuration for the specified table.
|
|
4663
4682
|
:param local_secondary_indexes: Local secondary indexes to be created on the table. You can create up to 5 local secondary indexes. Each index is scoped to a given hash key value. The size of each hash key can be up to 10 gigabytes.
|
|
4664
|
-
:param on_demand_throughput:
|
|
4683
|
+
:param on_demand_throughput: Sets the maximum number of read and write units for the specified on-demand table. If you use this property, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
|
|
4665
4684
|
:param point_in_time_recovery_specification: The settings used to enable point in time recovery.
|
|
4666
4685
|
:param provisioned_throughput: Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits`` . For more information about the contents of a provisioned throughput structure, see `Amazon DynamoDB Table ProvisionedThroughput <https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html>`_ . If you set ``BillingMode`` as ``PROVISIONED`` , you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST`` , you cannot specify this property.
|
|
4667
4686
|
:param resource_policy: A resource-based policy document that contains permissions to add to the specified table. In a CloudFormation template, you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to DynamoDB . For more information about resource-based policies, see `Using resource-based policies for DynamoDB <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html>`_ and `Resource-based policy examples <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-examples.html>`_ . When you attach a resource-based policy while creating a table, the policy creation is *strongly consistent* . For information about the considerations that you should keep in mind while attaching a resource-based policy, see `Resource-based policy considerations <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html>`_ .
|
|
@@ -4928,6 +4947,7 @@ class CfnTable(
|
|
|
4928
4947
|
def on_demand_throughput(
|
|
4929
4948
|
self,
|
|
4930
4949
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.OnDemandThroughputProperty"]]:
|
|
4950
|
+
'''Sets the maximum number of read and write units for the specified on-demand table.'''
|
|
4931
4951
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.OnDemandThroughputProperty"]], jsii.get(self, "onDemandThroughput"))
|
|
4932
4952
|
|
|
4933
4953
|
@on_demand_throughput.setter
|
|
@@ -5324,7 +5344,7 @@ class CfnTable(
|
|
|
5324
5344
|
:param key_schema: The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types: - ``HASH`` - partition key - ``RANGE`` - sort key > The partition key of an item is also known as its *hash attribute* . The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. .. epigraph:: The sort key of an item is also known as its *range attribute* . The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
|
|
5325
5345
|
:param projection: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
|
|
5326
5346
|
:param contributor_insights_specification: The settings used to enable or disable CloudWatch Contributor Insights for the specified global secondary index.
|
|
5327
|
-
:param on_demand_throughput:
|
|
5347
|
+
:param on_demand_throughput: The maximum number of read and write units for the specified global secondary index. If you use this parameter, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
|
|
5328
5348
|
:param provisioned_throughput: Represents the provisioned throughput settings for the specified global secondary index. For current minimum and maximum provisioned throughput values, see `Service, Account, and Table Quotas <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html>`_ in the *Amazon DynamoDB Developer Guide* .
|
|
5329
5349
|
|
|
5330
5350
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html
|
|
@@ -5439,7 +5459,10 @@ class CfnTable(
|
|
|
5439
5459
|
def on_demand_throughput(
|
|
5440
5460
|
self,
|
|
5441
5461
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.OnDemandThroughputProperty"]]:
|
|
5442
|
-
'''
|
|
5462
|
+
'''The maximum number of read and write units for the specified global secondary index.
|
|
5463
|
+
|
|
5464
|
+
If you use this parameter, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
|
|
5465
|
+
|
|
5443
5466
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html#cfn-dynamodb-table-globalsecondaryindex-ondemandthroughput
|
|
5444
5467
|
'''
|
|
5445
5468
|
result = self._values.get("on_demand_throughput")
|
|
@@ -5950,9 +5973,12 @@ class CfnTable(
|
|
|
5950
5973
|
max_read_request_units: typing.Optional[jsii.Number] = None,
|
|
5951
5974
|
max_write_request_units: typing.Optional[jsii.Number] = None,
|
|
5952
5975
|
) -> None:
|
|
5953
|
-
'''
|
|
5954
|
-
|
|
5955
|
-
|
|
5976
|
+
'''Sets the maximum number of read and write units for the specified on-demand table.
|
|
5977
|
+
|
|
5978
|
+
If you use this property, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
|
|
5979
|
+
|
|
5980
|
+
:param max_read_request_units: Maximum number of read request units for the specified table. To specify a maximum ``OnDemandThroughput`` on your table, set the value of ``MaxReadRequestUnits`` as greater than or equal to 1. To remove the maximum ``OnDemandThroughput`` that is currently set on your table, set the value of ``MaxReadRequestUnits`` to -1.
|
|
5981
|
+
:param max_write_request_units: Maximum number of write request units for the specified table. To specify a maximum ``OnDemandThroughput`` on your table, set the value of ``MaxWriteRequestUnits`` as greater than or equal to 1. To remove the maximum ``OnDemandThroughput`` that is currently set on your table, set the value of ``MaxWriteRequestUnits`` to -1.
|
|
5956
5982
|
|
|
5957
5983
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ondemandthroughput.html
|
|
5958
5984
|
:exampleMetadata: fixture=_generated
|
|
@@ -5980,7 +6006,10 @@ class CfnTable(
|
|
|
5980
6006
|
|
|
5981
6007
|
@builtins.property
|
|
5982
6008
|
def max_read_request_units(self) -> typing.Optional[jsii.Number]:
|
|
5983
|
-
'''
|
|
6009
|
+
'''Maximum number of read request units for the specified table.
|
|
6010
|
+
|
|
6011
|
+
To specify a maximum ``OnDemandThroughput`` on your table, set the value of ``MaxReadRequestUnits`` as greater than or equal to 1. To remove the maximum ``OnDemandThroughput`` that is currently set on your table, set the value of ``MaxReadRequestUnits`` to -1.
|
|
6012
|
+
|
|
5984
6013
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ondemandthroughput.html#cfn-dynamodb-table-ondemandthroughput-maxreadrequestunits
|
|
5985
6014
|
'''
|
|
5986
6015
|
result = self._values.get("max_read_request_units")
|
|
@@ -5988,7 +6017,10 @@ class CfnTable(
|
|
|
5988
6017
|
|
|
5989
6018
|
@builtins.property
|
|
5990
6019
|
def max_write_request_units(self) -> typing.Optional[jsii.Number]:
|
|
5991
|
-
'''
|
|
6020
|
+
'''Maximum number of write request units for the specified table.
|
|
6021
|
+
|
|
6022
|
+
To specify a maximum ``OnDemandThroughput`` on your table, set the value of ``MaxWriteRequestUnits`` as greater than or equal to 1. To remove the maximum ``OnDemandThroughput`` that is currently set on your table, set the value of ``MaxWriteRequestUnits`` to -1.
|
|
6023
|
+
|
|
5992
6024
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ondemandthroughput.html#cfn-dynamodb-table-ondemandthroughput-maxwriterequestunits
|
|
5993
6025
|
'''
|
|
5994
6026
|
result = self._values.get("max_write_request_units")
|
|
@@ -6725,7 +6757,7 @@ class CfnTableProps:
|
|
|
6725
6757
|
:param import_source_specification: Specifies the properties of data being imported from the S3 bucket source to the table. .. epigraph:: If you specify the ``ImportSourceSpecification`` property, and also specify either the ``StreamSpecification`` , the ``TableClass`` property, or the ``DeletionProtectionEnabled`` property, the IAM entity creating/updating stack must have ``UpdateTable`` permission.
|
|
6726
6758
|
:param kinesis_stream_specification: The Kinesis Data Streams configuration for the specified table.
|
|
6727
6759
|
:param local_secondary_indexes: Local secondary indexes to be created on the table. You can create up to 5 local secondary indexes. Each index is scoped to a given hash key value. The size of each hash key can be up to 10 gigabytes.
|
|
6728
|
-
:param on_demand_throughput:
|
|
6760
|
+
:param on_demand_throughput: Sets the maximum number of read and write units for the specified on-demand table. If you use this property, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
|
|
6729
6761
|
:param point_in_time_recovery_specification: The settings used to enable point in time recovery.
|
|
6730
6762
|
:param provisioned_throughput: Throughput for the specified table, which consists of values for ``ReadCapacityUnits`` and ``WriteCapacityUnits`` . For more information about the contents of a provisioned throughput structure, see `Amazon DynamoDB Table ProvisionedThroughput <https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ProvisionedThroughput.html>`_ . If you set ``BillingMode`` as ``PROVISIONED`` , you must specify this property. If you set ``BillingMode`` as ``PAY_PER_REQUEST`` , you cannot specify this property.
|
|
6731
6763
|
:param resource_policy: A resource-based policy document that contains permissions to add to the specified table. In a CloudFormation template, you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to DynamoDB . For more information about resource-based policies, see `Using resource-based policies for DynamoDB <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html>`_ and `Resource-based policy examples <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-examples.html>`_ . When you attach a resource-based policy while creating a table, the policy creation is *strongly consistent* . For information about the considerations that you should keep in mind while attaching a resource-based policy, see `Resource-based policy considerations <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html>`_ .
|
|
@@ -7061,7 +7093,10 @@ class CfnTableProps:
|
|
|
7061
7093
|
def on_demand_throughput(
|
|
7062
7094
|
self,
|
|
7063
7095
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnTable.OnDemandThroughputProperty]]:
|
|
7064
|
-
'''
|
|
7096
|
+
'''Sets the maximum number of read and write units for the specified on-demand table.
|
|
7097
|
+
|
|
7098
|
+
If you use this property, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
|
|
7099
|
+
|
|
7065
7100
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-ondemandthroughput
|
|
7066
7101
|
'''
|
|
7067
7102
|
result = self._values.get("on_demand_throughput")
|
aws_cdk/aws_ec2/__init__.py
CHANGED
|
@@ -1641,6 +1641,26 @@ host = ec2.BastionHostLinux(self, "BastionHost",
|
|
|
1641
1641
|
)
|
|
1642
1642
|
```
|
|
1643
1643
|
|
|
1644
|
+
### Placement Group
|
|
1645
|
+
|
|
1646
|
+
Specify `placementGroup` to enable the placement group support:
|
|
1647
|
+
|
|
1648
|
+
```python
|
|
1649
|
+
# instance_type: ec2.InstanceType
|
|
1650
|
+
|
|
1651
|
+
|
|
1652
|
+
pg = ec2.PlacementGroup(self, "test-pg",
|
|
1653
|
+
strategy=ec2.PlacementGroupStrategy.SPREAD
|
|
1654
|
+
)
|
|
1655
|
+
|
|
1656
|
+
ec2.Instance(self, "Instance",
|
|
1657
|
+
vpc=vpc,
|
|
1658
|
+
instance_type=instance_type,
|
|
1659
|
+
machine_image=ec2.MachineImage.latest_amazon_linux2023(),
|
|
1660
|
+
placement_group=pg
|
|
1661
|
+
)
|
|
1662
|
+
```
|
|
1663
|
+
|
|
1644
1664
|
### Block Devices
|
|
1645
1665
|
|
|
1646
1666
|
To add EBS block device mappings, specify the `blockDevices` property. The following example sets the EBS-backed
|
|
@@ -27066,7 +27086,7 @@ class CfnLaunchTemplate(
|
|
|
27066
27086
|
|
|
27067
27087
|
``LaunchTemplateTagSpecification`` is a property of `AWS::EC2::LaunchTemplate <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-launchtemplate.html>`_ .
|
|
27068
27088
|
|
|
27069
|
-
:param resource_type: The type of resource. To tag
|
|
27089
|
+
:param resource_type: The type of resource. To tag a launch template, ``ResourceType`` must be ``launch-template`` .
|
|
27070
27090
|
:param tags: The tags for the resource.
|
|
27071
27091
|
|
|
27072
27092
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatetagspecification.html
|
|
@@ -27100,7 +27120,7 @@ class CfnLaunchTemplate(
|
|
|
27100
27120
|
def resource_type(self) -> typing.Optional[builtins.str]:
|
|
27101
27121
|
'''The type of resource.
|
|
27102
27122
|
|
|
27103
|
-
To tag
|
|
27123
|
+
To tag a launch template, ``ResourceType`` must be ``launch-template`` .
|
|
27104
27124
|
|
|
27105
27125
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatetagspecification.html#cfn-ec2-launchtemplate-launchtemplatetagspecification-resourcetype
|
|
27106
27126
|
'''
|
|
@@ -28731,7 +28751,7 @@ class CfnLaunchTemplate(
|
|
|
28731
28751
|
|
|
28732
28752
|
``TagSpecification`` is a property type of ```TagSpecifications`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-tagspecifications>`_ . ```TagSpecifications`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html#cfn-ec2-launchtemplate-launchtemplatedata-tagspecifications>`_ is a property of `AWS::EC2::LaunchTemplate LaunchTemplateData <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-launchtemplatedata.html>`_ .
|
|
28733
28753
|
|
|
28734
|
-
:param resource_type: The type of resource to tag.
|
|
28754
|
+
:param resource_type: The type of resource to tag. You can specify tags for the following resource types only: ``instance`` | ``volume`` | ``network-interface`` | ``spot-instances-request`` . If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume. To tag a resource after it has been created, see `CreateTags <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html>`_ .
|
|
28735
28755
|
:param tags: The tags to apply to the resource.
|
|
28736
28756
|
|
|
28737
28757
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-tagspecification.html
|
|
@@ -28765,7 +28785,7 @@ class CfnLaunchTemplate(
|
|
|
28765
28785
|
def resource_type(self) -> typing.Optional[builtins.str]:
|
|
28766
28786
|
'''The type of resource to tag.
|
|
28767
28787
|
|
|
28768
|
-
|
|
28788
|
+
You can specify tags for the following resource types only: ``instance`` | ``volume`` | ``network-interface`` | ``spot-instances-request`` . If the instance does not include the resource type that you specify, the instance launch fails. For example, not all instance types include a volume.
|
|
28769
28789
|
|
|
28770
28790
|
To tag a resource after it has been created, see `CreateTags <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html>`_ .
|
|
28771
28791
|
|
|
@@ -46333,7 +46353,7 @@ class CfnSpotFleet(
|
|
|
46333
46353
|
|
|
46334
46354
|
:param iam_fleet_role: The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see `Spot Fleet Prerequisites <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html#spot-fleet-prerequisites>`_ in the *Amazon EC2 User Guide for Linux Instances* . Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request or when the Spot Fleet request expires, if you set ``TerminateInstancesWithExpiration`` .
|
|
46335
46355
|
:param target_capacity: The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is ``maintain`` , you can specify a target capacity of 0 and add capacity later.
|
|
46336
|
-
:param allocation_strategy: The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see `Allocation strategies for Spot Instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html>`_ in the *Amazon EC2 User Guide* . - **priceCapacityOptimized (recommended)** - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools. - **capacityOptimized** - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use ``capacityOptimizedPrioritized`` . Set a priority for each instance type by using the ``Priority`` parameter for ``LaunchTemplateOverrides`` . You can assign the same priority to different ``LaunchTemplateOverrides`` . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. ``capacityOptimizedPrioritized`` is supported only if your Spot Fleet uses a launch template. Note that if the ``OnDemandAllocationStrategy`` is set to ``prioritized`` , the same priority is applied when fulfilling On-Demand capacity. - **diversified** - Spot Fleet requests instances from all of the Spot Instance pools that you specify. - **lowestPrice** - Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates. Default: ``lowestPrice``
|
|
46356
|
+
:param allocation_strategy: The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see `Allocation strategies for Spot Instances <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html>`_ in the *Amazon EC2 User Guide* . - **priceCapacityOptimized (recommended)** - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools. - **capacityOptimized** - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use ``capacityOptimizedPrioritized`` . Set a priority for each instance type by using the ``Priority`` parameter for ``LaunchTemplateOverrides`` . You can assign the same priority to different ``LaunchTemplateOverrides`` . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. ``capacityOptimizedPrioritized`` is supported only if your Spot Fleet uses a launch template. Note that if the ``OnDemandAllocationStrategy`` is set to ``prioritized`` , the same priority is applied when fulfilling On-Demand capacity. - **diversified** - Spot Fleet requests instances from all of the Spot Instance pools that you specify. - **lowestPrice (not recommended)** - > We don't recommend the ``lowestPrice`` allocation strategy because it has the highest risk of interruption for your Spot Instances. Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates. Default: ``lowestPrice``
|
|
46337
46357
|
:param context: Reserved.
|
|
46338
46358
|
:param excess_capacity_termination_policy: Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet. Supported only for fleets of type ``maintain`` .
|
|
46339
46359
|
:param instance_interruption_behavior: The behavior when a Spot Instance is interrupted. The default is ``terminate`` .
|
|
@@ -46710,7 +46730,9 @@ class CfnSpotFleet(
|
|
|
46710
46730
|
- **priceCapacityOptimized (recommended)** - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.
|
|
46711
46731
|
- **capacityOptimized** - Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use ``capacityOptimizedPrioritized`` . Set a priority for each instance type by using the ``Priority`` parameter for ``LaunchTemplateOverrides`` . You can assign the same priority to different ``LaunchTemplateOverrides`` . EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. ``capacityOptimizedPrioritized`` is supported only if your Spot Fleet uses a launch template. Note that if the ``OnDemandAllocationStrategy`` is set to ``prioritized`` , the same priority is applied when fulfilling On-Demand capacity.
|
|
46712
46732
|
- **diversified** - Spot Fleet requests instances from all of the Spot Instance pools that you specify.
|
|
46713
|
-
- **lowestPrice** -
|
|
46733
|
+
- **lowestPrice (not recommended)** - > We don't recommend the ``lowestPrice`` allocation strategy because it has the highest risk of interruption for your Spot Instances.
|
|
46734
|
+
|
|
46735
|
+
Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.
|
|
46714
46736
|
|
|
46715
46737
|
Default: ``lowestPrice``
|
|
46716
46738
|
|
|
@@ -72035,6 +72057,7 @@ class Instance(
|
|
|
72035
72057
|
instance_name: typing.Optional[builtins.str] = None,
|
|
72036
72058
|
key_name: typing.Optional[builtins.str] = None,
|
|
72037
72059
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
72060
|
+
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
72038
72061
|
private_ip_address: typing.Optional[builtins.str] = None,
|
|
72039
72062
|
propagate_tags_to_volume_on_creation: typing.Optional[builtins.bool] = None,
|
|
72040
72063
|
require_imdsv2: typing.Optional[builtins.bool] = None,
|
|
@@ -72066,6 +72089,7 @@ class Instance(
|
|
|
72066
72089
|
:param instance_name: The name of the instance. Default: - CDK generated name
|
|
72067
72090
|
:param key_name: (deprecated) Name of SSH keypair to grant access to instance. Default: - No SSH access will be possible.
|
|
72068
72091
|
:param key_pair: The SSH keypair to grant access to the instance. Default: - No SSH access will be possible.
|
|
72092
|
+
:param placement_group: The placement group that you want to launch the instance into. Default: - no placement group will be used for this instance.
|
|
72069
72093
|
:param private_ip_address: Defines a private IP address to associate with an instance. Private IP should be available within the VPC that the instance is build within. Default: - no association
|
|
72070
72094
|
:param propagate_tags_to_volume_on_creation: Propagate the EC2 instance tags to the EBS volumes. Default: - false
|
|
72071
72095
|
:param require_imdsv2: Whether IMDSv2 should be required on this instance. Default: - false
|
|
@@ -72099,6 +72123,7 @@ class Instance(
|
|
|
72099
72123
|
instance_name=instance_name,
|
|
72100
72124
|
key_name=key_name,
|
|
72101
72125
|
key_pair=key_pair,
|
|
72126
|
+
placement_group=placement_group,
|
|
72102
72127
|
private_ip_address=private_ip_address,
|
|
72103
72128
|
propagate_tags_to_volume_on_creation=propagate_tags_to_volume_on_creation,
|
|
72104
72129
|
require_imdsv2=require_imdsv2,
|
|
@@ -72831,6 +72856,7 @@ class InstanceInitiatedShutdownBehavior(enum.Enum):
|
|
|
72831
72856
|
"instance_name": "instanceName",
|
|
72832
72857
|
"key_name": "keyName",
|
|
72833
72858
|
"key_pair": "keyPair",
|
|
72859
|
+
"placement_group": "placementGroup",
|
|
72834
72860
|
"private_ip_address": "privateIpAddress",
|
|
72835
72861
|
"propagate_tags_to_volume_on_creation": "propagateTagsToVolumeOnCreation",
|
|
72836
72862
|
"require_imdsv2": "requireImdsv2",
|
|
@@ -72864,6 +72890,7 @@ class InstanceProps:
|
|
|
72864
72890
|
instance_name: typing.Optional[builtins.str] = None,
|
|
72865
72891
|
key_name: typing.Optional[builtins.str] = None,
|
|
72866
72892
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
72893
|
+
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
72867
72894
|
private_ip_address: typing.Optional[builtins.str] = None,
|
|
72868
72895
|
propagate_tags_to_volume_on_creation: typing.Optional[builtins.bool] = None,
|
|
72869
72896
|
require_imdsv2: typing.Optional[builtins.bool] = None,
|
|
@@ -72894,6 +72921,7 @@ class InstanceProps:
|
|
|
72894
72921
|
:param instance_name: The name of the instance. Default: - CDK generated name
|
|
72895
72922
|
:param key_name: (deprecated) Name of SSH keypair to grant access to instance. Default: - No SSH access will be possible.
|
|
72896
72923
|
:param key_pair: The SSH keypair to grant access to the instance. Default: - No SSH access will be possible.
|
|
72924
|
+
:param placement_group: The placement group that you want to launch the instance into. Default: - no placement group will be used for this instance.
|
|
72897
72925
|
:param private_ip_address: Defines a private IP address to associate with an instance. Private IP should be available within the VPC that the instance is build within. Default: - no association
|
|
72898
72926
|
:param propagate_tags_to_volume_on_creation: Propagate the EC2 instance tags to the EBS volumes. Default: - false
|
|
72899
72927
|
:param require_imdsv2: Whether IMDSv2 should be required on this instance. Default: - false
|
|
@@ -72947,6 +72975,7 @@ class InstanceProps:
|
|
|
72947
72975
|
check_type(argname="argument instance_name", value=instance_name, expected_type=type_hints["instance_name"])
|
|
72948
72976
|
check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
|
|
72949
72977
|
check_type(argname="argument key_pair", value=key_pair, expected_type=type_hints["key_pair"])
|
|
72978
|
+
check_type(argname="argument placement_group", value=placement_group, expected_type=type_hints["placement_group"])
|
|
72950
72979
|
check_type(argname="argument private_ip_address", value=private_ip_address, expected_type=type_hints["private_ip_address"])
|
|
72951
72980
|
check_type(argname="argument propagate_tags_to_volume_on_creation", value=propagate_tags_to_volume_on_creation, expected_type=type_hints["propagate_tags_to_volume_on_creation"])
|
|
72952
72981
|
check_type(argname="argument require_imdsv2", value=require_imdsv2, expected_type=type_hints["require_imdsv2"])
|
|
@@ -72989,6 +73018,8 @@ class InstanceProps:
|
|
|
72989
73018
|
self._values["key_name"] = key_name
|
|
72990
73019
|
if key_pair is not None:
|
|
72991
73020
|
self._values["key_pair"] = key_pair
|
|
73021
|
+
if placement_group is not None:
|
|
73022
|
+
self._values["placement_group"] = placement_group
|
|
72992
73023
|
if private_ip_address is not None:
|
|
72993
73024
|
self._values["private_ip_address"] = private_ip_address
|
|
72994
73025
|
if propagate_tags_to_volume_on_creation is not None:
|
|
@@ -73175,6 +73206,15 @@ class InstanceProps:
|
|
|
73175
73206
|
result = self._values.get("key_pair")
|
|
73176
73207
|
return typing.cast(typing.Optional[IKeyPair], result)
|
|
73177
73208
|
|
|
73209
|
+
@builtins.property
|
|
73210
|
+
def placement_group(self) -> typing.Optional[IPlacementGroup]:
|
|
73211
|
+
'''The placement group that you want to launch the instance into.
|
|
73212
|
+
|
|
73213
|
+
:default: - no placement group will be used for this instance.
|
|
73214
|
+
'''
|
|
73215
|
+
result = self._values.get("placement_group")
|
|
73216
|
+
return typing.cast(typing.Optional[IPlacementGroup], result)
|
|
73217
|
+
|
|
73178
73218
|
@builtins.property
|
|
73179
73219
|
def private_ip_address(self) -> typing.Optional[builtins.str]:
|
|
73180
73220
|
'''Defines a private IP address to associate with an instance.
|
|
@@ -75753,23 +75793,29 @@ class IpProtocol(enum.Enum):
|
|
|
75753
75793
|
|
|
75754
75794
|
Example::
|
|
75755
75795
|
|
|
75756
|
-
|
|
75757
|
-
ip_protocol=ec2.IpProtocol.DUAL_STACK,
|
|
75796
|
+
import aws_cdk.aws_elasticloadbalancingv2 as elbv2
|
|
75758
75797
|
|
|
75759
|
-
subnet_configuration=[ec2.SubnetConfiguration(
|
|
75760
|
-
# general properties
|
|
75761
|
-
name="Public",
|
|
75762
|
-
subnet_type=ec2.SubnetType.PUBLIC,
|
|
75763
|
-
reserved=False,
|
|
75764
75798
|
|
|
75765
|
-
|
|
75766
|
-
|
|
75767
|
-
|
|
75799
|
+
# The VPC and subnet must have associated IPv6 CIDR blocks.
|
|
75800
|
+
vpc = ec2.Vpc(self, "Vpc",
|
|
75801
|
+
ip_protocol=ec2.IpProtocol.DUAL_STACK
|
|
75802
|
+
)
|
|
75803
|
+
cluster = ecs.Cluster(self, "EcsCluster", vpc=vpc)
|
|
75768
75804
|
|
|
75769
|
-
|
|
75770
|
-
|
|
75771
|
-
|
|
75772
|
-
|
|
75805
|
+
network_loadbalanced_fargate_service = ecs_patterns.NetworkLoadBalancedFargateService(self, "NlbFargateService",
|
|
75806
|
+
cluster=cluster,
|
|
75807
|
+
task_image_options=ecsPatterns.NetworkLoadBalancedTaskImageOptions(
|
|
75808
|
+
image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
|
|
75809
|
+
),
|
|
75810
|
+
ip_address_type=elbv2.IpAddressType.DUAL_STACK
|
|
75811
|
+
)
|
|
75812
|
+
|
|
75813
|
+
network_loadbalanced_ec2_service = ecs_patterns.NetworkLoadBalancedEc2Service(self, "NlbEc2Service",
|
|
75814
|
+
cluster=cluster,
|
|
75815
|
+
task_image_options=ecsPatterns.NetworkLoadBalancedTaskImageOptions(
|
|
75816
|
+
image=ecs.ContainerImage.from_registry("amazon/amazon-ecs-sample")
|
|
75817
|
+
),
|
|
75818
|
+
ip_address_type=elbv2.IpAddressType.DUAL_STACK
|
|
75773
75819
|
)
|
|
75774
75820
|
'''
|
|
75775
75821
|
|
|
@@ -80141,19 +80187,22 @@ class PlacementGroup(
|
|
|
80141
80187
|
Placement groups give you fine-grained control over
|
|
80142
80188
|
where your instances are provisioned.
|
|
80143
80189
|
|
|
80144
|
-
:exampleMetadata: fixture=
|
|
80190
|
+
:exampleMetadata: fixture=with-vpc infused
|
|
80145
80191
|
|
|
80146
80192
|
Example::
|
|
80147
80193
|
|
|
80148
|
-
#
|
|
80149
|
-
# The values are placeholders you should change.
|
|
80150
|
-
from aws_cdk import aws_ec2 as ec2
|
|
80194
|
+
# instance_type: ec2.InstanceType
|
|
80151
80195
|
|
|
80152
|
-
|
|
80153
|
-
|
|
80154
|
-
|
|
80155
|
-
|
|
80156
|
-
|
|
80196
|
+
|
|
80197
|
+
pg = ec2.PlacementGroup(self, "test-pg",
|
|
80198
|
+
strategy=ec2.PlacementGroupStrategy.SPREAD
|
|
80199
|
+
)
|
|
80200
|
+
|
|
80201
|
+
ec2.Instance(self, "Instance",
|
|
80202
|
+
vpc=vpc,
|
|
80203
|
+
instance_type=instance_type,
|
|
80204
|
+
machine_image=ec2.MachineImage.latest_amazon_linux2023(),
|
|
80205
|
+
placement_group=pg
|
|
80157
80206
|
)
|
|
80158
80207
|
'''
|
|
80159
80208
|
|
|
@@ -80276,19 +80325,22 @@ class PlacementGroupProps:
|
|
|
80276
80325
|
:param spread_level: Places instances on distinct hardware. Spread placement groups are recommended for applications that have a small number of critical instances that should be kept separate from each other. Launching instances in a spread level placement group reduces the risk of simultaneous failures that might occur when instances share the same equipment. Spread level placement groups provide access to distinct hardware, and are therefore suitable for mixing instance types or launching instances over time. If you start or launch an instance in a spread placement group and there is insufficient unique hardware to fulfill the request, the request fails. Amazon EC2 makes more distinct hardware available over time, so you can try your request again later. Placement groups can spread instances across racks or hosts. You can use host level spread placement groups only with AWS Outposts. Default: - no spread level
|
|
80277
80326
|
:param strategy: Which strategy to use when launching instances. Default: - ``PlacementGroupStrategy.PARTITION`` if ``partitions`` is defined, ``CLUSTER`` otherwise
|
|
80278
80327
|
|
|
80279
|
-
:exampleMetadata: fixture=
|
|
80328
|
+
:exampleMetadata: fixture=with-vpc infused
|
|
80280
80329
|
|
|
80281
80330
|
Example::
|
|
80282
80331
|
|
|
80283
|
-
#
|
|
80284
|
-
# The values are placeholders you should change.
|
|
80285
|
-
from aws_cdk import aws_ec2 as ec2
|
|
80332
|
+
# instance_type: ec2.InstanceType
|
|
80286
80333
|
|
|
80287
|
-
|
|
80288
|
-
|
|
80289
|
-
|
|
80290
|
-
|
|
80291
|
-
|
|
80334
|
+
|
|
80335
|
+
pg = ec2.PlacementGroup(self, "test-pg",
|
|
80336
|
+
strategy=ec2.PlacementGroupStrategy.SPREAD
|
|
80337
|
+
)
|
|
80338
|
+
|
|
80339
|
+
ec2.Instance(self, "Instance",
|
|
80340
|
+
vpc=vpc,
|
|
80341
|
+
instance_type=instance_type,
|
|
80342
|
+
machine_image=ec2.MachineImage.latest_amazon_linux2023(),
|
|
80343
|
+
placement_group=pg
|
|
80292
80344
|
)
|
|
80293
80345
|
'''
|
|
80294
80346
|
if __debug__:
|
|
@@ -80393,7 +80445,26 @@ class PlacementGroupSpreadLevel(enum.Enum):
|
|
|
80393
80445
|
|
|
80394
80446
|
@jsii.enum(jsii_type="aws-cdk-lib.aws_ec2.PlacementGroupStrategy")
|
|
80395
80447
|
class PlacementGroupStrategy(enum.Enum):
|
|
80396
|
-
'''Which strategy to use when launching instances.
|
|
80448
|
+
'''Which strategy to use when launching instances.
|
|
80449
|
+
|
|
80450
|
+
:exampleMetadata: fixture=with-vpc infused
|
|
80451
|
+
|
|
80452
|
+
Example::
|
|
80453
|
+
|
|
80454
|
+
# instance_type: ec2.InstanceType
|
|
80455
|
+
|
|
80456
|
+
|
|
80457
|
+
pg = ec2.PlacementGroup(self, "test-pg",
|
|
80458
|
+
strategy=ec2.PlacementGroupStrategy.SPREAD
|
|
80459
|
+
)
|
|
80460
|
+
|
|
80461
|
+
ec2.Instance(self, "Instance",
|
|
80462
|
+
vpc=vpc,
|
|
80463
|
+
instance_type=instance_type,
|
|
80464
|
+
machine_image=ec2.MachineImage.latest_amazon_linux2023(),
|
|
80465
|
+
placement_group=pg
|
|
80466
|
+
)
|
|
80467
|
+
'''
|
|
80397
80468
|
|
|
80398
80469
|
CLUSTER = "CLUSTER"
|
|
80399
80470
|
'''Packs instances close together inside an Availability Zone.
|
|
@@ -104006,6 +104077,7 @@ def _typecheckingstub__5fdf31f5ae2497c7efcb56df558011698f38dc19cff28ca7a78a08a6d
|
|
|
104006
104077
|
instance_name: typing.Optional[builtins.str] = None,
|
|
104007
104078
|
key_name: typing.Optional[builtins.str] = None,
|
|
104008
104079
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
104080
|
+
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
104009
104081
|
private_ip_address: typing.Optional[builtins.str] = None,
|
|
104010
104082
|
propagate_tags_to_volume_on_creation: typing.Optional[builtins.bool] = None,
|
|
104011
104083
|
require_imdsv2: typing.Optional[builtins.bool] = None,
|
|
@@ -104057,6 +104129,7 @@ def _typecheckingstub__2d4dc63c6e6ee3ddc68d5dd204d8ac5ef1f1dec37a7b84d636225df1c
|
|
|
104057
104129
|
instance_name: typing.Optional[builtins.str] = None,
|
|
104058
104130
|
key_name: typing.Optional[builtins.str] = None,
|
|
104059
104131
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
104132
|
+
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
104060
104133
|
private_ip_address: typing.Optional[builtins.str] = None,
|
|
104061
104134
|
propagate_tags_to_volume_on_creation: typing.Optional[builtins.bool] = None,
|
|
104062
104135
|
require_imdsv2: typing.Optional[builtins.bool] = None,
|
aws_cdk/aws_ecs/__init__.py
CHANGED
|
@@ -7982,7 +7982,7 @@ class CfnService(
|
|
|
7982
7982
|
|
|
7983
7983
|
.. epigraph::
|
|
7984
7984
|
|
|
7985
|
-
The stack update fails if you change any properties that require replacement and at least one Amazon ECS Service Connect ``
|
|
7985
|
+
The stack update fails if you change any properties that require replacement and at least one Amazon ECS Service Connect ``ServiceConnectConfiguration`` property the is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace. > Starting April 15, 2023, AWS ; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS , or Amazon EC2 . However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.
|
|
7986
7986
|
|
|
7987
7987
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html
|
|
7988
7988
|
:cloudformationResource: AWS::ECS::Service
|
|
@@ -10348,7 +10348,7 @@ class CfnService(
|
|
|
10348
10348
|
*,
|
|
10349
10349
|
aws_pca_authority_arn: typing.Optional[builtins.str] = None,
|
|
10350
10350
|
) -> None:
|
|
10351
|
-
'''
|
|
10351
|
+
'''The certificate root authority that secures your service.
|
|
10352
10352
|
|
|
10353
10353
|
:param aws_pca_authority_arn: The ARN of the AWS Private Certificate Authority certificate.
|
|
10354
10354
|
|
|
@@ -10409,7 +10409,7 @@ class CfnService(
|
|
|
10409
10409
|
kms_key: typing.Optional[builtins.str] = None,
|
|
10410
10410
|
role_arn: typing.Optional[builtins.str] = None,
|
|
10411
10411
|
) -> None:
|
|
10412
|
-
'''
|
|
10412
|
+
'''The key that encrypts and decrypts your resources for Service Connect TLS.
|
|
10413
10413
|
|
|
10414
10414
|
:param issuer_certificate_authority: The signer certificate authority.
|
|
10415
10415
|
:param kms_key: The AWS Key Management Service key.
|