Class GroupArgs


  • public final class GroupArgs
    extends com.pulumi.resources.ResourceArgs
    • Field Detail

    • Method Detail

      • availabilityZoneDistribution

        public java.util.Optional<com.pulumi.core.Output<GroupAvailabilityZoneDistributionArgs>> availabilityZoneDistribution()
        Returns:
        The instance capacity distribution across Availability Zones. See `availabilityZoneDistribution` Block below for more details.
      • availabilityZones

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> availabilityZones()
        Returns:
        A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the `vpcZoneIdentifier` attribute, or for attaching a network interface when an existing network interface ID is specified in a launch template. Conflicts with `vpcZoneIdentifier`.
      • capacityRebalance

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> capacityRebalance()
        Returns:
        Whether capacity rebalance is enabled. Otherwise, capacity rebalance is disabled.
      • capacityReservationSpecification

        public java.util.Optional<com.pulumi.core.Output<GroupCapacityReservationSpecificationArgs>> capacityReservationSpecification()
        Returns:
        The capacity reservation specification for the Auto Scaling group allows you to prioritize launching into On-Demand Capacity Reservations. See `capacityReservationSpecification` Block below for more details.
      • context

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> context()
        Returns:
        Reserved.
      • defaultCooldown

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> defaultCooldown()
        Returns:
        Amount of time, in seconds, after a scaling activity completes before another scaling activity can start.
      • defaultInstanceWarmup

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> defaultInstanceWarmup()
        Returns:
        Amount of time, in seconds, until a newly launched instance can contribute to the Amazon CloudWatch metrics. This delay lets an instance finish initializing before Amazon EC2 Auto Scaling aggregates instance metrics, resulting in more reliable usage data. Set this value equal to the amount of time that it takes for resource consumption to become stable after an instance reaches the InService state. (See [Set the default instance warmup for an Auto Scaling group](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-default-instance-warmup.html))
      • desiredCapacity

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> desiredCapacity()
        Returns:
        Number of Amazon EC2 instances that should be running in the group. (See also Waiting for Capacity below.)
      • desiredCapacityType

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> desiredCapacityType()
        Returns:
        The unit of measurement for the value specified for `desiredCapacity`. Supported for attribute-based instance type selection only. Valid values: `"units"`, `"vcpu"`, `"memory-mib"`.
      • enabledMetrics

        public java.util.Optional<com.pulumi.core.Output<java.util.List<Metric>>> enabledMetrics()
        Returns:
        List of metrics to collect. The allowed values are defined by the [underlying AWS API](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html).
      • forceDelete

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> forceDelete()
        Returns:
        Allows deleting the Auto Scaling group without waiting for all instances in the pool to terminate. You can force an Auto Scaling group to delete even if it's in the process of scaling a resource. Normally, this provider drains all the instances before deleting the group. This bypasses that behavior and potentially leaves resources dangling.
      • forceDeleteWarmPool

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> forceDeleteWarmPool()
        Returns:
        Allows deleting the Auto Scaling group without waiting for all instances in the warm pool to terminate.
      • healthCheckGracePeriod

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> healthCheckGracePeriod()
        Returns:
        Time (in seconds) after instance comes into service before checking health.
      • healthCheckType

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> healthCheckType()
        Returns:
        "EC2" or "ELB". Controls how health checking is done.
      • ignoreFailedScalingActivities

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> ignoreFailedScalingActivities()
        Returns:
        Whether to ignore failed [Auto Scaling scaling activities](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-verify-scaling-activity.html) while waiting for capacity. The default is `false` -- failed scaling activities cause errors to be returned.
      • initialLifecycleHooks

        public java.util.Optional<com.pulumi.core.Output<java.util.List<GroupInitialLifecycleHookArgs>>> initialLifecycleHooks()
        Returns:
        One or more [Lifecycle Hooks](http://docs.aws.amazon.com/autoscaling/latest/userguide/lifecycle-hooks.html) to attach to the Auto Scaling group **before** instances are launched. The syntax is exactly the same as the separate `aws.autoscaling.LifecycleHook` resource, without the `autoscalingGroupName` attribute. Please note that this will only work when creating a new Auto Scaling group. For all other use-cases, please use `aws.autoscaling.LifecycleHook` resource.
      • instanceLifecyclePolicy

        public java.util.Optional<com.pulumi.core.Output<GroupInstanceLifecyclePolicyArgs>> instanceLifecyclePolicy()
        Returns:
        If this block is configured, adds an instance lifecycle policy to the specified Auto Scaling group. Defined below.
      • instanceMaintenancePolicy

        public java.util.Optional<com.pulumi.core.Output<GroupInstanceMaintenancePolicyArgs>> instanceMaintenancePolicy()
        Returns:
        If this block is configured, add a instance maintenance policy to the specified Auto Scaling group. Defined below.
      • instanceRefresh

        public java.util.Optional<com.pulumi.core.Output<GroupInstanceRefreshArgs>> instanceRefresh()
        Returns:
        If this block is configured, start an [Instance Refresh](https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-refresh.html) when this Auto Scaling group is updated. Defined below.
      • launchConfiguration

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> launchConfiguration()
        Returns:
        Name of the launch configuration to use.
      • launchTemplate

        public java.util.Optional<com.pulumi.core.Output<GroupLaunchTemplateArgs>> launchTemplate()
        Returns:
        Nested argument with Launch template specification to use to launch instances. See `launchTemplate` Block below for more details.
      • loadBalancers

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> loadBalancers()
        Returns:
        List of elastic load balancer names to add to the Auto Scaling group names. Only valid for classic load balancers. For ALBs, use `targetGroupArns` instead. To remove all load balancer attachments an empty list should be specified.
      • maxInstanceLifetime

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> maxInstanceLifetime()
        Returns:
        Maximum amount of time, in seconds, that an instance can be in service, values must be either equal to 0 or between 86400 and 31536000 seconds.
      • maxSize

        public com.pulumi.core.Output<java.lang.Integer> maxSize()
        Returns:
        Maximum size of the Auto Scaling group.
      • metricsGranularity

        public java.util.Optional<com.pulumi.core.Output<com.pulumi.core.Either<java.lang.String,​MetricsGranularity>>> metricsGranularity()
        Returns:
        Granularity to associate with the metrics to collect. The only valid value is `1Minute`. Default is `1Minute`.
      • minElbCapacity

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> minElbCapacity()
        Returns:
        Setting this causes Pulumi to wait for this number of instances from this Auto Scaling group to show up healthy in the ELB only on creation. Updates will not wait on ELB instance number changes. (See also Waiting for Capacity below.)
      • minSize

        public com.pulumi.core.Output<java.lang.Integer> minSize()
        Returns:
        Minimum size of the Auto Scaling group. (See also Waiting for Capacity below.)
      • mixedInstancesPolicy

        public java.util.Optional<com.pulumi.core.Output<GroupMixedInstancesPolicyArgs>> mixedInstancesPolicy()
        Returns:
        Configuration block containing settings to define launch targets for Auto Scaling groups. See `mixedInstancesPolicy` Block below for more details.
      • name

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> name()
        Returns:
        Name of the Auto Scaling group. By default generated by Pulumi. Conflicts with `namePrefix`.
      • namePrefix

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> namePrefix()
        Returns:
        Creates a unique name beginning with the specified prefix. Conflicts with `name`.
      • placementGroup

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> placementGroup()
        Returns:
        Name of the placement group into which you'll launch your instances, if any.
      • protectFromScaleIn

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> protectFromScaleIn()
        Returns:
        Whether newly launched instances are automatically protected from termination by Amazon EC2 Auto Scaling when scaling in. For more information about preventing instances from terminating on scale in, see [Using instance scale-in protection](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html) in the Amazon EC2 Auto Scaling User Guide.
      • region

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> region()
        Returns:
        Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
      • serviceLinkedRoleArn

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> serviceLinkedRoleArn()
        Returns:
        ARN of the service-linked role that the ASG will use to call other AWS services
      • suspendedProcesses

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> suspendedProcesses()
        Returns:
        List of processes to suspend for the Auto Scaling group. The allowed values are `Launch`, `Terminate`, `HealthCheck`, `ReplaceUnhealthy`, `AZRebalance`, `AlarmNotification`, `ScheduledActions`, `AddToLoadBalancer`, `InstanceRefresh`. Note that if you suspend either the `Launch` or `Terminate` process types, it can prevent your Auto Scaling group from functioning properly.
      • tags

        public java.util.Optional<com.pulumi.core.Output<java.util.List<GroupTagArgs>>> tags()
        Returns:
        Configuration block(s) containing resource tags. See `tag` Block below for more details.
      • targetGroupArns

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> targetGroupArns()
        Returns:
        Set of `aws.lb.TargetGroup` ARNs, for use with Application or Network Load Balancing. To remove all target group attachments an empty list should be specified.
      • terminationPolicies

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> terminationPolicies()
        Returns:
        List of policies to decide how the instances in the Auto Scaling group should be terminated. The allowed values are `OldestInstance`, `NewestInstance`, `OldestLaunchConfiguration`, `ClosestToNextInstanceHour`, `OldestLaunchTemplate`, `AllocationStrategy`, `Default`. Additionally, the ARN of a Lambda function can be specified for custom termination policies.
      • trafficSources

        public java.util.Optional<com.pulumi.core.Output<java.util.List<GroupTrafficSourceArgs>>> trafficSources()
        Returns:
        Attaches one or more traffic sources to the specified Auto Scaling group.
      • vpcZoneIdentifiers

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> vpcZoneIdentifiers()
        Returns:
        List of subnet IDs to launch resources in. Subnets automatically determine which availability zones the group will reside. Conflicts with `availabilityZones`.
      • waitForCapacityTimeout

        public java.util.Optional<com.pulumi.core.Output<java.lang.String>> waitForCapacityTimeout()
        Returns:
        Maximum [duration](https://golang.org/pkg/time/#ParseDuration) that the provider should wait for ASG instances to be healthy before timing out. (See also Waiting for Capacity below.) Setting this to "0" causes the provider to skip all Capacity Waiting behavior.
      • waitForElbCapacity

        public java.util.Optional<com.pulumi.core.Output<java.lang.Integer>> waitForElbCapacity()
        Returns:
        Setting this will cause Pulumi to wait for exactly this number of healthy instances from this Auto Scaling group in all attached load balancers on both create and update operations. (Takes precedence over `minElbCapacity` behavior.) (See also Waiting for Capacity below.)
      • warmPool

        public java.util.Optional<com.pulumi.core.Output<GroupWarmPoolArgs>> warmPool()
        Returns:
        If this block is configured, add a [Warm Pool](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-warm-pools.html) to the specified Auto Scaling group. Defined below