Volcengine v0.0.38 published on Friday, Oct 31, 2025 by Volcengine
Volcengine v0.0.38 published on Friday, Oct 31, 2025 by Volcengine
Use this data source to query detailed information of scaling instances
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as volcengine from "@pulumi/volcengine";
import * as volcengine from "@volcengine/pulumi";
const fooZones = volcengine.ecs.getZones({});
const fooVpc = new volcengine.vpc.Vpc("fooVpc", {
vpcName: "acc-test-vpc",
cidrBlock: "172.16.0.0/16",
});
const fooSubnet = new volcengine.vpc.Subnet("fooSubnet", {
subnetName: "acc-test-subnet",
cidrBlock: "172.16.0.0/24",
zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id),
vpcId: fooVpc.id,
});
const fooSecurityGroup = new volcengine.vpc.SecurityGroup("fooSecurityGroup", {
securityGroupName: "acc-test-security-group",
vpcId: fooVpc.id,
});
const fooImages = volcengine.ecs.getImages({
osType: "Linux",
visibility: "public",
instanceTypeId: "ecs.g1.large",
});
const fooKeyPair = new volcengine.ecs.KeyPair("fooKeyPair", {
description: "acc-test-2",
keyPairName: "acc-test-key-pair-name",
});
const fooLaunchTemplate = new volcengine.ecs.LaunchTemplate("fooLaunchTemplate", {
description: "acc-test-desc",
eipBandwidth: 200,
eipBillingType: "PostPaidByBandwidth",
eipIsp: "BGP",
hostName: "acc-hostname",
imageId: fooImages.then(fooImages => fooImages.images?.[0]?.imageId),
instanceChargeType: "PostPaid",
instanceName: "acc-instance-name",
instanceTypeId: "ecs.g1.large",
keyPairName: fooKeyPair.keyPairName,
launchTemplateName: "acc-test-template",
networkInterfaces: [{
subnetId: fooSubnet.id,
securityGroupIds: [fooSecurityGroup.id],
}],
volumes: [{
volumeType: "ESSD_PL0",
size: 50,
deleteWithInstance: true,
}],
});
const fooScalingGroup = new volcengine.autoscaling.ScalingGroup("fooScalingGroup", {
scalingGroupName: "acc-test-scaling-group",
subnetIds: [fooSubnet.id],
multiAzPolicy: "BALANCE",
desireInstanceNumber: -1,
minInstanceNumber: 0,
maxInstanceNumber: 10,
instanceTerminatePolicy: "OldestInstance",
defaultCooldown: 10,
launchTemplateId: fooLaunchTemplate.id,
launchTemplateVersion: "Default",
});
const fooScalingGroupEnabler = new volcengine.autoscaling.ScalingGroupEnabler("fooScalingGroupEnabler", {scalingGroupId: fooScalingGroup.id});
const fooInstance: volcengine.ecs.Instance[] = [];
for (const range = {value: 0}; range.value < 3; range.value++) {
fooInstance.push(new volcengine.ecs.Instance(`fooInstance-${range.value}`, {
instanceName: `acc-test-ecs-${range.value}`,
description: "acc-test",
hostName: "tf-acc-test",
imageId: fooImages.then(fooImages => fooImages.images?.[0]?.imageId),
instanceType: "ecs.g1.large",
password: "93f0cb0614Aab12",
instanceChargeType: "PostPaid",
systemVolumeType: "ESSD_PL0",
systemVolumeSize: 40,
subnetId: fooSubnet.id,
securityGroupIds: [fooSecurityGroup.id],
}));
}
const fooScalingInstanceAttachment: volcengine.autoscaling.ScalingInstanceAttachment[] = [];
fooInstance.length.apply(rangeBody => {
for (const range = {value: 0}; range.value < rangeBody; range.value++) {
fooScalingInstanceAttachment.push(new volcengine.autoscaling.ScalingInstanceAttachment(`fooScalingInstanceAttachment-${range.value}`, {
instanceId: fooInstance[range.value].id,
scalingGroupId: fooScalingGroup.id,
entrusted: true,
}, {
dependsOn: [fooScalingGroupEnabler],
}));
}
});
const fooScalingInstances = volcengine.autoscaling.getScalingInstancesOutput({
scalingGroupId: fooScalingGroup.id,
ids: fooScalingInstanceAttachment.map(__item => __item.instanceId),
});
import pulumi
import pulumi_volcengine as volcengine
foo_zones = volcengine.ecs.get_zones()
foo_vpc = volcengine.vpc.Vpc("fooVpc",
vpc_name="acc-test-vpc",
cidr_block="172.16.0.0/16")
foo_subnet = volcengine.vpc.Subnet("fooSubnet",
subnet_name="acc-test-subnet",
cidr_block="172.16.0.0/24",
zone_id=foo_zones.zones[0].id,
vpc_id=foo_vpc.id)
foo_security_group = volcengine.vpc.SecurityGroup("fooSecurityGroup",
security_group_name="acc-test-security-group",
vpc_id=foo_vpc.id)
foo_images = volcengine.ecs.get_images(os_type="Linux",
visibility="public",
instance_type_id="ecs.g1.large")
foo_key_pair = volcengine.ecs.KeyPair("fooKeyPair",
description="acc-test-2",
key_pair_name="acc-test-key-pair-name")
foo_launch_template = volcengine.ecs.LaunchTemplate("fooLaunchTemplate",
description="acc-test-desc",
eip_bandwidth=200,
eip_billing_type="PostPaidByBandwidth",
eip_isp="BGP",
host_name="acc-hostname",
image_id=foo_images.images[0].image_id,
instance_charge_type="PostPaid",
instance_name="acc-instance-name",
instance_type_id="ecs.g1.large",
key_pair_name=foo_key_pair.key_pair_name,
launch_template_name="acc-test-template",
network_interfaces=[volcengine.ecs.LaunchTemplateNetworkInterfaceArgs(
subnet_id=foo_subnet.id,
security_group_ids=[foo_security_group.id],
)],
volumes=[volcengine.ecs.LaunchTemplateVolumeArgs(
volume_type="ESSD_PL0",
size=50,
delete_with_instance=True,
)])
foo_scaling_group = volcengine.autoscaling.ScalingGroup("fooScalingGroup",
scaling_group_name="acc-test-scaling-group",
subnet_ids=[foo_subnet.id],
multi_az_policy="BALANCE",
desire_instance_number=-1,
min_instance_number=0,
max_instance_number=10,
instance_terminate_policy="OldestInstance",
default_cooldown=10,
launch_template_id=foo_launch_template.id,
launch_template_version="Default")
foo_scaling_group_enabler = volcengine.autoscaling.ScalingGroupEnabler("fooScalingGroupEnabler", scaling_group_id=foo_scaling_group.id)
foo_instance = []
for range in [{"value": i} for i in range(0, 3)]:
foo_instance.append(volcengine.ecs.Instance(f"fooInstance-{range['value']}",
instance_name=f"acc-test-ecs-{range['value']}",
description="acc-test",
host_name="tf-acc-test",
image_id=foo_images.images[0].image_id,
instance_type="ecs.g1.large",
password="93f0cb0614Aab12",
instance_charge_type="PostPaid",
system_volume_type="ESSD_PL0",
system_volume_size=40,
subnet_id=foo_subnet.id,
security_group_ids=[foo_security_group.id]))
foo_scaling_instance_attachment = []
def create_foo_scaling_instance_attachment(range_body):
for range in [{"value": i} for i in range(0, range_body)]:
foo_scaling_instance_attachment.append(volcengine.autoscaling.ScalingInstanceAttachment(f"fooScalingInstanceAttachment-{range['value']}",
instance_id=foo_instance[range["value"]].id,
scaling_group_id=foo_scaling_group.id,
entrusted=True,
opts=pulumi.ResourceOptions(depends_on=[foo_scaling_group_enabler])))
(len(foo_instance)).apply(create_foo_scaling_instance_attachment)
foo_scaling_instances = volcengine.autoscaling.get_scaling_instances_output(scaling_group_id=foo_scaling_group.id,
ids=[__item.instance_id for __item in foo_scaling_instance_attachment])
package main
import (
"fmt"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/autoscaling"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/ecs"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/vpc"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
fooZones, err := ecs.GetZones(ctx, nil, nil);
if err != nil {
return err
}
fooVpc, err := vpc.NewVpc(ctx, "fooVpc", &vpc.VpcArgs{
VpcName: pulumi.String("acc-test-vpc"),
CidrBlock: pulumi.String("172.16.0.0/16"),
})
if err != nil {
return err
}
fooSubnet, err := vpc.NewSubnet(ctx, "fooSubnet", &vpc.SubnetArgs{
SubnetName: pulumi.String("acc-test-subnet"),
CidrBlock: pulumi.String("172.16.0.0/24"),
ZoneId: pulumi.String(fooZones.Zones[0].Id),
VpcId: fooVpc.ID(),
})
if err != nil {
return err
}
fooSecurityGroup, err := vpc.NewSecurityGroup(ctx, "fooSecurityGroup", &vpc.SecurityGroupArgs{
SecurityGroupName: pulumi.String("acc-test-security-group"),
VpcId: fooVpc.ID(),
})
if err != nil {
return err
}
fooImages, err := ecs.GetImages(ctx, &ecs.GetImagesArgs{
OsType: pulumi.StringRef("Linux"),
Visibility: pulumi.StringRef("public"),
InstanceTypeId: pulumi.StringRef("ecs.g1.large"),
}, nil);
if err != nil {
return err
}
fooKeyPair, err := ecs.NewKeyPair(ctx, "fooKeyPair", &ecs.KeyPairArgs{
Description: pulumi.String("acc-test-2"),
KeyPairName: pulumi.String("acc-test-key-pair-name"),
})
if err != nil {
return err
}
fooLaunchTemplate, err := ecs.NewLaunchTemplate(ctx, "fooLaunchTemplate", &ecs.LaunchTemplateArgs{
Description: pulumi.String("acc-test-desc"),
EipBandwidth: pulumi.Int(200),
EipBillingType: pulumi.String("PostPaidByBandwidth"),
EipIsp: pulumi.String("BGP"),
HostName: pulumi.String("acc-hostname"),
ImageId: pulumi.String(fooImages.Images[0].ImageId),
InstanceChargeType: pulumi.String("PostPaid"),
InstanceName: pulumi.String("acc-instance-name"),
InstanceTypeId: pulumi.String("ecs.g1.large"),
KeyPairName: fooKeyPair.KeyPairName,
LaunchTemplateName: pulumi.String("acc-test-template"),
NetworkInterfaces: ecs.LaunchTemplateNetworkInterfaceArray{
&ecs.LaunchTemplateNetworkInterfaceArgs{
SubnetId: fooSubnet.ID(),
SecurityGroupIds: pulumi.StringArray{
fooSecurityGroup.ID(),
},
},
},
Volumes: ecs.LaunchTemplateVolumeArray{
&ecs.LaunchTemplateVolumeArgs{
VolumeType: pulumi.String("ESSD_PL0"),
Size: pulumi.Int(50),
DeleteWithInstance: pulumi.Bool(true),
},
},
})
if err != nil {
return err
}
fooScalingGroup, err := autoscaling.NewScalingGroup(ctx, "fooScalingGroup", &autoscaling.ScalingGroupArgs{
ScalingGroupName: pulumi.String("acc-test-scaling-group"),
SubnetIds: pulumi.StringArray{
fooSubnet.ID(),
},
MultiAzPolicy: pulumi.String("BALANCE"),
DesireInstanceNumber: -1,
MinInstanceNumber: pulumi.Int(0),
MaxInstanceNumber: pulumi.Int(10),
InstanceTerminatePolicy: pulumi.String("OldestInstance"),
DefaultCooldown: pulumi.Int(10),
LaunchTemplateId: fooLaunchTemplate.ID(),
LaunchTemplateVersion: pulumi.String("Default"),
})
if err != nil {
return err
}
fooScalingGroupEnabler, err := autoscaling.NewScalingGroupEnabler(ctx, "fooScalingGroupEnabler", &autoscaling.ScalingGroupEnablerArgs{
ScalingGroupId: fooScalingGroup.ID(),
})
if err != nil {
return err
}
var fooInstance []*ecs.Instance
for index := 0; index < 3; index++ {
key0 := index
val0 := index
__res, err := ecs.NewInstance(ctx, fmt.Sprintf("fooInstance-%v", key0), &ecs.InstanceArgs{
InstanceName: pulumi.String(fmt.Sprintf("acc-test-ecs-%v", val0)),
Description: pulumi.String("acc-test"),
HostName: pulumi.String("tf-acc-test"),
ImageId: pulumi.String(fooImages.Images[0].ImageId),
InstanceType: pulumi.String("ecs.g1.large"),
Password: pulumi.String("93f0cb0614Aab12"),
InstanceChargeType: pulumi.String("PostPaid"),
SystemVolumeType: pulumi.String("ESSD_PL0"),
SystemVolumeSize: pulumi.Int(40),
SubnetId: fooSubnet.ID(),
SecurityGroupIds: pulumi.StringArray{
fooSecurityGroup.ID(),
},
})
if err != nil {
return err
}
fooInstance = append(fooInstance, __res)
}
var fooScalingInstanceAttachment []*autoscaling.ScalingInstanceAttachment
for index := 0; index < len(fooInstance); index++ {
key0 := index
val0 := index
__res, err := autoscaling.NewScalingInstanceAttachment(ctx, fmt.Sprintf("fooScalingInstanceAttachment-%v", key0), &autoscaling.ScalingInstanceAttachmentArgs{
InstanceId: fooInstance[val0].ID(),
ScalingGroupId: fooScalingGroup.ID(),
Entrusted: pulumi.Bool(true),
}, pulumi.DependsOn([]pulumi.Resource{
fooScalingGroupEnabler,
}))
if err != nil {
return err
}
fooScalingInstanceAttachment = append(fooScalingInstanceAttachment, __res)
}
_ = autoscaling.GetScalingInstancesOutput(ctx, autoscaling.GetScalingInstancesOutputArgs{
ScalingGroupId: fooScalingGroup.ID(),
Ids: %!v(PANIC=Format method: fatal: A failure has occurred: unlowered splat expression @ #-functions-volcengine:autoscaling-getScalingInstances:getScalingInstances.pp:93,22-64),
}, nil);
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Volcengine = Pulumi.Volcengine;
return await Deployment.RunAsync(() =>
{
var fooZones = Volcengine.Ecs.GetZones.Invoke();
var fooVpc = new Volcengine.Vpc.Vpc("fooVpc", new()
{
VpcName = "acc-test-vpc",
CidrBlock = "172.16.0.0/16",
});
var fooSubnet = new Volcengine.Vpc.Subnet("fooSubnet", new()
{
SubnetName = "acc-test-subnet",
CidrBlock = "172.16.0.0/24",
ZoneId = fooZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
VpcId = fooVpc.Id,
});
var fooSecurityGroup = new Volcengine.Vpc.SecurityGroup("fooSecurityGroup", new()
{
SecurityGroupName = "acc-test-security-group",
VpcId = fooVpc.Id,
});
var fooImages = Volcengine.Ecs.GetImages.Invoke(new()
{
OsType = "Linux",
Visibility = "public",
InstanceTypeId = "ecs.g1.large",
});
var fooKeyPair = new Volcengine.Ecs.KeyPair("fooKeyPair", new()
{
Description = "acc-test-2",
KeyPairName = "acc-test-key-pair-name",
});
var fooLaunchTemplate = new Volcengine.Ecs.LaunchTemplate("fooLaunchTemplate", new()
{
Description = "acc-test-desc",
EipBandwidth = 200,
EipBillingType = "PostPaidByBandwidth",
EipIsp = "BGP",
HostName = "acc-hostname",
ImageId = fooImages.Apply(getImagesResult => getImagesResult.Images[0]?.ImageId),
InstanceChargeType = "PostPaid",
InstanceName = "acc-instance-name",
InstanceTypeId = "ecs.g1.large",
KeyPairName = fooKeyPair.KeyPairName,
LaunchTemplateName = "acc-test-template",
NetworkInterfaces = new[]
{
new Volcengine.Ecs.Inputs.LaunchTemplateNetworkInterfaceArgs
{
SubnetId = fooSubnet.Id,
SecurityGroupIds = new[]
{
fooSecurityGroup.Id,
},
},
},
Volumes = new[]
{
new Volcengine.Ecs.Inputs.LaunchTemplateVolumeArgs
{
VolumeType = "ESSD_PL0",
Size = 50,
DeleteWithInstance = true,
},
},
});
var fooScalingGroup = new Volcengine.Autoscaling.ScalingGroup("fooScalingGroup", new()
{
ScalingGroupName = "acc-test-scaling-group",
SubnetIds = new[]
{
fooSubnet.Id,
},
MultiAzPolicy = "BALANCE",
DesireInstanceNumber = -1,
MinInstanceNumber = 0,
MaxInstanceNumber = 10,
InstanceTerminatePolicy = "OldestInstance",
DefaultCooldown = 10,
LaunchTemplateId = fooLaunchTemplate.Id,
LaunchTemplateVersion = "Default",
});
var fooScalingGroupEnabler = new Volcengine.Autoscaling.ScalingGroupEnabler("fooScalingGroupEnabler", new()
{
ScalingGroupId = fooScalingGroup.Id,
});
var fooInstance = new List<Volcengine.Ecs.Instance>();
for (var rangeIndex = 0; rangeIndex < 3; rangeIndex++)
{
var range = new { Value = rangeIndex };
fooInstance.Add(new Volcengine.Ecs.Instance($"fooInstance-{range.Value}", new()
{
InstanceName = $"acc-test-ecs-{range.Value}",
Description = "acc-test",
HostName = "tf-acc-test",
ImageId = fooImages.Apply(getImagesResult => getImagesResult.Images[0]?.ImageId),
InstanceType = "ecs.g1.large",
Password = "93f0cb0614Aab12",
InstanceChargeType = "PostPaid",
SystemVolumeType = "ESSD_PL0",
SystemVolumeSize = 40,
SubnetId = fooSubnet.Id,
SecurityGroupIds = new[]
{
fooSecurityGroup.Id,
},
}));
}
var fooScalingInstanceAttachment = new List<Volcengine.Autoscaling.ScalingInstanceAttachment>();
for (var rangeIndex = 0; rangeIndex < fooInstance.Length; rangeIndex++)
{
var range = new { Value = rangeIndex };
fooScalingInstanceAttachment.Add(new Volcengine.Autoscaling.ScalingInstanceAttachment($"fooScalingInstanceAttachment-{range.Value}", new()
{
InstanceId = fooInstance[range.Value].Id,
ScalingGroupId = fooScalingGroup.Id,
Entrusted = true,
}, new CustomResourceOptions
{
DependsOn =
{
fooScalingGroupEnabler,
},
}));
}
var fooScalingInstances = Volcengine.Autoscaling.GetScalingInstances.Invoke(new()
{
ScalingGroupId = fooScalingGroup.Id,
Ids = fooScalingInstanceAttachment.Select(__item => __item.InstanceId).ToList(),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.volcengine.ecs.EcsFunctions;
import com.pulumi.volcengine.ecs.inputs.GetZonesArgs;
import com.pulumi.volcengine.vpc.Vpc;
import com.pulumi.volcengine.vpc.VpcArgs;
import com.pulumi.volcengine.vpc.Subnet;
import com.pulumi.volcengine.vpc.SubnetArgs;
import com.pulumi.volcengine.vpc.SecurityGroup;
import com.pulumi.volcengine.vpc.SecurityGroupArgs;
import com.pulumi.volcengine.ecs.inputs.GetImagesArgs;
import com.pulumi.volcengine.ecs.KeyPair;
import com.pulumi.volcengine.ecs.KeyPairArgs;
import com.pulumi.volcengine.ecs.LaunchTemplate;
import com.pulumi.volcengine.ecs.LaunchTemplateArgs;
import com.pulumi.volcengine.ecs.inputs.LaunchTemplateNetworkInterfaceArgs;
import com.pulumi.volcengine.ecs.inputs.LaunchTemplateVolumeArgs;
import com.pulumi.volcengine.autoscaling.ScalingGroup;
import com.pulumi.volcengine.autoscaling.ScalingGroupArgs;
import com.pulumi.volcengine.autoscaling.ScalingGroupEnabler;
import com.pulumi.volcengine.autoscaling.ScalingGroupEnablerArgs;
import com.pulumi.volcengine.ecs.Instance;
import com.pulumi.volcengine.ecs.InstanceArgs;
import com.pulumi.volcengine.autoscaling.ScalingInstanceAttachment;
import com.pulumi.volcengine.autoscaling.ScalingInstanceAttachmentArgs;
import com.pulumi.volcengine.autoscaling.AutoscalingFunctions;
import com.pulumi.volcengine.autoscaling.inputs.GetScalingInstancesArgs;
import com.pulumi.codegen.internal.KeyedValue;
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 fooZones = EcsFunctions.getZones();
var fooVpc = new Vpc("fooVpc", VpcArgs.builder()
.vpcName("acc-test-vpc")
.cidrBlock("172.16.0.0/16")
.build());
var fooSubnet = new Subnet("fooSubnet", SubnetArgs.builder()
.subnetName("acc-test-subnet")
.cidrBlock("172.16.0.0/24")
.zoneId(fooZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.vpcId(fooVpc.id())
.build());
var fooSecurityGroup = new SecurityGroup("fooSecurityGroup", SecurityGroupArgs.builder()
.securityGroupName("acc-test-security-group")
.vpcId(fooVpc.id())
.build());
final var fooImages = EcsFunctions.getImages(GetImagesArgs.builder()
.osType("Linux")
.visibility("public")
.instanceTypeId("ecs.g1.large")
.build());
var fooKeyPair = new KeyPair("fooKeyPair", KeyPairArgs.builder()
.description("acc-test-2")
.keyPairName("acc-test-key-pair-name")
.build());
var fooLaunchTemplate = new LaunchTemplate("fooLaunchTemplate", LaunchTemplateArgs.builder()
.description("acc-test-desc")
.eipBandwidth(200)
.eipBillingType("PostPaidByBandwidth")
.eipIsp("BGP")
.hostName("acc-hostname")
.imageId(fooImages.applyValue(getImagesResult -> getImagesResult.images()[0].imageId()))
.instanceChargeType("PostPaid")
.instanceName("acc-instance-name")
.instanceTypeId("ecs.g1.large")
.keyPairName(fooKeyPair.keyPairName())
.launchTemplateName("acc-test-template")
.networkInterfaces(LaunchTemplateNetworkInterfaceArgs.builder()
.subnetId(fooSubnet.id())
.securityGroupIds(fooSecurityGroup.id())
.build())
.volumes(LaunchTemplateVolumeArgs.builder()
.volumeType("ESSD_PL0")
.size(50)
.deleteWithInstance(true)
.build())
.build());
var fooScalingGroup = new ScalingGroup("fooScalingGroup", ScalingGroupArgs.builder()
.scalingGroupName("acc-test-scaling-group")
.subnetIds(fooSubnet.id())
.multiAzPolicy("BALANCE")
.desireInstanceNumber("TODO: GenUnaryOpExpression")
.minInstanceNumber(0)
.maxInstanceNumber(10)
.instanceTerminatePolicy("OldestInstance")
.defaultCooldown(10)
.launchTemplateId(fooLaunchTemplate.id())
.launchTemplateVersion("Default")
.build());
var fooScalingGroupEnabler = new ScalingGroupEnabler("fooScalingGroupEnabler", ScalingGroupEnablerArgs.builder()
.scalingGroupId(fooScalingGroup.id())
.build());
for (var i = 0; i < 3; i++) {
new Instance("fooInstance-" + i, InstanceArgs.builder()
.instanceName(String.format("acc-test-ecs-%s", range.value()))
.description("acc-test")
.hostName("tf-acc-test")
.imageId(fooImages.applyValue(getImagesResult -> getImagesResult.images()[0].imageId()))
.instanceType("ecs.g1.large")
.password("93f0cb0614Aab12")
.instanceChargeType("PostPaid")
.systemVolumeType("ESSD_PL0")
.systemVolumeSize(40)
.subnetId(fooSubnet.id())
.securityGroupIds(fooSecurityGroup.id())
.build());
}
for (var i = 0; i < fooInstance.length(); i++) {
new ScalingInstanceAttachment("fooScalingInstanceAttachment-" + i, ScalingInstanceAttachmentArgs.builder()
.instanceId(fooInstance[range.value()].id())
.scalingGroupId(fooScalingGroup.id())
.entrusted(true)
.build(), CustomResourceOptions.builder()
.dependsOn(fooScalingGroupEnabler)
.build());
}
final var fooScalingInstances = AutoscalingFunctions.getScalingInstances(GetScalingInstancesArgs.builder()
.scalingGroupId(fooScalingGroup.id())
.ids(fooScalingInstanceAttachment.stream().map(element -> element.instanceId()).collect(toList()))
.build());
}
}
Example coming soon!
Using getScalingInstances
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getScalingInstances(args: GetScalingInstancesArgs, opts?: InvokeOptions): Promise<GetScalingInstancesResult>
function getScalingInstancesOutput(args: GetScalingInstancesOutputArgs, opts?: InvokeOptions): Output<GetScalingInstancesResult>def get_scaling_instances(creation_type: Optional[str] = None,
ids: Optional[Sequence[str]] = None,
output_file: Optional[str] = None,
scaling_configuration_id: Optional[str] = None,
scaling_group_id: Optional[str] = None,
status: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetScalingInstancesResult
def get_scaling_instances_output(creation_type: Optional[pulumi.Input[str]] = None,
ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
output_file: Optional[pulumi.Input[str]] = None,
scaling_configuration_id: Optional[pulumi.Input[str]] = None,
scaling_group_id: Optional[pulumi.Input[str]] = None,
status: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetScalingInstancesResult]func GetScalingInstances(ctx *Context, args *GetScalingInstancesArgs, opts ...InvokeOption) (*GetScalingInstancesResult, error)
func GetScalingInstancesOutput(ctx *Context, args *GetScalingInstancesOutputArgs, opts ...InvokeOption) GetScalingInstancesResultOutput> Note: This function is named GetScalingInstances in the Go SDK.
public static class GetScalingInstances
{
public static Task<GetScalingInstancesResult> InvokeAsync(GetScalingInstancesArgs args, InvokeOptions? opts = null)
public static Output<GetScalingInstancesResult> Invoke(GetScalingInstancesInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetScalingInstancesResult> getScalingInstances(GetScalingInstancesArgs args, InvokeOptions options)
public static Output<GetScalingInstancesResult> getScalingInstances(GetScalingInstancesArgs args, InvokeOptions options)
fn::invoke:
function: volcengine:autoscaling/getScalingInstances:getScalingInstances
arguments:
# arguments dictionaryThe following arguments are supported:
- Scaling
Group stringId - The id of the scaling group.
- Creation
Type string - The creation type of the instances. Valid values: AutoCreated, Attached.
- Ids List<string>
- A list of instance ids.
- Output
File string - File name where to save data source results.
- Scaling
Configuration stringId - The id of the scaling configuration id.
- Status string
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- Scaling
Group stringId - The id of the scaling group.
- Creation
Type string - The creation type of the instances. Valid values: AutoCreated, Attached.
- Ids []string
- A list of instance ids.
- Output
File string - File name where to save data source results.
- Scaling
Configuration stringId - The id of the scaling configuration id.
- Status string
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- scaling
Group StringId - The id of the scaling group.
- creation
Type String - The creation type of the instances. Valid values: AutoCreated, Attached.
- ids List<String>
- A list of instance ids.
- output
File String - File name where to save data source results.
- scaling
Configuration StringId - The id of the scaling configuration id.
- status String
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- scaling
Group stringId - The id of the scaling group.
- creation
Type string - The creation type of the instances. Valid values: AutoCreated, Attached.
- ids string[]
- A list of instance ids.
- output
File string - File name where to save data source results.
- scaling
Configuration stringId - The id of the scaling configuration id.
- status string
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- scaling_
group_ strid - The id of the scaling group.
- creation_
type str - The creation type of the instances. Valid values: AutoCreated, Attached.
- ids Sequence[str]
- A list of instance ids.
- output_
file str - File name where to save data source results.
- scaling_
configuration_ strid - The id of the scaling configuration id.
- status str
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- scaling
Group StringId - The id of the scaling group.
- creation
Type String - The creation type of the instances. Valid values: AutoCreated, Attached.
- ids List<String>
- A list of instance ids.
- output
File String - File name where to save data source results.
- scaling
Configuration StringId - The id of the scaling configuration id.
- status String
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
getScalingInstances Result
The following output properties are available:
- Id string
- The provider-assigned unique ID for this managed resource.
- Scaling
Group stringId - The id of the scaling group.
- Scaling
Instances List<GetScaling Instances Scaling Instance> - The collection of scaling instances.
- Total
Count int - The total count of scaling instances query.
- Creation
Type string - The creation type of the instance. Valid values: AutoCreated, Attached.
- Ids List<string>
- Output
File string - Scaling
Configuration stringId - The id of the scaling configuration.
- Status string
- The status of instances.
- Id string
- The provider-assigned unique ID for this managed resource.
- Scaling
Group stringId - The id of the scaling group.
- Scaling
Instances []GetScaling Instances Scaling Instance - The collection of scaling instances.
- Total
Count int - The total count of scaling instances query.
- Creation
Type string - The creation type of the instance. Valid values: AutoCreated, Attached.
- Ids []string
- Output
File string - Scaling
Configuration stringId - The id of the scaling configuration.
- Status string
- The status of instances.
- id String
- The provider-assigned unique ID for this managed resource.
- scaling
Group StringId - The id of the scaling group.
- scaling
Instances List<GetScaling Instances Scaling Instance> - The collection of scaling instances.
- total
Count Integer - The total count of scaling instances query.
- creation
Type String - The creation type of the instance. Valid values: AutoCreated, Attached.
- ids List<String>
- output
File String - scaling
Configuration StringId - The id of the scaling configuration.
- status String
- The status of instances.
- id string
- The provider-assigned unique ID for this managed resource.
- scaling
Group stringId - The id of the scaling group.
- scaling
Instances GetScaling Instances Scaling Instance[] - The collection of scaling instances.
- total
Count number - The total count of scaling instances query.
- creation
Type string - The creation type of the instance. Valid values: AutoCreated, Attached.
- ids string[]
- output
File string - scaling
Configuration stringId - The id of the scaling configuration.
- status string
- The status of instances.
- id str
- The provider-assigned unique ID for this managed resource.
- scaling_
group_ strid - The id of the scaling group.
- scaling_
instances Sequence[GetScaling Instances Scaling Instance] - The collection of scaling instances.
- total_
count int - The total count of scaling instances query.
- creation_
type str - The creation type of the instance. Valid values: AutoCreated, Attached.
- ids Sequence[str]
- output_
file str - scaling_
configuration_ strid - The id of the scaling configuration.
- status str
- The status of instances.
- id String
- The provider-assigned unique ID for this managed resource.
- scaling
Group StringId - The id of the scaling group.
- scaling
Instances List<Property Map> - The collection of scaling instances.
- total
Count Number - The total count of scaling instances query.
- creation
Type String - The creation type of the instance. Valid values: AutoCreated, Attached.
- ids List<String>
- output
File String - scaling
Configuration StringId - The id of the scaling configuration.
- status String
- The status of instances.
Supporting Types
GetScalingInstancesScalingInstance
- Created
Time string - The time when the instance was added to the scaling group.
- Creation
Type string - The creation type of the instances. Valid values: AutoCreated, Attached.
- Entrusted bool
- Whether to host the instance to a scaling group.
- Id string
- The id of the scaling instance.
- Instance
Id string - The id of the scaling instance.
- Scaling
Configuration stringId - The id of the scaling configuration id.
- Scaling
Group stringId - The id of the scaling group.
- Scaling
Policy stringId - The id of the scaling policy.
- Status string
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- Created
Time string - The time when the instance was added to the scaling group.
- Creation
Type string - The creation type of the instances. Valid values: AutoCreated, Attached.
- Entrusted bool
- Whether to host the instance to a scaling group.
- Id string
- The id of the scaling instance.
- Instance
Id string - The id of the scaling instance.
- Scaling
Configuration stringId - The id of the scaling configuration id.
- Scaling
Group stringId - The id of the scaling group.
- Scaling
Policy stringId - The id of the scaling policy.
- Status string
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- created
Time String - The time when the instance was added to the scaling group.
- creation
Type String - The creation type of the instances. Valid values: AutoCreated, Attached.
- entrusted Boolean
- Whether to host the instance to a scaling group.
- id String
- The id of the scaling instance.
- instance
Id String - The id of the scaling instance.
- scaling
Configuration StringId - The id of the scaling configuration id.
- scaling
Group StringId - The id of the scaling group.
- scaling
Policy StringId - The id of the scaling policy.
- status String
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- created
Time string - The time when the instance was added to the scaling group.
- creation
Type string - The creation type of the instances. Valid values: AutoCreated, Attached.
- entrusted boolean
- Whether to host the instance to a scaling group.
- id string
- The id of the scaling instance.
- instance
Id string - The id of the scaling instance.
- scaling
Configuration stringId - The id of the scaling configuration id.
- scaling
Group stringId - The id of the scaling group.
- scaling
Policy stringId - The id of the scaling policy.
- status string
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- created_
time str - The time when the instance was added to the scaling group.
- creation_
type str - The creation type of the instances. Valid values: AutoCreated, Attached.
- entrusted bool
- Whether to host the instance to a scaling group.
- id str
- The id of the scaling instance.
- instance_
id str - The id of the scaling instance.
- scaling_
configuration_ strid - The id of the scaling configuration id.
- scaling_
group_ strid - The id of the scaling group.
- scaling_
policy_ strid - The id of the scaling policy.
- status str
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
- created
Time String - The time when the instance was added to the scaling group.
- creation
Type String - The creation type of the instances. Valid values: AutoCreated, Attached.
- entrusted Boolean
- Whether to host the instance to a scaling group.
- id String
- The id of the scaling instance.
- instance
Id String - The id of the scaling instance.
- scaling
Configuration StringId - The id of the scaling configuration id.
- scaling
Group StringId - The id of the scaling group.
- scaling
Policy StringId - The id of the scaling policy.
- status String
- The status of instances. Valid values: Init, Pending, Pending:Wait, InService, Error, Removing, Removing:Wait, Stopped, Protected.
Package Details
- Repository
- volcengine volcengine/pulumi-volcengine
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
volcengineTerraform Provider.
Volcengine v0.0.38 published on Friday, Oct 31, 2025 by Volcengine
