aws-cdk-lib 2.96.2__py3-none-any.whl → 2.97.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/__init__.py +246 -62
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.96.2.jsii.tgz → aws-cdk-lib@2.97.1.jsii.tgz} +0 -0
- aws_cdk/aws_apigatewayv2/__init__.py +1 -1
- aws_cdk/aws_appflow/__init__.py +205 -7
- aws_cdk/aws_appstream/__init__.py +33 -28
- aws_cdk/aws_appsync/__init__.py +555 -71
- aws_cdk/aws_autoscaling/__init__.py +5 -11
- aws_cdk/aws_billingconductor/__init__.py +145 -1
- aws_cdk/aws_cleanrooms/__init__.py +1198 -86
- aws_cdk/aws_cloudformation/__init__.py +221 -55
- aws_cdk/aws_cloudwatch/__init__.py +325 -2
- aws_cdk/aws_cognito/__init__.py +9 -13
- aws_cdk/aws_config/__init__.py +68 -73
- aws_cdk/aws_connect/__init__.py +909 -164
- aws_cdk/aws_customerprofiles/__init__.py +44 -0
- aws_cdk/aws_dms/__init__.py +198 -0
- aws_cdk/aws_ec2/__init__.py +593 -73
- aws_cdk/aws_ecr/__init__.py +7 -2
- aws_cdk/aws_ecs/__init__.py +2 -2
- aws_cdk/aws_efs/__init__.py +237 -0
- aws_cdk/aws_emr/__init__.py +232 -0
- aws_cdk/aws_entityresolution/__init__.py +1702 -0
- aws_cdk/aws_events/__init__.py +13 -18
- aws_cdk/aws_fms/__init__.py +3 -3
- aws_cdk/aws_gamelift/__init__.py +10 -15
- aws_cdk/aws_grafana/__init__.py +9 -5
- aws_cdk/aws_guardduty/__init__.py +272 -205
- aws_cdk/aws_iam/__init__.py +20 -18
- aws_cdk/aws_iotwireless/__init__.py +38 -54
- aws_cdk/aws_lakeformation/__init__.py +18 -6
- aws_cdk/aws_lambda/__init__.py +1 -1
- aws_cdk/aws_lightsail/__init__.py +225 -0
- aws_cdk/aws_lookoutequipment/__init__.py +4 -4
- aws_cdk/aws_macie/__init__.py +5 -3
- aws_cdk/aws_mediapackagev2/__init__.py +3227 -0
- aws_cdk/aws_pcaconnectorad/__init__.py +6785 -0
- aws_cdk/aws_quicksight/__init__.py +189 -116
- aws_cdk/aws_rds/__init__.py +316 -9
- aws_cdk/aws_resiliencehub/__init__.py +38 -21
- aws_cdk/aws_route53resolver/__init__.py +429 -0
- aws_cdk/aws_sagemaker/__init__.py +34 -34
- aws_cdk/aws_stepfunctions/__init__.py +111 -14
- aws_cdk/aws_transfer/__init__.py +2 -2
- aws_cdk/aws_vpclattice/__init__.py +128 -120
- aws_cdk/aws_workspacesweb/__init__.py +3790 -0
- aws_cdk/region_info/__init__.py +49 -0
- {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/METADATA +2 -2
- {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/RECORD +53 -49
- {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.96.2.dist-info → aws_cdk_lib-2.97.1.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ec2/__init__.py
CHANGED
|
@@ -3259,25 +3259,29 @@ class AmazonLinuxEdition(enum.Enum):
|
|
|
3259
3259
|
class AmazonLinuxGeneration(enum.Enum):
|
|
3260
3260
|
'''What generation of Amazon Linux to use.
|
|
3261
3261
|
|
|
3262
|
-
:exampleMetadata: infused
|
|
3262
|
+
:exampleMetadata: lit=aws-autoscaling/test/example.images.lit.ts infused
|
|
3263
3263
|
|
|
3264
3264
|
Example::
|
|
3265
3265
|
|
|
3266
|
-
#
|
|
3267
|
-
|
|
3266
|
+
# Pick a Windows edition to use
|
|
3267
|
+
windows = ec2.WindowsImage(ec2.WindowsVersion.WINDOWS_SERVER_2019_ENGLISH_FULL_BASE)
|
|
3268
3268
|
|
|
3269
|
-
|
|
3270
|
-
|
|
3271
|
-
|
|
3269
|
+
# Pick the right Amazon Linux edition. All arguments shown are optional
|
|
3270
|
+
# and will default to these values when omitted.
|
|
3271
|
+
amzn_linux = ec2.AmazonLinuxImage(
|
|
3272
|
+
generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX,
|
|
3273
|
+
edition=ec2.AmazonLinuxEdition.STANDARD,
|
|
3274
|
+
virtualization=ec2.AmazonLinuxVirt.HVM,
|
|
3275
|
+
storage=ec2.AmazonLinuxStorage.GENERAL_PURPOSE
|
|
3276
|
+
)
|
|
3272
3277
|
|
|
3273
|
-
|
|
3274
|
-
|
|
3275
|
-
generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2
|
|
3276
|
-
),
|
|
3278
|
+
# For other custom (Linux) images, instantiate a `GenericLinuxImage` with
|
|
3279
|
+
# a map giving the AMI to in for each region:
|
|
3277
3280
|
|
|
3278
|
-
|
|
3279
|
-
|
|
3280
|
-
|
|
3281
|
+
linux = ec2.GenericLinuxImage({
|
|
3282
|
+
"us-east-1": "ami-97785bed",
|
|
3283
|
+
"eu-west-1": "ami-12345678"
|
|
3284
|
+
})
|
|
3281
3285
|
'''
|
|
3282
3286
|
|
|
3283
3287
|
AMAZON_LINUX = "AMAZON_LINUX"
|
|
@@ -9701,7 +9705,7 @@ class CfnEC2Fleet(
|
|
|
9701
9705
|
:param on_demand_options: Describes the configuration of On-Demand Instances in an EC2 Fleet.
|
|
9702
9706
|
:param replace_unhealthy_instances: Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for fleets of type ``maintain`` . For more information, see `EC2 Fleet health checks <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks>`_ in the *Amazon EC2 User Guide* .
|
|
9703
9707
|
:param spot_options: Describes the configuration of Spot Instances in an EC2 Fleet.
|
|
9704
|
-
:param tag_specifications: The key-value pair for tagging the EC2 Fleet request on creation. For more information, see `
|
|
9708
|
+
:param tag_specifications: The key-value pair for tagging the EC2 Fleet request on creation. For more information, see `Tag your resources <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources>`_ . If the fleet type is ``instant`` , specify a resource type of ``fleet`` to tag the fleet or ``instance`` to tag the instances at launch. If the fleet type is ``maintain`` or ``request`` , specify a resource type of ``fleet`` to tag the fleet. You cannot specify a resource type of ``instance`` . To tag instances at launch, specify the tags in a `launch template <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template>`_ .
|
|
9705
9709
|
:param terminate_instances_with_expiration: Indicates whether running instances should be terminated when the EC2 Fleet expires.
|
|
9706
9710
|
:param type: The fleet type. The default value is ``maintain`` . - ``maintain`` - The EC2 Fleet places an asynchronous request for your desired capacity, and continues to maintain your desired Spot capacity by replenishing interrupted Spot Instances. - ``request`` - The EC2 Fleet places an asynchronous one-time request for your desired capacity, but does submit Spot requests in alternative capacity pools if Spot capacity is unavailable, and does not maintain Spot capacity if Spot Instances are interrupted. - ``instant`` - The EC2 Fleet places a synchronous one-time request for your desired capacity, and returns errors for any instances that could not be launched. For more information, see `EC2 Fleet request types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-request-type.html>`_ in the *Amazon EC2 User Guide* .
|
|
9707
9711
|
:param valid_from: The start date and time of the request, in UTC format (for example, *YYYY* - *MM* - *DD* T *HH* : *MM* : *SS* Z). The default is to start fulfilling the request immediately.
|
|
@@ -9898,7 +9902,7 @@ class CfnEC2Fleet(
|
|
|
9898
9902
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnEC2Fleet.TagSpecificationProperty"]]]]:
|
|
9899
9903
|
'''The key-value pair for tagging the EC2 Fleet request on creation.
|
|
9900
9904
|
|
|
9901
|
-
For more information, see `
|
|
9905
|
+
For more information, see `Tag your resources <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources>`_ .
|
|
9902
9906
|
'''
|
|
9903
9907
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnEC2Fleet.TagSpecificationProperty"]]]], jsii.get(self, "tagSpecifications"))
|
|
9904
9908
|
|
|
@@ -11885,7 +11889,7 @@ class CfnEC2Fleet(
|
|
|
11885
11889
|
|
|
11886
11890
|
:param allocation_strategy: The strategy that determines the order of the launch template overrides to use in fulfilling On-Demand capacity. ``lowest-price`` - EC2 Fleet uses price to determine the order, launching the lowest price first. ``prioritized`` - EC2 Fleet uses the priority that you assigned to each launch template override, launching the highest priority first. Default: ``lowest-price``
|
|
11887
11891
|
:param capacity_reservation_options: The strategy for using unused Capacity Reservations for fulfilling On-Demand capacity. Supported only for fleets of type ``instant`` .
|
|
11888
|
-
:param max_total_price: The maximum amount per hour for On-Demand Instances that you're willing to pay.
|
|
11892
|
+
:param max_total_price: The maximum amount per hour for On-Demand Instances that you're willing to pay. .. epigraph:: If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``MaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``MaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
11889
11893
|
:param min_target_capacity: The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances. Supported only for fleets of type ``instant`` . At least one of the following must be specified: ``SingleAvailabilityZone`` | ``SingleInstanceType``
|
|
11890
11894
|
:param single_availability_zone: Indicates that the fleet launches all On-Demand Instances into a single Availability Zone. Supported only for fleets of type ``instant`` .
|
|
11891
11895
|
:param single_instance_type: Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet. Supported only for fleets of type ``instant`` .
|
|
@@ -11964,6 +11968,10 @@ class CfnEC2Fleet(
|
|
|
11964
11968
|
def max_total_price(self) -> typing.Optional[builtins.str]:
|
|
11965
11969
|
'''The maximum amount per hour for On-Demand Instances that you're willing to pay.
|
|
11966
11970
|
|
|
11971
|
+
.. epigraph::
|
|
11972
|
+
|
|
11973
|
+
If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``MaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``MaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
11974
|
+
|
|
11967
11975
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-ondemandoptionsrequest.html#cfn-ec2-ec2fleet-ondemandoptionsrequest-maxtotalprice
|
|
11968
11976
|
'''
|
|
11969
11977
|
result = self._values.get("max_total_price")
|
|
@@ -12245,7 +12253,7 @@ class CfnEC2Fleet(
|
|
|
12245
12253
|
:param instance_interruption_behavior: The behavior when a Spot Instance is interrupted. Default: ``terminate``
|
|
12246
12254
|
:param instance_pools_to_use_count: The number of Spot pools across which to allocate your target Spot capacity. Supported only when Spot ``AllocationStrategy`` is set to ``lowest-price`` . EC2 Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify. Note that EC2 Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, EC2 Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.
|
|
12247
12255
|
:param maintenance_strategies: The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
|
|
12248
|
-
:param max_total_price: The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. .. epigraph:: If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
|
|
12256
|
+
:param max_total_price: The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. .. epigraph:: If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter. > If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``MaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``MaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
12249
12257
|
:param min_target_capacity: The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances. Supported only for fleets of type ``instant`` . At least one of the following must be specified: ``SingleAvailabilityZone`` | ``SingleInstanceType``
|
|
12250
12258
|
:param single_availability_zone: Indicates that the fleet launches all Spot Instances into a single Availability Zone. Supported only for fleets of type ``instant`` .
|
|
12251
12259
|
:param single_instance_type: Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet. Supported only for fleets of type ``instant`` .
|
|
@@ -12362,7 +12370,7 @@ class CfnEC2Fleet(
|
|
|
12362
12370
|
We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.
|
|
12363
12371
|
.. epigraph::
|
|
12364
12372
|
|
|
12365
|
-
If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.
|
|
12373
|
+
If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter. > If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``MaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``MaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
12366
12374
|
|
|
12367
12375
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ec2fleet-spotoptionsrequest.html#cfn-ec2-ec2fleet-spotoptionsrequest-maxtotalprice
|
|
12368
12376
|
'''
|
|
@@ -12819,7 +12827,7 @@ class CfnEC2FleetProps:
|
|
|
12819
12827
|
:param on_demand_options: Describes the configuration of On-Demand Instances in an EC2 Fleet.
|
|
12820
12828
|
:param replace_unhealthy_instances: Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for fleets of type ``maintain`` . For more information, see `EC2 Fleet health checks <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks>`_ in the *Amazon EC2 User Guide* .
|
|
12821
12829
|
:param spot_options: Describes the configuration of Spot Instances in an EC2 Fleet.
|
|
12822
|
-
:param tag_specifications: The key-value pair for tagging the EC2 Fleet request on creation. For more information, see `
|
|
12830
|
+
:param tag_specifications: The key-value pair for tagging the EC2 Fleet request on creation. For more information, see `Tag your resources <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources>`_ . If the fleet type is ``instant`` , specify a resource type of ``fleet`` to tag the fleet or ``instance`` to tag the instances at launch. If the fleet type is ``maintain`` or ``request`` , specify a resource type of ``fleet`` to tag the fleet. You cannot specify a resource type of ``instance`` . To tag instances at launch, specify the tags in a `launch template <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template>`_ .
|
|
12823
12831
|
:param terminate_instances_with_expiration: Indicates whether running instances should be terminated when the EC2 Fleet expires.
|
|
12824
12832
|
:param type: The fleet type. The default value is ``maintain`` . - ``maintain`` - The EC2 Fleet places an asynchronous request for your desired capacity, and continues to maintain your desired Spot capacity by replenishing interrupted Spot Instances. - ``request`` - The EC2 Fleet places an asynchronous one-time request for your desired capacity, but does submit Spot requests in alternative capacity pools if Spot capacity is unavailable, and does not maintain Spot capacity if Spot Instances are interrupted. - ``instant`` - The EC2 Fleet places a synchronous one-time request for your desired capacity, and returns errors for any instances that could not be launched. For more information, see `EC2 Fleet request types <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-request-type.html>`_ in the *Amazon EC2 User Guide* .
|
|
12825
12833
|
:param valid_from: The start date and time of the request, in UTC format (for example, *YYYY* - *MM* - *DD* T *HH* : *MM* : *SS* Z). The default is to start fulfilling the request immediately.
|
|
@@ -13088,7 +13096,7 @@ class CfnEC2FleetProps:
|
|
|
13088
13096
|
def tag_specifications(
|
|
13089
13097
|
self,
|
|
13090
13098
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnEC2Fleet.TagSpecificationProperty]]]]:
|
|
13091
|
-
'''The key-value pair for tagging the EC2 Fleet request on creation. For more information, see `
|
|
13099
|
+
'''The key-value pair for tagging the EC2 Fleet request on creation. For more information, see `Tag your resources <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources>`_ .
|
|
13092
13100
|
|
|
13093
13101
|
If the fleet type is ``instant`` , specify a resource type of ``fleet`` to tag the fleet or ``instance`` to tag the instances at launch.
|
|
13094
13102
|
|
|
@@ -13206,7 +13214,7 @@ class CfnEIP(
|
|
|
13206
13214
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
13207
13215
|
:param domain: The network ( ``vpc`` ). If you define an Elastic IP address and associate it with a VPC that is defined in the same template, you must declare a dependency on the VPC-gateway attachment by using the `DependsOn Attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html>`_ on this resource.
|
|
13208
13216
|
:param instance_id: The ID of the instance. .. epigraph:: Updates to the ``InstanceId`` property may require *some interruptions* . Updates on an EIP reassociates the address on its associated resource.
|
|
13209
|
-
:param network_border_group: A unique set of Availability Zones, Local Zones, or Wavelength Zones from which AWS advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups. Use `DescribeAvailabilityZones <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html>`_ to view the network border groups.
|
|
13217
|
+
:param network_border_group: A unique set of Availability Zones, Local Zones, or Wavelength Zones from which AWS advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups. Use `DescribeAvailabilityZones <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html>`_ to view the network border groups.
|
|
13210
13218
|
:param public_ipv4_pool: The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address pool. .. epigraph:: Updates to the ``PublicIpv4Pool`` property may require *some interruptions* . Updates on an EIP reassociates the address on its associated resource.
|
|
13211
13219
|
:param tags: Any tags assigned to the Elastic IP address. .. epigraph:: Updates to the ``Tags`` property may require *some interruptions* . Updates on an EIP reassociates the address on its associated resource.
|
|
13212
13220
|
:param transfer_address: The Elastic IP address you are accepting for transfer. You can only accept one transferred address. For more information on Elastic IP address transfers, see `Transfer Elastic IP addresses <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro>`_ in the *Amazon Virtual Private Cloud User Guide* .
|
|
@@ -13411,7 +13419,7 @@ class CfnEIPAssociation(
|
|
|
13411
13419
|
:param scope: Scope in which this resource is defined.
|
|
13412
13420
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
13413
13421
|
:param allocation_id: The allocation ID. This is required.
|
|
13414
|
-
:param eip:
|
|
13422
|
+
:param eip: (deprecated) The Elastic IP address to associate with the instance.
|
|
13415
13423
|
:param instance_id: The ID of the instance. The instance must have exactly one attached network interface. You can specify either the instance ID or the network interface ID, but not both.
|
|
13416
13424
|
:param network_interface_id: The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID. You can specify either the instance ID or the network interface ID, but not both.
|
|
13417
13425
|
:param private_ip_address: The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
|
|
@@ -13463,7 +13471,8 @@ class CfnEIPAssociation(
|
|
|
13463
13471
|
@builtins.property
|
|
13464
13472
|
@jsii.member(jsii_name="attrId")
|
|
13465
13473
|
def attr_id(self) -> builtins.str:
|
|
13466
|
-
'''
|
|
13474
|
+
'''The ID of the association.
|
|
13475
|
+
|
|
13467
13476
|
:cloudformationAttribute: Id
|
|
13468
13477
|
'''
|
|
13469
13478
|
return typing.cast(builtins.str, jsii.get(self, "attrId"))
|
|
@@ -13489,6 +13498,12 @@ class CfnEIPAssociation(
|
|
|
13489
13498
|
@builtins.property
|
|
13490
13499
|
@jsii.member(jsii_name="eip")
|
|
13491
13500
|
def eip(self) -> typing.Optional[builtins.str]:
|
|
13501
|
+
'''(deprecated) The Elastic IP address to associate with the instance.
|
|
13502
|
+
|
|
13503
|
+
:deprecated: this property has been deprecated
|
|
13504
|
+
|
|
13505
|
+
:stability: deprecated
|
|
13506
|
+
'''
|
|
13492
13507
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "eip"))
|
|
13493
13508
|
|
|
13494
13509
|
@eip.setter
|
|
@@ -13562,7 +13577,7 @@ class CfnEIPAssociationProps:
|
|
|
13562
13577
|
'''Properties for defining a ``CfnEIPAssociation``.
|
|
13563
13578
|
|
|
13564
13579
|
:param allocation_id: The allocation ID. This is required.
|
|
13565
|
-
:param eip:
|
|
13580
|
+
:param eip: (deprecated) The Elastic IP address to associate with the instance.
|
|
13566
13581
|
:param instance_id: The ID of the instance. The instance must have exactly one attached network interface. You can specify either the instance ID or the network interface ID, but not both.
|
|
13567
13582
|
:param network_interface_id: The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID. You can specify either the instance ID or the network interface ID, but not both.
|
|
13568
13583
|
:param private_ip_address: The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
|
|
@@ -13616,8 +13631,12 @@ class CfnEIPAssociationProps:
|
|
|
13616
13631
|
|
|
13617
13632
|
@builtins.property
|
|
13618
13633
|
def eip(self) -> typing.Optional[builtins.str]:
|
|
13619
|
-
'''
|
|
13634
|
+
'''(deprecated) The Elastic IP address to associate with the instance.
|
|
13635
|
+
|
|
13636
|
+
:deprecated: this property has been deprecated
|
|
13637
|
+
|
|
13620
13638
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eipassociation.html#cfn-ec2-eipassociation-eip
|
|
13639
|
+
:stability: deprecated
|
|
13621
13640
|
'''
|
|
13622
13641
|
result = self._values.get("eip")
|
|
13623
13642
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
@@ -13696,7 +13715,7 @@ class CfnEIPProps:
|
|
|
13696
13715
|
|
|
13697
13716
|
:param domain: The network ( ``vpc`` ). If you define an Elastic IP address and associate it with a VPC that is defined in the same template, you must declare a dependency on the VPC-gateway attachment by using the `DependsOn Attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-dependson.html>`_ on this resource.
|
|
13698
13717
|
:param instance_id: The ID of the instance. .. epigraph:: Updates to the ``InstanceId`` property may require *some interruptions* . Updates on an EIP reassociates the address on its associated resource.
|
|
13699
|
-
:param network_border_group: A unique set of Availability Zones, Local Zones, or Wavelength Zones from which AWS advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups. Use `DescribeAvailabilityZones <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html>`_ to view the network border groups.
|
|
13718
|
+
:param network_border_group: A unique set of Availability Zones, Local Zones, or Wavelength Zones from which AWS advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups. Use `DescribeAvailabilityZones <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html>`_ to view the network border groups.
|
|
13700
13719
|
:param public_ipv4_pool: The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address pool. .. epigraph:: Updates to the ``PublicIpv4Pool`` property may require *some interruptions* . Updates on an EIP reassociates the address on its associated resource.
|
|
13701
13720
|
:param tags: Any tags assigned to the Elastic IP address. .. epigraph:: Updates to the ``Tags`` property may require *some interruptions* . Updates on an EIP reassociates the address on its associated resource.
|
|
13702
13721
|
:param transfer_address: The Elastic IP address you are accepting for transfer. You can only accept one transferred address. For more information on Elastic IP address transfers, see `Transfer Elastic IP addresses <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro>`_ in the *Amazon Virtual Private Cloud User Guide* .
|
|
@@ -13774,8 +13793,6 @@ class CfnEIPProps:
|
|
|
13774
13793
|
|
|
13775
13794
|
Use `DescribeAvailabilityZones <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html>`_ to view the network border groups.
|
|
13776
13795
|
|
|
13777
|
-
You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive an ``InvalidParameterCombination`` error.
|
|
13778
|
-
|
|
13779
13796
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-eip.html#cfn-ec2-eip-networkbordergroup
|
|
13780
13797
|
'''
|
|
13781
13798
|
result = self._values.get("network_border_group")
|
|
@@ -14230,6 +14247,7 @@ class CfnFlowLog(
|
|
|
14230
14247
|
resource_type="resourceType",
|
|
14231
14248
|
|
|
14232
14249
|
# the properties below are optional
|
|
14250
|
+
deliver_cross_account_role="deliverCrossAccountRole",
|
|
14233
14251
|
deliver_logs_permission_arn="deliverLogsPermissionArn",
|
|
14234
14252
|
destination_options=destination_options,
|
|
14235
14253
|
log_destination="logDestination",
|
|
@@ -14252,6 +14270,7 @@ class CfnFlowLog(
|
|
|
14252
14270
|
*,
|
|
14253
14271
|
resource_id: builtins.str,
|
|
14254
14272
|
resource_type: builtins.str,
|
|
14273
|
+
deliver_cross_account_role: typing.Optional[builtins.str] = None,
|
|
14255
14274
|
deliver_logs_permission_arn: typing.Optional[builtins.str] = None,
|
|
14256
14275
|
destination_options: typing.Any = None,
|
|
14257
14276
|
log_destination: typing.Optional[builtins.str] = None,
|
|
@@ -14267,6 +14286,7 @@ class CfnFlowLog(
|
|
|
14267
14286
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
14268
14287
|
:param resource_id: The ID of the resource to monitor. For example, if the resource type is ``VPC`` , specify the ID of the VPC.
|
|
14269
14288
|
:param resource_type: The type of resource to monitor.
|
|
14289
|
+
:param deliver_cross_account_role: The ARN of the IAM role that allows the service to publish flow logs across accounts.
|
|
14270
14290
|
:param deliver_logs_permission_arn: The ARN of the IAM role that allows Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. This parameter is required if the destination type is ``cloud-watch-logs`` and unsupported otherwise.
|
|
14271
14291
|
:param destination_options: The destination options. The following options are supported:. - ``FileFormat`` - The format for the flow log ( ``plain-text`` | ``parquet`` ). The default is ``plain-text`` . - ``HiveCompatiblePartitions`` - Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3 ( ``true`` | ``false`` ). The default is ``false`` . - ``PerHourPartition`` - Indicates whether to partition the flow log per hour ( ``true`` | ``false`` ). The default is ``false`` .
|
|
14272
14292
|
:param log_destination: The destination for the flow log data. The meaning of this parameter depends on the destination type. - If the destination type is ``cloud-watch-logs`` , specify the ARN of a CloudWatch Logs log group. For example: arn:aws:logs: *region* : *account_id* :log-group: *my_group* Alternatively, use the ``LogGroupName`` parameter. - If the destination type is ``s3`` , specify the ARN of an S3 bucket. For example: arn:aws:s3::: *my_bucket* / *my_subfolder* / The subfolder is optional. Note that you can't use ``AWSLogs`` as a subfolder name. - If the destination type is ``kinesis-data-firehose`` , specify the ARN of a Kinesis Data Firehose delivery stream. For example: arn:aws:firehose: *region* : *account_id* :deliverystream: *my_stream*
|
|
@@ -14284,6 +14304,7 @@ class CfnFlowLog(
|
|
|
14284
14304
|
props = CfnFlowLogProps(
|
|
14285
14305
|
resource_id=resource_id,
|
|
14286
14306
|
resource_type=resource_type,
|
|
14307
|
+
deliver_cross_account_role=deliver_cross_account_role,
|
|
14287
14308
|
deliver_logs_permission_arn=deliver_logs_permission_arn,
|
|
14288
14309
|
destination_options=destination_options,
|
|
14289
14310
|
log_destination=log_destination,
|
|
@@ -14375,6 +14396,19 @@ class CfnFlowLog(
|
|
|
14375
14396
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
14376
14397
|
jsii.set(self, "resourceType", value)
|
|
14377
14398
|
|
|
14399
|
+
@builtins.property
|
|
14400
|
+
@jsii.member(jsii_name="deliverCrossAccountRole")
|
|
14401
|
+
def deliver_cross_account_role(self) -> typing.Optional[builtins.str]:
|
|
14402
|
+
'''The ARN of the IAM role that allows the service to publish flow logs across accounts.'''
|
|
14403
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "deliverCrossAccountRole"))
|
|
14404
|
+
|
|
14405
|
+
@deliver_cross_account_role.setter
|
|
14406
|
+
def deliver_cross_account_role(self, value: typing.Optional[builtins.str]) -> None:
|
|
14407
|
+
if __debug__:
|
|
14408
|
+
type_hints = typing.get_type_hints(_typecheckingstub__69de10af6e71879a605a8ff40c4836ff6e89ad4220088a0599668acc26625a53)
|
|
14409
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
14410
|
+
jsii.set(self, "deliverCrossAccountRole", value)
|
|
14411
|
+
|
|
14378
14412
|
@builtins.property
|
|
14379
14413
|
@jsii.member(jsii_name="deliverLogsPermissionArn")
|
|
14380
14414
|
def deliver_logs_permission_arn(self) -> typing.Optional[builtins.str]:
|
|
@@ -14605,6 +14639,7 @@ class CfnFlowLog(
|
|
|
14605
14639
|
name_mapping={
|
|
14606
14640
|
"resource_id": "resourceId",
|
|
14607
14641
|
"resource_type": "resourceType",
|
|
14642
|
+
"deliver_cross_account_role": "deliverCrossAccountRole",
|
|
14608
14643
|
"deliver_logs_permission_arn": "deliverLogsPermissionArn",
|
|
14609
14644
|
"destination_options": "destinationOptions",
|
|
14610
14645
|
"log_destination": "logDestination",
|
|
@@ -14622,6 +14657,7 @@ class CfnFlowLogProps:
|
|
|
14622
14657
|
*,
|
|
14623
14658
|
resource_id: builtins.str,
|
|
14624
14659
|
resource_type: builtins.str,
|
|
14660
|
+
deliver_cross_account_role: typing.Optional[builtins.str] = None,
|
|
14625
14661
|
deliver_logs_permission_arn: typing.Optional[builtins.str] = None,
|
|
14626
14662
|
destination_options: typing.Any = None,
|
|
14627
14663
|
log_destination: typing.Optional[builtins.str] = None,
|
|
@@ -14636,6 +14672,7 @@ class CfnFlowLogProps:
|
|
|
14636
14672
|
|
|
14637
14673
|
:param resource_id: The ID of the resource to monitor. For example, if the resource type is ``VPC`` , specify the ID of the VPC.
|
|
14638
14674
|
:param resource_type: The type of resource to monitor.
|
|
14675
|
+
:param deliver_cross_account_role: The ARN of the IAM role that allows the service to publish flow logs across accounts.
|
|
14639
14676
|
:param deliver_logs_permission_arn: The ARN of the IAM role that allows Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. This parameter is required if the destination type is ``cloud-watch-logs`` and unsupported otherwise.
|
|
14640
14677
|
:param destination_options: The destination options. The following options are supported:. - ``FileFormat`` - The format for the flow log ( ``plain-text`` | ``parquet`` ). The default is ``plain-text`` . - ``HiveCompatiblePartitions`` - Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3 ( ``true`` | ``false`` ). The default is ``false`` . - ``PerHourPartition`` - Indicates whether to partition the flow log per hour ( ``true`` | ``false`` ). The default is ``false`` .
|
|
14641
14678
|
:param log_destination: The destination for the flow log data. The meaning of this parameter depends on the destination type. - If the destination type is ``cloud-watch-logs`` , specify the ARN of a CloudWatch Logs log group. For example: arn:aws:logs: *region* : *account_id* :log-group: *my_group* Alternatively, use the ``LogGroupName`` parameter. - If the destination type is ``s3`` , specify the ARN of an S3 bucket. For example: arn:aws:s3::: *my_bucket* / *my_subfolder* / The subfolder is optional. Note that you can't use ``AWSLogs`` as a subfolder name. - If the destination type is ``kinesis-data-firehose`` , specify the ARN of a Kinesis Data Firehose delivery stream. For example: arn:aws:firehose: *region* : *account_id* :deliverystream: *my_stream*
|
|
@@ -14662,6 +14699,7 @@ class CfnFlowLogProps:
|
|
|
14662
14699
|
resource_type="resourceType",
|
|
14663
14700
|
|
|
14664
14701
|
# the properties below are optional
|
|
14702
|
+
deliver_cross_account_role="deliverCrossAccountRole",
|
|
14665
14703
|
deliver_logs_permission_arn="deliverLogsPermissionArn",
|
|
14666
14704
|
destination_options=destination_options,
|
|
14667
14705
|
log_destination="logDestination",
|
|
@@ -14680,6 +14718,7 @@ class CfnFlowLogProps:
|
|
|
14680
14718
|
type_hints = typing.get_type_hints(_typecheckingstub__b70808589b9adfc66e939b8c87268607775dc0e479da5f4bed72c3ba8e3afef5)
|
|
14681
14719
|
check_type(argname="argument resource_id", value=resource_id, expected_type=type_hints["resource_id"])
|
|
14682
14720
|
check_type(argname="argument resource_type", value=resource_type, expected_type=type_hints["resource_type"])
|
|
14721
|
+
check_type(argname="argument deliver_cross_account_role", value=deliver_cross_account_role, expected_type=type_hints["deliver_cross_account_role"])
|
|
14683
14722
|
check_type(argname="argument deliver_logs_permission_arn", value=deliver_logs_permission_arn, expected_type=type_hints["deliver_logs_permission_arn"])
|
|
14684
14723
|
check_type(argname="argument destination_options", value=destination_options, expected_type=type_hints["destination_options"])
|
|
14685
14724
|
check_type(argname="argument log_destination", value=log_destination, expected_type=type_hints["log_destination"])
|
|
@@ -14693,6 +14732,8 @@ class CfnFlowLogProps:
|
|
|
14693
14732
|
"resource_id": resource_id,
|
|
14694
14733
|
"resource_type": resource_type,
|
|
14695
14734
|
}
|
|
14735
|
+
if deliver_cross_account_role is not None:
|
|
14736
|
+
self._values["deliver_cross_account_role"] = deliver_cross_account_role
|
|
14696
14737
|
if deliver_logs_permission_arn is not None:
|
|
14697
14738
|
self._values["deliver_logs_permission_arn"] = deliver_logs_permission_arn
|
|
14698
14739
|
if destination_options is not None:
|
|
@@ -14734,6 +14775,15 @@ class CfnFlowLogProps:
|
|
|
14734
14775
|
assert result is not None, "Required property 'resource_type' is missing"
|
|
14735
14776
|
return typing.cast(builtins.str, result)
|
|
14736
14777
|
|
|
14778
|
+
@builtins.property
|
|
14779
|
+
def deliver_cross_account_role(self) -> typing.Optional[builtins.str]:
|
|
14780
|
+
'''The ARN of the IAM role that allows the service to publish flow logs across accounts.
|
|
14781
|
+
|
|
14782
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-delivercrossaccountrole
|
|
14783
|
+
'''
|
|
14784
|
+
result = self._values.get("deliver_cross_account_role")
|
|
14785
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
14786
|
+
|
|
14737
14787
|
@builtins.property
|
|
14738
14788
|
def deliver_logs_permission_arn(self) -> typing.Optional[builtins.str]:
|
|
14739
14789
|
'''The ARN of the IAM role that allows Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account.
|
|
@@ -20977,6 +21027,331 @@ class CfnInstance(
|
|
|
20977
21027
|
)
|
|
20978
21028
|
|
|
20979
21029
|
|
|
21030
|
+
@jsii.implements(_IInspectable_c2943556)
|
|
21031
|
+
class CfnInstanceConnectEndpoint(
|
|
21032
|
+
_CfnResource_9df397a6,
|
|
21033
|
+
metaclass=jsii.JSIIMeta,
|
|
21034
|
+
jsii_type="aws-cdk-lib.aws_ec2.CfnInstanceConnectEndpoint",
|
|
21035
|
+
):
|
|
21036
|
+
'''Creates an EC2 Instance Connect Endpoint.
|
|
21037
|
+
|
|
21038
|
+
An EC2 Instance Connect Endpoint allows you to connect to an instance, without requiring the instance to have a public IPv4 address. For more information, see `Connect to your instances without requiring a public IPv4 address using EC2 Instance Connect Endpoint <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect-Endpoint.html>`_ in the *Amazon EC2 User Guide* .
|
|
21039
|
+
|
|
21040
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html
|
|
21041
|
+
:exampleMetadata: fixture=_generated
|
|
21042
|
+
|
|
21043
|
+
Example::
|
|
21044
|
+
|
|
21045
|
+
# The code below shows an example of how to instantiate this type.
|
|
21046
|
+
# The values are placeholders you should change.
|
|
21047
|
+
from aws_cdk import aws_ec2 as ec2
|
|
21048
|
+
|
|
21049
|
+
cfn_instance_connect_endpoint = ec2.CfnInstanceConnectEndpoint(self, "MyCfnInstanceConnectEndpoint",
|
|
21050
|
+
subnet_id="subnetId",
|
|
21051
|
+
|
|
21052
|
+
# the properties below are optional
|
|
21053
|
+
client_token="clientToken",
|
|
21054
|
+
preserve_client_ip=False,
|
|
21055
|
+
security_group_ids=["securityGroupIds"],
|
|
21056
|
+
tags=[CfnTag(
|
|
21057
|
+
key="key",
|
|
21058
|
+
value="value"
|
|
21059
|
+
)]
|
|
21060
|
+
)
|
|
21061
|
+
'''
|
|
21062
|
+
|
|
21063
|
+
def __init__(
|
|
21064
|
+
self,
|
|
21065
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
21066
|
+
id: builtins.str,
|
|
21067
|
+
*,
|
|
21068
|
+
subnet_id: builtins.str,
|
|
21069
|
+
client_token: typing.Optional[builtins.str] = None,
|
|
21070
|
+
preserve_client_ip: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
21071
|
+
security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
21072
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
21073
|
+
) -> None:
|
|
21074
|
+
'''
|
|
21075
|
+
:param scope: Scope in which this resource is defined.
|
|
21076
|
+
:param id: Construct identifier for this resource (unique in its scope).
|
|
21077
|
+
:param subnet_id: The ID of the subnet in which to create the EC2 Instance Connect Endpoint.
|
|
21078
|
+
:param client_token: Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
|
|
21079
|
+
:param preserve_client_ip: Indicates whether your client's IP address is preserved as the source. The value is ``true`` or ``false`` . - If ``true`` , your client's IP address is used when you connect to a resource. - If ``false`` , the elastic network interface IP address is used when you connect to a resource. Default: ``true``
|
|
21080
|
+
:param security_group_ids: One or more security groups to associate with the endpoint. If you don't specify a security group, the default security group for your VPC will be associated with the endpoint.
|
|
21081
|
+
:param tags: The tags to apply to the EC2 Instance Connect Endpoint during creation.
|
|
21082
|
+
'''
|
|
21083
|
+
if __debug__:
|
|
21084
|
+
type_hints = typing.get_type_hints(_typecheckingstub__5dd25848f0ceb23edd764d8f4a076cf8f9d22793b6ca99db922a9c410f58ba1f)
|
|
21085
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
21086
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
21087
|
+
props = CfnInstanceConnectEndpointProps(
|
|
21088
|
+
subnet_id=subnet_id,
|
|
21089
|
+
client_token=client_token,
|
|
21090
|
+
preserve_client_ip=preserve_client_ip,
|
|
21091
|
+
security_group_ids=security_group_ids,
|
|
21092
|
+
tags=tags,
|
|
21093
|
+
)
|
|
21094
|
+
|
|
21095
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
21096
|
+
|
|
21097
|
+
@jsii.member(jsii_name="inspect")
|
|
21098
|
+
def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
|
|
21099
|
+
'''Examines the CloudFormation resource and discloses attributes.
|
|
21100
|
+
|
|
21101
|
+
:param inspector: tree inspector to collect and process attributes.
|
|
21102
|
+
'''
|
|
21103
|
+
if __debug__:
|
|
21104
|
+
type_hints = typing.get_type_hints(_typecheckingstub__5891536cec39a3051ee1e1e6cad74074ab2e104448cf33448a891defadf16b6e)
|
|
21105
|
+
check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
|
|
21106
|
+
return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
|
|
21107
|
+
|
|
21108
|
+
@jsii.member(jsii_name="renderProperties")
|
|
21109
|
+
def _render_properties(
|
|
21110
|
+
self,
|
|
21111
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
21112
|
+
) -> typing.Mapping[builtins.str, typing.Any]:
|
|
21113
|
+
'''
|
|
21114
|
+
:param props: -
|
|
21115
|
+
'''
|
|
21116
|
+
if __debug__:
|
|
21117
|
+
type_hints = typing.get_type_hints(_typecheckingstub__08af6017181d75f497ef7453c702f6e6ac3f87faf252f7dae4c9797af2382847)
|
|
21118
|
+
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
21119
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
|
|
21120
|
+
|
|
21121
|
+
@jsii.python.classproperty
|
|
21122
|
+
@jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
|
|
21123
|
+
def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
|
|
21124
|
+
'''The CloudFormation resource type name for this resource class.'''
|
|
21125
|
+
return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
|
|
21126
|
+
|
|
21127
|
+
@builtins.property
|
|
21128
|
+
@jsii.member(jsii_name="attrId")
|
|
21129
|
+
def attr_id(self) -> builtins.str:
|
|
21130
|
+
'''The ID of the EC2 Instance Connect Endpoint.
|
|
21131
|
+
|
|
21132
|
+
:cloudformationAttribute: Id
|
|
21133
|
+
'''
|
|
21134
|
+
return typing.cast(builtins.str, jsii.get(self, "attrId"))
|
|
21135
|
+
|
|
21136
|
+
@builtins.property
|
|
21137
|
+
@jsii.member(jsii_name="cfnProperties")
|
|
21138
|
+
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
21139
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
21140
|
+
|
|
21141
|
+
@builtins.property
|
|
21142
|
+
@jsii.member(jsii_name="subnetId")
|
|
21143
|
+
def subnet_id(self) -> builtins.str:
|
|
21144
|
+
'''The ID of the subnet in which to create the EC2 Instance Connect Endpoint.'''
|
|
21145
|
+
return typing.cast(builtins.str, jsii.get(self, "subnetId"))
|
|
21146
|
+
|
|
21147
|
+
@subnet_id.setter
|
|
21148
|
+
def subnet_id(self, value: builtins.str) -> None:
|
|
21149
|
+
if __debug__:
|
|
21150
|
+
type_hints = typing.get_type_hints(_typecheckingstub__18fe6754ba2f44060c4a7a2127a488b7e626c5c1761f524fdb756846a1b48e44)
|
|
21151
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
21152
|
+
jsii.set(self, "subnetId", value)
|
|
21153
|
+
|
|
21154
|
+
@builtins.property
|
|
21155
|
+
@jsii.member(jsii_name="clientToken")
|
|
21156
|
+
def client_token(self) -> typing.Optional[builtins.str]:
|
|
21157
|
+
'''Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.'''
|
|
21158
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "clientToken"))
|
|
21159
|
+
|
|
21160
|
+
@client_token.setter
|
|
21161
|
+
def client_token(self, value: typing.Optional[builtins.str]) -> None:
|
|
21162
|
+
if __debug__:
|
|
21163
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a075309e51f465140660c0455acd101077c2364e286033707a8d1e11f4cc3a6a)
|
|
21164
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
21165
|
+
jsii.set(self, "clientToken", value)
|
|
21166
|
+
|
|
21167
|
+
@builtins.property
|
|
21168
|
+
@jsii.member(jsii_name="preserveClientIp")
|
|
21169
|
+
def preserve_client_ip(
|
|
21170
|
+
self,
|
|
21171
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
21172
|
+
'''Indicates whether your client's IP address is preserved as the source.
|
|
21173
|
+
|
|
21174
|
+
The value is ``true`` or ``false`` .
|
|
21175
|
+
'''
|
|
21176
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "preserveClientIp"))
|
|
21177
|
+
|
|
21178
|
+
@preserve_client_ip.setter
|
|
21179
|
+
def preserve_client_ip(
|
|
21180
|
+
self,
|
|
21181
|
+
value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
|
|
21182
|
+
) -> None:
|
|
21183
|
+
if __debug__:
|
|
21184
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a3c9af51a15924a206fae71c0b2615bf7be3e42b8bb7722c9e794e13a40973a7)
|
|
21185
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
21186
|
+
jsii.set(self, "preserveClientIp", value)
|
|
21187
|
+
|
|
21188
|
+
@builtins.property
|
|
21189
|
+
@jsii.member(jsii_name="securityGroupIds")
|
|
21190
|
+
def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
21191
|
+
'''One or more security groups to associate with the endpoint.'''
|
|
21192
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "securityGroupIds"))
|
|
21193
|
+
|
|
21194
|
+
@security_group_ids.setter
|
|
21195
|
+
def security_group_ids(
|
|
21196
|
+
self,
|
|
21197
|
+
value: typing.Optional[typing.List[builtins.str]],
|
|
21198
|
+
) -> None:
|
|
21199
|
+
if __debug__:
|
|
21200
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a9a795e386e76f7e1445d90e3d1e800e540f41237f0e797a5e2058cb7b78553e)
|
|
21201
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
21202
|
+
jsii.set(self, "securityGroupIds", value)
|
|
21203
|
+
|
|
21204
|
+
@builtins.property
|
|
21205
|
+
@jsii.member(jsii_name="tags")
|
|
21206
|
+
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
21207
|
+
'''The tags to apply to the EC2 Instance Connect Endpoint during creation.'''
|
|
21208
|
+
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
|
|
21209
|
+
|
|
21210
|
+
@tags.setter
|
|
21211
|
+
def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
|
|
21212
|
+
if __debug__:
|
|
21213
|
+
type_hints = typing.get_type_hints(_typecheckingstub__3dd5921daaa37553fc9b30d074bd3ef6cfc6e9a796db9530140935d020cd87ae)
|
|
21214
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
21215
|
+
jsii.set(self, "tags", value)
|
|
21216
|
+
|
|
21217
|
+
|
|
21218
|
+
@jsii.data_type(
|
|
21219
|
+
jsii_type="aws-cdk-lib.aws_ec2.CfnInstanceConnectEndpointProps",
|
|
21220
|
+
jsii_struct_bases=[],
|
|
21221
|
+
name_mapping={
|
|
21222
|
+
"subnet_id": "subnetId",
|
|
21223
|
+
"client_token": "clientToken",
|
|
21224
|
+
"preserve_client_ip": "preserveClientIp",
|
|
21225
|
+
"security_group_ids": "securityGroupIds",
|
|
21226
|
+
"tags": "tags",
|
|
21227
|
+
},
|
|
21228
|
+
)
|
|
21229
|
+
class CfnInstanceConnectEndpointProps:
|
|
21230
|
+
def __init__(
|
|
21231
|
+
self,
|
|
21232
|
+
*,
|
|
21233
|
+
subnet_id: builtins.str,
|
|
21234
|
+
client_token: typing.Optional[builtins.str] = None,
|
|
21235
|
+
preserve_client_ip: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
21236
|
+
security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
21237
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
21238
|
+
) -> None:
|
|
21239
|
+
'''Properties for defining a ``CfnInstanceConnectEndpoint``.
|
|
21240
|
+
|
|
21241
|
+
:param subnet_id: The ID of the subnet in which to create the EC2 Instance Connect Endpoint.
|
|
21242
|
+
:param client_token: Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
|
|
21243
|
+
:param preserve_client_ip: Indicates whether your client's IP address is preserved as the source. The value is ``true`` or ``false`` . - If ``true`` , your client's IP address is used when you connect to a resource. - If ``false`` , the elastic network interface IP address is used when you connect to a resource. Default: ``true``
|
|
21244
|
+
:param security_group_ids: One or more security groups to associate with the endpoint. If you don't specify a security group, the default security group for your VPC will be associated with the endpoint.
|
|
21245
|
+
:param tags: The tags to apply to the EC2 Instance Connect Endpoint during creation.
|
|
21246
|
+
|
|
21247
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html
|
|
21248
|
+
:exampleMetadata: fixture=_generated
|
|
21249
|
+
|
|
21250
|
+
Example::
|
|
21251
|
+
|
|
21252
|
+
# The code below shows an example of how to instantiate this type.
|
|
21253
|
+
# The values are placeholders you should change.
|
|
21254
|
+
from aws_cdk import aws_ec2 as ec2
|
|
21255
|
+
|
|
21256
|
+
cfn_instance_connect_endpoint_props = ec2.CfnInstanceConnectEndpointProps(
|
|
21257
|
+
subnet_id="subnetId",
|
|
21258
|
+
|
|
21259
|
+
# the properties below are optional
|
|
21260
|
+
client_token="clientToken",
|
|
21261
|
+
preserve_client_ip=False,
|
|
21262
|
+
security_group_ids=["securityGroupIds"],
|
|
21263
|
+
tags=[CfnTag(
|
|
21264
|
+
key="key",
|
|
21265
|
+
value="value"
|
|
21266
|
+
)]
|
|
21267
|
+
)
|
|
21268
|
+
'''
|
|
21269
|
+
if __debug__:
|
|
21270
|
+
type_hints = typing.get_type_hints(_typecheckingstub__78086551229af23659e2463ffd3801975d2b07247065af08d90eebf9e7f66ef8)
|
|
21271
|
+
check_type(argname="argument subnet_id", value=subnet_id, expected_type=type_hints["subnet_id"])
|
|
21272
|
+
check_type(argname="argument client_token", value=client_token, expected_type=type_hints["client_token"])
|
|
21273
|
+
check_type(argname="argument preserve_client_ip", value=preserve_client_ip, expected_type=type_hints["preserve_client_ip"])
|
|
21274
|
+
check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
|
|
21275
|
+
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
21276
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
21277
|
+
"subnet_id": subnet_id,
|
|
21278
|
+
}
|
|
21279
|
+
if client_token is not None:
|
|
21280
|
+
self._values["client_token"] = client_token
|
|
21281
|
+
if preserve_client_ip is not None:
|
|
21282
|
+
self._values["preserve_client_ip"] = preserve_client_ip
|
|
21283
|
+
if security_group_ids is not None:
|
|
21284
|
+
self._values["security_group_ids"] = security_group_ids
|
|
21285
|
+
if tags is not None:
|
|
21286
|
+
self._values["tags"] = tags
|
|
21287
|
+
|
|
21288
|
+
@builtins.property
|
|
21289
|
+
def subnet_id(self) -> builtins.str:
|
|
21290
|
+
'''The ID of the subnet in which to create the EC2 Instance Connect Endpoint.
|
|
21291
|
+
|
|
21292
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html#cfn-ec2-instanceconnectendpoint-subnetid
|
|
21293
|
+
'''
|
|
21294
|
+
result = self._values.get("subnet_id")
|
|
21295
|
+
assert result is not None, "Required property 'subnet_id' is missing"
|
|
21296
|
+
return typing.cast(builtins.str, result)
|
|
21297
|
+
|
|
21298
|
+
@builtins.property
|
|
21299
|
+
def client_token(self) -> typing.Optional[builtins.str]:
|
|
21300
|
+
'''Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
|
|
21301
|
+
|
|
21302
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html#cfn-ec2-instanceconnectendpoint-clienttoken
|
|
21303
|
+
'''
|
|
21304
|
+
result = self._values.get("client_token")
|
|
21305
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
21306
|
+
|
|
21307
|
+
@builtins.property
|
|
21308
|
+
def preserve_client_ip(
|
|
21309
|
+
self,
|
|
21310
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
21311
|
+
'''Indicates whether your client's IP address is preserved as the source. The value is ``true`` or ``false`` .
|
|
21312
|
+
|
|
21313
|
+
- If ``true`` , your client's IP address is used when you connect to a resource.
|
|
21314
|
+
- If ``false`` , the elastic network interface IP address is used when you connect to a resource.
|
|
21315
|
+
|
|
21316
|
+
Default: ``true``
|
|
21317
|
+
|
|
21318
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html#cfn-ec2-instanceconnectendpoint-preserveclientip
|
|
21319
|
+
'''
|
|
21320
|
+
result = self._values.get("preserve_client_ip")
|
|
21321
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
21322
|
+
|
|
21323
|
+
@builtins.property
|
|
21324
|
+
def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
21325
|
+
'''One or more security groups to associate with the endpoint.
|
|
21326
|
+
|
|
21327
|
+
If you don't specify a security group, the default security group for your VPC will be associated with the endpoint.
|
|
21328
|
+
|
|
21329
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html#cfn-ec2-instanceconnectendpoint-securitygroupids
|
|
21330
|
+
'''
|
|
21331
|
+
result = self._values.get("security_group_ids")
|
|
21332
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
21333
|
+
|
|
21334
|
+
@builtins.property
|
|
21335
|
+
def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
|
|
21336
|
+
'''The tags to apply to the EC2 Instance Connect Endpoint during creation.
|
|
21337
|
+
|
|
21338
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-instanceconnectendpoint.html#cfn-ec2-instanceconnectendpoint-tags
|
|
21339
|
+
'''
|
|
21340
|
+
result = self._values.get("tags")
|
|
21341
|
+
return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
|
|
21342
|
+
|
|
21343
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
21344
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
21345
|
+
|
|
21346
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
21347
|
+
return not (rhs == self)
|
|
21348
|
+
|
|
21349
|
+
def __repr__(self) -> str:
|
|
21350
|
+
return "CfnInstanceConnectEndpointProps(%s)" % ", ".join(
|
|
21351
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
21352
|
+
)
|
|
21353
|
+
|
|
21354
|
+
|
|
20980
21355
|
@jsii.data_type(
|
|
20981
21356
|
jsii_type="aws-cdk-lib.aws_ec2.CfnInstanceProps",
|
|
20982
21357
|
jsii_struct_bases=[],
|
|
@@ -24887,6 +25262,7 @@ class CfnLaunchTemplate(
|
|
|
24887
25262
|
)],
|
|
24888
25263
|
network_card_index=123,
|
|
24889
25264
|
network_interface_id="networkInterfaceId",
|
|
25265
|
+
primary_ipv6=False,
|
|
24890
25266
|
private_ip_address="privateIpAddress",
|
|
24891
25267
|
private_ip_addresses=[ec2.CfnLaunchTemplate.PrivateIpAddProperty(
|
|
24892
25268
|
primary=False,
|
|
@@ -26247,6 +26623,7 @@ class CfnLaunchTemplate(
|
|
|
26247
26623
|
"ipv6_prefixes": "ipv6Prefixes",
|
|
26248
26624
|
"network_card_index": "networkCardIndex",
|
|
26249
26625
|
"network_interface_id": "networkInterfaceId",
|
|
26626
|
+
"primary_ipv6": "primaryIpv6",
|
|
26250
26627
|
"private_ip_address": "privateIpAddress",
|
|
26251
26628
|
"private_ip_addresses": "privateIpAddresses",
|
|
26252
26629
|
"secondary_private_ip_address_count": "secondaryPrivateIpAddressCount",
|
|
@@ -26272,6 +26649,7 @@ class CfnLaunchTemplate(
|
|
|
26272
26649
|
ipv6_prefixes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLaunchTemplate.Ipv6PrefixSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
26273
26650
|
network_card_index: typing.Optional[jsii.Number] = None,
|
|
26274
26651
|
network_interface_id: typing.Optional[builtins.str] = None,
|
|
26652
|
+
primary_ipv6: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
26275
26653
|
private_ip_address: typing.Optional[builtins.str] = None,
|
|
26276
26654
|
private_ip_addresses: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLaunchTemplate.PrivateIpAddProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
26277
26655
|
secondary_private_ip_address_count: typing.Optional[jsii.Number] = None,
|
|
@@ -26296,6 +26674,7 @@ class CfnLaunchTemplate(
|
|
|
26296
26674
|
:param ipv6_prefixes: One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the ``Ipv6PrefixCount`` option.
|
|
26297
26675
|
:param network_card_index: The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.
|
|
26298
26676
|
:param network_interface_id: The ID of the network interface.
|
|
26677
|
+
:param primary_ipv6: The primary IPv6 address of the network interface. When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see `RunInstances <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html>`_ .
|
|
26299
26678
|
:param private_ip_address: The primary private IPv4 address of the network interface.
|
|
26300
26679
|
:param private_ip_addresses: One or more private IPv4 addresses.
|
|
26301
26680
|
:param secondary_private_ip_address_count: The number of secondary private IPv4 addresses to assign to a network interface.
|
|
@@ -26332,6 +26711,7 @@ class CfnLaunchTemplate(
|
|
|
26332
26711
|
)],
|
|
26333
26712
|
network_card_index=123,
|
|
26334
26713
|
network_interface_id="networkInterfaceId",
|
|
26714
|
+
primary_ipv6=False,
|
|
26335
26715
|
private_ip_address="privateIpAddress",
|
|
26336
26716
|
private_ip_addresses=[ec2.CfnLaunchTemplate.PrivateIpAddProperty(
|
|
26337
26717
|
primary=False,
|
|
@@ -26358,6 +26738,7 @@ class CfnLaunchTemplate(
|
|
|
26358
26738
|
check_type(argname="argument ipv6_prefixes", value=ipv6_prefixes, expected_type=type_hints["ipv6_prefixes"])
|
|
26359
26739
|
check_type(argname="argument network_card_index", value=network_card_index, expected_type=type_hints["network_card_index"])
|
|
26360
26740
|
check_type(argname="argument network_interface_id", value=network_interface_id, expected_type=type_hints["network_interface_id"])
|
|
26741
|
+
check_type(argname="argument primary_ipv6", value=primary_ipv6, expected_type=type_hints["primary_ipv6"])
|
|
26361
26742
|
check_type(argname="argument private_ip_address", value=private_ip_address, expected_type=type_hints["private_ip_address"])
|
|
26362
26743
|
check_type(argname="argument private_ip_addresses", value=private_ip_addresses, expected_type=type_hints["private_ip_addresses"])
|
|
26363
26744
|
check_type(argname="argument secondary_private_ip_address_count", value=secondary_private_ip_address_count, expected_type=type_hints["secondary_private_ip_address_count"])
|
|
@@ -26393,6 +26774,8 @@ class CfnLaunchTemplate(
|
|
|
26393
26774
|
self._values["network_card_index"] = network_card_index
|
|
26394
26775
|
if network_interface_id is not None:
|
|
26395
26776
|
self._values["network_interface_id"] = network_interface_id
|
|
26777
|
+
if primary_ipv6 is not None:
|
|
26778
|
+
self._values["primary_ipv6"] = primary_ipv6
|
|
26396
26779
|
if private_ip_address is not None:
|
|
26397
26780
|
self._values["private_ip_address"] = private_ip_address
|
|
26398
26781
|
if private_ip_addresses is not None:
|
|
@@ -26571,6 +26954,19 @@ class CfnLaunchTemplate(
|
|
|
26571
26954
|
result = self._values.get("network_interface_id")
|
|
26572
26955
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
26573
26956
|
|
|
26957
|
+
@builtins.property
|
|
26958
|
+
def primary_ipv6(
|
|
26959
|
+
self,
|
|
26960
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
26961
|
+
'''The primary IPv6 address of the network interface.
|
|
26962
|
+
|
|
26963
|
+
When you enable an IPv6 GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is terminated or the network interface is detached. For more information about primary IPv6 addresses, see `RunInstances <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html>`_ .
|
|
26964
|
+
|
|
26965
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-launchtemplate-networkinterface.html#cfn-ec2-launchtemplate-networkinterface-primaryipv6
|
|
26966
|
+
'''
|
|
26967
|
+
result = self._values.get("primary_ipv6")
|
|
26968
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
26969
|
+
|
|
26574
26970
|
@builtins.property
|
|
26575
26971
|
def private_ip_address(self) -> typing.Optional[builtins.str]:
|
|
26576
26972
|
'''The primary private IPv4 address of the network interface.
|
|
@@ -28594,11 +28990,12 @@ class CfnNatGateway(
|
|
|
28594
28990
|
|
|
28595
28991
|
You can create either a public NAT gateway or a private NAT gateway. The default is a public NAT gateway. If you create a public NAT gateway, you must specify an elastic IP address.
|
|
28596
28992
|
|
|
28597
|
-
With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway.
|
|
28993
|
+
With a NAT gateway, instances in a private subnet can connect to the internet, other AWS services, or an on-premises network using the IP address of the NAT gateway. For more information, see `NAT Gateways <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html>`_ in the *Amazon VPC User Guide* .
|
|
28598
28994
|
|
|
28599
28995
|
If you add a default route ( ``AWS::EC2::Route`` resource) that points to a NAT gateway, specify the NAT gateway ID for the route's ``NatGatewayId`` property.
|
|
28996
|
+
.. epigraph::
|
|
28600
28997
|
|
|
28601
|
-
|
|
28998
|
+
When you associate an EIP or secondary EIPs with a public NAT gateway, the network border group of the EIPs must match the network border group of the Availability Zone (AZ) that the public NAT gateway is in. If it's not the same, the NAT gateway will fail to launch. You can see the network border group for the subnet's AZ by viewing the details of the subnet. Similarly, you can view the network border group of an EIP by viewing the details of the EIP address. For more information about network border groups and EIPs, see `Allocate an Elastic IP address <https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#allocate-eip>`_ in the *Amazon VPC User Guide* .
|
|
28602
28999
|
|
|
28603
29000
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html
|
|
28604
29001
|
:exampleMetadata: fixture=_generated
|
|
@@ -37710,6 +38107,7 @@ class CfnRoute(
|
|
|
37710
38107
|
carrier_gateway_id="carrierGatewayId",
|
|
37711
38108
|
destination_cidr_block="destinationCidrBlock",
|
|
37712
38109
|
destination_ipv6_cidr_block="destinationIpv6CidrBlock",
|
|
38110
|
+
destination_prefix_list_id="destinationPrefixListId",
|
|
37713
38111
|
egress_only_internet_gateway_id="egressOnlyInternetGatewayId",
|
|
37714
38112
|
gateway_id="gatewayId",
|
|
37715
38113
|
instance_id="instanceId",
|
|
@@ -37731,6 +38129,7 @@ class CfnRoute(
|
|
|
37731
38129
|
carrier_gateway_id: typing.Optional[builtins.str] = None,
|
|
37732
38130
|
destination_cidr_block: typing.Optional[builtins.str] = None,
|
|
37733
38131
|
destination_ipv6_cidr_block: typing.Optional[builtins.str] = None,
|
|
38132
|
+
destination_prefix_list_id: typing.Optional[builtins.str] = None,
|
|
37734
38133
|
egress_only_internet_gateway_id: typing.Optional[builtins.str] = None,
|
|
37735
38134
|
gateway_id: typing.Optional[builtins.str] = None,
|
|
37736
38135
|
instance_id: typing.Optional[builtins.str] = None,
|
|
@@ -37748,6 +38147,7 @@ class CfnRoute(
|
|
|
37748
38147
|
:param carrier_gateway_id: The ID of the carrier gateway. You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.
|
|
37749
38148
|
:param destination_cidr_block: The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify ``100.68.0.18/18`` , we modify it to ``100.68.0.0/18`` .
|
|
37750
38149
|
:param destination_ipv6_cidr_block: The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
|
|
38150
|
+
:param destination_prefix_list_id: The ID of managed prefix list, it's a set of one or more CIDR blocks.
|
|
37751
38151
|
:param egress_only_internet_gateway_id: [IPv6 traffic only] The ID of an egress-only internet gateway.
|
|
37752
38152
|
:param gateway_id: The ID of an internet gateway or virtual private gateway attached to your VPC.
|
|
37753
38153
|
:param instance_id: The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
|
|
@@ -37767,6 +38167,7 @@ class CfnRoute(
|
|
|
37767
38167
|
carrier_gateway_id=carrier_gateway_id,
|
|
37768
38168
|
destination_cidr_block=destination_cidr_block,
|
|
37769
38169
|
destination_ipv6_cidr_block=destination_ipv6_cidr_block,
|
|
38170
|
+
destination_prefix_list_id=destination_prefix_list_id,
|
|
37770
38171
|
egress_only_internet_gateway_id=egress_only_internet_gateway_id,
|
|
37771
38172
|
gateway_id=gateway_id,
|
|
37772
38173
|
instance_id=instance_id,
|
|
@@ -37876,6 +38277,19 @@ class CfnRoute(
|
|
|
37876
38277
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
37877
38278
|
jsii.set(self, "destinationIpv6CidrBlock", value)
|
|
37878
38279
|
|
|
38280
|
+
@builtins.property
|
|
38281
|
+
@jsii.member(jsii_name="destinationPrefixListId")
|
|
38282
|
+
def destination_prefix_list_id(self) -> typing.Optional[builtins.str]:
|
|
38283
|
+
'''The ID of managed prefix list, it's a set of one or more CIDR blocks.'''
|
|
38284
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "destinationPrefixListId"))
|
|
38285
|
+
|
|
38286
|
+
@destination_prefix_list_id.setter
|
|
38287
|
+
def destination_prefix_list_id(self, value: typing.Optional[builtins.str]) -> None:
|
|
38288
|
+
if __debug__:
|
|
38289
|
+
type_hints = typing.get_type_hints(_typecheckingstub__28b2d9e818763b23c1689ff8d32ac779a6cdf2e20e4e1b57f65f0f3474ae8878)
|
|
38290
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
38291
|
+
jsii.set(self, "destinationPrefixListId", value)
|
|
38292
|
+
|
|
37879
38293
|
@builtins.property
|
|
37880
38294
|
@jsii.member(jsii_name="egressOnlyInternetGatewayId")
|
|
37881
38295
|
def egress_only_internet_gateway_id(self) -> typing.Optional[builtins.str]:
|
|
@@ -38005,6 +38419,7 @@ class CfnRoute(
|
|
|
38005
38419
|
"carrier_gateway_id": "carrierGatewayId",
|
|
38006
38420
|
"destination_cidr_block": "destinationCidrBlock",
|
|
38007
38421
|
"destination_ipv6_cidr_block": "destinationIpv6CidrBlock",
|
|
38422
|
+
"destination_prefix_list_id": "destinationPrefixListId",
|
|
38008
38423
|
"egress_only_internet_gateway_id": "egressOnlyInternetGatewayId",
|
|
38009
38424
|
"gateway_id": "gatewayId",
|
|
38010
38425
|
"instance_id": "instanceId",
|
|
@@ -38024,6 +38439,7 @@ class CfnRouteProps:
|
|
|
38024
38439
|
carrier_gateway_id: typing.Optional[builtins.str] = None,
|
|
38025
38440
|
destination_cidr_block: typing.Optional[builtins.str] = None,
|
|
38026
38441
|
destination_ipv6_cidr_block: typing.Optional[builtins.str] = None,
|
|
38442
|
+
destination_prefix_list_id: typing.Optional[builtins.str] = None,
|
|
38027
38443
|
egress_only_internet_gateway_id: typing.Optional[builtins.str] = None,
|
|
38028
38444
|
gateway_id: typing.Optional[builtins.str] = None,
|
|
38029
38445
|
instance_id: typing.Optional[builtins.str] = None,
|
|
@@ -38040,6 +38456,7 @@ class CfnRouteProps:
|
|
|
38040
38456
|
:param carrier_gateway_id: The ID of the carrier gateway. You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.
|
|
38041
38457
|
:param destination_cidr_block: The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify ``100.68.0.18/18`` , we modify it to ``100.68.0.0/18`` .
|
|
38042
38458
|
:param destination_ipv6_cidr_block: The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
|
|
38459
|
+
:param destination_prefix_list_id: The ID of managed prefix list, it's a set of one or more CIDR blocks.
|
|
38043
38460
|
:param egress_only_internet_gateway_id: [IPv6 traffic only] The ID of an egress-only internet gateway.
|
|
38044
38461
|
:param gateway_id: The ID of an internet gateway or virtual private gateway attached to your VPC.
|
|
38045
38462
|
:param instance_id: The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
|
|
@@ -38066,6 +38483,7 @@ class CfnRouteProps:
|
|
|
38066
38483
|
carrier_gateway_id="carrierGatewayId",
|
|
38067
38484
|
destination_cidr_block="destinationCidrBlock",
|
|
38068
38485
|
destination_ipv6_cidr_block="destinationIpv6CidrBlock",
|
|
38486
|
+
destination_prefix_list_id="destinationPrefixListId",
|
|
38069
38487
|
egress_only_internet_gateway_id="egressOnlyInternetGatewayId",
|
|
38070
38488
|
gateway_id="gatewayId",
|
|
38071
38489
|
instance_id="instanceId",
|
|
@@ -38083,6 +38501,7 @@ class CfnRouteProps:
|
|
|
38083
38501
|
check_type(argname="argument carrier_gateway_id", value=carrier_gateway_id, expected_type=type_hints["carrier_gateway_id"])
|
|
38084
38502
|
check_type(argname="argument destination_cidr_block", value=destination_cidr_block, expected_type=type_hints["destination_cidr_block"])
|
|
38085
38503
|
check_type(argname="argument destination_ipv6_cidr_block", value=destination_ipv6_cidr_block, expected_type=type_hints["destination_ipv6_cidr_block"])
|
|
38504
|
+
check_type(argname="argument destination_prefix_list_id", value=destination_prefix_list_id, expected_type=type_hints["destination_prefix_list_id"])
|
|
38086
38505
|
check_type(argname="argument egress_only_internet_gateway_id", value=egress_only_internet_gateway_id, expected_type=type_hints["egress_only_internet_gateway_id"])
|
|
38087
38506
|
check_type(argname="argument gateway_id", value=gateway_id, expected_type=type_hints["gateway_id"])
|
|
38088
38507
|
check_type(argname="argument instance_id", value=instance_id, expected_type=type_hints["instance_id"])
|
|
@@ -38101,6 +38520,8 @@ class CfnRouteProps:
|
|
|
38101
38520
|
self._values["destination_cidr_block"] = destination_cidr_block
|
|
38102
38521
|
if destination_ipv6_cidr_block is not None:
|
|
38103
38522
|
self._values["destination_ipv6_cidr_block"] = destination_ipv6_cidr_block
|
|
38523
|
+
if destination_prefix_list_id is not None:
|
|
38524
|
+
self._values["destination_prefix_list_id"] = destination_prefix_list_id
|
|
38104
38525
|
if egress_only_internet_gateway_id is not None:
|
|
38105
38526
|
self._values["egress_only_internet_gateway_id"] = egress_only_internet_gateway_id
|
|
38106
38527
|
if gateway_id is not None:
|
|
@@ -38163,6 +38584,15 @@ class CfnRouteProps:
|
|
|
38163
38584
|
result = self._values.get("destination_ipv6_cidr_block")
|
|
38164
38585
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
38165
38586
|
|
|
38587
|
+
@builtins.property
|
|
38588
|
+
def destination_prefix_list_id(self) -> typing.Optional[builtins.str]:
|
|
38589
|
+
'''The ID of managed prefix list, it's a set of one or more CIDR blocks.
|
|
38590
|
+
|
|
38591
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationprefixlistid
|
|
38592
|
+
'''
|
|
38593
|
+
result = self._values.get("destination_prefix_list_id")
|
|
38594
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
38595
|
+
|
|
38166
38596
|
@builtins.property
|
|
38167
38597
|
def egress_only_internet_gateway_id(self) -> typing.Optional[builtins.str]:
|
|
38168
38598
|
'''[IPv6 traffic only] The ID of an egress-only internet gateway.
|
|
@@ -44082,13 +44512,13 @@ class CfnSpotFleet(
|
|
|
44082
44512
|
:param launch_template_configs: The launch template and overrides. If you specify ``LaunchTemplateConfigs`` , you can't specify ``LaunchSpecifications`` .
|
|
44083
44513
|
:param load_balancers_config: One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups. With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.
|
|
44084
44514
|
:param on_demand_allocation_strategy: The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify ``lowestPrice`` , Spot Fleet uses price to determine the order, launching the lowest price first. If you specify ``prioritized`` , Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to ``lowestPrice`` .
|
|
44085
|
-
:param on_demand_max_total_price: The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the ``onDemandMaxTotalPrice`` parameter, the ``spotMaxTotalPrice`` parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
|
|
44515
|
+
:param on_demand_max_total_price: The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the ``onDemandMaxTotalPrice`` parameter, the ``spotMaxTotalPrice`` parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. .. epigraph:: If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``onDemandMaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``onDemandMaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
44086
44516
|
:param on_demand_target_capacity: The number of On-Demand units to request. 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.
|
|
44087
44517
|
:param replace_unhealthy_instances: Indicates whether Spot Fleet should replace unhealthy instances.
|
|
44088
44518
|
:param spot_maintenance_strategies: The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
|
|
44089
|
-
:param spot_max_total_price: The maximum amount per hour for Spot Instances that you're willing to pay. You can use the ``
|
|
44519
|
+
:param spot_max_total_price: The maximum amount per hour for Spot Instances that you're willing to pay. You can use the ``spotMaxTotalPrice`` parameter, the ``onDemandMaxTotalPrice`` parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. .. epigraph:: If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``spotMaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``spotMaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
44090
44520
|
:param spot_price: The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price. .. epigraph:: If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.
|
|
44091
|
-
:param tag_specifications: The key-value pair for tagging the Spot Fleet request on creation. The value for ``ResourceType`` must be ``spot-fleet-request`` , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the `launch template <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template>`_ (valid only if you use ``LaunchTemplateConfigs`` ) or in the ``[SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html)`` (valid only if you use ``LaunchSpecifications`` ). For information about tagging after launch, see `
|
|
44521
|
+
:param tag_specifications: The key-value pair for tagging the Spot Fleet request on creation. The value for ``ResourceType`` must be ``spot-fleet-request`` , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the `launch template <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template>`_ (valid only if you use ``LaunchTemplateConfigs`` ) or in the ``[SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html)`` (valid only if you use ``LaunchSpecifications`` ). For information about tagging after launch, see `Tag your resources <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources>`_ .
|
|
44092
44522
|
:param target_capacity_unit_type: The unit for the target capacity. ``TargetCapacityUnitType`` can only be specified when ``InstanceRequirements`` is specified. Default: ``units`` (translates to number of instances)
|
|
44093
44523
|
:param terminate_instances_with_expiration: Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
|
|
44094
44524
|
:param type: The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is ``request`` , the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is ``maintain`` , the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: ``maintain`` . ``instant`` is listed but is not used by Spot Fleet.
|
|
@@ -44558,6 +44988,9 @@ class CfnSpotFleet(
|
|
|
44558
44988
|
'''The maximum amount per hour for On-Demand Instances that you're willing to pay.
|
|
44559
44989
|
|
|
44560
44990
|
You can use the ``onDemandMaxTotalPrice`` parameter, the ``spotMaxTotalPrice`` parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
|
|
44991
|
+
.. epigraph::
|
|
44992
|
+
|
|
44993
|
+
If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``onDemandMaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``onDemandMaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
44561
44994
|
|
|
44562
44995
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-ondemandmaxtotalprice
|
|
44563
44996
|
'''
|
|
@@ -44601,7 +45034,10 @@ class CfnSpotFleet(
|
|
|
44601
45034
|
def spot_max_total_price(self) -> typing.Optional[builtins.str]:
|
|
44602
45035
|
'''The maximum amount per hour for Spot Instances that you're willing to pay.
|
|
44603
45036
|
|
|
44604
|
-
You can use the ``
|
|
45037
|
+
You can use the ``spotMaxTotalPrice`` parameter, the ``onDemandMaxTotalPrice`` parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
|
|
45038
|
+
.. epigraph::
|
|
45039
|
+
|
|
45040
|
+
If your fleet includes T instances that are configured as ``unlimited`` , and if their average CPU usage exceeds the baseline utilization, you will incur a charge for surplus credits. The ``spotMaxTotalPrice`` does not account for surplus credits, and, if you use surplus credits, your final cost might be higher than what you specified for ``spotMaxTotalPrice`` . For more information, see `Surplus credits can incur charges <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits>`_ in the *EC2 User Guide* .
|
|
44605
45041
|
|
|
44606
45042
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-spotmaxtotalprice
|
|
44607
45043
|
'''
|
|
@@ -44628,7 +45064,7 @@ class CfnSpotFleet(
|
|
|
44628
45064
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnSpotFleet.SpotFleetTagSpecificationProperty"]]]]:
|
|
44629
45065
|
'''The key-value pair for tagging the Spot Fleet request on creation.
|
|
44630
45066
|
|
|
44631
|
-
The value for ``ResourceType`` must be ``spot-fleet-request`` , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the `launch template <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template>`_ (valid only if you use ``LaunchTemplateConfigs`` ) or in the ``[SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html)`` (valid only if you use ``LaunchSpecifications`` ). For information about tagging after launch, see `
|
|
45067
|
+
The value for ``ResourceType`` must be ``spot-fleet-request`` , otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the `launch template <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template>`_ (valid only if you use ``LaunchTemplateConfigs`` ) or in the ``[SpotFleetTagSpecification](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html)`` (valid only if you use ``LaunchSpecifications`` ). For information about tagging after launch, see `Tag your resources <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources>`_ .
|
|
44632
45068
|
|
|
44633
45069
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-tagspecifications
|
|
44634
45070
|
'''
|
|
@@ -51699,12 +52135,13 @@ class CfnTransitGatewayRouteTable(
|
|
|
51699
52135
|
return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
|
|
51700
52136
|
|
|
51701
52137
|
@builtins.property
|
|
51702
|
-
@jsii.member(jsii_name="
|
|
51703
|
-
def
|
|
51704
|
-
'''
|
|
51705
|
-
|
|
52138
|
+
@jsii.member(jsii_name="attrTransitGatewayRouteTableId")
|
|
52139
|
+
def attr_transit_gateway_route_table_id(self) -> builtins.str:
|
|
52140
|
+
'''Transit Gateway Route Table primary identifier.
|
|
52141
|
+
|
|
52142
|
+
:cloudformationAttribute: TransitGatewayRouteTableId
|
|
51706
52143
|
'''
|
|
51707
|
-
return typing.cast(builtins.str, jsii.get(self, "
|
|
52144
|
+
return typing.cast(builtins.str, jsii.get(self, "attrTransitGatewayRouteTableId"))
|
|
51708
52145
|
|
|
51709
52146
|
@builtins.property
|
|
51710
52147
|
@jsii.member(jsii_name="cfnProperties")
|
|
@@ -68837,18 +69274,12 @@ class InstanceClass(enum.Enum):
|
|
|
68837
69274
|
# vpc: ec2.Vpc
|
|
68838
69275
|
|
|
68839
69276
|
cluster = rds.DatabaseCluster(self, "Database",
|
|
68840
|
-
engine=rds.DatabaseClusterEngine.aurora_mysql(version=rds.AuroraMysqlEngineVersion.
|
|
68841
|
-
writer=rds.ClusterInstance.provisioned("
|
|
68842
|
-
instance_type=ec2.InstanceType.of(ec2.InstanceClass.
|
|
69277
|
+
engine=rds.DatabaseClusterEngine.aurora_mysql(version=rds.AuroraMysqlEngineVersion.VER_3_01_0),
|
|
69278
|
+
writer=rds.ClusterInstance.provisioned("Instance",
|
|
69279
|
+
instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE3, ec2.InstanceSize.SMALL)
|
|
68843
69280
|
),
|
|
68844
|
-
|
|
68845
|
-
|
|
68846
|
-
readers=[
|
|
68847
|
-
# will be put in promotion tier 1 and will scale with the writer
|
|
68848
|
-
rds.ClusterInstance.serverless_v2("reader1", scale_with_writer=True),
|
|
68849
|
-
# will be put in promotion tier 2 and will not scale with the writer
|
|
68850
|
-
rds.ClusterInstance.serverless_v2("reader2")
|
|
68851
|
-
],
|
|
69281
|
+
readers=[rds.ClusterInstance.provisioned("reader")],
|
|
69282
|
+
instance_update_behaviour=rds.InstanceUpdateBehaviour.ROLLING, # Optional - defaults to rds.InstanceUpdateBehaviour.BULK
|
|
68852
69283
|
vpc=vpc
|
|
68853
69284
|
)
|
|
68854
69285
|
'''
|
|
@@ -69247,6 +69678,14 @@ class InstanceClass(enum.Enum):
|
|
|
69247
69678
|
|
|
69248
69679
|
This instance class is currently only available in US East (Ohio), US East (N. Virginia), US West (Oregon), and Europe (Ireland).
|
|
69249
69680
|
'''
|
|
69681
|
+
STANDARD7_INTEL = "STANDARD7_INTEL"
|
|
69682
|
+
'''Standard instances with high memory and compute capacity based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation.'''
|
|
69683
|
+
M7I = "M7I"
|
|
69684
|
+
'''Standard instances with high memory and compute capacity based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation.'''
|
|
69685
|
+
STANDARD7_INTEL_FLEX = "STANDARD7_INTEL_FLEX"
|
|
69686
|
+
'''Flexible instances with high memory and compute capacity based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation The M7i-Flex instances deliver a baseline of 40% CPU performance, and can scale up to full CPU performance 95% of the time.'''
|
|
69687
|
+
M7I_FLEX = "M7I_FLEX"
|
|
69688
|
+
'''Flexible instances with high memory and compute capacity based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation The M7i-Flex instances deliver a baseline of 40% CPU performance, and can scale up to full CPU performance 95% of the time.'''
|
|
69250
69689
|
HIGH_COMPUTE_MEMORY1 = "HIGH_COMPUTE_MEMORY1"
|
|
69251
69690
|
'''High memory and compute capacity instances, 1st generation.'''
|
|
69252
69691
|
Z1D = "Z1D"
|
|
@@ -69974,15 +70413,17 @@ class InstanceType(
|
|
|
69974
70413
|
|
|
69975
70414
|
# vpc: ec2.Vpc
|
|
69976
70415
|
|
|
69977
|
-
|
|
69978
|
-
|
|
69979
|
-
|
|
69980
|
-
|
|
69981
|
-
|
|
69982
|
-
machine_image=ec2.MachineImage.latest_amazon_linux(
|
|
69983
|
-
generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2
|
|
70416
|
+
cluster = docdb.DatabaseCluster(self, "Database",
|
|
70417
|
+
master_user=docdb.Login(
|
|
70418
|
+
username="myuser", # NOTE: 'admin' is reserved by DocumentDB
|
|
70419
|
+
exclude_characters="\"@/:", # optional, defaults to the set "\"@/" and is also used for eventually created rotations
|
|
70420
|
+
secret_name="/myapp/mydocdb/masteruser"
|
|
69984
70421
|
),
|
|
69985
|
-
|
|
70422
|
+
instance_type=ec2.InstanceType.of(ec2.InstanceClass.MEMORY5, ec2.InstanceSize.LARGE),
|
|
70423
|
+
vpc_subnets=ec2.SubnetSelection(
|
|
70424
|
+
subnet_type=ec2.SubnetType.PUBLIC
|
|
70425
|
+
),
|
|
70426
|
+
vpc=vpc
|
|
69986
70427
|
)
|
|
69987
70428
|
'''
|
|
69988
70429
|
|
|
@@ -73540,9 +73981,7 @@ class MachineImage(
|
|
|
73540
73981
|
autoscaling.AutoScalingGroup(self, "ASG",
|
|
73541
73982
|
vpc=vpc,
|
|
73542
73983
|
instance_type=ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO),
|
|
73543
|
-
machine_image=ec2.MachineImage.
|
|
73544
|
-
generation=ec2.AmazonLinuxGeneration.AMAZON_LINUX_2
|
|
73545
|
-
),
|
|
73984
|
+
machine_image=ec2.MachineImage.latest_amazon_linux2(),
|
|
73546
73985
|
security_group=my_security_group
|
|
73547
73986
|
)
|
|
73548
73987
|
'''
|
|
@@ -77395,19 +77834,15 @@ class SecurityGroupProps:
|
|
|
77395
77834
|
# vpc: ec2.Vpc
|
|
77396
77835
|
|
|
77397
77836
|
|
|
77398
|
-
|
|
77399
|
-
|
|
77400
|
-
|
|
77401
|
-
|
|
77402
|
-
|
|
77403
|
-
)
|
|
77404
|
-
|
|
77405
|
-
launch_template = ec2.LaunchTemplate(self, "LaunchTemplate",
|
|
77406
|
-
machine_image=ec2.MachineImage.latest_amazon_linux2023(),
|
|
77407
|
-
security_group=sg1
|
|
77837
|
+
security_group1 = ec2.SecurityGroup(self, "SecurityGroup1", vpc=vpc)
|
|
77838
|
+
lb = elbv2.ApplicationLoadBalancer(self, "LB",
|
|
77839
|
+
vpc=vpc,
|
|
77840
|
+
internet_facing=True,
|
|
77841
|
+
security_group=security_group1
|
|
77408
77842
|
)
|
|
77409
77843
|
|
|
77410
|
-
|
|
77844
|
+
security_group2 = ec2.SecurityGroup(self, "SecurityGroup2", vpc=vpc)
|
|
77845
|
+
lb.add_security_group(security_group2)
|
|
77411
77846
|
'''
|
|
77412
77847
|
if __debug__:
|
|
77413
77848
|
type_hints = typing.get_type_hints(_typecheckingstub__4e55e0c52b51f92e83b1f8d6b7a5b22268d0369a14dab808b8f2f5f233e5b622)
|
|
@@ -88356,6 +88791,8 @@ __all__ = [
|
|
|
88356
88791
|
"CfnIPAMScope",
|
|
88357
88792
|
"CfnIPAMScopeProps",
|
|
88358
88793
|
"CfnInstance",
|
|
88794
|
+
"CfnInstanceConnectEndpoint",
|
|
88795
|
+
"CfnInstanceConnectEndpointProps",
|
|
88359
88796
|
"CfnInstanceProps",
|
|
88360
88797
|
"CfnInternetGateway",
|
|
88361
88798
|
"CfnInternetGatewayProps",
|
|
@@ -90346,6 +90783,7 @@ def _typecheckingstub__72358d22276e2eb5cd641ca06942afc99075017aabb8f3000a9b07b53
|
|
|
90346
90783
|
*,
|
|
90347
90784
|
resource_id: builtins.str,
|
|
90348
90785
|
resource_type: builtins.str,
|
|
90786
|
+
deliver_cross_account_role: typing.Optional[builtins.str] = None,
|
|
90349
90787
|
deliver_logs_permission_arn: typing.Optional[builtins.str] = None,
|
|
90350
90788
|
destination_options: typing.Any = None,
|
|
90351
90789
|
log_destination: typing.Optional[builtins.str] = None,
|
|
@@ -90383,6 +90821,12 @@ def _typecheckingstub__d21f005f9535582c1f46053bf4e82c2bbabff7cded5a69095501539e5
|
|
|
90383
90821
|
"""Type checking stubs"""
|
|
90384
90822
|
pass
|
|
90385
90823
|
|
|
90824
|
+
def _typecheckingstub__69de10af6e71879a605a8ff40c4836ff6e89ad4220088a0599668acc26625a53(
|
|
90825
|
+
value: typing.Optional[builtins.str],
|
|
90826
|
+
) -> None:
|
|
90827
|
+
"""Type checking stubs"""
|
|
90828
|
+
pass
|
|
90829
|
+
|
|
90386
90830
|
def _typecheckingstub__b921f8c4adf8ca7781a1e0174a51a4017191049028a6f93859d3f656946c7c3f(
|
|
90387
90831
|
value: typing.Optional[builtins.str],
|
|
90388
90832
|
) -> None:
|
|
@@ -90450,6 +90894,7 @@ def _typecheckingstub__b70808589b9adfc66e939b8c87268607775dc0e479da5f4bed72c3ba8
|
|
|
90450
90894
|
*,
|
|
90451
90895
|
resource_id: builtins.str,
|
|
90452
90896
|
resource_type: builtins.str,
|
|
90897
|
+
deliver_cross_account_role: typing.Optional[builtins.str] = None,
|
|
90453
90898
|
deliver_logs_permission_arn: typing.Optional[builtins.str] = None,
|
|
90454
90899
|
destination_options: typing.Any = None,
|
|
90455
90900
|
log_destination: typing.Optional[builtins.str] = None,
|
|
@@ -91536,6 +91981,72 @@ def _typecheckingstub__b979ff4b2e7bc79429f0409f1fb60a5125a9cda71770a0324082ebc0a
|
|
|
91536
91981
|
"""Type checking stubs"""
|
|
91537
91982
|
pass
|
|
91538
91983
|
|
|
91984
|
+
def _typecheckingstub__5dd25848f0ceb23edd764d8f4a076cf8f9d22793b6ca99db922a9c410f58ba1f(
|
|
91985
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
91986
|
+
id: builtins.str,
|
|
91987
|
+
*,
|
|
91988
|
+
subnet_id: builtins.str,
|
|
91989
|
+
client_token: typing.Optional[builtins.str] = None,
|
|
91990
|
+
preserve_client_ip: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
91991
|
+
security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
91992
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
91993
|
+
) -> None:
|
|
91994
|
+
"""Type checking stubs"""
|
|
91995
|
+
pass
|
|
91996
|
+
|
|
91997
|
+
def _typecheckingstub__5891536cec39a3051ee1e1e6cad74074ab2e104448cf33448a891defadf16b6e(
|
|
91998
|
+
inspector: _TreeInspector_488e0dd5,
|
|
91999
|
+
) -> None:
|
|
92000
|
+
"""Type checking stubs"""
|
|
92001
|
+
pass
|
|
92002
|
+
|
|
92003
|
+
def _typecheckingstub__08af6017181d75f497ef7453c702f6e6ac3f87faf252f7dae4c9797af2382847(
|
|
92004
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
92005
|
+
) -> None:
|
|
92006
|
+
"""Type checking stubs"""
|
|
92007
|
+
pass
|
|
92008
|
+
|
|
92009
|
+
def _typecheckingstub__18fe6754ba2f44060c4a7a2127a488b7e626c5c1761f524fdb756846a1b48e44(
|
|
92010
|
+
value: builtins.str,
|
|
92011
|
+
) -> None:
|
|
92012
|
+
"""Type checking stubs"""
|
|
92013
|
+
pass
|
|
92014
|
+
|
|
92015
|
+
def _typecheckingstub__a075309e51f465140660c0455acd101077c2364e286033707a8d1e11f4cc3a6a(
|
|
92016
|
+
value: typing.Optional[builtins.str],
|
|
92017
|
+
) -> None:
|
|
92018
|
+
"""Type checking stubs"""
|
|
92019
|
+
pass
|
|
92020
|
+
|
|
92021
|
+
def _typecheckingstub__a3c9af51a15924a206fae71c0b2615bf7be3e42b8bb7722c9e794e13a40973a7(
|
|
92022
|
+
value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
|
|
92023
|
+
) -> None:
|
|
92024
|
+
"""Type checking stubs"""
|
|
92025
|
+
pass
|
|
92026
|
+
|
|
92027
|
+
def _typecheckingstub__a9a795e386e76f7e1445d90e3d1e800e540f41237f0e797a5e2058cb7b78553e(
|
|
92028
|
+
value: typing.Optional[typing.List[builtins.str]],
|
|
92029
|
+
) -> None:
|
|
92030
|
+
"""Type checking stubs"""
|
|
92031
|
+
pass
|
|
92032
|
+
|
|
92033
|
+
def _typecheckingstub__3dd5921daaa37553fc9b30d074bd3ef6cfc6e9a796db9530140935d020cd87ae(
|
|
92034
|
+
value: typing.Optional[typing.List[_CfnTag_f6864754]],
|
|
92035
|
+
) -> None:
|
|
92036
|
+
"""Type checking stubs"""
|
|
92037
|
+
pass
|
|
92038
|
+
|
|
92039
|
+
def _typecheckingstub__78086551229af23659e2463ffd3801975d2b07247065af08d90eebf9e7f66ef8(
|
|
92040
|
+
*,
|
|
92041
|
+
subnet_id: builtins.str,
|
|
92042
|
+
client_token: typing.Optional[builtins.str] = None,
|
|
92043
|
+
preserve_client_ip: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
92044
|
+
security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
92045
|
+
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
92046
|
+
) -> None:
|
|
92047
|
+
"""Type checking stubs"""
|
|
92048
|
+
pass
|
|
92049
|
+
|
|
91539
92050
|
def _typecheckingstub__605ba8f22e222289aa0ed61b03690aaf9a4e8eabb86a9ba2b63d10f2bbee2305(
|
|
91540
92051
|
*,
|
|
91541
92052
|
additional_info: typing.Optional[builtins.str] = None,
|
|
@@ -92031,6 +92542,7 @@ def _typecheckingstub__c599e12c3de63926f26bb5da3afad64e8c60b24c3b563faa2986e88c1
|
|
|
92031
92542
|
ipv6_prefixes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLaunchTemplate.Ipv6PrefixSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
92032
92543
|
network_card_index: typing.Optional[jsii.Number] = None,
|
|
92033
92544
|
network_interface_id: typing.Optional[builtins.str] = None,
|
|
92545
|
+
primary_ipv6: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
92034
92546
|
private_ip_address: typing.Optional[builtins.str] = None,
|
|
92035
92547
|
private_ip_addresses: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLaunchTemplate.PrivateIpAddProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
92036
92548
|
secondary_private_ip_address_count: typing.Optional[jsii.Number] = None,
|
|
@@ -93567,6 +94079,7 @@ def _typecheckingstub__418aadfc2c6984f0ac75cd67e36ca76f23d9cf7bc23846cf55d7b3cdb
|
|
|
93567
94079
|
carrier_gateway_id: typing.Optional[builtins.str] = None,
|
|
93568
94080
|
destination_cidr_block: typing.Optional[builtins.str] = None,
|
|
93569
94081
|
destination_ipv6_cidr_block: typing.Optional[builtins.str] = None,
|
|
94082
|
+
destination_prefix_list_id: typing.Optional[builtins.str] = None,
|
|
93570
94083
|
egress_only_internet_gateway_id: typing.Optional[builtins.str] = None,
|
|
93571
94084
|
gateway_id: typing.Optional[builtins.str] = None,
|
|
93572
94085
|
instance_id: typing.Optional[builtins.str] = None,
|
|
@@ -93616,6 +94129,12 @@ def _typecheckingstub__9053d56266f2ecaa5d8209e05a5af048fd6c8540eece0de592fa61759
|
|
|
93616
94129
|
"""Type checking stubs"""
|
|
93617
94130
|
pass
|
|
93618
94131
|
|
|
94132
|
+
def _typecheckingstub__28b2d9e818763b23c1689ff8d32ac779a6cdf2e20e4e1b57f65f0f3474ae8878(
|
|
94133
|
+
value: typing.Optional[builtins.str],
|
|
94134
|
+
) -> None:
|
|
94135
|
+
"""Type checking stubs"""
|
|
94136
|
+
pass
|
|
94137
|
+
|
|
93619
94138
|
def _typecheckingstub__d8f8dcc844a05743d981c217d51303c0c4cc6e46dadd5339a6eb261fe327b128(
|
|
93620
94139
|
value: typing.Optional[builtins.str],
|
|
93621
94140
|
) -> None:
|
|
@@ -93676,6 +94195,7 @@ def _typecheckingstub__f90e7814d59b7c562ab4b24d54461eba6a4c88fbd5451ba2b2b0adf84
|
|
|
93676
94195
|
carrier_gateway_id: typing.Optional[builtins.str] = None,
|
|
93677
94196
|
destination_cidr_block: typing.Optional[builtins.str] = None,
|
|
93678
94197
|
destination_ipv6_cidr_block: typing.Optional[builtins.str] = None,
|
|
94198
|
+
destination_prefix_list_id: typing.Optional[builtins.str] = None,
|
|
93679
94199
|
egress_only_internet_gateway_id: typing.Optional[builtins.str] = None,
|
|
93680
94200
|
gateway_id: typing.Optional[builtins.str] = None,
|
|
93681
94201
|
instance_id: typing.Optional[builtins.str] = None,
|