SuspendProcess

Suspend/Resume processes to a specified scaling group. For information about scaling group suspend process, see SuspendProcesses.

NOTE: Available in v1.166.0+

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.alb.ServerGroup;
import com.pulumi.alicloud.alb.ServerGroupArgs;
import com.pulumi.alicloud.ess.ScalingGroup;
import com.pulumi.alicloud.ess.ScalingGroupArgs;
import com.pulumi.alicloud.ess.ScalingConfiguration;
import com.pulumi.alicloud.ess.ScalingConfigurationArgs;
import com.pulumi.alicloud.alb.inputs.ServerGroupHealthCheckConfigArgs;
import com.pulumi.alicloud.alb.inputs.ServerGroupStickySessionConfigArgs;
import com.pulumi.alicloud.ess.SuspendProcess;
import com.pulumi.alicloud.ess.SuspendProcessArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var name = config.get("name").orElse("testAccEssSuspendProcess");
final var defaultZones = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableDiskCategory("cloud_efficiency")
.availableResourceCreation("VSwitch")
.build());
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.cidrBlock("172.16.0.0/16")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vpcId(defaultNetwork.id())
.cidrBlock("172.16.0.0/24")
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.build());
var defaultServerGroup = new ServerGroup("defaultServerGroup", ServerGroupArgs.builder()
.loadBalancerId(alicloud_slb_load_balancer.default().id())
.name("test")
.build());
var defaultScalingGroup = new ScalingGroup("defaultScalingGroup", ScalingGroupArgs.builder()
.minSize("2")
.maxSize("2")
.scalingGroupName(name)
.vswitchIds(defaultSwitch.id())
.build());
var defaultScalingConfiguration = new ScalingConfiguration("defaultScalingConfiguration", ScalingConfigurationArgs.builder()
.scalingGroupId(defaultScalingGroup.id())
.imageId(data.alicloud_images().default().images()[0].id())
.instanceType(data.alicloud_instance_types().default().instance_types()[0].id())
.securityGroupId(alicloud_security_group.default().id())
.forceDelete(true)
.active(true)
.enable(true)
.build());
var defaultAlb_serverGroupServerGroup = new ServerGroup("defaultAlb/serverGroupServerGroup", ServerGroupArgs.builder()
.serverGroupName(name)
.vpcId(defaultNetwork.id())
.healthCheckConfig(ServerGroupHealthCheckConfigArgs.builder()
.healthCheckEnabled("false")
.build())
.stickySessionConfig(ServerGroupStickySessionConfigArgs.builder()
.stickySessionEnabled(true)
.cookie("tf-testAcc")
.stickySessionType("Server")
.build())
.build());
var defaultSuspendProcess = new SuspendProcess("defaultSuspendProcess", SuspendProcessArgs.builder()
.scalingGroupId(defaultScalingGroup.id())
.process("ScaleIn")
.build(), CustomResourceOptions.builder()
.dependsOn("alicloud_ess_scaling_configuration.default")
.build());
}
}

Import

Timeouts The timeouts block allows you to specify timeouts for certain actions* create - (Defaults to 1 mins) Used when create the process. * delete - (Defaults to 1 mins) Used when delete the process.

Properties

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val process: Output<String>

Activity type N that you want to suspend. Valid values are: SCALE_OUT,SCALE_IN,HealthCheck,AlarmNotification and ScheduledAction.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val scalingGroupId: Output<String>

ID of the scaling group.

Link copied to clipboard
val urn: Output<String>