aws-cdk-lib 2.154.1__py3-none-any.whl → 2.155.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/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.154.1.jsii.tgz → aws-cdk-lib@2.155.0.jsii.tgz} +0 -0
- aws_cdk/assertions/__init__.py +17 -17
- aws_cdk/aws_cloudfront/__init__.py +4 -2
- aws_cdk/aws_codebuild/__init__.py +348 -7
- aws_cdk/aws_ec2/__init__.py +226 -35
- aws_cdk/aws_eks/__init__.py +34 -4
- aws_cdk/aws_ivs/__init__.py +10 -8
- aws_cdk/aws_kms/__init__.py +36 -0
- aws_cdk/aws_lambda/__init__.py +38 -23
- aws_cdk/aws_lambda_event_sources/__init__.py +27 -0
- aws_cdk/aws_rds/__init__.py +6 -0
- aws_cdk/aws_secretsmanager/__init__.py +3 -2
- aws_cdk/aws_ses/__init__.py +7 -7
- aws_cdk/aws_ssmcontacts/__init__.py +12 -0
- aws_cdk/aws_stepfunctions/__init__.py +12 -14
- aws_cdk/aws_stepfunctions_tasks/__init__.py +76 -0
- aws_cdk/aws_synthetics/__init__.py +13 -0
- aws_cdk/custom_resources/__init__.py +106 -1
- {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.155.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.155.0.dist-info}/RECORD +25 -25
- {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.155.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.155.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.155.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.154.1.dist-info → aws_cdk_lib-2.155.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ec2/__init__.py
CHANGED
|
@@ -1721,6 +1721,32 @@ ec2.Instance(self, "Instance",
|
|
|
1721
1721
|
)
|
|
1722
1722
|
```
|
|
1723
1723
|
|
|
1724
|
+
To specify the throughput value for `gp3` volumes, use the `throughput` property:
|
|
1725
|
+
|
|
1726
|
+
```python
|
|
1727
|
+
# vpc: ec2.Vpc
|
|
1728
|
+
# instance_type: ec2.InstanceType
|
|
1729
|
+
# machine_image: ec2.IMachineImage
|
|
1730
|
+
|
|
1731
|
+
|
|
1732
|
+
ec2.Instance(self, "Instance",
|
|
1733
|
+
vpc=vpc,
|
|
1734
|
+
instance_type=instance_type,
|
|
1735
|
+
machine_image=machine_image,
|
|
1736
|
+
|
|
1737
|
+
# ...
|
|
1738
|
+
|
|
1739
|
+
block_devices=[ec2.BlockDevice(
|
|
1740
|
+
device_name="/dev/sda1",
|
|
1741
|
+
volume=ec2.BlockDeviceVolume.ebs(100,
|
|
1742
|
+
volume_type=ec2.EbsDeviceVolumeType.GP3,
|
|
1743
|
+
throughput=250
|
|
1744
|
+
)
|
|
1745
|
+
)
|
|
1746
|
+
]
|
|
1747
|
+
)
|
|
1748
|
+
```
|
|
1749
|
+
|
|
1724
1750
|
#### EBS Optimized Instances
|
|
1725
1751
|
|
|
1726
1752
|
An Amazon EBS–optimized instance uses an optimized configuration stack and provides additional, dedicated capacity for Amazon EBS I/O. This optimization provides the best performance for your EBS volumes by minimizing contention between Amazon EBS I/O and other traffic from your instance.
|
|
@@ -1992,6 +2018,25 @@ Note to set `mapPublicIpOnLaunch` to true in the `subnetConfiguration`.
|
|
|
1992
2018
|
|
|
1993
2019
|
Additionally, IPv6 support varies by instance type. Most instance types have IPv6 support with exception of m1-m3, c1, g2, and t1.micro. A full list can be found here: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI.
|
|
1994
2020
|
|
|
2021
|
+
#### Specifying the IPv6 Address
|
|
2022
|
+
|
|
2023
|
+
If you want to specify [the number of IPv6 addresses](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/MultipleIP.html#assign-multiple-ipv6) to assign to the instance, you can use the `ipv6AddresseCount` property:
|
|
2024
|
+
|
|
2025
|
+
```python
|
|
2026
|
+
# dual stack VPC
|
|
2027
|
+
# vpc: ec2.Vpc
|
|
2028
|
+
|
|
2029
|
+
|
|
2030
|
+
instance = ec2.Instance(self, "MyInstance",
|
|
2031
|
+
instance_type=ec2.InstanceType.of(ec2.InstanceClass.M5, ec2.InstanceSize.LARGE),
|
|
2032
|
+
machine_image=ec2.MachineImage.latest_amazon_linux2(),
|
|
2033
|
+
vpc=vpc,
|
|
2034
|
+
vpc_subnets=ec2.SubnetSelection(subnet_type=ec2.SubnetType.PUBLIC),
|
|
2035
|
+
# Assign 2 IPv6 addresses to the instance
|
|
2036
|
+
ipv6_address_count=2
|
|
2037
|
+
)
|
|
2038
|
+
```
|
|
2039
|
+
|
|
1995
2040
|
### Credit configuration modes for burstable instances
|
|
1996
2041
|
|
|
1997
2042
|
You can set the [credit configuration mode](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-credits-baseline-concepts.html) for burstable instances (T2, T3, T3a and T4g instance types):
|
|
@@ -5343,10 +5388,10 @@ class BlockDeviceVolume(
|
|
|
5343
5388
|
|
|
5344
5389
|
block_devices=[ec2.BlockDevice(
|
|
5345
5390
|
device_name="/dev/sda1",
|
|
5346
|
-
volume=ec2.BlockDeviceVolume.ebs(
|
|
5347
|
-
|
|
5348
|
-
|
|
5349
|
-
|
|
5391
|
+
volume=ec2.BlockDeviceVolume.ebs(100,
|
|
5392
|
+
volume_type=ec2.EbsDeviceVolumeType.GP3,
|
|
5393
|
+
throughput=250
|
|
5394
|
+
)
|
|
5350
5395
|
)
|
|
5351
5396
|
]
|
|
5352
5397
|
)
|
|
@@ -5377,6 +5422,7 @@ class BlockDeviceVolume(
|
|
|
5377
5422
|
kms_key: typing.Optional[_IKey_5f11635f] = None,
|
|
5378
5423
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
5379
5424
|
iops: typing.Optional[jsii.Number] = None,
|
|
5425
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
5380
5426
|
volume_type: typing.Optional["EbsDeviceVolumeType"] = None,
|
|
5381
5427
|
) -> "BlockDeviceVolume":
|
|
5382
5428
|
'''Creates a new Elastic Block Storage device.
|
|
@@ -5386,6 +5432,7 @@ class BlockDeviceVolume(
|
|
|
5386
5432
|
:param kms_key: The ARN of the AWS Key Management Service (AWS KMS) CMK used for encryption. You have to ensure that the KMS CMK has the correct permissions to be used by the service launching the ec2 instances. Default: - If encrypted is true, the default aws/ebs KMS key will be used.
|
|
5387
5433
|
:param delete_on_termination: Indicates whether to delete the volume when the instance is terminated. Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
|
|
5388
5434
|
:param iops: The number of I/O operations per second (IOPS) to provision for the volume. Must only be set for ``volumeType``: ``EbsDeviceVolumeType.IO1`` The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume. Default: - none, required for ``EbsDeviceVolumeType.IO1``
|
|
5435
|
+
:param throughput: The throughput to provision for a ``gp3`` volume. Valid Range: Minimum value of 125. Maximum value of 1000. ``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s. You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS. Default: - 125 MiB/s.
|
|
5389
5436
|
:param volume_type: The EBS volume type. Default: ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD`` or ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3`` if ``@aws-cdk/aws-ec2:ebsDefaultGp3Volume`` is enabled.
|
|
5390
5437
|
'''
|
|
5391
5438
|
if __debug__:
|
|
@@ -5396,6 +5443,7 @@ class BlockDeviceVolume(
|
|
|
5396
5443
|
kms_key=kms_key,
|
|
5397
5444
|
delete_on_termination=delete_on_termination,
|
|
5398
5445
|
iops=iops,
|
|
5446
|
+
throughput=throughput,
|
|
5399
5447
|
volume_type=volume_type,
|
|
5400
5448
|
)
|
|
5401
5449
|
|
|
@@ -5410,6 +5458,7 @@ class BlockDeviceVolume(
|
|
|
5410
5458
|
volume_size: typing.Optional[jsii.Number] = None,
|
|
5411
5459
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
5412
5460
|
iops: typing.Optional[jsii.Number] = None,
|
|
5461
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
5413
5462
|
volume_type: typing.Optional["EbsDeviceVolumeType"] = None,
|
|
5414
5463
|
) -> "BlockDeviceVolume":
|
|
5415
5464
|
'''Creates a new Elastic Block Storage device from an existing snapshot.
|
|
@@ -5418,6 +5467,7 @@ class BlockDeviceVolume(
|
|
|
5418
5467
|
:param volume_size: The volume size, in Gibibytes (GiB). If you specify volumeSize, it must be equal or greater than the size of the snapshot. Default: - The snapshot size
|
|
5419
5468
|
:param delete_on_termination: Indicates whether to delete the volume when the instance is terminated. Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
|
|
5420
5469
|
:param iops: The number of I/O operations per second (IOPS) to provision for the volume. Must only be set for ``volumeType``: ``EbsDeviceVolumeType.IO1`` The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume. Default: - none, required for ``EbsDeviceVolumeType.IO1``
|
|
5470
|
+
:param throughput: The throughput to provision for a ``gp3`` volume. Valid Range: Minimum value of 125. Maximum value of 1000. ``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s. You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS. Default: - 125 MiB/s.
|
|
5421
5471
|
:param volume_type: The EBS volume type. Default: ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD`` or ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3`` if ``@aws-cdk/aws-ec2:ebsDefaultGp3Volume`` is enabled.
|
|
5422
5472
|
'''
|
|
5423
5473
|
if __debug__:
|
|
@@ -5427,6 +5477,7 @@ class BlockDeviceVolume(
|
|
|
5427
5477
|
volume_size=volume_size,
|
|
5428
5478
|
delete_on_termination=delete_on_termination,
|
|
5429
5479
|
iops=iops,
|
|
5480
|
+
throughput=throughput,
|
|
5430
5481
|
volume_type=volume_type,
|
|
5431
5482
|
)
|
|
5432
5483
|
|
|
@@ -20273,7 +20324,7 @@ class CfnInstance(
|
|
|
20273
20324
|
) -> None:
|
|
20274
20325
|
'''Specifies input parameter values for an SSM document in AWS Systems Manager .
|
|
20275
20326
|
|
|
20276
|
-
``AssociationParameter`` is a property of the `
|
|
20327
|
+
``AssociationParameter`` is a property of the `SsmAssociation <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociation.html>`_ property type.
|
|
20277
20328
|
|
|
20278
20329
|
:param key: The name of an input parameter that is in the associated SSM document.
|
|
20279
20330
|
:param value: The value of an input parameter.
|
|
@@ -20646,7 +20697,7 @@ class CfnInstance(
|
|
|
20646
20697
|
) -> None:
|
|
20647
20698
|
'''Specifies a block device for an EBS volume.
|
|
20648
20699
|
|
|
20649
|
-
``Ebs`` is a property of the `
|
|
20700
|
+
``Ebs`` is a property of the `BlockDeviceMapping <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-blockdevicemapping.html>`_ property type.
|
|
20650
20701
|
.. epigraph::
|
|
20651
20702
|
|
|
20652
20703
|
After the instance is running, you can modify only the ``DeleteOnTermination`` parameters for the attached volumes without interrupting the instance. Modifying any other parameter results in instance `replacement <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement>`_ .
|
|
@@ -21916,9 +21967,9 @@ class CfnInstance(
|
|
|
21916
21967
|
code: typing.Optional[builtins.str] = None,
|
|
21917
21968
|
name: typing.Optional[builtins.str] = None,
|
|
21918
21969
|
) -> None:
|
|
21919
|
-
'''
|
|
21970
|
+
'''Describes the current state of an instance.
|
|
21920
21971
|
|
|
21921
|
-
:param code: The state of the instance as a 16-bit unsigned integer.
|
|
21972
|
+
:param code: The state of the instance as a 16-bit unsigned integer. The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values between 256 and 65,535. These numerical values are used for internal purposes and should be ignored. The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values between 0 and 255. The valid values for instance-state-code will all be in the range of the low byte and they are: - ``0`` : ``pending`` - ``16`` : ``running`` - ``32`` : ``shutting-down`` - ``48`` : ``terminated`` - ``64`` : ``stopping`` - ``80`` : ``stopped`` You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in decimal.
|
|
21922
21973
|
:param name: The current state of the instance.
|
|
21923
21974
|
|
|
21924
21975
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-state.html
|
|
@@ -21949,6 +22000,21 @@ class CfnInstance(
|
|
|
21949
22000
|
def code(self) -> typing.Optional[builtins.str]:
|
|
21950
22001
|
'''The state of the instance as a 16-bit unsigned integer.
|
|
21951
22002
|
|
|
22003
|
+
The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values between 256 and 65,535. These numerical values are used for internal purposes and should be ignored.
|
|
22004
|
+
|
|
22005
|
+
The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values between 0 and 255.
|
|
22006
|
+
|
|
22007
|
+
The valid values for instance-state-code will all be in the range of the low byte and they are:
|
|
22008
|
+
|
|
22009
|
+
- ``0`` : ``pending``
|
|
22010
|
+
- ``16`` : ``running``
|
|
22011
|
+
- ``32`` : ``shutting-down``
|
|
22012
|
+
- ``48`` : ``terminated``
|
|
22013
|
+
- ``64`` : ``stopping``
|
|
22014
|
+
- ``80`` : ``stopped``
|
|
22015
|
+
|
|
22016
|
+
You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in decimal.
|
|
22017
|
+
|
|
21952
22018
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-state.html#cfn-ec2-instance-state-code
|
|
21953
22019
|
'''
|
|
21954
22020
|
result = self._values.get("code")
|
|
@@ -66128,6 +66194,7 @@ class DefaultInstanceTenancy(enum.Enum):
|
|
|
66128
66194
|
name_mapping={
|
|
66129
66195
|
"delete_on_termination": "deleteOnTermination",
|
|
66130
66196
|
"iops": "iops",
|
|
66197
|
+
"throughput": "throughput",
|
|
66131
66198
|
"volume_type": "volumeType",
|
|
66132
66199
|
},
|
|
66133
66200
|
)
|
|
@@ -66137,12 +66204,14 @@ class EbsDeviceOptionsBase:
|
|
|
66137
66204
|
*,
|
|
66138
66205
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
66139
66206
|
iops: typing.Optional[jsii.Number] = None,
|
|
66207
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
66140
66208
|
volume_type: typing.Optional["EbsDeviceVolumeType"] = None,
|
|
66141
66209
|
) -> None:
|
|
66142
66210
|
'''Base block device options for an EBS volume.
|
|
66143
66211
|
|
|
66144
66212
|
:param delete_on_termination: Indicates whether to delete the volume when the instance is terminated. Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
|
|
66145
66213
|
:param iops: The number of I/O operations per second (IOPS) to provision for the volume. Must only be set for ``volumeType``: ``EbsDeviceVolumeType.IO1`` The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume. Default: - none, required for ``EbsDeviceVolumeType.IO1``
|
|
66214
|
+
:param throughput: The throughput to provision for a ``gp3`` volume. Valid Range: Minimum value of 125. Maximum value of 1000. ``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s. You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS. Default: - 125 MiB/s.
|
|
66146
66215
|
:param volume_type: The EBS volume type. Default: ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD`` or ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3`` if ``@aws-cdk/aws-ec2:ebsDefaultGp3Volume`` is enabled.
|
|
66147
66216
|
|
|
66148
66217
|
:exampleMetadata: fixture=_generated
|
|
@@ -66156,6 +66225,7 @@ class EbsDeviceOptionsBase:
|
|
|
66156
66225
|
ebs_device_options_base = ec2.EbsDeviceOptionsBase(
|
|
66157
66226
|
delete_on_termination=False,
|
|
66158
66227
|
iops=123,
|
|
66228
|
+
throughput=123,
|
|
66159
66229
|
volume_type=ec2.EbsDeviceVolumeType.STANDARD
|
|
66160
66230
|
)
|
|
66161
66231
|
'''
|
|
@@ -66163,12 +66233,15 @@ class EbsDeviceOptionsBase:
|
|
|
66163
66233
|
type_hints = typing.get_type_hints(_typecheckingstub__0d06a3c480f0a868f3c69b22935c359322b1d9337591dc27bb141d518434f062)
|
|
66164
66234
|
check_type(argname="argument delete_on_termination", value=delete_on_termination, expected_type=type_hints["delete_on_termination"])
|
|
66165
66235
|
check_type(argname="argument iops", value=iops, expected_type=type_hints["iops"])
|
|
66236
|
+
check_type(argname="argument throughput", value=throughput, expected_type=type_hints["throughput"])
|
|
66166
66237
|
check_type(argname="argument volume_type", value=volume_type, expected_type=type_hints["volume_type"])
|
|
66167
66238
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
66168
66239
|
if delete_on_termination is not None:
|
|
66169
66240
|
self._values["delete_on_termination"] = delete_on_termination
|
|
66170
66241
|
if iops is not None:
|
|
66171
66242
|
self._values["iops"] = iops
|
|
66243
|
+
if throughput is not None:
|
|
66244
|
+
self._values["throughput"] = throughput
|
|
66172
66245
|
if volume_type is not None:
|
|
66173
66246
|
self._values["volume_type"] = volume_type
|
|
66174
66247
|
|
|
@@ -66197,6 +66270,22 @@ class EbsDeviceOptionsBase:
|
|
|
66197
66270
|
result = self._values.get("iops")
|
|
66198
66271
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
66199
66272
|
|
|
66273
|
+
@builtins.property
|
|
66274
|
+
def throughput(self) -> typing.Optional[jsii.Number]:
|
|
66275
|
+
'''The throughput to provision for a ``gp3`` volume.
|
|
66276
|
+
|
|
66277
|
+
Valid Range: Minimum value of 125. Maximum value of 1000.
|
|
66278
|
+
|
|
66279
|
+
``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s.
|
|
66280
|
+
You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS.
|
|
66281
|
+
|
|
66282
|
+
:default: - 125 MiB/s.
|
|
66283
|
+
|
|
66284
|
+
:see: https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html#gp3-performance
|
|
66285
|
+
'''
|
|
66286
|
+
result = self._values.get("throughput")
|
|
66287
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
66288
|
+
|
|
66200
66289
|
@builtins.property
|
|
66201
66290
|
def volume_type(self) -> typing.Optional["EbsDeviceVolumeType"]:
|
|
66202
66291
|
'''The EBS volume type.
|
|
@@ -66229,6 +66318,7 @@ class EbsDeviceOptionsBase:
|
|
|
66229
66318
|
name_mapping={
|
|
66230
66319
|
"delete_on_termination": "deleteOnTermination",
|
|
66231
66320
|
"iops": "iops",
|
|
66321
|
+
"throughput": "throughput",
|
|
66232
66322
|
"volume_type": "volumeType",
|
|
66233
66323
|
"volume_size": "volumeSize",
|
|
66234
66324
|
},
|
|
@@ -66239,6 +66329,7 @@ class EbsDeviceSnapshotOptions(EbsDeviceOptionsBase):
|
|
|
66239
66329
|
*,
|
|
66240
66330
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
66241
66331
|
iops: typing.Optional[jsii.Number] = None,
|
|
66332
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
66242
66333
|
volume_type: typing.Optional["EbsDeviceVolumeType"] = None,
|
|
66243
66334
|
volume_size: typing.Optional[jsii.Number] = None,
|
|
66244
66335
|
) -> None:
|
|
@@ -66246,6 +66337,7 @@ class EbsDeviceSnapshotOptions(EbsDeviceOptionsBase):
|
|
|
66246
66337
|
|
|
66247
66338
|
:param delete_on_termination: Indicates whether to delete the volume when the instance is terminated. Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
|
|
66248
66339
|
:param iops: The number of I/O operations per second (IOPS) to provision for the volume. Must only be set for ``volumeType``: ``EbsDeviceVolumeType.IO1`` The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume. Default: - none, required for ``EbsDeviceVolumeType.IO1``
|
|
66340
|
+
:param throughput: The throughput to provision for a ``gp3`` volume. Valid Range: Minimum value of 125. Maximum value of 1000. ``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s. You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS. Default: - 125 MiB/s.
|
|
66249
66341
|
:param volume_type: The EBS volume type. Default: ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD`` or ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3`` if ``@aws-cdk/aws-ec2:ebsDefaultGp3Volume`` is enabled.
|
|
66250
66342
|
:param volume_size: The volume size, in Gibibytes (GiB). If you specify volumeSize, it must be equal or greater than the size of the snapshot. Default: - The snapshot size
|
|
66251
66343
|
|
|
@@ -66260,6 +66352,7 @@ class EbsDeviceSnapshotOptions(EbsDeviceOptionsBase):
|
|
|
66260
66352
|
ebs_device_snapshot_options = ec2.EbsDeviceSnapshotOptions(
|
|
66261
66353
|
delete_on_termination=False,
|
|
66262
66354
|
iops=123,
|
|
66355
|
+
throughput=123,
|
|
66263
66356
|
volume_size=123,
|
|
66264
66357
|
volume_type=ec2.EbsDeviceVolumeType.STANDARD
|
|
66265
66358
|
)
|
|
@@ -66268,6 +66361,7 @@ class EbsDeviceSnapshotOptions(EbsDeviceOptionsBase):
|
|
|
66268
66361
|
type_hints = typing.get_type_hints(_typecheckingstub__4602c5be3c93ca5d255adf8aa3a652b8c7898310f96514ecd6fc09f7d5935370)
|
|
66269
66362
|
check_type(argname="argument delete_on_termination", value=delete_on_termination, expected_type=type_hints["delete_on_termination"])
|
|
66270
66363
|
check_type(argname="argument iops", value=iops, expected_type=type_hints["iops"])
|
|
66364
|
+
check_type(argname="argument throughput", value=throughput, expected_type=type_hints["throughput"])
|
|
66271
66365
|
check_type(argname="argument volume_type", value=volume_type, expected_type=type_hints["volume_type"])
|
|
66272
66366
|
check_type(argname="argument volume_size", value=volume_size, expected_type=type_hints["volume_size"])
|
|
66273
66367
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
@@ -66275,6 +66369,8 @@ class EbsDeviceSnapshotOptions(EbsDeviceOptionsBase):
|
|
|
66275
66369
|
self._values["delete_on_termination"] = delete_on_termination
|
|
66276
66370
|
if iops is not None:
|
|
66277
66371
|
self._values["iops"] = iops
|
|
66372
|
+
if throughput is not None:
|
|
66373
|
+
self._values["throughput"] = throughput
|
|
66278
66374
|
if volume_type is not None:
|
|
66279
66375
|
self._values["volume_type"] = volume_type
|
|
66280
66376
|
if volume_size is not None:
|
|
@@ -66305,6 +66401,22 @@ class EbsDeviceSnapshotOptions(EbsDeviceOptionsBase):
|
|
|
66305
66401
|
result = self._values.get("iops")
|
|
66306
66402
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
66307
66403
|
|
|
66404
|
+
@builtins.property
|
|
66405
|
+
def throughput(self) -> typing.Optional[jsii.Number]:
|
|
66406
|
+
'''The throughput to provision for a ``gp3`` volume.
|
|
66407
|
+
|
|
66408
|
+
Valid Range: Minimum value of 125. Maximum value of 1000.
|
|
66409
|
+
|
|
66410
|
+
``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s.
|
|
66411
|
+
You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS.
|
|
66412
|
+
|
|
66413
|
+
:default: - 125 MiB/s.
|
|
66414
|
+
|
|
66415
|
+
:see: https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html#gp3-performance
|
|
66416
|
+
'''
|
|
66417
|
+
result = self._values.get("throughput")
|
|
66418
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
66419
|
+
|
|
66308
66420
|
@builtins.property
|
|
66309
66421
|
def volume_type(self) -> typing.Optional["EbsDeviceVolumeType"]:
|
|
66310
66422
|
'''The EBS volume type.
|
|
@@ -66351,21 +66463,25 @@ class EbsDeviceVolumeType(enum.Enum):
|
|
|
66351
66463
|
Example::
|
|
66352
66464
|
|
|
66353
66465
|
# vpc: ec2.Vpc
|
|
66466
|
+
# instance_type: ec2.InstanceType
|
|
66467
|
+
# machine_image: ec2.IMachineImage
|
|
66354
66468
|
|
|
66355
66469
|
|
|
66356
|
-
|
|
66357
|
-
instance_type=ec2.InstanceType.of(ec2.InstanceClass.M5, ec2.InstanceSize.XLARGE),
|
|
66358
|
-
machine_image=ec2.AmazonLinuxImage(),
|
|
66470
|
+
ec2.Instance(self, "Instance",
|
|
66359
66471
|
vpc=vpc,
|
|
66360
|
-
|
|
66472
|
+
instance_type=instance_type,
|
|
66473
|
+
machine_image=machine_image,
|
|
66474
|
+
|
|
66475
|
+
# ...
|
|
66476
|
+
|
|
66361
66477
|
block_devices=[ec2.BlockDevice(
|
|
66362
|
-
device_name="/dev/
|
|
66363
|
-
volume=ec2.BlockDeviceVolume.ebs(
|
|
66478
|
+
device_name="/dev/sda1",
|
|
66479
|
+
volume=ec2.BlockDeviceVolume.ebs(100,
|
|
66364
66480
|
volume_type=ec2.EbsDeviceVolumeType.GP3,
|
|
66365
|
-
|
|
66366
|
-
delete_on_termination=True
|
|
66481
|
+
throughput=250
|
|
66367
66482
|
)
|
|
66368
|
-
)
|
|
66483
|
+
)
|
|
66484
|
+
]
|
|
66369
66485
|
)
|
|
66370
66486
|
'''
|
|
66371
66487
|
|
|
@@ -72319,6 +72435,7 @@ class Instance(
|
|
|
72319
72435
|
init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
72320
72436
|
instance_initiated_shutdown_behavior: typing.Optional["InstanceInitiatedShutdownBehavior"] = None,
|
|
72321
72437
|
instance_name: typing.Optional[builtins.str] = None,
|
|
72438
|
+
ipv6_address_count: typing.Optional[jsii.Number] = None,
|
|
72322
72439
|
key_name: typing.Optional[builtins.str] = None,
|
|
72323
72440
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
72324
72441
|
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
@@ -72342,7 +72459,7 @@ class Instance(
|
|
|
72342
72459
|
:param vpc: VPC to launch the instance in.
|
|
72343
72460
|
:param allow_all_ipv6_outbound: Whether the instance could initiate IPv6 connections to anywhere by default. This property is only used when you do not provide a security group. Default: false
|
|
72344
72461
|
:param allow_all_outbound: Whether the instance could initiate connections to anywhere by default. This property is only used when you do not provide a security group. Default: true
|
|
72345
|
-
:param associate_public_ip_address: Whether to associate a public IP address to the primary network interface attached to this instance. Default: - public IP address is automatically assigned based on default behavior
|
|
72462
|
+
:param associate_public_ip_address: Whether to associate a public IP address to the primary network interface attached to this instance. You cannot specify this property and ``ipv6AddressCount`` at the same time. Default: - public IP address is automatically assigned based on default behavior
|
|
72346
72463
|
:param availability_zone: In which AZ to place the instance within the VPC. Default: - Random zone.
|
|
72347
72464
|
:param block_devices: Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes. Each instance that is launched has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mappings to specify additional EBS volumes or instance store volumes to attach to an instance when it is launched. Default: - Uses the block device mapping of the AMI
|
|
72348
72465
|
:param credit_specification: Specifying the CPU credit type for burstable EC2 instance types (T2, T3, T3a, etc). The unlimited CPU credit option is not supported for T3 instances with a dedicated host. Default: - T2 instances are standard, while T3, T4g, and T3a instances are unlimited.
|
|
@@ -72354,6 +72471,7 @@ class Instance(
|
|
|
72354
72471
|
:param init_options: Use the given options for applying CloudFormation Init. Describes the configsets to use and the timeout to wait Default: - default options
|
|
72355
72472
|
:param instance_initiated_shutdown_behavior: Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: InstanceInitiatedShutdownBehavior.STOP
|
|
72356
72473
|
:param instance_name: The name of the instance. Default: - CDK generated name
|
|
72474
|
+
:param ipv6_address_count: The number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet. You cannot specify this property and ``associatePublicIpAddress`` at the same time. Default: - For instances associated with an IPv6 subnet, use 1; otherwise, use 0.
|
|
72357
72475
|
:param key_name: (deprecated) Name of SSH keypair to grant access to instance. Default: - No SSH access will be possible.
|
|
72358
72476
|
:param key_pair: The SSH keypair to grant access to the instance. Default: - No SSH access will be possible.
|
|
72359
72477
|
:param placement_group: The placement group that you want to launch the instance into. Default: - no placement group will be used for this instance.
|
|
@@ -72391,6 +72509,7 @@ class Instance(
|
|
|
72391
72509
|
init_options=init_options,
|
|
72392
72510
|
instance_initiated_shutdown_behavior=instance_initiated_shutdown_behavior,
|
|
72393
72511
|
instance_name=instance_name,
|
|
72512
|
+
ipv6_address_count=ipv6_address_count,
|
|
72394
72513
|
key_name=key_name,
|
|
72395
72514
|
key_pair=key_pair,
|
|
72396
72515
|
placement_group=placement_group,
|
|
@@ -73197,6 +73316,7 @@ class InstanceInitiatedShutdownBehavior(enum.Enum):
|
|
|
73197
73316
|
"init_options": "initOptions",
|
|
73198
73317
|
"instance_initiated_shutdown_behavior": "instanceInitiatedShutdownBehavior",
|
|
73199
73318
|
"instance_name": "instanceName",
|
|
73319
|
+
"ipv6_address_count": "ipv6AddressCount",
|
|
73200
73320
|
"key_name": "keyName",
|
|
73201
73321
|
"key_pair": "keyPair",
|
|
73202
73322
|
"placement_group": "placementGroup",
|
|
@@ -73234,6 +73354,7 @@ class InstanceProps:
|
|
|
73234
73354
|
init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
73235
73355
|
instance_initiated_shutdown_behavior: typing.Optional[InstanceInitiatedShutdownBehavior] = None,
|
|
73236
73356
|
instance_name: typing.Optional[builtins.str] = None,
|
|
73357
|
+
ipv6_address_count: typing.Optional[jsii.Number] = None,
|
|
73237
73358
|
key_name: typing.Optional[builtins.str] = None,
|
|
73238
73359
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
73239
73360
|
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
@@ -73256,7 +73377,7 @@ class InstanceProps:
|
|
|
73256
73377
|
:param vpc: VPC to launch the instance in.
|
|
73257
73378
|
:param allow_all_ipv6_outbound: Whether the instance could initiate IPv6 connections to anywhere by default. This property is only used when you do not provide a security group. Default: false
|
|
73258
73379
|
:param allow_all_outbound: Whether the instance could initiate connections to anywhere by default. This property is only used when you do not provide a security group. Default: true
|
|
73259
|
-
:param associate_public_ip_address: Whether to associate a public IP address to the primary network interface attached to this instance. Default: - public IP address is automatically assigned based on default behavior
|
|
73380
|
+
:param associate_public_ip_address: Whether to associate a public IP address to the primary network interface attached to this instance. You cannot specify this property and ``ipv6AddressCount`` at the same time. Default: - public IP address is automatically assigned based on default behavior
|
|
73260
73381
|
:param availability_zone: In which AZ to place the instance within the VPC. Default: - Random zone.
|
|
73261
73382
|
:param block_devices: Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes. Each instance that is launched has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mappings to specify additional EBS volumes or instance store volumes to attach to an instance when it is launched. Default: - Uses the block device mapping of the AMI
|
|
73262
73383
|
:param credit_specification: Specifying the CPU credit type for burstable EC2 instance types (T2, T3, T3a, etc). The unlimited CPU credit option is not supported for T3 instances with a dedicated host. Default: - T2 instances are standard, while T3, T4g, and T3a instances are unlimited.
|
|
@@ -73268,6 +73389,7 @@ class InstanceProps:
|
|
|
73268
73389
|
:param init_options: Use the given options for applying CloudFormation Init. Describes the configsets to use and the timeout to wait Default: - default options
|
|
73269
73390
|
:param instance_initiated_shutdown_behavior: Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: InstanceInitiatedShutdownBehavior.STOP
|
|
73270
73391
|
:param instance_name: The name of the instance. Default: - CDK generated name
|
|
73392
|
+
:param ipv6_address_count: The number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet. You cannot specify this property and ``associatePublicIpAddress`` at the same time. Default: - For instances associated with an IPv6 subnet, use 1; otherwise, use 0.
|
|
73271
73393
|
:param key_name: (deprecated) Name of SSH keypair to grant access to instance. Default: - No SSH access will be possible.
|
|
73272
73394
|
:param key_pair: The SSH keypair to grant access to the instance. Default: - No SSH access will be possible.
|
|
73273
73395
|
:param placement_group: The placement group that you want to launch the instance into. Default: - no placement group will be used for this instance.
|
|
@@ -73325,6 +73447,7 @@ class InstanceProps:
|
|
|
73325
73447
|
check_type(argname="argument init_options", value=init_options, expected_type=type_hints["init_options"])
|
|
73326
73448
|
check_type(argname="argument instance_initiated_shutdown_behavior", value=instance_initiated_shutdown_behavior, expected_type=type_hints["instance_initiated_shutdown_behavior"])
|
|
73327
73449
|
check_type(argname="argument instance_name", value=instance_name, expected_type=type_hints["instance_name"])
|
|
73450
|
+
check_type(argname="argument ipv6_address_count", value=ipv6_address_count, expected_type=type_hints["ipv6_address_count"])
|
|
73328
73451
|
check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
|
|
73329
73452
|
check_type(argname="argument key_pair", value=key_pair, expected_type=type_hints["key_pair"])
|
|
73330
73453
|
check_type(argname="argument placement_group", value=placement_group, expected_type=type_hints["placement_group"])
|
|
@@ -73372,6 +73495,8 @@ class InstanceProps:
|
|
|
73372
73495
|
self._values["instance_initiated_shutdown_behavior"] = instance_initiated_shutdown_behavior
|
|
73373
73496
|
if instance_name is not None:
|
|
73374
73497
|
self._values["instance_name"] = instance_name
|
|
73498
|
+
if ipv6_address_count is not None:
|
|
73499
|
+
self._values["ipv6_address_count"] = ipv6_address_count
|
|
73375
73500
|
if key_name is not None:
|
|
73376
73501
|
self._values["key_name"] = key_name
|
|
73377
73502
|
if key_pair is not None:
|
|
@@ -73448,6 +73573,8 @@ class InstanceProps:
|
|
|
73448
73573
|
def associate_public_ip_address(self) -> typing.Optional[builtins.bool]:
|
|
73449
73574
|
'''Whether to associate a public IP address to the primary network interface attached to this instance.
|
|
73450
73575
|
|
|
73576
|
+
You cannot specify this property and ``ipv6AddressCount`` at the same time.
|
|
73577
|
+
|
|
73451
73578
|
:default: - public IP address is automatically assigned based on default behavior
|
|
73452
73579
|
'''
|
|
73453
73580
|
result = self._values.get("associate_public_ip_address")
|
|
@@ -73585,6 +73712,19 @@ class InstanceProps:
|
|
|
73585
73712
|
result = self._values.get("instance_name")
|
|
73586
73713
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
73587
73714
|
|
|
73715
|
+
@builtins.property
|
|
73716
|
+
def ipv6_address_count(self) -> typing.Optional[jsii.Number]:
|
|
73717
|
+
'''The number of IPv6 addresses to associate with the primary network interface.
|
|
73718
|
+
|
|
73719
|
+
Amazon EC2 chooses the IPv6 addresses from the range of your subnet.
|
|
73720
|
+
|
|
73721
|
+
You cannot specify this property and ``associatePublicIpAddress`` at the same time.
|
|
73722
|
+
|
|
73723
|
+
:default: - For instances associated with an IPv6 subnet, use 1; otherwise, use 0.
|
|
73724
|
+
'''
|
|
73725
|
+
result = self._values.get("ipv6_address_count")
|
|
73726
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
73727
|
+
|
|
73588
73728
|
@builtins.property
|
|
73589
73729
|
def key_name(self) -> typing.Optional[builtins.str]:
|
|
73590
73730
|
'''(deprecated) Name of SSH keypair to grant access to instance.
|
|
@@ -84664,16 +84804,18 @@ class SubnetType(enum.Enum):
|
|
|
84664
84804
|
|
|
84665
84805
|
# vpc: ec2.Vpc
|
|
84666
84806
|
|
|
84667
|
-
|
|
84668
|
-
|
|
84669
|
-
|
|
84807
|
+
|
|
84808
|
+
cluster = docdb.DatabaseCluster(self, "Database",
|
|
84809
|
+
master_user=docdb.Login(
|
|
84810
|
+
username="myuser"
|
|
84670
84811
|
),
|
|
84671
|
-
|
|
84672
|
-
|
|
84673
|
-
|
|
84674
|
-
|
|
84675
|
-
|
|
84676
|
-
|
|
84812
|
+
instance_type=ec2.InstanceType.of(ec2.InstanceClass.MEMORY5, ec2.InstanceSize.LARGE),
|
|
84813
|
+
vpc_subnets=ec2.SubnetSelection(
|
|
84814
|
+
subnet_type=ec2.SubnetType.PUBLIC
|
|
84815
|
+
),
|
|
84816
|
+
vpc=vpc,
|
|
84817
|
+
removal_policy=RemovalPolicy.SNAPSHOT,
|
|
84818
|
+
instance_removal_policy=RemovalPolicy.RETAIN
|
|
84677
84819
|
)
|
|
84678
84820
|
'''
|
|
84679
84821
|
|
|
@@ -90388,6 +90530,7 @@ class DestinationOptions(S3DestinationOptions):
|
|
|
90388
90530
|
name_mapping={
|
|
90389
90531
|
"delete_on_termination": "deleteOnTermination",
|
|
90390
90532
|
"iops": "iops",
|
|
90533
|
+
"throughput": "throughput",
|
|
90391
90534
|
"volume_type": "volumeType",
|
|
90392
90535
|
"encrypted": "encrypted",
|
|
90393
90536
|
"kms_key": "kmsKey",
|
|
@@ -90399,6 +90542,7 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90399
90542
|
*,
|
|
90400
90543
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
90401
90544
|
iops: typing.Optional[jsii.Number] = None,
|
|
90545
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
90402
90546
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
90403
90547
|
encrypted: typing.Optional[builtins.bool] = None,
|
|
90404
90548
|
kms_key: typing.Optional[_IKey_5f11635f] = None,
|
|
@@ -90407,6 +90551,7 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90407
90551
|
|
|
90408
90552
|
:param delete_on_termination: Indicates whether to delete the volume when the instance is terminated. Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
|
|
90409
90553
|
:param iops: The number of I/O operations per second (IOPS) to provision for the volume. Must only be set for ``volumeType``: ``EbsDeviceVolumeType.IO1`` The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume. Default: - none, required for ``EbsDeviceVolumeType.IO1``
|
|
90554
|
+
:param throughput: The throughput to provision for a ``gp3`` volume. Valid Range: Minimum value of 125. Maximum value of 1000. ``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s. You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS. Default: - 125 MiB/s.
|
|
90410
90555
|
:param volume_type: The EBS volume type. Default: ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD`` or ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3`` if ``@aws-cdk/aws-ec2:ebsDefaultGp3Volume`` is enabled.
|
|
90411
90556
|
:param encrypted: Specifies whether the EBS volume is encrypted. Encrypted EBS volumes can only be attached to instances that support Amazon EBS encryption Default: false
|
|
90412
90557
|
:param kms_key: The ARN of the AWS Key Management Service (AWS KMS) CMK used for encryption. You have to ensure that the KMS CMK has the correct permissions to be used by the service launching the ec2 instances. Default: - If encrypted is true, the default aws/ebs KMS key will be used.
|
|
@@ -90415,15 +90560,11 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90415
90560
|
|
|
90416
90561
|
Example::
|
|
90417
90562
|
|
|
90418
|
-
from aws_cdk.aws_kms import Key
|
|
90419
|
-
|
|
90420
90563
|
# vpc: ec2.Vpc
|
|
90421
90564
|
# instance_type: ec2.InstanceType
|
|
90422
90565
|
# machine_image: ec2.IMachineImage
|
|
90423
90566
|
|
|
90424
90567
|
|
|
90425
|
-
kms_key = Key(self, "KmsKey")
|
|
90426
|
-
|
|
90427
90568
|
ec2.Instance(self, "Instance",
|
|
90428
90569
|
vpc=vpc,
|
|
90429
90570
|
instance_type=instance_type,
|
|
@@ -90433,9 +90574,9 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90433
90574
|
|
|
90434
90575
|
block_devices=[ec2.BlockDevice(
|
|
90435
90576
|
device_name="/dev/sda1",
|
|
90436
|
-
volume=ec2.BlockDeviceVolume.ebs(
|
|
90437
|
-
|
|
90438
|
-
|
|
90577
|
+
volume=ec2.BlockDeviceVolume.ebs(100,
|
|
90578
|
+
volume_type=ec2.EbsDeviceVolumeType.GP3,
|
|
90579
|
+
throughput=250
|
|
90439
90580
|
)
|
|
90440
90581
|
)
|
|
90441
90582
|
]
|
|
@@ -90445,6 +90586,7 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90445
90586
|
type_hints = typing.get_type_hints(_typecheckingstub__9009756b359157c5d2b270f95428640becaa73def15e04ee91f0eceba0702608)
|
|
90446
90587
|
check_type(argname="argument delete_on_termination", value=delete_on_termination, expected_type=type_hints["delete_on_termination"])
|
|
90447
90588
|
check_type(argname="argument iops", value=iops, expected_type=type_hints["iops"])
|
|
90589
|
+
check_type(argname="argument throughput", value=throughput, expected_type=type_hints["throughput"])
|
|
90448
90590
|
check_type(argname="argument volume_type", value=volume_type, expected_type=type_hints["volume_type"])
|
|
90449
90591
|
check_type(argname="argument encrypted", value=encrypted, expected_type=type_hints["encrypted"])
|
|
90450
90592
|
check_type(argname="argument kms_key", value=kms_key, expected_type=type_hints["kms_key"])
|
|
@@ -90453,6 +90595,8 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90453
90595
|
self._values["delete_on_termination"] = delete_on_termination
|
|
90454
90596
|
if iops is not None:
|
|
90455
90597
|
self._values["iops"] = iops
|
|
90598
|
+
if throughput is not None:
|
|
90599
|
+
self._values["throughput"] = throughput
|
|
90456
90600
|
if volume_type is not None:
|
|
90457
90601
|
self._values["volume_type"] = volume_type
|
|
90458
90602
|
if encrypted is not None:
|
|
@@ -90485,6 +90629,22 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90485
90629
|
result = self._values.get("iops")
|
|
90486
90630
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
90487
90631
|
|
|
90632
|
+
@builtins.property
|
|
90633
|
+
def throughput(self) -> typing.Optional[jsii.Number]:
|
|
90634
|
+
'''The throughput to provision for a ``gp3`` volume.
|
|
90635
|
+
|
|
90636
|
+
Valid Range: Minimum value of 125. Maximum value of 1000.
|
|
90637
|
+
|
|
90638
|
+
``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s.
|
|
90639
|
+
You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS.
|
|
90640
|
+
|
|
90641
|
+
:default: - 125 MiB/s.
|
|
90642
|
+
|
|
90643
|
+
:see: https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html#gp3-performance
|
|
90644
|
+
'''
|
|
90645
|
+
result = self._values.get("throughput")
|
|
90646
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
90647
|
+
|
|
90488
90648
|
@builtins.property
|
|
90489
90649
|
def volume_type(self) -> typing.Optional[EbsDeviceVolumeType]:
|
|
90490
90650
|
'''The EBS volume type.
|
|
@@ -90543,6 +90703,7 @@ class EbsDeviceOptions(EbsDeviceOptionsBase):
|
|
|
90543
90703
|
name_mapping={
|
|
90544
90704
|
"delete_on_termination": "deleteOnTermination",
|
|
90545
90705
|
"iops": "iops",
|
|
90706
|
+
"throughput": "throughput",
|
|
90546
90707
|
"volume_type": "volumeType",
|
|
90547
90708
|
"volume_size": "volumeSize",
|
|
90548
90709
|
"encrypted": "encrypted",
|
|
@@ -90556,6 +90717,7 @@ class EbsDeviceProps(EbsDeviceSnapshotOptions, EbsDeviceOptions):
|
|
|
90556
90717
|
*,
|
|
90557
90718
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
90558
90719
|
iops: typing.Optional[jsii.Number] = None,
|
|
90720
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
90559
90721
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
90560
90722
|
volume_size: typing.Optional[jsii.Number] = None,
|
|
90561
90723
|
encrypted: typing.Optional[builtins.bool] = None,
|
|
@@ -90566,6 +90728,7 @@ class EbsDeviceProps(EbsDeviceSnapshotOptions, EbsDeviceOptions):
|
|
|
90566
90728
|
|
|
90567
90729
|
:param delete_on_termination: Indicates whether to delete the volume when the instance is terminated. Default: - true for Amazon EC2 Auto Scaling, false otherwise (e.g. EBS)
|
|
90568
90730
|
:param iops: The number of I/O operations per second (IOPS) to provision for the volume. Must only be set for ``volumeType``: ``EbsDeviceVolumeType.IO1`` The maximum ratio of IOPS to volume size (in GiB) is 50:1, so for 5,000 provisioned IOPS, you need at least 100 GiB storage on the volume. Default: - none, required for ``EbsDeviceVolumeType.IO1``
|
|
90731
|
+
:param throughput: The throughput to provision for a ``gp3`` volume. Valid Range: Minimum value of 125. Maximum value of 1000. ``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s. You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS. Default: - 125 MiB/s.
|
|
90569
90732
|
:param volume_type: The EBS volume type. Default: ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD`` or ``EbsDeviceVolumeType.GENERAL_PURPOSE_SSD_GP3`` if ``@aws-cdk/aws-ec2:ebsDefaultGp3Volume`` is enabled.
|
|
90570
90733
|
:param volume_size: The volume size, in Gibibytes (GiB). If you specify volumeSize, it must be equal or greater than the size of the snapshot. Default: - The snapshot size
|
|
90571
90734
|
:param encrypted: Specifies whether the EBS volume is encrypted. Encrypted EBS volumes can only be attached to instances that support Amazon EBS encryption Default: false
|
|
@@ -90589,6 +90752,7 @@ class EbsDeviceProps(EbsDeviceSnapshotOptions, EbsDeviceOptions):
|
|
|
90589
90752
|
iops=123,
|
|
90590
90753
|
kms_key=key,
|
|
90591
90754
|
snapshot_id="snapshotId",
|
|
90755
|
+
throughput=123,
|
|
90592
90756
|
volume_size=123,
|
|
90593
90757
|
volume_type=ec2.EbsDeviceVolumeType.STANDARD
|
|
90594
90758
|
)
|
|
@@ -90597,6 +90761,7 @@ class EbsDeviceProps(EbsDeviceSnapshotOptions, EbsDeviceOptions):
|
|
|
90597
90761
|
type_hints = typing.get_type_hints(_typecheckingstub__9a0ea3e2bab0709f4d926738afbd8d5ecbd17847b51fb29600f577de41f87b90)
|
|
90598
90762
|
check_type(argname="argument delete_on_termination", value=delete_on_termination, expected_type=type_hints["delete_on_termination"])
|
|
90599
90763
|
check_type(argname="argument iops", value=iops, expected_type=type_hints["iops"])
|
|
90764
|
+
check_type(argname="argument throughput", value=throughput, expected_type=type_hints["throughput"])
|
|
90600
90765
|
check_type(argname="argument volume_type", value=volume_type, expected_type=type_hints["volume_type"])
|
|
90601
90766
|
check_type(argname="argument volume_size", value=volume_size, expected_type=type_hints["volume_size"])
|
|
90602
90767
|
check_type(argname="argument encrypted", value=encrypted, expected_type=type_hints["encrypted"])
|
|
@@ -90607,6 +90772,8 @@ class EbsDeviceProps(EbsDeviceSnapshotOptions, EbsDeviceOptions):
|
|
|
90607
90772
|
self._values["delete_on_termination"] = delete_on_termination
|
|
90608
90773
|
if iops is not None:
|
|
90609
90774
|
self._values["iops"] = iops
|
|
90775
|
+
if throughput is not None:
|
|
90776
|
+
self._values["throughput"] = throughput
|
|
90610
90777
|
if volume_type is not None:
|
|
90611
90778
|
self._values["volume_type"] = volume_type
|
|
90612
90779
|
if volume_size is not None:
|
|
@@ -90643,6 +90810,22 @@ class EbsDeviceProps(EbsDeviceSnapshotOptions, EbsDeviceOptions):
|
|
|
90643
90810
|
result = self._values.get("iops")
|
|
90644
90811
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
90645
90812
|
|
|
90813
|
+
@builtins.property
|
|
90814
|
+
def throughput(self) -> typing.Optional[jsii.Number]:
|
|
90815
|
+
'''The throughput to provision for a ``gp3`` volume.
|
|
90816
|
+
|
|
90817
|
+
Valid Range: Minimum value of 125. Maximum value of 1000.
|
|
90818
|
+
|
|
90819
|
+
``gp3`` volumes deliver a consistent baseline throughput performance of 125 MiB/s.
|
|
90820
|
+
You can provision additional throughput for an additional cost at a ratio of 0.25 MiB/s per provisioned IOPS.
|
|
90821
|
+
|
|
90822
|
+
:default: - 125 MiB/s.
|
|
90823
|
+
|
|
90824
|
+
:see: https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html#gp3-performance
|
|
90825
|
+
'''
|
|
90826
|
+
result = self._values.get("throughput")
|
|
90827
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
90828
|
+
|
|
90646
90829
|
@builtins.property
|
|
90647
90830
|
def volume_type(self) -> typing.Optional[EbsDeviceVolumeType]:
|
|
90648
90831
|
'''The EBS volume type.
|
|
@@ -95142,6 +95325,7 @@ def _typecheckingstub__e34634be08d573bd7d4eca032a2a66e619c889f2b51e62608777ae0db
|
|
|
95142
95325
|
kms_key: typing.Optional[_IKey_5f11635f] = None,
|
|
95143
95326
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
95144
95327
|
iops: typing.Optional[jsii.Number] = None,
|
|
95328
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
95145
95329
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
95146
95330
|
) -> None:
|
|
95147
95331
|
"""Type checking stubs"""
|
|
@@ -95153,6 +95337,7 @@ def _typecheckingstub__ce9e60bc1da1c6f1d133c0cfaad0c5984d2f7a428c12f02640d8f31c6
|
|
|
95153
95337
|
volume_size: typing.Optional[jsii.Number] = None,
|
|
95154
95338
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
95155
95339
|
iops: typing.Optional[jsii.Number] = None,
|
|
95340
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
95156
95341
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
95157
95342
|
) -> None:
|
|
95158
95343
|
"""Type checking stubs"""
|
|
@@ -104074,6 +104259,7 @@ def _typecheckingstub__0d06a3c480f0a868f3c69b22935c359322b1d9337591dc27bb141d518
|
|
|
104074
104259
|
*,
|
|
104075
104260
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
104076
104261
|
iops: typing.Optional[jsii.Number] = None,
|
|
104262
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
104077
104263
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
104078
104264
|
) -> None:
|
|
104079
104265
|
"""Type checking stubs"""
|
|
@@ -104083,6 +104269,7 @@ def _typecheckingstub__4602c5be3c93ca5d255adf8aa3a652b8c7898310f96514ecd6fc09f7d
|
|
|
104083
104269
|
*,
|
|
104084
104270
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
104085
104271
|
iops: typing.Optional[jsii.Number] = None,
|
|
104272
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
104086
104273
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
104087
104274
|
volume_size: typing.Optional[jsii.Number] = None,
|
|
104088
104275
|
) -> None:
|
|
@@ -104816,6 +105003,7 @@ def _typecheckingstub__5fdf31f5ae2497c7efcb56df558011698f38dc19cff28ca7a78a08a6d
|
|
|
104816
105003
|
init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
104817
105004
|
instance_initiated_shutdown_behavior: typing.Optional[InstanceInitiatedShutdownBehavior] = None,
|
|
104818
105005
|
instance_name: typing.Optional[builtins.str] = None,
|
|
105006
|
+
ipv6_address_count: typing.Optional[jsii.Number] = None,
|
|
104819
105007
|
key_name: typing.Optional[builtins.str] = None,
|
|
104820
105008
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
104821
105009
|
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
@@ -104885,6 +105073,7 @@ def _typecheckingstub__2d4dc63c6e6ee3ddc68d5dd204d8ac5ef1f1dec37a7b84d636225df1c
|
|
|
104885
105073
|
init_options: typing.Optional[typing.Union[ApplyCloudFormationInitOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
104886
105074
|
instance_initiated_shutdown_behavior: typing.Optional[InstanceInitiatedShutdownBehavior] = None,
|
|
104887
105075
|
instance_name: typing.Optional[builtins.str] = None,
|
|
105076
|
+
ipv6_address_count: typing.Optional[jsii.Number] = None,
|
|
104888
105077
|
key_name: typing.Optional[builtins.str] = None,
|
|
104889
105078
|
key_pair: typing.Optional[IKeyPair] = None,
|
|
104890
105079
|
placement_group: typing.Optional[IPlacementGroup] = None,
|
|
@@ -106607,6 +106796,7 @@ def _typecheckingstub__9009756b359157c5d2b270f95428640becaa73def15e04ee91f0eceba
|
|
|
106607
106796
|
*,
|
|
106608
106797
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
106609
106798
|
iops: typing.Optional[jsii.Number] = None,
|
|
106799
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
106610
106800
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
106611
106801
|
encrypted: typing.Optional[builtins.bool] = None,
|
|
106612
106802
|
kms_key: typing.Optional[_IKey_5f11635f] = None,
|
|
@@ -106618,6 +106808,7 @@ def _typecheckingstub__9a0ea3e2bab0709f4d926738afbd8d5ecbd17847b51fb29600f577de4
|
|
|
106618
106808
|
*,
|
|
106619
106809
|
delete_on_termination: typing.Optional[builtins.bool] = None,
|
|
106620
106810
|
iops: typing.Optional[jsii.Number] = None,
|
|
106811
|
+
throughput: typing.Optional[jsii.Number] = None,
|
|
106621
106812
|
volume_type: typing.Optional[EbsDeviceVolumeType] = None,
|
|
106622
106813
|
volume_size: typing.Optional[jsii.Number] = None,
|
|
106623
106814
|
encrypted: typing.Optional[builtins.bool] = None,
|