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.InitializationModeNested classes/interfaces inherited from interface software.amazon.awscdk.services.ecs.AddCapacityOptions
AddCapacityOptions.Builder, AddCapacityOptions.Jsii$Proxy -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedJsii$Proxy(AddCapacityOptions.Builder builder) Constructor that initializes the object based on literal property values passed by theAddCapacityOptions.Builder.protectedJsii$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.JsonNodefinal booleanfinal BooleanWhether the instances can initiate connections to anywhere by default.final BooleanWhether instances in the Auto Scaling Group should have public IP addresses associated with them.final StringThe name of the Auto Scaling group.final List<BlockDevice>Specifies how block devices are exposed to the instance.final BooleanSpecifies whether the containers can access the container instance role.final DurationDefault scaling cooldown for this AutoScalingGroup.final NumberInitial 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 HealthCheckConfiguration for health checks.final BooleanIf the ASG has scheduled actions, don't reset unchanged group sizes.final MonitoringControls whether instances in this group are launched with detailed or basic monitoring.final InstanceTypeThe EC2 instance type to use when launching instances into the AutoScalingGroup.final StringName of SSH keypair to grant access to instances.final IMachineImageThe ECS-optimized AMI variant to use.final MachineImageTypeWhat type of machine image this is.final NumberMaximum number of instances in the fleet.final DurationThe maximum amount of time that an instance can be in service.final NumberMinimum number of instances in the fleet.final BooleanWhether 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 SignalsConfigure waiting for signals during deployment.final BooleanSpecify whether to enable Automated Draining for Spot Instances running Amazon ECS Services.final StringThe 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 IKeyIfAddAutoScalingGroupCapacityOptions.taskDrainTimeis 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 UpdatePolicyWhat 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 SubnetSelectionWhere to place instances within the VPC.final inthashCode()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:AddCapacityOptionsThe EC2 instance type to use when launching instances into the AutoScalingGroup.- Specified by:
getInstanceTypein interfaceAddCapacityOptions
-
getMachineImage
Description copied from interface:AddCapacityOptionsThe 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
machineImageormachineImageType, not both.Default: - Automatically updated, ECS-optimized Amazon Linux 2
- Specified by:
getMachineImagein interfaceAddCapacityOptions
-
getCanContainersAccessInstanceRole
Description copied from interface:AddAutoScalingGroupCapacityOptionsSpecifies whether the containers can access the container instance role.Default: false
- Specified by:
getCanContainersAccessInstanceRolein interfaceAddAutoScalingGroupCapacityOptions
-
getMachineImageType
Description copied from interface:AddAutoScalingGroupCapacityOptionsWhat type of machine image this is.Depending on the setting, different UserData will automatically be added to the
AutoScalingGroupto configure it properly for use with ECS.If you create an
AutoScalingGroupyourself and are adding it viaaddAutoScalingGroup(), you must specify this value. If you are adding anautoScalingGroupviaaddCapacity, this value will be determined from themachineImageyou pass.Default: - Automatically determined from `machineImage`, if available, otherwise `MachineImageType.AMAZON_LINUX_2`.
- Specified by:
getMachineImageTypein interfaceAddAutoScalingGroupCapacityOptions
-
getSpotInstanceDraining
Description copied from interface:AddAutoScalingGroupCapacityOptionsSpecify whether to enable Automated Draining for Spot Instances running Amazon ECS Services.For more information, see Using Spot Instances.
Default: false
- Specified by:
getSpotInstanceDrainingin 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:
getTaskDrainTimein interfaceAddAutoScalingGroupCapacityOptions
-
getTopicEncryptionKey
Description copied from interface:AddAutoScalingGroupCapacityOptionsIfAddAutoScalingGroupCapacityOptions.taskDrainTimeis 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:
getTopicEncryptionKeyin interfaceAddAutoScalingGroupCapacityOptions
-
getAllowAllOutbound
Description copied from interface:CommonAutoScalingGroupPropsWhether the instances can initiate connections to anywhere by default.Default: true
- Specified by:
getAllowAllOutboundin interfaceCommonAutoScalingGroupProps
-
getAssociatePublicIpAddress
Description copied from interface:CommonAutoScalingGroupPropsWhether instances in the Auto Scaling Group should have public IP addresses associated with them.Default: - Use subnet setting.
- Specified by:
getAssociatePublicIpAddressin interfaceCommonAutoScalingGroupProps
-
getAutoScalingGroupName
Description copied from interface:CommonAutoScalingGroupPropsThe name of the Auto Scaling group.This name must be unique per Region per account.
Default: - Auto generated by CloudFormation
- Specified by:
getAutoScalingGroupNamein interfaceCommonAutoScalingGroupProps
-
getBlockDevices
Description copied from interface:CommonAutoScalingGroupPropsSpecifies 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:
getBlockDevicesin interfaceCommonAutoScalingGroupProps- See Also:
-
getCooldown
Description copied from interface:CommonAutoScalingGroupPropsDefault scaling cooldown for this AutoScalingGroup.Default: Duration.minutes(5)
- Specified by:
getCooldownin interfaceCommonAutoScalingGroupProps
-
getDesiredCapacity
Description copied from interface:CommonAutoScalingGroupPropsInitial 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:CommonAutoScalingGroupPropsEnable 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:
getGroupMetricsin interfaceCommonAutoScalingGroupProps
-
getHealthCheck
Description copied from interface:CommonAutoScalingGroupPropsConfiguration for health checks.Default: - HealthCheck.ec2 with no grace period
- Specified by:
getHealthCheckin interfaceCommonAutoScalingGroupProps
-
getIgnoreUnmodifiedSizeProperties
Description copied from interface:CommonAutoScalingGroupPropsIf 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:
getIgnoreUnmodifiedSizePropertiesin interfaceCommonAutoScalingGroupProps
-
getInstanceMonitoring
Description copied from interface:CommonAutoScalingGroupPropsControls 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:CommonAutoScalingGroupPropsName of SSH keypair to grant access to instances.Default: - No SSH access will be possible.
- Specified by:
getKeyNamein interfaceCommonAutoScalingGroupProps
-
getMaxCapacity
Description copied from interface:CommonAutoScalingGroupPropsMaximum number of instances in the fleet.Default: desiredCapacity
- Specified by:
getMaxCapacityin interfaceCommonAutoScalingGroupProps
-
getMaxInstanceLifetime
Description copied from interface:CommonAutoScalingGroupPropsThe 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:
getMaxInstanceLifetimein interfaceCommonAutoScalingGroupProps- See Also:
-
getMinCapacity
Description copied from interface:CommonAutoScalingGroupPropsMinimum number of instances in the fleet.Default: 1
- Specified by:
getMinCapacityin interfaceCommonAutoScalingGroupProps
-
getNewInstancesProtectedFromScaleIn
Description copied from interface:CommonAutoScalingGroupPropsWhether 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:
getNewInstancesProtectedFromScaleInin interfaceCommonAutoScalingGroupProps
-
getNotifications
Description copied from interface:CommonAutoScalingGroupPropsConfigure 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:
getNotificationsTopicin 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:
getReplacingUpdateMinSuccessfulInstancesPercentin 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:
getResourceSignalCountin 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:
getResourceSignalTimeoutin interfaceCommonAutoScalingGroupProps
-
getRollingUpdateConfiguration
Description copied from interface:CommonAutoScalingGroupProps(deprecated) Configuration for rolling updates.Only used if updateType == UpdateType.RollingUpdate.
Default: - RollingUpdateConfiguration with defaults.
- Specified by:
getRollingUpdateConfigurationin interfaceCommonAutoScalingGroupProps
-
getSignals
Description copied from interface:CommonAutoScalingGroupPropsConfigure 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-signalwith 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:
getSignalsin interfaceCommonAutoScalingGroupProps
-
getSpotPrice
Description copied from interface:CommonAutoScalingGroupPropsThe 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:
getSpotPricein interfaceCommonAutoScalingGroupProps
-
getTerminationPolicies
Description copied from interface:CommonAutoScalingGroupPropsA 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:
getTerminationPoliciesin interfaceCommonAutoScalingGroupProps- See Also:
-
getUpdatePolicy
Description copied from interface:CommonAutoScalingGroupPropsWhat 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:
getUpdatePolicyin 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:
getUpdateTypein interfaceCommonAutoScalingGroupProps
-
getVpcSubnets
Description copied from interface:CommonAutoScalingGroupPropsWhere to place instances within the VPC.Default: - All Private subnets.
- Specified by:
getVpcSubnetsin interfaceCommonAutoScalingGroupProps
-
$jsii$toJson
@Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()- Specified by:
$jsii$toJsonin interfacesoftware.amazon.jsii.JsiiSerializable
-
equals
-
hashCode
public final int hashCode()
-