Class GroupArgs


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

    • Method Detail

      • availabilityZones

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> availabilityZones()
        Returns:
        List of one or more availability zones for the group. Used for EC2-Classic, attaching a network interface via id from a launch template and default subnets when not specified with `vpc_zone_identifier` argument. Conflicts with `vpc_zone_identifier`.
      • capacityRebalance

        public java.util.Optional<com.pulumi.core.Output<java.lang.Boolean>> capacityRebalance()
        Returns:
        Whether capacity rebalance is enabled. Otherwise, capacity rebalance is disabled.
      • 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.)
      • enabledMetrics

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> 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()
      • 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.
      • 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 `autoscaling_group_name` 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.
      • 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 containing launch template settings along with the overrides to specify multiple instance types and weights. Defined below.
      • 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 autoscaling group names. Only valid for classic load balancers. For ALBs, use `target_group_arns` instead.
      • 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 the provider 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 number of instances to maintain in the warm pool. This helps you to ensure that there is always a certain number of warmed instances available to handle traffic spikes. Defaults to 0 if not specified.
      • 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 Mixed Instances Policy 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 this provider. Conflicts with `name_prefix`.
      • 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.
      • 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. Conflicts with `tags`. See Tag below for more details.
      • tagsCollection

        @Deprecated
        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.util.Map<java.lang.String,​java.lang.String>>>> tagsCollection()
        Deprecated.
        Use tag instead
        Returns:
        Set of maps containing resource tags. Conflicts with `tag`. See Tags below for more details.
      • targetGroupArns

        public java.util.Optional<com.pulumi.core.Output<java.util.List<java.lang.String>>> targetGroupArns()
        Returns:
        Set of `aws.alb.TargetGroup` ARNs, for use with Application or Network Load Balancing.
      • 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.
      • 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 `availability_zones`.
      • 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 this 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 the provider 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 `min_elb_capacity` 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