aws-cdk-lib 2.219.0__py3-none-any.whl → 2.221.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +33 -35
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.219.0.jsii.tgz → aws-cdk-lib@2.221.0.jsii.tgz} +0 -0
- aws_cdk/alexa_ask/__init__.py +3 -0
- aws_cdk/aws_accessanalyzer/__init__.py +3 -0
- aws_cdk/aws_acmpca/__init__.py +4 -1
- aws_cdk/aws_aiops/__init__.py +3 -0
- aws_cdk/aws_amazonmq/__init__.py +3 -29
- aws_cdk/aws_amplify/__init__.py +3 -0
- aws_cdk/aws_amplifyuibuilder/__init__.py +3 -0
- aws_cdk/aws_apigateway/__init__.py +3 -0
- aws_cdk/aws_apigatewayv2/__init__.py +3 -0
- aws_cdk/aws_appconfig/__init__.py +3 -29
- aws_cdk/aws_appflow/__init__.py +3 -0
- aws_cdk/aws_appintegrations/__init__.py +3 -0
- aws_cdk/aws_applicationautoscaling/__init__.py +3 -0
- aws_cdk/aws_applicationinsights/__init__.py +3 -0
- aws_cdk/aws_applicationsignals/__init__.py +453 -2
- aws_cdk/aws_appmesh/__init__.py +3 -0
- aws_cdk/aws_apprunner/__init__.py +3 -0
- aws_cdk/aws_appstream/__init__.py +3 -0
- aws_cdk/aws_appsync/__init__.py +3 -0
- aws_cdk/aws_apptest/__init__.py +3 -0
- aws_cdk/aws_aps/__init__.py +1168 -83
- aws_cdk/aws_arcregionswitch/__init__.py +11 -0
- aws_cdk/aws_arczonalshift/__init__.py +3 -0
- aws_cdk/aws_athena/__init__.py +3 -0
- aws_cdk/aws_auditmanager/__init__.py +3 -0
- aws_cdk/aws_autoscaling/__init__.py +3 -0
- aws_cdk/aws_autoscaling_common/__init__.py +3 -0
- aws_cdk/aws_autoscalingplans/__init__.py +3 -0
- aws_cdk/aws_b2bi/__init__.py +3 -0
- aws_cdk/aws_backup/__init__.py +32 -29
- aws_cdk/aws_backupgateway/__init__.py +3 -0
- aws_cdk/aws_batch/__init__.py +112 -7
- aws_cdk/aws_bcmdataexports/__init__.py +3 -0
- aws_cdk/aws_bedrock/__init__.py +53 -45
- aws_cdk/aws_bedrockagentcore/__init__.py +8499 -1732
- aws_cdk/aws_billingconductor/__init__.py +3 -0
- aws_cdk/aws_budgets/__init__.py +3 -0
- aws_cdk/aws_cassandra/__init__.py +3 -0
- aws_cdk/aws_ce/__init__.py +3 -0
- aws_cdk/aws_certificatemanager/__init__.py +3 -0
- aws_cdk/aws_chatbot/__init__.py +3 -0
- aws_cdk/aws_cleanrooms/__init__.py +3 -0
- aws_cdk/aws_cleanroomsml/__init__.py +3 -0
- aws_cdk/aws_cloud9/__init__.py +3 -0
- aws_cdk/aws_cloudformation/__init__.py +3 -0
- aws_cdk/aws_cloudfront/__init__.py +69 -3
- aws_cdk/aws_cloudfront/experimental/__init__.py +4 -0
- aws_cdk/aws_cloudfront_origins/__init__.py +87 -6
- aws_cdk/aws_cloudtrail/__init__.py +3 -0
- aws_cdk/aws_cloudwatch/__init__.py +8 -5
- aws_cdk/aws_codeartifact/__init__.py +3 -0
- aws_cdk/aws_codebuild/__init__.py +3 -0
- aws_cdk/aws_codecommit/__init__.py +3 -0
- aws_cdk/aws_codeconnections/__init__.py +3 -0
- aws_cdk/aws_codedeploy/__init__.py +3 -0
- aws_cdk/aws_codeguruprofiler/__init__.py +3 -0
- aws_cdk/aws_codegurureviewer/__init__.py +3 -0
- aws_cdk/aws_codepipeline/__init__.py +3 -0
- aws_cdk/aws_codepipeline_actions/__init__.py +3 -0
- aws_cdk/aws_codestar/__init__.py +3 -0
- aws_cdk/aws_codestarconnections/__init__.py +3 -0
- aws_cdk/aws_codestarnotifications/__init__.py +3 -0
- aws_cdk/aws_cognito/__init__.py +9 -4
- aws_cdk/aws_cognito_identitypool/__init__.py +3 -0
- aws_cdk/aws_comprehend/__init__.py +3 -0
- aws_cdk/aws_config/__init__.py +3 -0
- aws_cdk/aws_connect/__init__.py +1232 -2
- aws_cdk/aws_connectcampaigns/__init__.py +3 -0
- aws_cdk/aws_connectcampaignsv2/__init__.py +3 -0
- aws_cdk/aws_controltower/__init__.py +3 -0
- aws_cdk/aws_cur/__init__.py +3 -0
- aws_cdk/aws_customerprofiles/__init__.py +3 -29
- aws_cdk/aws_databrew/__init__.py +3 -0
- aws_cdk/aws_datapipeline/__init__.py +3 -0
- aws_cdk/aws_datasync/__init__.py +3 -0
- aws_cdk/aws_datazone/__init__.py +17 -15
- aws_cdk/aws_dax/__init__.py +15 -3
- aws_cdk/aws_deadline/__init__.py +3 -0
- aws_cdk/aws_detective/__init__.py +3 -0
- aws_cdk/aws_devicefarm/__init__.py +3 -0
- aws_cdk/aws_devopsguru/__init__.py +3 -0
- aws_cdk/aws_directoryservice/__init__.py +32 -0
- aws_cdk/aws_dlm/__init__.py +3 -0
- aws_cdk/aws_dms/__init__.py +3 -0
- aws_cdk/aws_docdb/__init__.py +14 -3
- aws_cdk/aws_docdbelastic/__init__.py +3 -0
- aws_cdk/aws_dsql/__init__.py +3 -0
- aws_cdk/aws_dynamodb/__init__.py +3 -0
- aws_cdk/aws_ec2/__init__.py +205 -48
- aws_cdk/aws_ecr/__init__.py +156 -33
- aws_cdk/aws_ecs/__init__.py +429 -182
- aws_cdk/aws_efs/__init__.py +3 -0
- aws_cdk/aws_eks/__init__.py +117 -67
- aws_cdk/aws_elasticache/__init__.py +3 -0
- aws_cdk/aws_elasticbeanstalk/__init__.py +3 -0
- aws_cdk/aws_elasticloadbalancing/__init__.py +3 -0
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +445 -36
- aws_cdk/aws_elasticsearch/__init__.py +3 -0
- aws_cdk/aws_emr/__init__.py +3 -0
- aws_cdk/aws_emrcontainers/__init__.py +3 -0
- aws_cdk/aws_emrserverless/__init__.py +12 -11
- aws_cdk/aws_entityresolution/__init__.py +3 -0
- aws_cdk/aws_events/__init__.py +73 -29
- aws_cdk/aws_events_targets/__init__.py +3 -0
- aws_cdk/aws_eventschemas/__init__.py +3 -0
- aws_cdk/aws_evidently/__init__.py +3 -0
- aws_cdk/aws_evs/__init__.py +3 -0
- aws_cdk/aws_finspace/__init__.py +3 -0
- aws_cdk/aws_fis/__init__.py +3 -0
- aws_cdk/aws_fms/__init__.py +3 -0
- aws_cdk/aws_forecast/__init__.py +3 -0
- aws_cdk/aws_frauddetector/__init__.py +3 -0
- aws_cdk/aws_fsx/__init__.py +7 -4
- aws_cdk/aws_gamelift/__init__.py +3 -0
- aws_cdk/aws_gameliftstreams/__init__.py +8 -5
- aws_cdk/aws_globalaccelerator/__init__.py +3 -0
- aws_cdk/aws_glue/__init__.py +11 -80
- aws_cdk/aws_grafana/__init__.py +3 -0
- aws_cdk/aws_greengrass/__init__.py +3 -0
- aws_cdk/aws_greengrassv2/__init__.py +3 -0
- aws_cdk/aws_groundstation/__init__.py +3 -0
- aws_cdk/aws_guardduty/__init__.py +3 -0
- aws_cdk/aws_healthimaging/__init__.py +3 -0
- aws_cdk/aws_healthlake/__init__.py +3 -0
- aws_cdk/aws_iam/__init__.py +30 -32
- aws_cdk/aws_identitystore/__init__.py +3 -0
- aws_cdk/aws_imagebuilder/__init__.py +896 -0
- aws_cdk/aws_inspector/__init__.py +3 -0
- aws_cdk/aws_inspectorv2/__init__.py +3 -0
- aws_cdk/aws_internetmonitor/__init__.py +3 -0
- aws_cdk/aws_invoicing/__init__.py +3 -0
- aws_cdk/aws_iot/__init__.py +3 -0
- aws_cdk/aws_iotanalytics/__init__.py +3 -0
- aws_cdk/aws_iotcoredeviceadvisor/__init__.py +3 -0
- aws_cdk/aws_iotevents/__init__.py +3 -0
- aws_cdk/aws_iotfleethub/__init__.py +3 -0
- aws_cdk/aws_iotfleetwise/__init__.py +3 -0
- aws_cdk/aws_iotsitewise/__init__.py +139 -80
- aws_cdk/aws_iotthingsgraph/__init__.py +3 -0
- aws_cdk/aws_iottwinmaker/__init__.py +3 -87
- aws_cdk/aws_iotwireless/__init__.py +61 -0
- aws_cdk/aws_ivs/__init__.py +3 -0
- aws_cdk/aws_ivschat/__init__.py +3 -0
- aws_cdk/aws_kafkaconnect/__init__.py +3 -0
- aws_cdk/aws_kendra/__init__.py +3 -58
- aws_cdk/aws_kendraranking/__init__.py +3 -0
- aws_cdk/aws_kinesis/__init__.py +98 -4
- aws_cdk/aws_kinesisanalytics/__init__.py +3 -0
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +3 -0
- aws_cdk/aws_kinesisfirehose/__init__.py +1709 -10
- aws_cdk/aws_kinesisvideo/__init__.py +3 -29
- aws_cdk/aws_kms/__init__.py +3 -0
- aws_cdk/aws_lakeformation/__init__.py +3 -0
- aws_cdk/aws_lambda/__init__.py +57 -7
- aws_cdk/aws_lambda_nodejs/__init__.py +3 -0
- aws_cdk/aws_launchwizard/__init__.py +3 -0
- aws_cdk/aws_lex/__init__.py +3 -29
- aws_cdk/aws_licensemanager/__init__.py +3 -0
- aws_cdk/aws_lightsail/__init__.py +587 -0
- aws_cdk/aws_location/__init__.py +3 -0
- aws_cdk/aws_logs/__init__.py +283 -9
- aws_cdk/aws_lookoutequipment/__init__.py +3 -29
- aws_cdk/aws_lookoutmetrics/__init__.py +17 -2
- aws_cdk/aws_lookoutvision/__init__.py +3 -0
- aws_cdk/aws_m2/__init__.py +62 -13
- aws_cdk/aws_macie/__init__.py +3 -0
- aws_cdk/aws_managedblockchain/__init__.py +3 -0
- aws_cdk/aws_mediaconnect/__init__.py +3 -0
- aws_cdk/aws_mediaconvert/__init__.py +3 -0
- aws_cdk/aws_medialive/__init__.py +279 -33
- aws_cdk/aws_mediapackage/__init__.py +3 -0
- aws_cdk/aws_mediapackagev2/__init__.py +3 -0
- aws_cdk/aws_mediastore/__init__.py +3 -0
- aws_cdk/aws_mediatailor/__init__.py +3 -58
- aws_cdk/aws_memorydb/__init__.py +3 -0
- aws_cdk/aws_mpa/__init__.py +3 -0
- aws_cdk/aws_msk/__init__.py +3 -0
- aws_cdk/aws_mwaa/__init__.py +8 -5
- aws_cdk/aws_neptune/__init__.py +188 -70
- aws_cdk/aws_neptunegraph/__init__.py +3 -0
- aws_cdk/aws_networkfirewall/__init__.py +3 -0
- aws_cdk/aws_networkmanager/__init__.py +32 -0
- aws_cdk/aws_nimblestudio/__init__.py +3 -0
- aws_cdk/aws_notifications/__init__.py +3 -0
- aws_cdk/aws_notificationscontacts/__init__.py +3 -0
- aws_cdk/aws_oam/__init__.py +3 -0
- aws_cdk/aws_observabilityadmin/__init__.py +1365 -187
- aws_cdk/aws_odb/__init__.py +4 -1
- aws_cdk/aws_omics/__init__.py +10 -1
- aws_cdk/aws_opensearchserverless/__init__.py +3 -0
- aws_cdk/aws_opensearchservice/__init__.py +9 -0
- aws_cdk/aws_opsworks/__init__.py +3 -0
- aws_cdk/aws_opsworkscm/__init__.py +3 -0
- aws_cdk/aws_organizations/__init__.py +3 -116
- aws_cdk/aws_osis/__init__.py +157 -0
- aws_cdk/aws_panorama/__init__.py +3 -0
- aws_cdk/aws_paymentcryptography/__init__.py +3 -0
- aws_cdk/aws_pcaconnectorad/__init__.py +3 -0
- aws_cdk/aws_pcaconnectorscep/__init__.py +3 -0
- aws_cdk/aws_pcs/__init__.py +227 -33
- aws_cdk/aws_personalize/__init__.py +3 -0
- aws_cdk/aws_pinpoint/__init__.py +61 -58
- aws_cdk/aws_pinpointemail/__init__.py +3 -0
- aws_cdk/aws_pipes/__init__.py +3 -0
- aws_cdk/aws_proton/__init__.py +3 -0
- aws_cdk/aws_qbusiness/__init__.py +3 -174
- aws_cdk/aws_qldb/__init__.py +3 -29
- aws_cdk/aws_quicksight/__init__.py +493 -406
- aws_cdk/aws_ram/__init__.py +3 -0
- aws_cdk/aws_rbin/__init__.py +3 -0
- aws_cdk/aws_rds/__init__.py +71 -42
- aws_cdk/aws_redshift/__init__.py +3 -0
- aws_cdk/aws_redshiftserverless/__init__.py +3 -0
- aws_cdk/aws_refactorspaces/__init__.py +21 -6
- aws_cdk/aws_rekognition/__init__.py +3 -29
- aws_cdk/aws_resiliencehub/__init__.py +3 -0
- aws_cdk/aws_resourceexplorer2/__init__.py +3 -0
- aws_cdk/aws_resourcegroups/__init__.py +3 -0
- aws_cdk/aws_robomaker/__init__.py +3 -0
- aws_cdk/aws_rolesanywhere/__init__.py +3 -0
- aws_cdk/aws_route53/__init__.py +148 -24
- aws_cdk/aws_route53_targets/__init__.py +3 -0
- aws_cdk/aws_route53profiles/__init__.py +3 -0
- aws_cdk/aws_route53recoverycontrol/__init__.py +3 -0
- aws_cdk/aws_route53recoveryreadiness/__init__.py +3 -0
- aws_cdk/aws_route53resolver/__init__.py +11 -4
- aws_cdk/aws_rum/__init__.py +3 -0
- aws_cdk/aws_s3/__init__.py +80 -43
- aws_cdk/aws_s3_deployment/__init__.py +3 -0
- aws_cdk/aws_s3express/__init__.py +3 -0
- aws_cdk/aws_s3objectlambda/__init__.py +47 -12
- aws_cdk/aws_s3outposts/__init__.py +3 -0
- aws_cdk/aws_s3tables/__init__.py +3 -0
- aws_cdk/aws_sagemaker/__init__.py +166 -87
- aws_cdk/aws_sam/__init__.py +3 -0
- aws_cdk/aws_scheduler/__init__.py +3 -29
- aws_cdk/aws_sdb/__init__.py +3 -0
- aws_cdk/aws_secretsmanager/__init__.py +3 -0
- aws_cdk/aws_securityhub/__init__.py +3 -0
- aws_cdk/aws_securitylake/__init__.py +3 -0
- aws_cdk/aws_servicecatalog/__init__.py +161 -144
- aws_cdk/aws_servicecatalogappregistry/__init__.py +3 -0
- aws_cdk/aws_servicediscovery/__init__.py +3 -0
- aws_cdk/aws_ses/__init__.py +3 -0
- aws_cdk/aws_shield/__init__.py +3 -0
- aws_cdk/aws_signer/__init__.py +3 -0
- aws_cdk/aws_simspaceweaver/__init__.py +3 -0
- aws_cdk/aws_smsvoice/__init__.py +3 -29
- aws_cdk/aws_sns/__init__.py +3 -0
- aws_cdk/aws_sqs/__init__.py +3 -0
- aws_cdk/aws_ssm/__init__.py +10 -3
- aws_cdk/aws_ssmcontacts/__init__.py +3 -0
- aws_cdk/aws_ssmguiconnect/__init__.py +3 -0
- aws_cdk/aws_ssmincidents/__init__.py +3 -0
- aws_cdk/aws_ssmquicksetup/__init__.py +470 -3
- aws_cdk/aws_sso/__init__.py +3 -0
- aws_cdk/aws_stepfunctions/__init__.py +23 -19
- aws_cdk/aws_stepfunctions_tasks/__init__.py +6 -3
- aws_cdk/aws_supportapp/__init__.py +3 -0
- aws_cdk/aws_synthetics/__init__.py +80 -27
- aws_cdk/aws_systemsmanagersap/__init__.py +3 -0
- aws_cdk/aws_timestream/__init__.py +3 -29
- aws_cdk/aws_transfer/__init__.py +20 -34
- aws_cdk/aws_verifiedpermissions/__init__.py +3 -0
- aws_cdk/aws_voiceid/__init__.py +3 -0
- aws_cdk/aws_vpclattice/__init__.py +7 -4
- aws_cdk/aws_waf/__init__.py +3 -0
- aws_cdk/aws_wafregional/__init__.py +3 -0
- aws_cdk/aws_wafv2/__init__.py +3 -0
- aws_cdk/aws_wisdom/__init__.py +3 -116
- aws_cdk/aws_workspaces/__init__.py +3 -0
- aws_cdk/aws_workspacesinstances/__init__.py +3 -0
- aws_cdk/aws_workspacesthinclient/__init__.py +3 -0
- aws_cdk/aws_workspacesweb/__init__.py +3 -0
- aws_cdk/aws_xray/__init__.py +3 -0
- aws_cdk/cloud_assembly_schema/__init__.py +3 -0
- aws_cdk/cx_api/__init__.py +34 -0
- aws_cdk/pipelines/__init__.py +3 -0
- aws_cdk/region_info/__init__.py +3 -0
- aws_cdk/triggers/__init__.py +3 -0
- {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/METADATA +2 -2
- aws_cdk_lib-2.221.0.dist-info/RECORD +313 -0
- aws_cdk_lib-2.219.0.dist-info/RECORD +0 -313
- {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.219.0.dist-info → aws_cdk_lib-2.221.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ecs/__init__.py
CHANGED
|
@@ -1725,6 +1725,9 @@ mi_capacity_provider = ecs.ManagedInstancesCapacityProvider(self, "MICapacityPro
|
|
|
1725
1725
|
propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
|
|
1726
1726
|
)
|
|
1727
1727
|
|
|
1728
|
+
# Optionally configure security group rules using IConnectable interface
|
|
1729
|
+
mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
|
|
1730
|
+
|
|
1728
1731
|
# Add the capacity provider to the cluster
|
|
1729
1732
|
cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
|
|
1730
1733
|
|
|
@@ -2370,6 +2373,7 @@ from ..aws_cloudwatch import (
|
|
|
2370
2373
|
from ..aws_ec2 import (
|
|
2371
2374
|
Connections as _Connections_0f31fce8,
|
|
2372
2375
|
EbsDeviceVolumeType as _EbsDeviceVolumeType_6792555b,
|
|
2376
|
+
IConnectable as _IConnectable_10015a05,
|
|
2373
2377
|
IKeyPair as _IKeyPair_bc344eda,
|
|
2374
2378
|
IMachineImage as _IMachineImage_0e8bd50b,
|
|
2375
2379
|
ISecurityGroup as _ISecurityGroup_acf8a799,
|
|
@@ -6881,8 +6885,8 @@ class CfnCapacityProviderProps:
|
|
|
6881
6885
|
'''Properties for defining a ``CfnCapacityProvider``.
|
|
6882
6886
|
|
|
6883
6887
|
:param auto_scaling_group_provider: The Auto Scaling group settings for the capacity provider.
|
|
6884
|
-
:param cluster_name:
|
|
6885
|
-
:param managed_instances_provider:
|
|
6888
|
+
:param cluster_name: The cluster that this capacity provider is associated with. Managed instances capacity providers are cluster-scoped, meaning they can only be used within their associated cluster. This is required for Managed instances.
|
|
6889
|
+
:param managed_instances_provider: The configuration for the Amazon ECS Managed Instances provider. This includes the infrastructure role, the launch template configuration, and tag propagation settings.
|
|
6886
6890
|
:param name: The name of the capacity provider. If a name is specified, it cannot start with ``aws`` , ``ecs`` , or ``fargate`` . If no name is specified, a default name in the ``CFNStackName-CFNResourceName-RandomString`` format is used.
|
|
6887
6891
|
:param tags: The metadata that you apply to the capacity provider to help you categorize and organize it. Each tag consists of a key and an optional value. You define both. The following basic restrictions apply to tags: - Maximum number of tags per resource - 50 - For each resource, each tag key must be unique, and each tag key can have only one value. - Maximum key length - 128 Unicode characters in UTF-8 - Maximum value length - 256 Unicode characters in UTF-8 - If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
|
|
6888
6892
|
|
|
@@ -7030,7 +7034,12 @@ class CfnCapacityProviderProps:
|
|
|
7030
7034
|
|
|
7031
7035
|
@builtins.property
|
|
7032
7036
|
def cluster_name(self) -> typing.Optional[builtins.str]:
|
|
7033
|
-
'''
|
|
7037
|
+
'''The cluster that this capacity provider is associated with.
|
|
7038
|
+
|
|
7039
|
+
Managed instances capacity providers are cluster-scoped, meaning they can only be used within their associated cluster.
|
|
7040
|
+
|
|
7041
|
+
This is required for Managed instances.
|
|
7042
|
+
|
|
7034
7043
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html#cfn-ecs-capacityprovider-clustername
|
|
7035
7044
|
'''
|
|
7036
7045
|
result = self._values.get("cluster_name")
|
|
@@ -7040,7 +7049,10 @@ class CfnCapacityProviderProps:
|
|
|
7040
7049
|
def managed_instances_provider(
|
|
7041
7050
|
self,
|
|
7042
7051
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.ManagedInstancesProviderProperty"]]:
|
|
7043
|
-
'''
|
|
7052
|
+
'''The configuration for the Amazon ECS Managed Instances provider.
|
|
7053
|
+
|
|
7054
|
+
This includes the infrastructure role, the launch template configuration, and tag propagation settings.
|
|
7055
|
+
|
|
7044
7056
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html#cfn-ecs-capacityprovider-managedinstancesprovider
|
|
7045
7057
|
'''
|
|
7046
7058
|
result = self._values.get("managed_instances_provider")
|
|
@@ -7098,24 +7110,24 @@ class CfnCapacityProviderProps:
|
|
|
7098
7110
|
jsii_type="aws-cdk-lib.aws_ecs.CfnClusterCapacityProviderAssociationsProps",
|
|
7099
7111
|
jsii_struct_bases=[],
|
|
7100
7112
|
name_mapping={
|
|
7101
|
-
"capacity_providers": "capacityProviders",
|
|
7102
7113
|
"cluster": "cluster",
|
|
7103
7114
|
"default_capacity_provider_strategy": "defaultCapacityProviderStrategy",
|
|
7115
|
+
"capacity_providers": "capacityProviders",
|
|
7104
7116
|
},
|
|
7105
7117
|
)
|
|
7106
7118
|
class CfnClusterCapacityProviderAssociationsProps:
|
|
7107
7119
|
def __init__(
|
|
7108
7120
|
self,
|
|
7109
7121
|
*,
|
|
7110
|
-
capacity_providers: typing.Sequence[builtins.str],
|
|
7111
7122
|
cluster: builtins.str,
|
|
7112
7123
|
default_capacity_provider_strategy: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
7124
|
+
capacity_providers: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
7113
7125
|
) -> None:
|
|
7114
7126
|
'''Properties for defining a ``CfnClusterCapacityProviderAssociations``.
|
|
7115
7127
|
|
|
7116
|
-
:param capacity_providers: The capacity providers to associate with the cluster.
|
|
7117
7128
|
:param cluster: The cluster the capacity provider association is the target of.
|
|
7118
7129
|
:param default_capacity_provider_strategy: The default capacity provider strategy to associate with the cluster.
|
|
7130
|
+
:param capacity_providers: The capacity providers to associate with the cluster.
|
|
7119
7131
|
|
|
7120
7132
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html
|
|
7121
7133
|
:exampleMetadata: fixture=_generated
|
|
@@ -7127,7 +7139,6 @@ class CfnClusterCapacityProviderAssociationsProps:
|
|
|
7127
7139
|
from aws_cdk import aws_ecs as ecs
|
|
7128
7140
|
|
|
7129
7141
|
cfn_cluster_capacity_provider_associations_props = ecs.CfnClusterCapacityProviderAssociationsProps(
|
|
7130
|
-
capacity_providers=["capacityProviders"],
|
|
7131
7142
|
cluster="cluster",
|
|
7132
7143
|
default_capacity_provider_strategy=[ecs.CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty(
|
|
7133
7144
|
capacity_provider="capacityProvider",
|
|
@@ -7135,29 +7146,23 @@ class CfnClusterCapacityProviderAssociationsProps:
|
|
|
7135
7146
|
# the properties below are optional
|
|
7136
7147
|
base=123,
|
|
7137
7148
|
weight=123
|
|
7138
|
-
)]
|
|
7149
|
+
)],
|
|
7150
|
+
|
|
7151
|
+
# the properties below are optional
|
|
7152
|
+
capacity_providers=["capacityProviders"]
|
|
7139
7153
|
)
|
|
7140
7154
|
'''
|
|
7141
7155
|
if __debug__:
|
|
7142
7156
|
type_hints = typing.get_type_hints(_typecheckingstub__dec87cf6e858f074737c41c7a13a61e2e324b94deacf1f66ca9c0a48eb0b81b2)
|
|
7143
|
-
check_type(argname="argument capacity_providers", value=capacity_providers, expected_type=type_hints["capacity_providers"])
|
|
7144
7157
|
check_type(argname="argument cluster", value=cluster, expected_type=type_hints["cluster"])
|
|
7145
7158
|
check_type(argname="argument default_capacity_provider_strategy", value=default_capacity_provider_strategy, expected_type=type_hints["default_capacity_provider_strategy"])
|
|
7159
|
+
check_type(argname="argument capacity_providers", value=capacity_providers, expected_type=type_hints["capacity_providers"])
|
|
7146
7160
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
7147
|
-
"capacity_providers": capacity_providers,
|
|
7148
7161
|
"cluster": cluster,
|
|
7149
7162
|
"default_capacity_provider_strategy": default_capacity_provider_strategy,
|
|
7150
7163
|
}
|
|
7151
|
-
|
|
7152
|
-
|
|
7153
|
-
def capacity_providers(self) -> typing.List[builtins.str]:
|
|
7154
|
-
'''The capacity providers to associate with the cluster.
|
|
7155
|
-
|
|
7156
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html#cfn-ecs-clustercapacityproviderassociations-capacityproviders
|
|
7157
|
-
'''
|
|
7158
|
-
result = self._values.get("capacity_providers")
|
|
7159
|
-
assert result is not None, "Required property 'capacity_providers' is missing"
|
|
7160
|
-
return typing.cast(typing.List[builtins.str], result)
|
|
7164
|
+
if capacity_providers is not None:
|
|
7165
|
+
self._values["capacity_providers"] = capacity_providers
|
|
7161
7166
|
|
|
7162
7167
|
@builtins.property
|
|
7163
7168
|
def cluster(self) -> builtins.str:
|
|
@@ -7181,6 +7186,15 @@ class CfnClusterCapacityProviderAssociationsProps:
|
|
|
7181
7186
|
assert result is not None, "Required property 'default_capacity_provider_strategy' is missing"
|
|
7182
7187
|
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty"]]], result)
|
|
7183
7188
|
|
|
7189
|
+
@builtins.property
|
|
7190
|
+
def capacity_providers(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
7191
|
+
'''The capacity providers to associate with the cluster.
|
|
7192
|
+
|
|
7193
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-clustercapacityproviderassociations.html#cfn-ecs-clustercapacityproviderassociations-capacityproviders
|
|
7194
|
+
'''
|
|
7195
|
+
result = self._values.get("capacity_providers")
|
|
7196
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
7197
|
+
|
|
7184
7198
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
7185
7199
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
7186
7200
|
|
|
@@ -7586,8 +7600,8 @@ class CfnServiceProps:
|
|
|
7586
7600
|
:param enable_ecs_managed_tags: Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see `Tagging your Amazon ECS resources <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html>`_ in the *Amazon Elastic Container Service Developer Guide* . When you use Amazon ECS managed tags, you must set the ``propagateTags`` request parameter.
|
|
7587
7601
|
:param enable_execute_command: Determines whether the execute command functionality is turned on for the service. If ``true`` , the execute command functionality is turned on for all containers in tasks as part of the service.
|
|
7588
7602
|
:param force_new_deployment: Determines whether to force a new deployment of the service. By default, deployments aren't forced. You can use this option to start a new deployment with no service definition changes. For example, you can update a service's tasks to use a newer Docker image with the same image/tag combination ( ``my_image:latest`` ) or to roll Fargate tasks onto a newer platform version.
|
|
7589
|
-
:param health_check_grace_period_seconds: The period of time, in seconds, that the Amazon
|
|
7590
|
-
:param launch_type: The launch type on which to run your service. For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
7603
|
+
:param health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you do not specify a health check grace period value, the default value of 0 is used. If you do not use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.
|
|
7604
|
+
:param launch_type: The launch type on which to run your service. For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: If you want to use Managed Instances, you must use the ``capacityProviderStrategy`` request parameter
|
|
7591
7605
|
:param load_balancers: A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see `Service Load Balancing <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: To remove this property from your service resource, specify an empty ``LoadBalancer`` array.
|
|
7592
7606
|
:param network_configuration: The network configuration for the service. This parameter is required for task definitions that use the ``awsvpc`` network mode to receive their own elastic network interface, and it is not supported for other network modes. For more information, see `Task Networking <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
7593
7607
|
:param placement_constraints: An array of placement constraint objects to use for tasks in your service. You can specify a maximum of 10 constraints for each task. This limit includes constraints in the task definition and those specified at runtime. .. epigraph:: To remove this property from your service resource, specify an empty ``PlacementConstraint`` array.
|
|
@@ -8004,7 +8018,7 @@ class CfnServiceProps:
|
|
|
8004
8018
|
|
|
8005
8019
|
@builtins.property
|
|
8006
8020
|
def health_check_grace_period_seconds(self) -> typing.Optional[jsii.Number]:
|
|
8007
|
-
'''The period of time, in seconds, that the Amazon
|
|
8021
|
+
'''The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started.
|
|
8008
8022
|
|
|
8009
8023
|
If you do not specify a health check grace period value, the default value of 0 is used. If you do not use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused.
|
|
8010
8024
|
|
|
@@ -8020,6 +8034,9 @@ class CfnServiceProps:
|
|
|
8020
8034
|
'''The launch type on which to run your service.
|
|
8021
8035
|
|
|
8022
8036
|
For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
8037
|
+
.. epigraph::
|
|
8038
|
+
|
|
8039
|
+
If you want to use Managed Instances, you must use the ``capacityProviderStrategy`` request parameter
|
|
8023
8040
|
|
|
8024
8041
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-launchtype
|
|
8025
8042
|
'''
|
|
@@ -8332,7 +8349,7 @@ class CfnTaskDefinitionProps:
|
|
|
8332
8349
|
:param pid_mode: The process namespace to use for the containers in the task. The valid values are ``host`` or ``task`` . On Fargate for Linux containers, the only valid value is ``task`` . For example, monitoring sidecars might need ``pidMode`` to access information about other containers running in the same task. If ``host`` is specified, all containers within the tasks that specified the ``host`` PID mode on the same container instance share the same process namespace with the host Amazon EC2 instance. If ``task`` is specified, all containers within the specified task share the same process namespace. If no value is specified, the default is a private namespace for each container. If the ``host`` PID mode is used, there's a heightened risk of undesired process namespace exposure. .. epigraph:: This parameter is not supported for Windows containers. > This parameter is only supported for tasks that are hosted on AWS Fargate if the tasks are using platform version ``1.4.0`` or later (Linux). This isn't supported for Windows containers on Fargate.
|
|
8333
8350
|
:param placement_constraints: An array of placement constraint objects to use for tasks. .. epigraph:: This parameter isn't supported for tasks run on AWS Fargate .
|
|
8334
8351
|
:param proxy_configuration: The configuration details for the App Mesh proxy. Your Amazon ECS container instances require at least version 1.26.0 of the container agent and at least version 1.26.0-1 of the ``ecs-init`` package to use a proxy configuration. If your container instances are launched from the Amazon ECS optimized AMI version ``20190301`` or later, they contain the required versions of the container agent and ``ecs-init`` . For more information, see `Amazon ECS-optimized Linux AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
8335
|
-
:param requires_compatibilities: The task launch types the task definition was validated against. The valid values are ``EC2`` , ``FARGATE`` , and ``EXTERNAL`` . For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
8352
|
+
:param requires_compatibilities: The task launch types the task definition was validated against. The valid values are ``MANAGED_INSTANCES`` , ``EC2`` , ``FARGATE`` , and ``EXTERNAL`` . For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
8336
8353
|
:param runtime_platform: The operating system that your tasks definitions run on. A platform family is specified only for tasks using the Fargate launch type.
|
|
8337
8354
|
:param tags: The metadata that you apply to the task definition to help you categorize and organize them. Each tag consists of a key and an optional value. You define both of them. The following basic restrictions apply to tags: - Maximum number of tags per resource - 50 - For each resource, each tag key must be unique, and each tag key can have only one value. - Maximum key length - 128 Unicode characters in UTF-8 - Maximum value length - 256 Unicode characters in UTF-8 - If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
|
|
8338
8355
|
:param task_role_arn: The short name or full Amazon Resource Name (ARN) of the AWS Identity and Access Management role that grants containers in the task permission to call AWS APIs on your behalf. For more information, see `Amazon ECS Task Role <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html>`_ in the *Amazon Elastic Container Service Developer Guide* . IAM roles for tasks on Windows require that the ``-EnableTaskIAMRole`` option is set when you launch the Amazon ECS-optimized Windows AMI. Your containers must also run some configuration code to use the feature. For more information, see `Windows IAM roles for tasks <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows_task_IAM_roles.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: String validation is done on the ECS side. If an invalid string value is given for ``TaskRoleArn`` , it may cause the Cloudformation job to hang.
|
|
@@ -8841,7 +8858,7 @@ class CfnTaskDefinitionProps:
|
|
|
8841
8858
|
def requires_compatibilities(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
8842
8859
|
'''The task launch types the task definition was validated against.
|
|
8843
8860
|
|
|
8844
|
-
The valid values are ``EC2`` , ``FARGATE`` , and ``EXTERNAL`` . For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
8861
|
+
The valid values are ``MANAGED_INSTANCES`` , ``EC2`` , ``FARGATE`` , and ``EXTERNAL`` . For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
8845
8862
|
|
|
8846
8863
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-requirescompatibilities
|
|
8847
8864
|
'''
|
|
@@ -23806,6 +23823,7 @@ class MachineImageType(enum.Enum):
|
|
|
23806
23823
|
'''Bottlerocket AMI.'''
|
|
23807
23824
|
|
|
23808
23825
|
|
|
23826
|
+
@jsii.implements(_IConnectable_10015a05)
|
|
23809
23827
|
class ManagedInstancesCapacityProvider(
|
|
23810
23828
|
_constructs_77d1e7e8.Construct,
|
|
23811
23829
|
metaclass=jsii.JSIIMeta,
|
|
@@ -23842,6 +23860,9 @@ class ManagedInstancesCapacityProvider(
|
|
|
23842
23860
|
propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
|
|
23843
23861
|
)
|
|
23844
23862
|
|
|
23863
|
+
# Optionally configure security group rules using IConnectable interface
|
|
23864
|
+
mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
|
|
23865
|
+
|
|
23845
23866
|
# Add the capacity provider to the cluster
|
|
23846
23867
|
cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
|
|
23847
23868
|
|
|
@@ -23935,6 +23956,12 @@ class ManagedInstancesCapacityProvider(
|
|
|
23935
23956
|
'''Capacity provider name.'''
|
|
23936
23957
|
return typing.cast(builtins.str, jsii.get(self, "capacityProviderName"))
|
|
23937
23958
|
|
|
23959
|
+
@builtins.property
|
|
23960
|
+
@jsii.member(jsii_name="connections")
|
|
23961
|
+
def connections(self) -> _Connections_0f31fce8:
|
|
23962
|
+
'''The network connections associated with this resource.'''
|
|
23963
|
+
return typing.cast(_Connections_0f31fce8, jsii.get(self, "connections"))
|
|
23964
|
+
|
|
23938
23965
|
|
|
23939
23966
|
@jsii.data_type(
|
|
23940
23967
|
jsii_type="aws-cdk-lib.aws_ecs.ManagedInstancesCapacityProviderProps",
|
|
@@ -24003,6 +24030,9 @@ class ManagedInstancesCapacityProviderProps:
|
|
|
24003
24030
|
propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
|
|
24004
24031
|
)
|
|
24005
24032
|
|
|
24033
|
+
# Optionally configure security group rules using IConnectable interface
|
|
24034
|
+
mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
|
|
24035
|
+
|
|
24006
24036
|
# Add the capacity provider to the cluster
|
|
24007
24037
|
cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
|
|
24008
24038
|
|
|
@@ -25208,6 +25238,9 @@ class PropagateManagedInstancesTags(enum.Enum):
|
|
|
25208
25238
|
propagate_tags=ecs.PropagateManagedInstancesTags.CAPACITY_PROVIDER
|
|
25209
25239
|
)
|
|
25210
25240
|
|
|
25241
|
+
# Optionally configure security group rules using IConnectable interface
|
|
25242
|
+
mi_capacity_provider.connections.allow_from(ec2.Peer.ipv4(vpc.vpc_cidr_block), ec2.Port.tcp(80))
|
|
25243
|
+
|
|
25211
25244
|
# Add the capacity provider to the cluster
|
|
25212
25245
|
cluster.add_managed_instances_capacity_provider(mi_capacity_provider)
|
|
25213
25246
|
|
|
@@ -31367,11 +31400,9 @@ class CfnCapacityProvider(
|
|
|
31367
31400
|
metaclass=jsii.JSIIMeta,
|
|
31368
31401
|
jsii_type="aws-cdk-lib.aws_ecs.CfnCapacityProvider",
|
|
31369
31402
|
):
|
|
31370
|
-
'''Creates a
|
|
31371
|
-
|
|
31372
|
-
Capacity providers are associated with an Amazon ECS cluster and are used in capacity provider strategies to facilitate cluster auto scaling.
|
|
31403
|
+
'''Creates a capacity provider.
|
|
31373
31404
|
|
|
31374
|
-
|
|
31405
|
+
Capacity providers are associated with a cluster and are used in capacity provider strategies to facilitate cluster auto scaling. You can create capacity providers for Amazon ECS Managed Instances and EC2 instances. AWS Fargate has the predefined ``FARGATE`` and ``FARGATE_SPOT`` capacity providers.
|
|
31375
31406
|
|
|
31376
31407
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-capacityprovider.html
|
|
31377
31408
|
:cloudformationResource: AWS::ECS::CapacityProvider
|
|
@@ -31502,8 +31533,8 @@ class CfnCapacityProvider(
|
|
|
31502
31533
|
:param scope: Scope in which this resource is defined.
|
|
31503
31534
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
31504
31535
|
:param auto_scaling_group_provider: The Auto Scaling group settings for the capacity provider.
|
|
31505
|
-
:param cluster_name:
|
|
31506
|
-
:param managed_instances_provider:
|
|
31536
|
+
:param cluster_name: The cluster that this capacity provider is associated with. Managed instances capacity providers are cluster-scoped, meaning they can only be used within their associated cluster. This is required for Managed instances.
|
|
31537
|
+
:param managed_instances_provider: The configuration for the Amazon ECS Managed Instances provider. This includes the infrastructure role, the launch template configuration, and tag propagation settings.
|
|
31507
31538
|
:param name: The name of the capacity provider. If a name is specified, it cannot start with ``aws`` , ``ecs`` , or ``fargate`` . If no name is specified, a default name in the ``CFNStackName-CFNResourceName-RandomString`` format is used.
|
|
31508
31539
|
:param tags: The metadata that you apply to the capacity provider to help you categorize and organize it. Each tag consists of a key and an optional value. You define both. The following basic restrictions apply to tags: - Maximum number of tags per resource - 50 - For each resource, each tag key must be unique, and each tag key can have only one value. - Maximum key length - 128 Unicode characters in UTF-8 - Maximum value length - 256 Unicode characters in UTF-8 - If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
|
|
31509
31540
|
'''
|
|
@@ -31610,6 +31641,7 @@ class CfnCapacityProvider(
|
|
|
31610
31641
|
@builtins.property
|
|
31611
31642
|
@jsii.member(jsii_name="clusterName")
|
|
31612
31643
|
def cluster_name(self) -> typing.Optional[builtins.str]:
|
|
31644
|
+
'''The cluster that this capacity provider is associated with.'''
|
|
31613
31645
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "clusterName"))
|
|
31614
31646
|
|
|
31615
31647
|
@cluster_name.setter
|
|
@@ -31624,6 +31656,7 @@ class CfnCapacityProvider(
|
|
|
31624
31656
|
def managed_instances_provider(
|
|
31625
31657
|
self,
|
|
31626
31658
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.ManagedInstancesProviderProperty"]]:
|
|
31659
|
+
'''The configuration for the Amazon ECS Managed Instances provider.'''
|
|
31627
31660
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.ManagedInstancesProviderProperty"]], jsii.get(self, "managedInstancesProvider"))
|
|
31628
31661
|
|
|
31629
31662
|
@managed_instances_provider.setter
|
|
@@ -31674,9 +31707,12 @@ class CfnCapacityProvider(
|
|
|
31674
31707
|
max: typing.Optional[jsii.Number] = None,
|
|
31675
31708
|
min: typing.Optional[jsii.Number] = None,
|
|
31676
31709
|
) -> None:
|
|
31677
|
-
'''
|
|
31678
|
-
|
|
31679
|
-
|
|
31710
|
+
'''The minimum and maximum number of accelerators (such as GPUs) for instance type selection.
|
|
31711
|
+
|
|
31712
|
+
This is used for workloads that require specific numbers of accelerators.
|
|
31713
|
+
|
|
31714
|
+
:param max: The maximum number of accelerators. Instance types with more accelerators are excluded from selection.
|
|
31715
|
+
:param min: The minimum number of accelerators. Instance types with fewer accelerators are excluded from selection.
|
|
31680
31716
|
|
|
31681
31717
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratorcountrequest.html
|
|
31682
31718
|
:exampleMetadata: fixture=_generated
|
|
@@ -31704,7 +31740,10 @@ class CfnCapacityProvider(
|
|
|
31704
31740
|
|
|
31705
31741
|
@builtins.property
|
|
31706
31742
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
31707
|
-
'''
|
|
31743
|
+
'''The maximum number of accelerators.
|
|
31744
|
+
|
|
31745
|
+
Instance types with more accelerators are excluded from selection.
|
|
31746
|
+
|
|
31708
31747
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratorcountrequest.html#cfn-ecs-capacityprovider-acceleratorcountrequest-max
|
|
31709
31748
|
'''
|
|
31710
31749
|
result = self._values.get("max")
|
|
@@ -31712,7 +31751,10 @@ class CfnCapacityProvider(
|
|
|
31712
31751
|
|
|
31713
31752
|
@builtins.property
|
|
31714
31753
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
31715
|
-
'''
|
|
31754
|
+
'''The minimum number of accelerators.
|
|
31755
|
+
|
|
31756
|
+
Instance types with fewer accelerators are excluded from selection.
|
|
31757
|
+
|
|
31716
31758
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratorcountrequest.html#cfn-ecs-capacityprovider-acceleratorcountrequest-min
|
|
31717
31759
|
'''
|
|
31718
31760
|
result = self._values.get("min")
|
|
@@ -31741,9 +31783,12 @@ class CfnCapacityProvider(
|
|
|
31741
31783
|
max: typing.Optional[jsii.Number] = None,
|
|
31742
31784
|
min: typing.Optional[jsii.Number] = None,
|
|
31743
31785
|
) -> None:
|
|
31744
|
-
'''
|
|
31745
|
-
|
|
31746
|
-
|
|
31786
|
+
'''The minimum and maximum total accelerator memory in mebibytes (MiB) for instance type selection.
|
|
31787
|
+
|
|
31788
|
+
This is important for GPU workloads that require specific amounts of video memory.
|
|
31789
|
+
|
|
31790
|
+
:param max: The maximum total accelerator memory in MiB. Instance types with more accelerator memory are excluded from selection.
|
|
31791
|
+
:param min: The minimum total accelerator memory in MiB. Instance types with less accelerator memory are excluded from selection.
|
|
31747
31792
|
|
|
31748
31793
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratortotalmemorymibrequest.html
|
|
31749
31794
|
:exampleMetadata: fixture=_generated
|
|
@@ -31771,7 +31816,10 @@ class CfnCapacityProvider(
|
|
|
31771
31816
|
|
|
31772
31817
|
@builtins.property
|
|
31773
31818
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
31774
|
-
'''
|
|
31819
|
+
'''The maximum total accelerator memory in MiB.
|
|
31820
|
+
|
|
31821
|
+
Instance types with more accelerator memory are excluded from selection.
|
|
31822
|
+
|
|
31775
31823
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratortotalmemorymibrequest.html#cfn-ecs-capacityprovider-acceleratortotalmemorymibrequest-max
|
|
31776
31824
|
'''
|
|
31777
31825
|
result = self._values.get("max")
|
|
@@ -31779,7 +31827,10 @@ class CfnCapacityProvider(
|
|
|
31779
31827
|
|
|
31780
31828
|
@builtins.property
|
|
31781
31829
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
31782
|
-
'''
|
|
31830
|
+
'''The minimum total accelerator memory in MiB.
|
|
31831
|
+
|
|
31832
|
+
Instance types with less accelerator memory are excluded from selection.
|
|
31833
|
+
|
|
31783
31834
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-acceleratortotalmemorymibrequest.html#cfn-ecs-capacityprovider-acceleratortotalmemorymibrequest-min
|
|
31784
31835
|
'''
|
|
31785
31836
|
result = self._values.get("min")
|
|
@@ -31935,9 +31986,12 @@ class CfnCapacityProvider(
|
|
|
31935
31986
|
max: typing.Optional[jsii.Number] = None,
|
|
31936
31987
|
min: typing.Optional[jsii.Number] = None,
|
|
31937
31988
|
) -> None:
|
|
31938
|
-
'''
|
|
31939
|
-
|
|
31940
|
-
|
|
31989
|
+
'''The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps) for instance type selection.
|
|
31990
|
+
|
|
31991
|
+
This is important for workloads with high storage I/O requirements.
|
|
31992
|
+
|
|
31993
|
+
:param max: The maximum baseline Amazon EBS bandwidth in Mbps. Instance types with higher Amazon EBS bandwidth are excluded from selection.
|
|
31994
|
+
:param min: The minimum baseline Amazon EBS bandwidth in Mbps. Instance types with lower Amazon EBS bandwidth are excluded from selection.
|
|
31941
31995
|
|
|
31942
31996
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-baselineebsbandwidthmbpsrequest.html
|
|
31943
31997
|
:exampleMetadata: fixture=_generated
|
|
@@ -31965,7 +32019,10 @@ class CfnCapacityProvider(
|
|
|
31965
32019
|
|
|
31966
32020
|
@builtins.property
|
|
31967
32021
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
31968
|
-
'''
|
|
32022
|
+
'''The maximum baseline Amazon EBS bandwidth in Mbps.
|
|
32023
|
+
|
|
32024
|
+
Instance types with higher Amazon EBS bandwidth are excluded from selection.
|
|
32025
|
+
|
|
31969
32026
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-baselineebsbandwidthmbpsrequest.html#cfn-ecs-capacityprovider-baselineebsbandwidthmbpsrequest-max
|
|
31970
32027
|
'''
|
|
31971
32028
|
result = self._values.get("max")
|
|
@@ -31973,7 +32030,10 @@ class CfnCapacityProvider(
|
|
|
31973
32030
|
|
|
31974
32031
|
@builtins.property
|
|
31975
32032
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
31976
|
-
'''
|
|
32033
|
+
'''The minimum baseline Amazon EBS bandwidth in Mbps.
|
|
32034
|
+
|
|
32035
|
+
Instance types with lower Amazon EBS bandwidth are excluded from selection.
|
|
32036
|
+
|
|
31977
32037
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-baselineebsbandwidthmbpsrequest.html#cfn-ecs-capacityprovider-baselineebsbandwidthmbpsrequest-min
|
|
31978
32038
|
'''
|
|
31979
32039
|
result = self._values.get("min")
|
|
@@ -32011,12 +32071,15 @@ class CfnCapacityProvider(
|
|
|
32011
32071
|
monitoring: typing.Optional[builtins.str] = None,
|
|
32012
32072
|
storage_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCapacityProvider.ManagedInstancesStorageConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
32013
32073
|
) -> None:
|
|
32014
|
-
'''
|
|
32015
|
-
|
|
32016
|
-
|
|
32017
|
-
|
|
32018
|
-
:param
|
|
32019
|
-
:param
|
|
32074
|
+
'''The launch template configuration for Amazon ECS Managed Instances.
|
|
32075
|
+
|
|
32076
|
+
This defines how Amazon ECS launches Amazon EC2 instances, including the instance profile for your tasks, network and storage configuration, capacity options, and instance requirements for flexible instance type selection.
|
|
32077
|
+
|
|
32078
|
+
:param ec2_instance_profile_arn: The Amazon Resource Name (ARN) of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see `Amazon ECS instance profile for Managed Instances <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/managed-instances-instance-profile.html>`_ in the *Amazon ECS Developer Guide* .
|
|
32079
|
+
:param network_configuration: The network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity.
|
|
32080
|
+
:param instance_requirements: The instance requirements. You can specify:. - The instance types - Instance requirements such as vCPU count, memory, network performance, and accelerator specifications Amazon ECS automatically selects the instances that match the specified criteria.
|
|
32081
|
+
:param monitoring: CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see `Detailed monitoring for Amazon ECS Managed Instances <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/detailed-monitoring-managed-instances.html>`_ in the Amazon ECS Developer Guide.
|
|
32082
|
+
:param storage_configuration: The storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances.
|
|
32020
32083
|
|
|
32021
32084
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html
|
|
32022
32085
|
:exampleMetadata: fixture=_generated
|
|
@@ -32122,7 +32185,12 @@ class CfnCapacityProvider(
|
|
|
32122
32185
|
|
|
32123
32186
|
@builtins.property
|
|
32124
32187
|
def ec2_instance_profile_arn(self) -> builtins.str:
|
|
32125
|
-
'''
|
|
32188
|
+
'''The Amazon Resource Name (ARN) of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances.
|
|
32189
|
+
|
|
32190
|
+
This instance profile must include the necessary permissions for your tasks to access AWS services and resources.
|
|
32191
|
+
|
|
32192
|
+
For more information, see `Amazon ECS instance profile for Managed Instances <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/managed-instances-instance-profile.html>`_ in the *Amazon ECS Developer Guide* .
|
|
32193
|
+
|
|
32126
32194
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html#cfn-ecs-capacityprovider-instancelaunchtemplate-ec2instanceprofilearn
|
|
32127
32195
|
'''
|
|
32128
32196
|
result = self._values.get("ec2_instance_profile_arn")
|
|
@@ -32133,7 +32201,10 @@ class CfnCapacityProvider(
|
|
|
32133
32201
|
def network_configuration(
|
|
32134
32202
|
self,
|
|
32135
32203
|
) -> typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.ManagedInstancesNetworkConfigurationProperty"]:
|
|
32136
|
-
'''
|
|
32204
|
+
'''The network configuration for Amazon ECS Managed Instances.
|
|
32205
|
+
|
|
32206
|
+
This specifies the subnets and security groups that instances use for network connectivity.
|
|
32207
|
+
|
|
32137
32208
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html#cfn-ecs-capacityprovider-instancelaunchtemplate-networkconfiguration
|
|
32138
32209
|
'''
|
|
32139
32210
|
result = self._values.get("network_configuration")
|
|
@@ -32144,7 +32215,13 @@ class CfnCapacityProvider(
|
|
|
32144
32215
|
def instance_requirements(
|
|
32145
32216
|
self,
|
|
32146
32217
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.InstanceRequirementsRequestProperty"]]:
|
|
32147
|
-
'''
|
|
32218
|
+
'''The instance requirements. You can specify:.
|
|
32219
|
+
|
|
32220
|
+
- The instance types
|
|
32221
|
+
- Instance requirements such as vCPU count, memory, network performance, and accelerator specifications
|
|
32222
|
+
|
|
32223
|
+
Amazon ECS automatically selects the instances that match the specified criteria.
|
|
32224
|
+
|
|
32148
32225
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html#cfn-ecs-capacityprovider-instancelaunchtemplate-instancerequirements
|
|
32149
32226
|
'''
|
|
32150
32227
|
result = self._values.get("instance_requirements")
|
|
@@ -32152,7 +32229,10 @@ class CfnCapacityProvider(
|
|
|
32152
32229
|
|
|
32153
32230
|
@builtins.property
|
|
32154
32231
|
def monitoring(self) -> typing.Optional[builtins.str]:
|
|
32155
|
-
'''
|
|
32232
|
+
'''CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring.
|
|
32233
|
+
|
|
32234
|
+
By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see `Detailed monitoring for Amazon ECS Managed Instances <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/detailed-monitoring-managed-instances.html>`_ in the Amazon ECS Developer Guide.
|
|
32235
|
+
|
|
32156
32236
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html#cfn-ecs-capacityprovider-instancelaunchtemplate-monitoring
|
|
32157
32237
|
'''
|
|
32158
32238
|
result = self._values.get("monitoring")
|
|
@@ -32162,7 +32242,10 @@ class CfnCapacityProvider(
|
|
|
32162
32242
|
def storage_configuration(
|
|
32163
32243
|
self,
|
|
32164
32244
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.ManagedInstancesStorageConfigurationProperty"]]:
|
|
32165
|
-
'''
|
|
32245
|
+
'''The storage configuration for Amazon ECS Managed Instances.
|
|
32246
|
+
|
|
32247
|
+
This defines the root volume size and type for the instances.
|
|
32248
|
+
|
|
32166
32249
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancelaunchtemplate.html#cfn-ecs-capacityprovider-instancelaunchtemplate-storageconfiguration
|
|
32167
32250
|
'''
|
|
32168
32251
|
result = self._values.get("storage_configuration")
|
|
@@ -32238,31 +32321,34 @@ class CfnCapacityProvider(
|
|
|
32238
32321
|
spot_max_price_percentage_over_lowest_price: typing.Optional[jsii.Number] = None,
|
|
32239
32322
|
total_local_storage_gb: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCapacityProvider.TotalLocalStorageGBRequestProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
32240
32323
|
) -> None:
|
|
32241
|
-
'''
|
|
32242
|
-
|
|
32243
|
-
|
|
32244
|
-
|
|
32245
|
-
:param
|
|
32246
|
-
:param
|
|
32247
|
-
:param
|
|
32248
|
-
:param
|
|
32249
|
-
:param
|
|
32250
|
-
:param
|
|
32251
|
-
:param
|
|
32252
|
-
:param
|
|
32253
|
-
:param
|
|
32254
|
-
:param
|
|
32255
|
-
:param
|
|
32256
|
-
:param
|
|
32257
|
-
:param
|
|
32258
|
-
:param
|
|
32259
|
-
:param
|
|
32260
|
-
:param
|
|
32261
|
-
:param
|
|
32262
|
-
:param
|
|
32263
|
-
:param
|
|
32264
|
-
:param
|
|
32265
|
-
:param
|
|
32324
|
+
'''The instance requirements for attribute-based instance type selection.
|
|
32325
|
+
|
|
32326
|
+
Instead of specifying exact instance types, you define requirements such as vCPU count, memory size, network performance, and accelerator specifications. Amazon ECS automatically selects Amazon EC2 instance types that match these requirements, providing flexibility and helping to mitigate capacity constraints.
|
|
32327
|
+
|
|
32328
|
+
:param memory_mib: The minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range.
|
|
32329
|
+
:param v_cpu_count: The minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range.
|
|
32330
|
+
:param accelerator_count: The minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators.
|
|
32331
|
+
:param accelerator_manufacturers: The accelerator manufacturers to include. You can specify ``nvidia`` , ``amd`` , ``amazon-web-services`` , or ``xilinx`` depending on your accelerator requirements.
|
|
32332
|
+
:param accelerator_names: The specific accelerator names to include. For example, you can specify ``a100`` , ``v100`` , ``k80`` , or other specific accelerator models.
|
|
32333
|
+
:param accelerator_total_memory_mib: The minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory.
|
|
32334
|
+
:param accelerator_types: The accelerator types to include. You can specify ``gpu`` for graphics processing units, ``fpga`` for field programmable gate arrays, or ``inference`` for machine learning inference accelerators.
|
|
32335
|
+
:param allowed_instance_types: The instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified.
|
|
32336
|
+
:param bare_metal: Indicates whether to include bare metal instance types. Set to ``included`` to allow bare metal instances, ``excluded`` to exclude them, or ``required`` to use only bare metal instances.
|
|
32337
|
+
:param baseline_ebs_bandwidth_mbps: The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements.
|
|
32338
|
+
:param burstable_performance: Indicates whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to ``included`` to allow burstable instances, ``excluded`` to exclude them, or ``required`` to use only burstable instances.
|
|
32339
|
+
:param cpu_manufacturers: The CPU manufacturers to include or exclude. You can specify ``intel`` , ``amd`` , or ``amazon-web-services`` to control which CPU types are used for your workloads.
|
|
32340
|
+
:param excluded_instance_types: The instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads.
|
|
32341
|
+
:param instance_generations: The instance generations to include. You can specify ``current`` to use the latest generation instances, or ``previous`` to include previous generation instances for cost optimization.
|
|
32342
|
+
:param local_storage: Indicates whether to include instance types with local storage. Set to ``included`` to allow local storage, ``excluded`` to exclude it, or ``required`` to use only instances with local storage.
|
|
32343
|
+
:param local_storage_types: The local storage types to include. You can specify ``hdd`` for hard disk drives, ``ssd`` for solid state drives, or both.
|
|
32344
|
+
:param max_spot_price_as_percentage_of_optimal_on_demand_price: The maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
|
|
32345
|
+
:param memory_gib_per_v_cpu: The minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads.
|
|
32346
|
+
:param network_bandwidth_gbps: The minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput.
|
|
32347
|
+
:param network_interface_count: The minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces.
|
|
32348
|
+
:param on_demand_max_price_percentage_over_lowest_price: The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon ECS selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
|
|
32349
|
+
:param require_hibernate_support: Indicates whether the instance types must support hibernation. When set to ``true`` , only instance types that support hibernation are selected.
|
|
32350
|
+
:param spot_max_price_percentage_over_lowest_price: The maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
|
|
32351
|
+
:param total_local_storage_gb: The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage.
|
|
32266
32352
|
|
|
32267
32353
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html
|
|
32268
32354
|
:exampleMetadata: fixture=_generated
|
|
@@ -32412,7 +32498,10 @@ class CfnCapacityProvider(
|
|
|
32412
32498
|
def memory_mib(
|
|
32413
32499
|
self,
|
|
32414
32500
|
) -> typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.MemoryMiBRequestProperty"]:
|
|
32415
|
-
'''
|
|
32501
|
+
'''The minimum and maximum amount of memory in mebibytes (MiB) for the instance types.
|
|
32502
|
+
|
|
32503
|
+
Amazon ECS selects instance types that have memory within this range.
|
|
32504
|
+
|
|
32416
32505
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-memorymib
|
|
32417
32506
|
'''
|
|
32418
32507
|
result = self._values.get("memory_mib")
|
|
@@ -32423,7 +32512,10 @@ class CfnCapacityProvider(
|
|
|
32423
32512
|
def v_cpu_count(
|
|
32424
32513
|
self,
|
|
32425
32514
|
) -> typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.VCpuCountRangeRequestProperty"]:
|
|
32426
|
-
'''
|
|
32515
|
+
'''The minimum and maximum number of vCPUs for the instance types.
|
|
32516
|
+
|
|
32517
|
+
Amazon ECS selects instance types that have vCPU counts within this range.
|
|
32518
|
+
|
|
32427
32519
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-vcpucount
|
|
32428
32520
|
'''
|
|
32429
32521
|
result = self._values.get("v_cpu_count")
|
|
@@ -32434,7 +32526,10 @@ class CfnCapacityProvider(
|
|
|
32434
32526
|
def accelerator_count(
|
|
32435
32527
|
self,
|
|
32436
32528
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AcceleratorCountRequestProperty"]]:
|
|
32437
|
-
'''
|
|
32529
|
+
'''The minimum and maximum number of accelerators for the instance types.
|
|
32530
|
+
|
|
32531
|
+
This is used when you need instances with specific numbers of GPUs or other accelerators.
|
|
32532
|
+
|
|
32438
32533
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-acceleratorcount
|
|
32439
32534
|
'''
|
|
32440
32535
|
result = self._values.get("accelerator_count")
|
|
@@ -32444,7 +32539,10 @@ class CfnCapacityProvider(
|
|
|
32444
32539
|
def accelerator_manufacturers(
|
|
32445
32540
|
self,
|
|
32446
32541
|
) -> typing.Optional[typing.List[builtins.str]]:
|
|
32447
|
-
'''
|
|
32542
|
+
'''The accelerator manufacturers to include.
|
|
32543
|
+
|
|
32544
|
+
You can specify ``nvidia`` , ``amd`` , ``amazon-web-services`` , or ``xilinx`` depending on your accelerator requirements.
|
|
32545
|
+
|
|
32448
32546
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-acceleratormanufacturers
|
|
32449
32547
|
'''
|
|
32450
32548
|
result = self._values.get("accelerator_manufacturers")
|
|
@@ -32452,7 +32550,10 @@ class CfnCapacityProvider(
|
|
|
32452
32550
|
|
|
32453
32551
|
@builtins.property
|
|
32454
32552
|
def accelerator_names(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32455
|
-
'''
|
|
32553
|
+
'''The specific accelerator names to include.
|
|
32554
|
+
|
|
32555
|
+
For example, you can specify ``a100`` , ``v100`` , ``k80`` , or other specific accelerator models.
|
|
32556
|
+
|
|
32456
32557
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-acceleratornames
|
|
32457
32558
|
'''
|
|
32458
32559
|
result = self._values.get("accelerator_names")
|
|
@@ -32462,7 +32563,10 @@ class CfnCapacityProvider(
|
|
|
32462
32563
|
def accelerator_total_memory_mib(
|
|
32463
32564
|
self,
|
|
32464
32565
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.AcceleratorTotalMemoryMiBRequestProperty"]]:
|
|
32465
|
-
'''
|
|
32566
|
+
'''The minimum and maximum total accelerator memory in mebibytes (MiB).
|
|
32567
|
+
|
|
32568
|
+
This is important for GPU workloads that require specific amounts of video memory.
|
|
32569
|
+
|
|
32466
32570
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-acceleratortotalmemorymib
|
|
32467
32571
|
'''
|
|
32468
32572
|
result = self._values.get("accelerator_total_memory_mib")
|
|
@@ -32470,7 +32574,10 @@ class CfnCapacityProvider(
|
|
|
32470
32574
|
|
|
32471
32575
|
@builtins.property
|
|
32472
32576
|
def accelerator_types(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32473
|
-
'''
|
|
32577
|
+
'''The accelerator types to include.
|
|
32578
|
+
|
|
32579
|
+
You can specify ``gpu`` for graphics processing units, ``fpga`` for field programmable gate arrays, or ``inference`` for machine learning inference accelerators.
|
|
32580
|
+
|
|
32474
32581
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-acceleratortypes
|
|
32475
32582
|
'''
|
|
32476
32583
|
result = self._values.get("accelerator_types")
|
|
@@ -32478,7 +32585,10 @@ class CfnCapacityProvider(
|
|
|
32478
32585
|
|
|
32479
32586
|
@builtins.property
|
|
32480
32587
|
def allowed_instance_types(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32481
|
-
'''
|
|
32588
|
+
'''The instance types to include in the selection.
|
|
32589
|
+
|
|
32590
|
+
When specified, Amazon ECS only considers these instance types, subject to the other requirements specified.
|
|
32591
|
+
|
|
32482
32592
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-allowedinstancetypes
|
|
32483
32593
|
'''
|
|
32484
32594
|
result = self._values.get("allowed_instance_types")
|
|
@@ -32486,7 +32596,10 @@ class CfnCapacityProvider(
|
|
|
32486
32596
|
|
|
32487
32597
|
@builtins.property
|
|
32488
32598
|
def bare_metal(self) -> typing.Optional[builtins.str]:
|
|
32489
|
-
'''
|
|
32599
|
+
'''Indicates whether to include bare metal instance types.
|
|
32600
|
+
|
|
32601
|
+
Set to ``included`` to allow bare metal instances, ``excluded`` to exclude them, or ``required`` to use only bare metal instances.
|
|
32602
|
+
|
|
32490
32603
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-baremetal
|
|
32491
32604
|
'''
|
|
32492
32605
|
result = self._values.get("bare_metal")
|
|
@@ -32496,7 +32609,10 @@ class CfnCapacityProvider(
|
|
|
32496
32609
|
def baseline_ebs_bandwidth_mbps(
|
|
32497
32610
|
self,
|
|
32498
32611
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.BaselineEbsBandwidthMbpsRequestProperty"]]:
|
|
32499
|
-
'''
|
|
32612
|
+
'''The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps).
|
|
32613
|
+
|
|
32614
|
+
This is important for workloads with high storage I/O requirements.
|
|
32615
|
+
|
|
32500
32616
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-baselineebsbandwidthmbps
|
|
32501
32617
|
'''
|
|
32502
32618
|
result = self._values.get("baseline_ebs_bandwidth_mbps")
|
|
@@ -32504,7 +32620,10 @@ class CfnCapacityProvider(
|
|
|
32504
32620
|
|
|
32505
32621
|
@builtins.property
|
|
32506
32622
|
def burstable_performance(self) -> typing.Optional[builtins.str]:
|
|
32507
|
-
'''
|
|
32623
|
+
'''Indicates whether to include burstable performance instance types (T2, T3, T3a, T4g).
|
|
32624
|
+
|
|
32625
|
+
Set to ``included`` to allow burstable instances, ``excluded`` to exclude them, or ``required`` to use only burstable instances.
|
|
32626
|
+
|
|
32508
32627
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-burstableperformance
|
|
32509
32628
|
'''
|
|
32510
32629
|
result = self._values.get("burstable_performance")
|
|
@@ -32512,7 +32631,10 @@ class CfnCapacityProvider(
|
|
|
32512
32631
|
|
|
32513
32632
|
@builtins.property
|
|
32514
32633
|
def cpu_manufacturers(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32515
|
-
'''
|
|
32634
|
+
'''The CPU manufacturers to include or exclude.
|
|
32635
|
+
|
|
32636
|
+
You can specify ``intel`` , ``amd`` , or ``amazon-web-services`` to control which CPU types are used for your workloads.
|
|
32637
|
+
|
|
32516
32638
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-cpumanufacturers
|
|
32517
32639
|
'''
|
|
32518
32640
|
result = self._values.get("cpu_manufacturers")
|
|
@@ -32520,7 +32642,10 @@ class CfnCapacityProvider(
|
|
|
32520
32642
|
|
|
32521
32643
|
@builtins.property
|
|
32522
32644
|
def excluded_instance_types(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32523
|
-
'''
|
|
32645
|
+
'''The instance types to exclude from selection.
|
|
32646
|
+
|
|
32647
|
+
Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads.
|
|
32648
|
+
|
|
32524
32649
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-excludedinstancetypes
|
|
32525
32650
|
'''
|
|
32526
32651
|
result = self._values.get("excluded_instance_types")
|
|
@@ -32528,7 +32653,10 @@ class CfnCapacityProvider(
|
|
|
32528
32653
|
|
|
32529
32654
|
@builtins.property
|
|
32530
32655
|
def instance_generations(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32531
|
-
'''
|
|
32656
|
+
'''The instance generations to include.
|
|
32657
|
+
|
|
32658
|
+
You can specify ``current`` to use the latest generation instances, or ``previous`` to include previous generation instances for cost optimization.
|
|
32659
|
+
|
|
32532
32660
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-instancegenerations
|
|
32533
32661
|
'''
|
|
32534
32662
|
result = self._values.get("instance_generations")
|
|
@@ -32536,7 +32664,10 @@ class CfnCapacityProvider(
|
|
|
32536
32664
|
|
|
32537
32665
|
@builtins.property
|
|
32538
32666
|
def local_storage(self) -> typing.Optional[builtins.str]:
|
|
32539
|
-
'''
|
|
32667
|
+
'''Indicates whether to include instance types with local storage.
|
|
32668
|
+
|
|
32669
|
+
Set to ``included`` to allow local storage, ``excluded`` to exclude it, or ``required`` to use only instances with local storage.
|
|
32670
|
+
|
|
32540
32671
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-localstorage
|
|
32541
32672
|
'''
|
|
32542
32673
|
result = self._values.get("local_storage")
|
|
@@ -32544,7 +32675,10 @@ class CfnCapacityProvider(
|
|
|
32544
32675
|
|
|
32545
32676
|
@builtins.property
|
|
32546
32677
|
def local_storage_types(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32547
|
-
'''
|
|
32678
|
+
'''The local storage types to include.
|
|
32679
|
+
|
|
32680
|
+
You can specify ``hdd`` for hard disk drives, ``ssd`` for solid state drives, or both.
|
|
32681
|
+
|
|
32548
32682
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-localstoragetypes
|
|
32549
32683
|
'''
|
|
32550
32684
|
result = self._values.get("local_storage_types")
|
|
@@ -32554,7 +32688,10 @@ class CfnCapacityProvider(
|
|
|
32554
32688
|
def max_spot_price_as_percentage_of_optimal_on_demand_price(
|
|
32555
32689
|
self,
|
|
32556
32690
|
) -> typing.Optional[jsii.Number]:
|
|
32557
|
-
'''
|
|
32691
|
+
'''The maximum price for Spot instances as a percentage of the optimal On-Demand price.
|
|
32692
|
+
|
|
32693
|
+
This provides more precise cost control for Spot instance selection.
|
|
32694
|
+
|
|
32558
32695
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-maxspotpriceaspercentageofoptimalondemandprice
|
|
32559
32696
|
'''
|
|
32560
32697
|
result = self._values.get("max_spot_price_as_percentage_of_optimal_on_demand_price")
|
|
@@ -32564,7 +32701,10 @@ class CfnCapacityProvider(
|
|
|
32564
32701
|
def memory_gib_per_v_cpu(
|
|
32565
32702
|
self,
|
|
32566
32703
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.MemoryGiBPerVCpuRequestProperty"]]:
|
|
32567
|
-
'''
|
|
32704
|
+
'''The minimum and maximum amount of memory per vCPU in gibibytes (GiB).
|
|
32705
|
+
|
|
32706
|
+
This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads.
|
|
32707
|
+
|
|
32568
32708
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-memorygibpervcpu
|
|
32569
32709
|
'''
|
|
32570
32710
|
result = self._values.get("memory_gib_per_v_cpu")
|
|
@@ -32574,7 +32714,10 @@ class CfnCapacityProvider(
|
|
|
32574
32714
|
def network_bandwidth_gbps(
|
|
32575
32715
|
self,
|
|
32576
32716
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.NetworkBandwidthGbpsRequestProperty"]]:
|
|
32577
|
-
'''
|
|
32717
|
+
'''The minimum and maximum network bandwidth in gigabits per second (Gbps).
|
|
32718
|
+
|
|
32719
|
+
This is crucial for network-intensive workloads that require high throughput.
|
|
32720
|
+
|
|
32578
32721
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-networkbandwidthgbps
|
|
32579
32722
|
'''
|
|
32580
32723
|
result = self._values.get("network_bandwidth_gbps")
|
|
@@ -32584,7 +32727,10 @@ class CfnCapacityProvider(
|
|
|
32584
32727
|
def network_interface_count(
|
|
32585
32728
|
self,
|
|
32586
32729
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.NetworkInterfaceCountRequestProperty"]]:
|
|
32587
|
-
'''
|
|
32730
|
+
'''The minimum and maximum number of network interfaces for the instance types.
|
|
32731
|
+
|
|
32732
|
+
This is useful for workloads that require multiple network interfaces.
|
|
32733
|
+
|
|
32588
32734
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-networkinterfacecount
|
|
32589
32735
|
'''
|
|
32590
32736
|
result = self._values.get("network_interface_count")
|
|
@@ -32594,7 +32740,10 @@ class CfnCapacityProvider(
|
|
|
32594
32740
|
def on_demand_max_price_percentage_over_lowest_price(
|
|
32595
32741
|
self,
|
|
32596
32742
|
) -> typing.Optional[jsii.Number]:
|
|
32597
|
-
'''
|
|
32743
|
+
'''The price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price.
|
|
32744
|
+
|
|
32745
|
+
The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon ECS selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
|
|
32746
|
+
|
|
32598
32747
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-ondemandmaxpricepercentageoverlowestprice
|
|
32599
32748
|
'''
|
|
32600
32749
|
result = self._values.get("on_demand_max_price_percentage_over_lowest_price")
|
|
@@ -32604,7 +32753,10 @@ class CfnCapacityProvider(
|
|
|
32604
32753
|
def require_hibernate_support(
|
|
32605
32754
|
self,
|
|
32606
32755
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
32607
|
-
'''
|
|
32756
|
+
'''Indicates whether the instance types must support hibernation.
|
|
32757
|
+
|
|
32758
|
+
When set to ``true`` , only instance types that support hibernation are selected.
|
|
32759
|
+
|
|
32608
32760
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-requirehibernatesupport
|
|
32609
32761
|
'''
|
|
32610
32762
|
result = self._values.get("require_hibernate_support")
|
|
@@ -32614,7 +32766,10 @@ class CfnCapacityProvider(
|
|
|
32614
32766
|
def spot_max_price_percentage_over_lowest_price(
|
|
32615
32767
|
self,
|
|
32616
32768
|
) -> typing.Optional[jsii.Number]:
|
|
32617
|
-
'''
|
|
32769
|
+
'''The maximum price for Spot instances as a percentage over the lowest priced On-Demand instance.
|
|
32770
|
+
|
|
32771
|
+
This helps control Spot instance costs while maintaining access to capacity.
|
|
32772
|
+
|
|
32618
32773
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-spotmaxpricepercentageoverlowestprice
|
|
32619
32774
|
'''
|
|
32620
32775
|
result = self._values.get("spot_max_price_percentage_over_lowest_price")
|
|
@@ -32624,7 +32779,8 @@ class CfnCapacityProvider(
|
|
|
32624
32779
|
def total_local_storage_gb(
|
|
32625
32780
|
self,
|
|
32626
32781
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.TotalLocalStorageGBRequestProperty"]]:
|
|
32627
|
-
'''
|
|
32782
|
+
'''The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage.
|
|
32783
|
+
|
|
32628
32784
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-instancerequirementsrequest.html#cfn-ecs-capacityprovider-instancerequirementsrequest-totallocalstoragegb
|
|
32629
32785
|
'''
|
|
32630
32786
|
result = self._values.get("total_local_storage_gb")
|
|
@@ -32653,9 +32809,12 @@ class CfnCapacityProvider(
|
|
|
32653
32809
|
subnets: typing.Sequence[builtins.str],
|
|
32654
32810
|
security_groups: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
32655
32811
|
) -> None:
|
|
32656
|
-
'''
|
|
32657
|
-
|
|
32658
|
-
|
|
32812
|
+
'''The network configuration for Amazon ECS Managed Instances.
|
|
32813
|
+
|
|
32814
|
+
This specifies the VPC subnets and security groups that instances use for network connectivity. Amazon ECS Managed Instances support multiple network modes including ``awsvpc`` (instances receive ENIs for task isolation), ``host`` (instances share network namespace with tasks), and ``none`` (no external network connectivity), ensuring backward compatibility for migrating workloads from Fargate or Amazon EC2.
|
|
32815
|
+
|
|
32816
|
+
:param subnets: The list of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
|
|
32817
|
+
:param security_groups: The list of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
|
|
32659
32818
|
|
|
32660
32819
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesnetworkconfiguration.html
|
|
32661
32820
|
:exampleMetadata: fixture=_generated
|
|
@@ -32685,7 +32844,10 @@ class CfnCapacityProvider(
|
|
|
32685
32844
|
|
|
32686
32845
|
@builtins.property
|
|
32687
32846
|
def subnets(self) -> typing.List[builtins.str]:
|
|
32688
|
-
'''
|
|
32847
|
+
'''The list of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances.
|
|
32848
|
+
|
|
32849
|
+
Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
|
|
32850
|
+
|
|
32689
32851
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesnetworkconfiguration.html#cfn-ecs-capacityprovider-managedinstancesnetworkconfiguration-subnets
|
|
32690
32852
|
'''
|
|
32691
32853
|
result = self._values.get("subnets")
|
|
@@ -32694,7 +32856,10 @@ class CfnCapacityProvider(
|
|
|
32694
32856
|
|
|
32695
32857
|
@builtins.property
|
|
32696
32858
|
def security_groups(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
32697
|
-
'''
|
|
32859
|
+
'''The list of security group IDs to apply to Amazon ECS Managed Instances.
|
|
32860
|
+
|
|
32861
|
+
These security groups control the network traffic allowed to and from the instances.
|
|
32862
|
+
|
|
32698
32863
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesnetworkconfiguration.html#cfn-ecs-capacityprovider-managedinstancesnetworkconfiguration-securitygroups
|
|
32699
32864
|
'''
|
|
32700
32865
|
result = self._values.get("security_groups")
|
|
@@ -32728,10 +32893,13 @@ class CfnCapacityProvider(
|
|
|
32728
32893
|
instance_launch_template: typing.Union[_IResolvable_da3f097b, typing.Union["CfnCapacityProvider.InstanceLaunchTemplateProperty", typing.Dict[builtins.str, typing.Any]]],
|
|
32729
32894
|
propagate_tags: typing.Optional[builtins.str] = None,
|
|
32730
32895
|
) -> None:
|
|
32731
|
-
'''
|
|
32732
|
-
|
|
32733
|
-
|
|
32734
|
-
|
|
32896
|
+
'''The configuration for a Amazon ECS Managed Instances provider.
|
|
32897
|
+
|
|
32898
|
+
Amazon ECS uses this configuration to automatically launch, manage, and terminate Amazon EC2 instances on your behalf. Managed instances provide access to the full range of Amazon EC2 instance types and features while offloading infrastructure management to AWS .
|
|
32899
|
+
|
|
32900
|
+
:param infrastructure_role_arn: The Amazon Resource Name (ARN) of the infrastructure role that Amazon ECS assumes to manage instances. This role must include permissions for Amazon EC2 instance lifecycle management, networking, and any additional AWS services required for your workloads. For more information, see `Amazon ECS infrastructure IAM role <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/infrastructure_IAM_role.html>`_ in the *Amazon ECS Developer Guide* .
|
|
32901
|
+
:param instance_launch_template: The launch template that defines how Amazon ECS launches Amazon ECS Managed Instances. This includes the instance profile for your tasks, network and storage configuration, and instance requirements that determine which Amazon EC2 instance types can be used. For more information, see `Store instance launch parameters in Amazon EC2 launch templates <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html>`_ in the *Amazon EC2 User Guide* .
|
|
32902
|
+
:param propagate_tags: Determines whether tags from the capacity provider are automatically applied to Amazon ECS Managed Instances. This helps with cost allocation and resource management by ensuring consistent tagging across your infrastructure.
|
|
32735
32903
|
|
|
32736
32904
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesprovider.html
|
|
32737
32905
|
:exampleMetadata: fixture=_generated
|
|
@@ -32837,7 +33005,12 @@ class CfnCapacityProvider(
|
|
|
32837
33005
|
|
|
32838
33006
|
@builtins.property
|
|
32839
33007
|
def infrastructure_role_arn(self) -> builtins.str:
|
|
32840
|
-
'''
|
|
33008
|
+
'''The Amazon Resource Name (ARN) of the infrastructure role that Amazon ECS assumes to manage instances.
|
|
33009
|
+
|
|
33010
|
+
This role must include permissions for Amazon EC2 instance lifecycle management, networking, and any additional AWS services required for your workloads.
|
|
33011
|
+
|
|
33012
|
+
For more information, see `Amazon ECS infrastructure IAM role <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/infrastructure_IAM_role.html>`_ in the *Amazon ECS Developer Guide* .
|
|
33013
|
+
|
|
32841
33014
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesprovider.html#cfn-ecs-capacityprovider-managedinstancesprovider-infrastructurerolearn
|
|
32842
33015
|
'''
|
|
32843
33016
|
result = self._values.get("infrastructure_role_arn")
|
|
@@ -32848,7 +33021,12 @@ class CfnCapacityProvider(
|
|
|
32848
33021
|
def instance_launch_template(
|
|
32849
33022
|
self,
|
|
32850
33023
|
) -> typing.Union[_IResolvable_da3f097b, "CfnCapacityProvider.InstanceLaunchTemplateProperty"]:
|
|
32851
|
-
'''
|
|
33024
|
+
'''The launch template that defines how Amazon ECS launches Amazon ECS Managed Instances.
|
|
33025
|
+
|
|
33026
|
+
This includes the instance profile for your tasks, network and storage configuration, and instance requirements that determine which Amazon EC2 instance types can be used.
|
|
33027
|
+
|
|
33028
|
+
For more information, see `Store instance launch parameters in Amazon EC2 launch templates <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html>`_ in the *Amazon EC2 User Guide* .
|
|
33029
|
+
|
|
32852
33030
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesprovider.html#cfn-ecs-capacityprovider-managedinstancesprovider-instancelaunchtemplate
|
|
32853
33031
|
'''
|
|
32854
33032
|
result = self._values.get("instance_launch_template")
|
|
@@ -32857,7 +33035,10 @@ class CfnCapacityProvider(
|
|
|
32857
33035
|
|
|
32858
33036
|
@builtins.property
|
|
32859
33037
|
def propagate_tags(self) -> typing.Optional[builtins.str]:
|
|
32860
|
-
'''
|
|
33038
|
+
'''Determines whether tags from the capacity provider are automatically applied to Amazon ECS Managed Instances.
|
|
33039
|
+
|
|
33040
|
+
This helps with cost allocation and resource management by ensuring consistent tagging across your infrastructure.
|
|
33041
|
+
|
|
32861
33042
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesprovider.html#cfn-ecs-capacityprovider-managedinstancesprovider-propagatetags
|
|
32862
33043
|
'''
|
|
32863
33044
|
result = self._values.get("propagate_tags")
|
|
@@ -32881,8 +33062,11 @@ class CfnCapacityProvider(
|
|
|
32881
33062
|
)
|
|
32882
33063
|
class ManagedInstancesStorageConfigurationProperty:
|
|
32883
33064
|
def __init__(self, *, storage_size_gib: jsii.Number) -> None:
|
|
32884
|
-
'''
|
|
32885
|
-
|
|
33065
|
+
'''The storage configuration for Amazon ECS Managed Instances.
|
|
33066
|
+
|
|
33067
|
+
This defines the root volume configuration for the instances.
|
|
33068
|
+
|
|
33069
|
+
:param storage_size_gib: The size of the tasks volume.
|
|
32886
33070
|
|
|
32887
33071
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesstorageconfiguration.html
|
|
32888
33072
|
:exampleMetadata: fixture=_generated
|
|
@@ -32906,7 +33090,8 @@ class CfnCapacityProvider(
|
|
|
32906
33090
|
|
|
32907
33091
|
@builtins.property
|
|
32908
33092
|
def storage_size_gib(self) -> jsii.Number:
|
|
32909
|
-
'''
|
|
33093
|
+
'''The size of the tasks volume.
|
|
33094
|
+
|
|
32910
33095
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedinstancesstorageconfiguration.html#cfn-ecs-capacityprovider-managedinstancesstorageconfiguration-storagesizegib
|
|
32911
33096
|
'''
|
|
32912
33097
|
result = self._values.get("storage_size_gib")
|
|
@@ -33071,9 +33256,12 @@ class CfnCapacityProvider(
|
|
|
33071
33256
|
max: typing.Optional[jsii.Number] = None,
|
|
33072
33257
|
min: typing.Optional[jsii.Number] = None,
|
|
33073
33258
|
) -> None:
|
|
33074
|
-
'''
|
|
33075
|
-
|
|
33076
|
-
|
|
33259
|
+
'''The minimum and maximum amount of memory per vCPU in gibibytes (GiB).
|
|
33260
|
+
|
|
33261
|
+
This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads.
|
|
33262
|
+
|
|
33263
|
+
:param max: The maximum amount of memory per vCPU in GiB. Instance types with a higher memory-to-vCPU ratio are excluded from selection.
|
|
33264
|
+
:param min: The minimum amount of memory per vCPU in GiB. Instance types with a lower memory-to-vCPU ratio are excluded from selection.
|
|
33077
33265
|
|
|
33078
33266
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorygibpervcpurequest.html
|
|
33079
33267
|
:exampleMetadata: fixture=_generated
|
|
@@ -33101,7 +33289,10 @@ class CfnCapacityProvider(
|
|
|
33101
33289
|
|
|
33102
33290
|
@builtins.property
|
|
33103
33291
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
33104
|
-
'''
|
|
33292
|
+
'''The maximum amount of memory per vCPU in GiB.
|
|
33293
|
+
|
|
33294
|
+
Instance types with a higher memory-to-vCPU ratio are excluded from selection.
|
|
33295
|
+
|
|
33105
33296
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorygibpervcpurequest.html#cfn-ecs-capacityprovider-memorygibpervcpurequest-max
|
|
33106
33297
|
'''
|
|
33107
33298
|
result = self._values.get("max")
|
|
@@ -33109,7 +33300,10 @@ class CfnCapacityProvider(
|
|
|
33109
33300
|
|
|
33110
33301
|
@builtins.property
|
|
33111
33302
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
33112
|
-
'''
|
|
33303
|
+
'''The minimum amount of memory per vCPU in GiB.
|
|
33304
|
+
|
|
33305
|
+
Instance types with a lower memory-to-vCPU ratio are excluded from selection.
|
|
33306
|
+
|
|
33113
33307
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorygibpervcpurequest.html#cfn-ecs-capacityprovider-memorygibpervcpurequest-min
|
|
33114
33308
|
'''
|
|
33115
33309
|
result = self._values.get("min")
|
|
@@ -33138,9 +33332,12 @@ class CfnCapacityProvider(
|
|
|
33138
33332
|
min: jsii.Number,
|
|
33139
33333
|
max: typing.Optional[jsii.Number] = None,
|
|
33140
33334
|
) -> None:
|
|
33141
|
-
'''
|
|
33142
|
-
|
|
33143
|
-
|
|
33335
|
+
'''The minimum and maximum amount of memory in mebibytes (MiB) for instance type selection.
|
|
33336
|
+
|
|
33337
|
+
This ensures that selected instance types have adequate memory for your workloads.
|
|
33338
|
+
|
|
33339
|
+
:param min: The minimum amount of memory in MiB. Instance types with less memory than this value are excluded from selection.
|
|
33340
|
+
:param max: The maximum amount of memory in MiB. Instance types with more memory than this value are excluded from selection.
|
|
33144
33341
|
|
|
33145
33342
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorymibrequest.html
|
|
33146
33343
|
:exampleMetadata: fixture=_generated
|
|
@@ -33170,7 +33367,10 @@ class CfnCapacityProvider(
|
|
|
33170
33367
|
|
|
33171
33368
|
@builtins.property
|
|
33172
33369
|
def min(self) -> jsii.Number:
|
|
33173
|
-
'''
|
|
33370
|
+
'''The minimum amount of memory in MiB.
|
|
33371
|
+
|
|
33372
|
+
Instance types with less memory than this value are excluded from selection.
|
|
33373
|
+
|
|
33174
33374
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorymibrequest.html#cfn-ecs-capacityprovider-memorymibrequest-min
|
|
33175
33375
|
'''
|
|
33176
33376
|
result = self._values.get("min")
|
|
@@ -33179,7 +33379,10 @@ class CfnCapacityProvider(
|
|
|
33179
33379
|
|
|
33180
33380
|
@builtins.property
|
|
33181
33381
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
33182
|
-
'''
|
|
33382
|
+
'''The maximum amount of memory in MiB.
|
|
33383
|
+
|
|
33384
|
+
Instance types with more memory than this value are excluded from selection.
|
|
33385
|
+
|
|
33183
33386
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-memorymibrequest.html#cfn-ecs-capacityprovider-memorymibrequest-max
|
|
33184
33387
|
'''
|
|
33185
33388
|
result = self._values.get("max")
|
|
@@ -33208,9 +33411,12 @@ class CfnCapacityProvider(
|
|
|
33208
33411
|
max: typing.Optional[jsii.Number] = None,
|
|
33209
33412
|
min: typing.Optional[jsii.Number] = None,
|
|
33210
33413
|
) -> None:
|
|
33211
|
-
'''
|
|
33212
|
-
|
|
33213
|
-
|
|
33414
|
+
'''The minimum and maximum network bandwidth in gigabits per second (Gbps) for instance type selection.
|
|
33415
|
+
|
|
33416
|
+
This is important for network-intensive workloads.
|
|
33417
|
+
|
|
33418
|
+
:param max: The maximum network bandwidth in Gbps. Instance types with higher network bandwidth are excluded from selection.
|
|
33419
|
+
:param min: The minimum network bandwidth in Gbps. Instance types with lower network bandwidth are excluded from selection.
|
|
33214
33420
|
|
|
33215
33421
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkbandwidthgbpsrequest.html
|
|
33216
33422
|
:exampleMetadata: fixture=_generated
|
|
@@ -33238,7 +33444,10 @@ class CfnCapacityProvider(
|
|
|
33238
33444
|
|
|
33239
33445
|
@builtins.property
|
|
33240
33446
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
33241
|
-
'''
|
|
33447
|
+
'''The maximum network bandwidth in Gbps.
|
|
33448
|
+
|
|
33449
|
+
Instance types with higher network bandwidth are excluded from selection.
|
|
33450
|
+
|
|
33242
33451
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkbandwidthgbpsrequest.html#cfn-ecs-capacityprovider-networkbandwidthgbpsrequest-max
|
|
33243
33452
|
'''
|
|
33244
33453
|
result = self._values.get("max")
|
|
@@ -33246,7 +33455,10 @@ class CfnCapacityProvider(
|
|
|
33246
33455
|
|
|
33247
33456
|
@builtins.property
|
|
33248
33457
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
33249
|
-
'''
|
|
33458
|
+
'''The minimum network bandwidth in Gbps.
|
|
33459
|
+
|
|
33460
|
+
Instance types with lower network bandwidth are excluded from selection.
|
|
33461
|
+
|
|
33250
33462
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkbandwidthgbpsrequest.html#cfn-ecs-capacityprovider-networkbandwidthgbpsrequest-min
|
|
33251
33463
|
'''
|
|
33252
33464
|
result = self._values.get("min")
|
|
@@ -33275,9 +33487,12 @@ class CfnCapacityProvider(
|
|
|
33275
33487
|
max: typing.Optional[jsii.Number] = None,
|
|
33276
33488
|
min: typing.Optional[jsii.Number] = None,
|
|
33277
33489
|
) -> None:
|
|
33278
|
-
'''
|
|
33279
|
-
|
|
33280
|
-
|
|
33490
|
+
'''The minimum and maximum number of network interfaces for instance type selection.
|
|
33491
|
+
|
|
33492
|
+
This is useful for workloads that require multiple network interfaces.
|
|
33493
|
+
|
|
33494
|
+
:param max: The maximum number of network interfaces. Instance types that support more network interfaces are excluded from selection.
|
|
33495
|
+
:param min: The minimum number of network interfaces. Instance types that support fewer network interfaces are excluded from selection.
|
|
33281
33496
|
|
|
33282
33497
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkinterfacecountrequest.html
|
|
33283
33498
|
:exampleMetadata: fixture=_generated
|
|
@@ -33305,7 +33520,10 @@ class CfnCapacityProvider(
|
|
|
33305
33520
|
|
|
33306
33521
|
@builtins.property
|
|
33307
33522
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
33308
|
-
'''
|
|
33523
|
+
'''The maximum number of network interfaces.
|
|
33524
|
+
|
|
33525
|
+
Instance types that support more network interfaces are excluded from selection.
|
|
33526
|
+
|
|
33309
33527
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkinterfacecountrequest.html#cfn-ecs-capacityprovider-networkinterfacecountrequest-max
|
|
33310
33528
|
'''
|
|
33311
33529
|
result = self._values.get("max")
|
|
@@ -33313,7 +33531,10 @@ class CfnCapacityProvider(
|
|
|
33313
33531
|
|
|
33314
33532
|
@builtins.property
|
|
33315
33533
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
33316
|
-
'''
|
|
33534
|
+
'''The minimum number of network interfaces.
|
|
33535
|
+
|
|
33536
|
+
Instance types that support fewer network interfaces are excluded from selection.
|
|
33537
|
+
|
|
33317
33538
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-networkinterfacecountrequest.html#cfn-ecs-capacityprovider-networkinterfacecountrequest-min
|
|
33318
33539
|
'''
|
|
33319
33540
|
result = self._values.get("min")
|
|
@@ -33342,9 +33563,12 @@ class CfnCapacityProvider(
|
|
|
33342
33563
|
max: typing.Optional[jsii.Number] = None,
|
|
33343
33564
|
min: typing.Optional[jsii.Number] = None,
|
|
33344
33565
|
) -> None:
|
|
33345
|
-
'''
|
|
33346
|
-
|
|
33347
|
-
|
|
33566
|
+
'''The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage.
|
|
33567
|
+
|
|
33568
|
+
This is useful for workloads that require local storage for temporary data or caching.
|
|
33569
|
+
|
|
33570
|
+
:param max: The maximum total local storage in GB. Instance types with more local storage are excluded from selection.
|
|
33571
|
+
:param min: The minimum total local storage in GB. Instance types with less local storage are excluded from selection.
|
|
33348
33572
|
|
|
33349
33573
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-totallocalstoragegbrequest.html
|
|
33350
33574
|
:exampleMetadata: fixture=_generated
|
|
@@ -33372,7 +33596,10 @@ class CfnCapacityProvider(
|
|
|
33372
33596
|
|
|
33373
33597
|
@builtins.property
|
|
33374
33598
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
33375
|
-
'''
|
|
33599
|
+
'''The maximum total local storage in GB.
|
|
33600
|
+
|
|
33601
|
+
Instance types with more local storage are excluded from selection.
|
|
33602
|
+
|
|
33376
33603
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-totallocalstoragegbrequest.html#cfn-ecs-capacityprovider-totallocalstoragegbrequest-max
|
|
33377
33604
|
'''
|
|
33378
33605
|
result = self._values.get("max")
|
|
@@ -33380,7 +33607,10 @@ class CfnCapacityProvider(
|
|
|
33380
33607
|
|
|
33381
33608
|
@builtins.property
|
|
33382
33609
|
def min(self) -> typing.Optional[jsii.Number]:
|
|
33383
|
-
'''
|
|
33610
|
+
'''The minimum total local storage in GB.
|
|
33611
|
+
|
|
33612
|
+
Instance types with less local storage are excluded from selection.
|
|
33613
|
+
|
|
33384
33614
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-totallocalstoragegbrequest.html#cfn-ecs-capacityprovider-totallocalstoragegbrequest-min
|
|
33385
33615
|
'''
|
|
33386
33616
|
result = self._values.get("min")
|
|
@@ -33409,9 +33639,12 @@ class CfnCapacityProvider(
|
|
|
33409
33639
|
min: jsii.Number,
|
|
33410
33640
|
max: typing.Optional[jsii.Number] = None,
|
|
33411
33641
|
) -> None:
|
|
33412
|
-
'''
|
|
33413
|
-
|
|
33414
|
-
|
|
33642
|
+
'''The minimum and maximum number of vCPUs for instance type selection.
|
|
33643
|
+
|
|
33644
|
+
This allows you to specify a range of vCPU counts that meet your workload requirements.
|
|
33645
|
+
|
|
33646
|
+
:param min: The minimum number of vCPUs. Instance types with fewer vCPUs than this value are excluded from selection.
|
|
33647
|
+
:param max: The maximum number of vCPUs. Instance types with more vCPUs than this value are excluded from selection.
|
|
33415
33648
|
|
|
33416
33649
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-vcpucountrangerequest.html
|
|
33417
33650
|
:exampleMetadata: fixture=_generated
|
|
@@ -33441,7 +33674,10 @@ class CfnCapacityProvider(
|
|
|
33441
33674
|
|
|
33442
33675
|
@builtins.property
|
|
33443
33676
|
def min(self) -> jsii.Number:
|
|
33444
|
-
'''
|
|
33677
|
+
'''The minimum number of vCPUs.
|
|
33678
|
+
|
|
33679
|
+
Instance types with fewer vCPUs than this value are excluded from selection.
|
|
33680
|
+
|
|
33445
33681
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-vcpucountrangerequest.html#cfn-ecs-capacityprovider-vcpucountrangerequest-min
|
|
33446
33682
|
'''
|
|
33447
33683
|
result = self._values.get("min")
|
|
@@ -33450,7 +33686,10 @@ class CfnCapacityProvider(
|
|
|
33450
33686
|
|
|
33451
33687
|
@builtins.property
|
|
33452
33688
|
def max(self) -> typing.Optional[jsii.Number]:
|
|
33453
|
-
'''
|
|
33689
|
+
'''The maximum number of vCPUs.
|
|
33690
|
+
|
|
33691
|
+
Instance types with more vCPUs than this value are excluded from selection.
|
|
33692
|
+
|
|
33454
33693
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-vcpucountrangerequest.html#cfn-ecs-capacityprovider-vcpucountrangerequest-max
|
|
33455
33694
|
'''
|
|
33456
33695
|
result = self._values.get("max")
|
|
@@ -34482,7 +34721,6 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
34482
34721
|
from aws_cdk import aws_ecs as ecs
|
|
34483
34722
|
|
|
34484
34723
|
cfn_cluster_capacity_provider_associations = ecs.CfnClusterCapacityProviderAssociations(self, "MyCfnClusterCapacityProviderAssociations",
|
|
34485
|
-
capacity_providers=["capacityProviders"],
|
|
34486
34724
|
cluster="cluster",
|
|
34487
34725
|
default_capacity_provider_strategy=[ecs.CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty(
|
|
34488
34726
|
capacity_provider="capacityProvider",
|
|
@@ -34490,7 +34728,10 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
34490
34728
|
# the properties below are optional
|
|
34491
34729
|
base=123,
|
|
34492
34730
|
weight=123
|
|
34493
|
-
)]
|
|
34731
|
+
)],
|
|
34732
|
+
|
|
34733
|
+
# the properties below are optional
|
|
34734
|
+
capacity_providers=["capacityProviders"]
|
|
34494
34735
|
)
|
|
34495
34736
|
'''
|
|
34496
34737
|
|
|
@@ -34499,25 +34740,25 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
34499
34740
|
scope: _constructs_77d1e7e8.Construct,
|
|
34500
34741
|
id: builtins.str,
|
|
34501
34742
|
*,
|
|
34502
|
-
capacity_providers: typing.Sequence[builtins.str],
|
|
34503
34743
|
cluster: builtins.str,
|
|
34504
34744
|
default_capacity_provider_strategy: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
34745
|
+
capacity_providers: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
34505
34746
|
) -> None:
|
|
34506
34747
|
'''
|
|
34507
34748
|
:param scope: Scope in which this resource is defined.
|
|
34508
34749
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
34509
|
-
:param capacity_providers: The capacity providers to associate with the cluster.
|
|
34510
34750
|
:param cluster: The cluster the capacity provider association is the target of.
|
|
34511
34751
|
:param default_capacity_provider_strategy: The default capacity provider strategy to associate with the cluster.
|
|
34752
|
+
:param capacity_providers: The capacity providers to associate with the cluster.
|
|
34512
34753
|
'''
|
|
34513
34754
|
if __debug__:
|
|
34514
34755
|
type_hints = typing.get_type_hints(_typecheckingstub__5b726b14d4a82695a68a7344f7ef1201a7390a69e77c604686bf3a3a16980041)
|
|
34515
34756
|
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
34516
34757
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
34517
34758
|
props = CfnClusterCapacityProviderAssociationsProps(
|
|
34518
|
-
capacity_providers=capacity_providers,
|
|
34519
34759
|
cluster=cluster,
|
|
34520
34760
|
default_capacity_provider_strategy=default_capacity_provider_strategy,
|
|
34761
|
+
capacity_providers=capacity_providers,
|
|
34521
34762
|
)
|
|
34522
34763
|
|
|
34523
34764
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
@@ -34565,19 +34806,6 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
34565
34806
|
'''A reference to a ClusterCapacityProviderAssociations resource.'''
|
|
34566
34807
|
return typing.cast(ClusterCapacityProviderAssociationsReference, jsii.get(self, "clusterCapacityProviderAssociationsRef"))
|
|
34567
34808
|
|
|
34568
|
-
@builtins.property
|
|
34569
|
-
@jsii.member(jsii_name="capacityProviders")
|
|
34570
|
-
def capacity_providers(self) -> typing.List[builtins.str]:
|
|
34571
|
-
'''The capacity providers to associate with the cluster.'''
|
|
34572
|
-
return typing.cast(typing.List[builtins.str], jsii.get(self, "capacityProviders"))
|
|
34573
|
-
|
|
34574
|
-
@capacity_providers.setter
|
|
34575
|
-
def capacity_providers(self, value: typing.List[builtins.str]) -> None:
|
|
34576
|
-
if __debug__:
|
|
34577
|
-
type_hints = typing.get_type_hints(_typecheckingstub__179caeeed8cf1e3badcd9269f89a732efb1582d0dc5fe1a1431aee106eefe333)
|
|
34578
|
-
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
34579
|
-
jsii.set(self, "capacityProviders", value) # pyright: ignore[reportArgumentType]
|
|
34580
|
-
|
|
34581
34809
|
@builtins.property
|
|
34582
34810
|
@jsii.member(jsii_name="cluster")
|
|
34583
34811
|
def cluster(self) -> builtins.str:
|
|
@@ -34609,6 +34837,22 @@ class CfnClusterCapacityProviderAssociations(
|
|
|
34609
34837
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
34610
34838
|
jsii.set(self, "defaultCapacityProviderStrategy", value) # pyright: ignore[reportArgumentType]
|
|
34611
34839
|
|
|
34840
|
+
@builtins.property
|
|
34841
|
+
@jsii.member(jsii_name="capacityProviders")
|
|
34842
|
+
def capacity_providers(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
34843
|
+
'''The capacity providers to associate with the cluster.'''
|
|
34844
|
+
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "capacityProviders"))
|
|
34845
|
+
|
|
34846
|
+
@capacity_providers.setter
|
|
34847
|
+
def capacity_providers(
|
|
34848
|
+
self,
|
|
34849
|
+
value: typing.Optional[typing.List[builtins.str]],
|
|
34850
|
+
) -> None:
|
|
34851
|
+
if __debug__:
|
|
34852
|
+
type_hints = typing.get_type_hints(_typecheckingstub__179caeeed8cf1e3badcd9269f89a732efb1582d0dc5fe1a1431aee106eefe333)
|
|
34853
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
34854
|
+
jsii.set(self, "capacityProviders", value) # pyright: ignore[reportArgumentType]
|
|
34855
|
+
|
|
34612
34856
|
@jsii.data_type(
|
|
34613
34857
|
jsii_type="aws-cdk-lib.aws_ecs.CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty",
|
|
34614
34858
|
jsii_struct_bases=[],
|
|
@@ -35148,8 +35392,8 @@ class CfnService(
|
|
|
35148
35392
|
:param enable_ecs_managed_tags: Specifies whether to turn on Amazon ECS managed tags for the tasks within the service. For more information, see `Tagging your Amazon ECS resources <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html>`_ in the *Amazon Elastic Container Service Developer Guide* . When you use Amazon ECS managed tags, you must set the ``propagateTags`` request parameter.
|
|
35149
35393
|
:param enable_execute_command: Determines whether the execute command functionality is turned on for the service. If ``true`` , the execute command functionality is turned on for all containers in tasks as part of the service.
|
|
35150
35394
|
:param force_new_deployment: Determines whether to force a new deployment of the service. By default, deployments aren't forced. You can use this option to start a new deployment with no service definition changes. For example, you can update a service's tasks to use a newer Docker image with the same image/tag combination ( ``my_image:latest`` ) or to roll Fargate tasks onto a newer platform version.
|
|
35151
|
-
:param health_check_grace_period_seconds: The period of time, in seconds, that the Amazon
|
|
35152
|
-
:param launch_type: The launch type on which to run your service. For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
35395
|
+
:param health_check_grace_period_seconds: The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started. If you do not specify a health check grace period value, the default value of 0 is used. If you do not use any of the health checks, then ``healthCheckGracePeriodSeconds`` is unused. If your service has more running tasks than desired, unhealthy tasks in the grace period might be stopped to reach the desired count.
|
|
35396
|
+
:param launch_type: The launch type on which to run your service. For more information, see `Amazon ECS Launch Types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: If you want to use Managed Instances, you must use the ``capacityProviderStrategy`` request parameter
|
|
35153
35397
|
:param load_balancers: A list of load balancer objects to associate with the service. If you specify the ``Role`` property, ``LoadBalancers`` must be specified as well. For information about the number of load balancers that you can specify per service, see `Service Load Balancing <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: To remove this property from your service resource, specify an empty ``LoadBalancer`` array.
|
|
35154
35398
|
:param network_configuration: The network configuration for the service. This parameter is required for task definitions that use the ``awsvpc`` network mode to receive their own elastic network interface, and it is not supported for other network modes. For more information, see `Task Networking <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
35155
35399
|
:param placement_constraints: An array of placement constraint objects to use for tasks in your service. You can specify a maximum of 10 constraints for each task. This limit includes constraints in the task definition and those specified at runtime. .. epigraph:: To remove this property from your service resource, specify an empty ``PlacementConstraint`` array.
|
|
@@ -35421,7 +35665,7 @@ class CfnService(
|
|
|
35421
35665
|
@builtins.property
|
|
35422
35666
|
@jsii.member(jsii_name="healthCheckGracePeriodSeconds")
|
|
35423
35667
|
def health_check_grace_period_seconds(self) -> typing.Optional[jsii.Number]:
|
|
35424
|
-
'''The period of time, in seconds, that the Amazon
|
|
35668
|
+
'''The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing, VPC Lattice, and container health checks after a task has first started.'''
|
|
35425
35669
|
return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "healthCheckGracePeriodSeconds"))
|
|
35426
35670
|
|
|
35427
35671
|
@health_check_grace_period_seconds.setter
|
|
@@ -39381,7 +39625,7 @@ class CfnTaskDefinition(
|
|
|
39381
39625
|
:param pid_mode: The process namespace to use for the containers in the task. The valid values are ``host`` or ``task`` . On Fargate for Linux containers, the only valid value is ``task`` . For example, monitoring sidecars might need ``pidMode`` to access information about other containers running in the same task. If ``host`` is specified, all containers within the tasks that specified the ``host`` PID mode on the same container instance share the same process namespace with the host Amazon EC2 instance. If ``task`` is specified, all containers within the specified task share the same process namespace. If no value is specified, the default is a private namespace for each container. If the ``host`` PID mode is used, there's a heightened risk of undesired process namespace exposure. .. epigraph:: This parameter is not supported for Windows containers. > This parameter is only supported for tasks that are hosted on AWS Fargate if the tasks are using platform version ``1.4.0`` or later (Linux). This isn't supported for Windows containers on Fargate.
|
|
39382
39626
|
:param placement_constraints: An array of placement constraint objects to use for tasks. .. epigraph:: This parameter isn't supported for tasks run on AWS Fargate .
|
|
39383
39627
|
:param proxy_configuration: The configuration details for the App Mesh proxy. Your Amazon ECS container instances require at least version 1.26.0 of the container agent and at least version 1.26.0-1 of the ``ecs-init`` package to use a proxy configuration. If your container instances are launched from the Amazon ECS optimized AMI version ``20190301`` or later, they contain the required versions of the container agent and ``ecs-init`` . For more information, see `Amazon ECS-optimized Linux AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
39384
|
-
:param requires_compatibilities: The task launch types the task definition was validated against. The valid values are ``EC2`` , ``FARGATE`` , and ``EXTERNAL`` . For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
39628
|
+
:param requires_compatibilities: The task launch types the task definition was validated against. The valid values are ``MANAGED_INSTANCES`` , ``EC2`` , ``FARGATE`` , and ``EXTERNAL`` . For more information, see `Amazon ECS launch types <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/launch_types.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
39385
39629
|
:param runtime_platform: The operating system that your tasks definitions run on. A platform family is specified only for tasks using the Fargate launch type.
|
|
39386
39630
|
:param tags: The metadata that you apply to the task definition to help you categorize and organize them. Each tag consists of a key and an optional value. You define both of them. The following basic restrictions apply to tags: - Maximum number of tags per resource - 50 - For each resource, each tag key must be unique, and each tag key can have only one value. - Maximum key length - 128 Unicode characters in UTF-8 - Maximum value length - 256 Unicode characters in UTF-8 - If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : /
|
|
39387
39631
|
:param task_role_arn: The short name or full Amazon Resource Name (ARN) of the AWS Identity and Access Management role that grants containers in the task permission to call AWS APIs on your behalf. For more information, see `Amazon ECS Task Role <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html>`_ in the *Amazon Elastic Container Service Developer Guide* . IAM roles for tasks on Windows require that the ``-EnableTaskIAMRole`` option is set when you launch the Amazon ECS-optimized Windows AMI. Your containers must also run some configuration code to use the feature. For more information, see `Windows IAM roles for tasks <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows_task_IAM_roles.html>`_ in the *Amazon Elastic Container Service Developer Guide* . .. epigraph:: String validation is done on the ECS side. If an invalid string value is given for ``TaskRoleArn`` , it may cause the Cloudformation job to hang.
|
|
@@ -49329,9 +49573,9 @@ def _typecheckingstub__48080bdf05dc1c4ca9ab46c833774163f6afcd0d1551b378b8d59e67b
|
|
|
49329
49573
|
|
|
49330
49574
|
def _typecheckingstub__dec87cf6e858f074737c41c7a13a61e2e324b94deacf1f66ca9c0a48eb0b81b2(
|
|
49331
49575
|
*,
|
|
49332
|
-
capacity_providers: typing.Sequence[builtins.str],
|
|
49333
49576
|
cluster: builtins.str,
|
|
49334
49577
|
default_capacity_provider_strategy: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
49578
|
+
capacity_providers: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
49335
49579
|
) -> None:
|
|
49336
49580
|
"""Type checking stubs"""
|
|
49337
49581
|
pass
|
|
@@ -51988,9 +52232,9 @@ def _typecheckingstub__5b726b14d4a82695a68a7344f7ef1201a7390a69e77c604686bf3a3a1
|
|
|
51988
52232
|
scope: _constructs_77d1e7e8.Construct,
|
|
51989
52233
|
id: builtins.str,
|
|
51990
52234
|
*,
|
|
51991
|
-
capacity_providers: typing.Sequence[builtins.str],
|
|
51992
52235
|
cluster: builtins.str,
|
|
51993
52236
|
default_capacity_provider_strategy: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClusterCapacityProviderAssociations.CapacityProviderStrategyProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
52237
|
+
capacity_providers: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
51994
52238
|
) -> None:
|
|
51995
52239
|
"""Type checking stubs"""
|
|
51996
52240
|
pass
|
|
@@ -52007,12 +52251,6 @@ def _typecheckingstub__93896bd7ebbe840c8fa66a8f20ac3a94d52db05f416661f3eb272dbf9
|
|
|
52007
52251
|
"""Type checking stubs"""
|
|
52008
52252
|
pass
|
|
52009
52253
|
|
|
52010
|
-
def _typecheckingstub__179caeeed8cf1e3badcd9269f89a732efb1582d0dc5fe1a1431aee106eefe333(
|
|
52011
|
-
value: typing.List[builtins.str],
|
|
52012
|
-
) -> None:
|
|
52013
|
-
"""Type checking stubs"""
|
|
52014
|
-
pass
|
|
52015
|
-
|
|
52016
52254
|
def _typecheckingstub__df256c18acb77e38e5110ec5f1e3b55621c49f4da43f861e9d55ef39c9207076(
|
|
52017
52255
|
value: builtins.str,
|
|
52018
52256
|
) -> None:
|
|
@@ -52025,6 +52263,12 @@ def _typecheckingstub__adacafb6e01b8e49c325edb233c0e67268b6787a00fc50eea158771a2
|
|
|
52025
52263
|
"""Type checking stubs"""
|
|
52026
52264
|
pass
|
|
52027
52265
|
|
|
52266
|
+
def _typecheckingstub__179caeeed8cf1e3badcd9269f89a732efb1582d0dc5fe1a1431aee106eefe333(
|
|
52267
|
+
value: typing.Optional[typing.List[builtins.str]],
|
|
52268
|
+
) -> None:
|
|
52269
|
+
"""Type checking stubs"""
|
|
52270
|
+
pass
|
|
52271
|
+
|
|
52028
52272
|
def _typecheckingstub__35e502a63db6f1c8f1c9225401bd8b2f0070d6dc6d8696b559629d5ccb289a80(
|
|
52029
52273
|
*,
|
|
52030
52274
|
capacity_provider: builtins.str,
|
|
@@ -53863,3 +54107,6 @@ def _typecheckingstub__59be62eab8487bb224b6839e6560b22ec29653bf5f8e319f85996fa99
|
|
|
53863
54107
|
) -> None:
|
|
53864
54108
|
"""Type checking stubs"""
|
|
53865
54109
|
pass
|
|
54110
|
+
|
|
54111
|
+
for cls in [IAlternateTarget, IBaseService, ICapacityProviderRef, ICluster, IClusterCapacityProviderAssociationsRef, IClusterRef, IDeploymentLifecycleHookTarget, IEc2Service, IEc2TaskDefinition, IEcsLoadBalancerTarget, IExternalService, IExternalTaskDefinition, IFargateService, IFargateTaskDefinition, IPrimaryTaskSetRef, IService, IServiceRef, ITaskDefinition, ITaskDefinitionExtension, ITaskDefinitionRef, ITaskSetRef]:
|
|
54112
|
+
typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
|