Class AddCapacityOptions.Jsii$Proxy
- All Implemented Interfaces:
CommonAutoScalingGroupProps
,AddAutoScalingGroupCapacityOptions
,AddCapacityOptions
,software.amazon.jsii.JsiiSerializable
- Enclosing interface:
- AddCapacityOptions
AddCapacityOptions
-
Nested Class Summary
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode
Nested classes/interfaces inherited from interface software.amazon.awscdk.services.ecs.AddCapacityOptions
AddCapacityOptions.Builder, AddCapacityOptions.Jsii$Proxy
-
Constructor Summary
ModifierConstructorDescriptionprotected
Jsii$Proxy
(AddCapacityOptions.Builder builder) Constructor that initializes the object based on literal property values passed by theAddCapacityOptions.Builder
.protected
Jsii$Proxy
(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject. -
Method Summary
Modifier and TypeMethodDescriptioncom.fasterxml.jackson.databind.JsonNode
final boolean
final Boolean
Whether the instances can initiate connections to anywhere by default.final Boolean
Whether instances in the Auto Scaling Group should have public IP addresses associated with them.final String
The name of the Auto Scaling group.final List<BlockDevice>
Specifies how block devices are exposed to the instance.final Boolean
Specifies whether the containers can access the container instance role.final Duration
Default scaling cooldown for this AutoScalingGroup.final Number
Initial amount of instances in the fleet.final List<GroupMetrics>
Enable monitoring for group metrics, these metrics describe the group rather than any of its instances.final HealthCheck
Configuration for health checks.final Boolean
If the ASG has scheduled actions, don't reset unchanged group sizes.final Monitoring
Controls whether instances in this group are launched with detailed or basic monitoring.final InstanceType
The EC2 instance type to use when launching instances into the AutoScalingGroup.final String
Name of SSH keypair to grant access to instances.final IMachineImage
The ECS-optimized AMI variant to use.final MachineImageType
What type of machine image this is.final Number
Maximum number of instances in the fleet.final Duration
The maximum amount of time that an instance can be in service.final Number
Minimum number of instances in the fleet.final Boolean
Whether newly-launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in.final List<NotificationConfiguration>
Configure autoscaling group to send notifications about fleet changes to an SNS topic(s).final ITopic
(deprecated) SNS topic to send notifications about fleet changes.final Number
(deprecated) Configuration for replacing updates.final Number
(deprecated) How many ResourceSignal calls CloudFormation expects before the resource is considered created.final Duration
(deprecated) The length of time to wait for the resourceSignalCount.(deprecated) Configuration for rolling updates.final Signals
Configure waiting for signals during deployment.final Boolean
Specify whether to enable Automated Draining for Spot Instances running Amazon ECS Services.final String
The maximum hourly price (in USD) to be paid for any Spot Instance launched to fulfill the request.final Duration
(deprecated) The time period to wait before force terminating an instance that is draining.final List<TerminationPolicy>
A policy or a list of policies that are used to select the instances to terminate.final IKey
IfAddAutoScalingGroupCapacityOptions.taskDrainTime
is non-zero, then the ECS cluster creates an SNS Topic to as part of a system to drain instances of tasks when the instance is being shut down.final UpdatePolicy
What to do when an AutoScalingGroup's instance configuration is changed.final UpdateType
(deprecated) What to do when an AutoScalingGroup's instance configuration is changed.final SubnetSelection
Where to place instances within the VPC.final int
hashCode()
Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet
-
Constructor Details
-
Jsii$Proxy
protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef) Constructor that initializes the object based on values retrieved from the JsiiObject.- Parameters:
objRef
- Reference to the JSII managed object.
-
Jsii$Proxy
Constructor that initializes the object based on literal property values passed by theAddCapacityOptions.Builder
.
-
-
Method Details
-
getInstanceType
Description copied from interface:AddCapacityOptions
The EC2 instance type to use when launching instances into the AutoScalingGroup.- Specified by:
getInstanceType
in interfaceAddCapacityOptions
-
getMachineImage
Description copied from interface:AddCapacityOptions
The ECS-optimized AMI variant to use.The default is to use an ECS-optimized AMI of Amazon Linux 2 which is automatically updated to the latest version on every deployment. This will replace the instances in the AutoScalingGroup. Make sure you have not disabled task draining, to avoid downtime when the AMI updates.
To use an image that does not update on every deployment, pass:
EcsOptimizedImage machineImage = EcsOptimizedImage.amazonLinux2(AmiHardwareType.STANDARD, EcsOptimizedImageOptions.builder() .cachedInContext(true) .build());
For more information, see Amazon ECS-optimized AMIs.
You must define either
machineImage
ormachineImageType
, not both.Default: - Automatically updated, ECS-optimized Amazon Linux 2
- Specified by:
getMachineImage
in interfaceAddCapacityOptions
-
getCanContainersAccessInstanceRole
Description copied from interface:AddAutoScalingGroupCapacityOptions
Specifies whether the containers can access the container instance role.Default: false
- Specified by:
getCanContainersAccessInstanceRole
in interfaceAddAutoScalingGroupCapacityOptions
-
getMachineImageType
Description copied from interface:AddAutoScalingGroupCapacityOptions
What type of machine image this is.Depending on the setting, different UserData will automatically be added to the
AutoScalingGroup
to configure it properly for use with ECS.If you create an
AutoScalingGroup
yourself and are adding it viaaddAutoScalingGroup()
, you must specify this value. If you are adding anautoScalingGroup
viaaddCapacity
, this value will be determined from themachineImage
you pass.Default: - Automatically determined from `machineImage`, if available, otherwise `MachineImageType.AMAZON_LINUX_2`.
- Specified by:
getMachineImageType
in interfaceAddAutoScalingGroupCapacityOptions
-
getSpotInstanceDraining
Description copied from interface:AddAutoScalingGroupCapacityOptions
Specify whether to enable Automated Draining for Spot Instances running Amazon ECS Services.For more information, see Using Spot Instances.
Default: false
- Specified by:
getSpotInstanceDraining
in interfaceAddAutoScalingGroupCapacityOptions
-
getTaskDrainTime
Description copied from interface:AddAutoScalingGroupCapacityOptions
(deprecated) The time period to wait before force terminating an instance that is draining.This creates a Lambda function that is used by a lifecycle hook for the AutoScalingGroup that will delay instance termination until all ECS tasks have drained from the instance. Set to 0 to disable task draining.
Set to 0 to disable task draining.
Default: Duration.minutes(5)
- Specified by:
getTaskDrainTime
in interfaceAddAutoScalingGroupCapacityOptions
-
getTopicEncryptionKey
Description copied from interface:AddAutoScalingGroupCapacityOptions
IfAddAutoScalingGroupCapacityOptions.taskDrainTime
is non-zero, then the ECS cluster creates an SNS Topic to as part of a system to drain instances of tasks when the instance is being shut down. If this property is provided, then this key will be used to encrypt the contents of that SNS Topic. See [SNS Data Encryption](https://docs.aws.amazon.com/sns/latest/dg/sns-data-encryption.html) for more information.Default: The SNS Topic will not be encrypted.
- Specified by:
getTopicEncryptionKey
in interfaceAddAutoScalingGroupCapacityOptions
-
getAllowAllOutbound
Description copied from interface:CommonAutoScalingGroupProps
Whether the instances can initiate connections to anywhere by default.Default: true
- Specified by:
getAllowAllOutbound
in interfaceCommonAutoScalingGroupProps
-
getAssociatePublicIpAddress
Description copied from interface:CommonAutoScalingGroupProps
Whether instances in the Auto Scaling Group should have public IP addresses associated with them.Default: - Use subnet setting.
- Specified by:
getAssociatePublicIpAddress
in interfaceCommonAutoScalingGroupProps
-
getAutoScalingGroupName
Description copied from interface:CommonAutoScalingGroupProps
The name of the Auto Scaling group.This name must be unique per Region per account.
Default: - Auto generated by CloudFormation
- Specified by:
getAutoScalingGroupName
in interfaceCommonAutoScalingGroupProps
-
getBlockDevices
Description copied from interface:CommonAutoScalingGroupProps
Specifies how block devices are exposed to the instance. You can specify virtual devices and EBS volumes.Each instance that is launched has an associated root device volume, either an Amazon EBS volume or an instance store volume. You can use block device mappings to specify additional EBS volumes or instance store volumes to attach to an instance when it is launched.
Default: - Uses the block device mapping of the AMI
- Specified by:
getBlockDevices
in interfaceCommonAutoScalingGroupProps
- See Also:
-
getCooldown
Description copied from interface:CommonAutoScalingGroupProps
Default scaling cooldown for this AutoScalingGroup.Default: Duration.minutes(5)
- Specified by:
getCooldown
in interfaceCommonAutoScalingGroupProps
-
getDesiredCapacity
Description copied from interface:CommonAutoScalingGroupProps
Initial amount of instances in the fleet.If this is set to a number, every deployment will reset the amount of instances to this number. It is recommended to leave this value blank.
Default: minCapacity, and leave unchanged during deployment
-
getGroupMetrics
Description copied from interface:CommonAutoScalingGroupProps
Enable monitoring for group metrics, these metrics describe the group rather than any of its instances.To report all group metrics use
GroupMetrics.all()
Group metrics are reported in a granularity of 1 minute at no additional charge.Default: - no group metrics will be reported
- Specified by:
getGroupMetrics
in interfaceCommonAutoScalingGroupProps
-
getHealthCheck
Description copied from interface:CommonAutoScalingGroupProps
Configuration for health checks.Default: - HealthCheck.ec2 with no grace period
- Specified by:
getHealthCheck
in interfaceCommonAutoScalingGroupProps
-
getIgnoreUnmodifiedSizeProperties
Description copied from interface:CommonAutoScalingGroupProps
If the ASG has scheduled actions, don't reset unchanged group sizes.Only used if the ASG has scheduled actions (which may scale your ASG up or down regardless of cdk deployments). If true, the size of the group will only be reset if it has been changed in the CDK app. If false, the sizes will always be changed back to what they were in the CDK app on deployment.
Default: true
- Specified by:
getIgnoreUnmodifiedSizeProperties
in interfaceCommonAutoScalingGroupProps
-
getInstanceMonitoring
Description copied from interface:CommonAutoScalingGroupProps
Controls whether instances in this group are launched with detailed or basic monitoring.When detailed monitoring is enabled, Amazon CloudWatch generates metrics every minute and your account is charged a fee. When you disable detailed monitoring, CloudWatch generates metrics every 5 minutes.
Default: - Monitoring.DETAILED
-
getKeyName
Description copied from interface:CommonAutoScalingGroupProps
Name of SSH keypair to grant access to instances.Default: - No SSH access will be possible.
- Specified by:
getKeyName
in interfaceCommonAutoScalingGroupProps
-
getMaxCapacity
Description copied from interface:CommonAutoScalingGroupProps
Maximum number of instances in the fleet.Default: desiredCapacity
- Specified by:
getMaxCapacity
in interfaceCommonAutoScalingGroupProps
-
getMaxInstanceLifetime
Description copied from interface:CommonAutoScalingGroupProps
The maximum amount of time that an instance can be in service.The maximum duration applies to all current and future instances in the group. As an instance approaches its maximum duration, it is terminated and replaced, and cannot be used again.
You must specify a value of at least 604,800 seconds (7 days). To clear a previously set value, leave this property undefined.
Default: none
- Specified by:
getMaxInstanceLifetime
in interfaceCommonAutoScalingGroupProps
- See Also:
-
getMinCapacity
Description copied from interface:CommonAutoScalingGroupProps
Minimum number of instances in the fleet.Default: 1
- Specified by:
getMinCapacity
in interfaceCommonAutoScalingGroupProps
-
getNewInstancesProtectedFromScaleIn
Description copied from interface:CommonAutoScalingGroupProps
Whether newly-launched instances are protected from termination by Amazon EC2 Auto Scaling when scaling in.By default, Auto Scaling can terminate an instance at any time after launch when scaling in an Auto Scaling Group, subject to the group's termination policy. However, you may wish to protect newly-launched instances from being scaled in if they are going to run critical applications that should not be prematurely terminated.
This flag must be enabled if the Auto Scaling Group will be associated with an ECS Capacity Provider with managed termination protection.
Default: false
- Specified by:
getNewInstancesProtectedFromScaleIn
in interfaceCommonAutoScalingGroupProps
-
getNotifications
Description copied from interface:CommonAutoScalingGroupProps
Configure autoscaling group to send notifications about fleet changes to an SNS topic(s).Default: - No fleet change notifications will be sent.
-
getNotificationsTopic
Description copied from interface:CommonAutoScalingGroupProps
(deprecated) SNS topic to send notifications about fleet changes.Default: - No fleet change notifications will be sent.
- Specified by:
getNotificationsTopic
in interfaceCommonAutoScalingGroupProps
-
getReplacingUpdateMinSuccessfulInstancesPercent
Description copied from interface:CommonAutoScalingGroupProps
(deprecated) Configuration for replacing updates.Only used if updateType == UpdateType.ReplacingUpdate. Specifies how many instances must signal success for the update to succeed.
Default: minSuccessfulInstancesPercent
- Specified by:
getReplacingUpdateMinSuccessfulInstancesPercent
in interfaceCommonAutoScalingGroupProps
-
getResourceSignalCount
Description copied from interface:CommonAutoScalingGroupProps
(deprecated) How many ResourceSignal calls CloudFormation expects before the resource is considered created.Default: 1 if resourceSignalTimeout is set, 0 otherwise
- Specified by:
getResourceSignalCount
in interfaceCommonAutoScalingGroupProps
-
getResourceSignalTimeout
Description copied from interface:CommonAutoScalingGroupProps
(deprecated) The length of time to wait for the resourceSignalCount.The maximum value is 43200 (12 hours).
Default: Duration.minutes(5) if resourceSignalCount is set, N/A otherwise
- Specified by:
getResourceSignalTimeout
in interfaceCommonAutoScalingGroupProps
-
getRollingUpdateConfiguration
Description copied from interface:CommonAutoScalingGroupProps
(deprecated) Configuration for rolling updates.Only used if updateType == UpdateType.RollingUpdate.
Default: - RollingUpdateConfiguration with defaults.
- Specified by:
getRollingUpdateConfiguration
in interfaceCommonAutoScalingGroupProps
-
getSignals
Description copied from interface:CommonAutoScalingGroupProps
Configure waiting for signals during deployment.Use this to pause the CloudFormation deployment to wait for the instances in the AutoScalingGroup to report successful startup during creation and updates. The UserData script needs to invoke
cfn-signal
with a success or failure code after it is done setting up the instance.Without waiting for signals, the CloudFormation deployment will proceed as soon as the AutoScalingGroup has been created or updated but before the instances in the group have been started.
For example, to have instances wait for an Elastic Load Balancing health check before they signal success, add a health-check verification by using the cfn-init helper script. For an example, see the verify_instance_health command in the Auto Scaling rolling updates sample template:
https://github.com/awslabs/aws-cloudformation-templates/blob/master/aws/services/AutoScaling/AutoScalingRollingUpdates.yaml
Default: - Do not wait for signals
- Specified by:
getSignals
in interfaceCommonAutoScalingGroupProps
-
getSpotPrice
Description copied from interface:CommonAutoScalingGroupProps
The maximum hourly price (in USD) to be paid for any Spot Instance launched to fulfill the request.Spot Instances are launched when the price you specify exceeds the current Spot market price.
Default: none
- Specified by:
getSpotPrice
in interfaceCommonAutoScalingGroupProps
-
getTerminationPolicies
Description copied from interface:CommonAutoScalingGroupProps
A policy or a list of policies that are used to select the instances to terminate.The policies are executed in the order that you list them.
Default: - `TerminationPolicy.DEFAULT`
- Specified by:
getTerminationPolicies
in interfaceCommonAutoScalingGroupProps
- See Also:
-
getUpdatePolicy
Description copied from interface:CommonAutoScalingGroupProps
What to do when an AutoScalingGroup's instance configuration is changed.This is applied when any of the settings on the ASG are changed that affect how the instances should be created (VPC, instance type, startup scripts, etc.). It indicates how the existing instances should be replaced with new instances matching the new config. By default, nothing is done and only new instances are launched with the new config.
Default: - `UpdatePolicy.rollingUpdate()` if using `init`, `UpdatePolicy.none()` otherwise
- Specified by:
getUpdatePolicy
in interfaceCommonAutoScalingGroupProps
-
getUpdateType
Description copied from interface:CommonAutoScalingGroupProps
(deprecated) What to do when an AutoScalingGroup's instance configuration is changed.This is applied when any of the settings on the ASG are changed that affect how the instances should be created (VPC, instance type, startup scripts, etc.). It indicates how the existing instances should be replaced with new instances matching the new config. By default, nothing is done and only new instances are launched with the new config.
Default: UpdateType.None
- Specified by:
getUpdateType
in interfaceCommonAutoScalingGroupProps
-
getVpcSubnets
Description copied from interface:CommonAutoScalingGroupProps
Where to place instances within the VPC.Default: - All Private subnets.
- Specified by:
getVpcSubnets
in interfaceCommonAutoScalingGroupProps
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()- Specified by:
$jsii$toJson
in interfacesoftware.amazon.jsii.JsiiSerializable
-
equals
-
hashCode
public final int hashCode()
-