1. Packages
  2. Tencentcloud Provider
  3. API Docs
  4. AsLoadBalancer
tencentcloud 1.81.189 published on Wednesday, Apr 30, 2025 by tencentcloudstack

tencentcloud.AsLoadBalancer

Explore with Pulumi AI

tencentcloud logo
tencentcloud 1.81.189 published on Wednesday, Apr 30, 2025 by tencentcloudstack

    Provides a resource to create a as load balancer

    NOTE: This resource must exclusive in one auto scaling group, do not declare additional rule resources of this auto scaling group elsewhere.

    NOTE: If the auto_scaling_group_id field of this resource comes from the tencentcloud.AsScalingGroup resource, then the forward_balancer_ids field of the tencentcloud.AsScalingGroup resource cannot be set simultaneously with this resource, which may result in conflicts

    NOTE: forward_load_balancers List of application type load balancers, with a maximum of 100 bound application type load balancers for each scaling group.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as tencentcloud from "@pulumi/tencentcloud";
    
    const config = new pulumi.Config();
    const availabilityZone = config.get("availabilityZone") || "ap-guangzhou-6";
    // create vpc
    const vpc = new tencentcloud.Vpc("vpc", {cidrBlock: "10.0.0.0/16"});
    // create subnet
    const subnet = new tencentcloud.Subnet("subnet", {
        vpcId: vpc.vpcId,
        availabilityZone: availabilityZone,
        cidrBlock: "10.0.1.0/24",
        isMulticast: false,
    });
    const exampleAsScalingConfig = new tencentcloud.AsScalingConfig("exampleAsScalingConfig", {
        configurationName: "tf-example",
        imageId: "img-eb30mz89",
        instanceTypes: ["S6.MEDIUM4"],
        instanceNameSettings: {
            instanceName: "demo-ins-name",
        },
    });
    const exampleAsScalingGroup = new tencentcloud.AsScalingGroup("exampleAsScalingGroup", {
        scalingGroupName: "tf-example",
        configurationId: exampleAsScalingConfig.asScalingConfigId,
        maxSize: 1,
        minSize: 0,
        vpcId: vpc.vpcId,
        subnetIds: [subnet.subnetId],
    });
    const exampleClbInstance = new tencentcloud.ClbInstance("exampleClbInstance", {
        networkType: "INTERNAL",
        clbName: "tf-example",
        vpcId: vpc.vpcId,
        subnetId: subnet.subnetId,
        tags: {
            createBy: "Terraform",
        },
    });
    const exampleClbListener = new tencentcloud.ClbListener("exampleClbListener", {
        clbId: exampleClbInstance.clbInstanceId,
        listenerName: "tf-example",
        port: 80,
        protocol: "HTTP",
    });
    const exampleClbListenerRule = new tencentcloud.ClbListenerRule("exampleClbListenerRule", {
        listenerId: exampleClbListener.listenerId,
        clbId: exampleClbInstance.clbInstanceId,
        domain: "foo.net",
        url: "/bar",
    });
    const exampleAsLoadBalancer = new tencentcloud.AsLoadBalancer("exampleAsLoadBalancer", {
        autoScalingGroupId: exampleAsScalingGroup.asScalingGroupId,
        forwardLoadBalancers: [{
            loadBalancerId: exampleClbInstance.clbInstanceId,
            listenerId: exampleClbListener.listenerId,
            locationId: exampleClbListenerRule.ruleId,
            targetAttributes: [{
                port: 8080,
                weight: 20,
            }],
        }],
    });
    
    import pulumi
    import pulumi_tencentcloud as tencentcloud
    
    config = pulumi.Config()
    availability_zone = config.get("availabilityZone")
    if availability_zone is None:
        availability_zone = "ap-guangzhou-6"
    # create vpc
    vpc = tencentcloud.Vpc("vpc", cidr_block="10.0.0.0/16")
    # create subnet
    subnet = tencentcloud.Subnet("subnet",
        vpc_id=vpc.vpc_id,
        availability_zone=availability_zone,
        cidr_block="10.0.1.0/24",
        is_multicast=False)
    example_as_scaling_config = tencentcloud.AsScalingConfig("exampleAsScalingConfig",
        configuration_name="tf-example",
        image_id="img-eb30mz89",
        instance_types=["S6.MEDIUM4"],
        instance_name_settings={
            "instance_name": "demo-ins-name",
        })
    example_as_scaling_group = tencentcloud.AsScalingGroup("exampleAsScalingGroup",
        scaling_group_name="tf-example",
        configuration_id=example_as_scaling_config.as_scaling_config_id,
        max_size=1,
        min_size=0,
        vpc_id=vpc.vpc_id,
        subnet_ids=[subnet.subnet_id])
    example_clb_instance = tencentcloud.ClbInstance("exampleClbInstance",
        network_type="INTERNAL",
        clb_name="tf-example",
        vpc_id=vpc.vpc_id,
        subnet_id=subnet.subnet_id,
        tags={
            "createBy": "Terraform",
        })
    example_clb_listener = tencentcloud.ClbListener("exampleClbListener",
        clb_id=example_clb_instance.clb_instance_id,
        listener_name="tf-example",
        port=80,
        protocol="HTTP")
    example_clb_listener_rule = tencentcloud.ClbListenerRule("exampleClbListenerRule",
        listener_id=example_clb_listener.listener_id,
        clb_id=example_clb_instance.clb_instance_id,
        domain="foo.net",
        url="/bar")
    example_as_load_balancer = tencentcloud.AsLoadBalancer("exampleAsLoadBalancer",
        auto_scaling_group_id=example_as_scaling_group.as_scaling_group_id,
        forward_load_balancers=[{
            "load_balancer_id": example_clb_instance.clb_instance_id,
            "listener_id": example_clb_listener.listener_id,
            "location_id": example_clb_listener_rule.rule_id,
            "target_attributes": [{
                "port": 8080,
                "weight": 20,
            }],
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/tencentcloud/tencentcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		availabilityZone := "ap-guangzhou-6"
    		if param := cfg.Get("availabilityZone"); param != "" {
    			availabilityZone = param
    		}
    		// create vpc
    		vpc, err := tencentcloud.NewVpc(ctx, "vpc", &tencentcloud.VpcArgs{
    			CidrBlock: pulumi.String("10.0.0.0/16"),
    		})
    		if err != nil {
    			return err
    		}
    		// create subnet
    		subnet, err := tencentcloud.NewSubnet(ctx, "subnet", &tencentcloud.SubnetArgs{
    			VpcId:            vpc.VpcId,
    			AvailabilityZone: pulumi.String(availabilityZone),
    			CidrBlock:        pulumi.String("10.0.1.0/24"),
    			IsMulticast:      pulumi.Bool(false),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAsScalingConfig, err := tencentcloud.NewAsScalingConfig(ctx, "exampleAsScalingConfig", &tencentcloud.AsScalingConfigArgs{
    			ConfigurationName: pulumi.String("tf-example"),
    			ImageId:           pulumi.String("img-eb30mz89"),
    			InstanceTypes: pulumi.StringArray{
    				pulumi.String("S6.MEDIUM4"),
    			},
    			InstanceNameSettings: &tencentcloud.AsScalingConfigInstanceNameSettingsArgs{
    				InstanceName: pulumi.String("demo-ins-name"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleAsScalingGroup, err := tencentcloud.NewAsScalingGroup(ctx, "exampleAsScalingGroup", &tencentcloud.AsScalingGroupArgs{
    			ScalingGroupName: pulumi.String("tf-example"),
    			ConfigurationId:  exampleAsScalingConfig.AsScalingConfigId,
    			MaxSize:          pulumi.Float64(1),
    			MinSize:          pulumi.Float64(0),
    			VpcId:            vpc.VpcId,
    			SubnetIds: pulumi.StringArray{
    				subnet.SubnetId,
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleClbInstance, err := tencentcloud.NewClbInstance(ctx, "exampleClbInstance", &tencentcloud.ClbInstanceArgs{
    			NetworkType: pulumi.String("INTERNAL"),
    			ClbName:     pulumi.String("tf-example"),
    			VpcId:       vpc.VpcId,
    			SubnetId:    subnet.SubnetId,
    			Tags: pulumi.StringMap{
    				"createBy": pulumi.String("Terraform"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		exampleClbListener, err := tencentcloud.NewClbListener(ctx, "exampleClbListener", &tencentcloud.ClbListenerArgs{
    			ClbId:        exampleClbInstance.ClbInstanceId,
    			ListenerName: pulumi.String("tf-example"),
    			Port:         pulumi.Float64(80),
    			Protocol:     pulumi.String("HTTP"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleClbListenerRule, err := tencentcloud.NewClbListenerRule(ctx, "exampleClbListenerRule", &tencentcloud.ClbListenerRuleArgs{
    			ListenerId: exampleClbListener.ListenerId,
    			ClbId:      exampleClbInstance.ClbInstanceId,
    			Domain:     pulumi.String("foo.net"),
    			Url:        pulumi.String("/bar"),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = tencentcloud.NewAsLoadBalancer(ctx, "exampleAsLoadBalancer", &tencentcloud.AsLoadBalancerArgs{
    			AutoScalingGroupId: exampleAsScalingGroup.AsScalingGroupId,
    			ForwardLoadBalancers: tencentcloud.AsLoadBalancerForwardLoadBalancerArray{
    				&tencentcloud.AsLoadBalancerForwardLoadBalancerArgs{
    					LoadBalancerId: exampleClbInstance.ClbInstanceId,
    					ListenerId:     exampleClbListener.ListenerId,
    					LocationId:     exampleClbListenerRule.RuleId,
    					TargetAttributes: tencentcloud.AsLoadBalancerForwardLoadBalancerTargetAttributeArray{
    						&tencentcloud.AsLoadBalancerForwardLoadBalancerTargetAttributeArgs{
    							Port:   pulumi.Float64(8080),
    							Weight: pulumi.Float64(20),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Tencentcloud = Pulumi.Tencentcloud;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var availabilityZone = config.Get("availabilityZone") ?? "ap-guangzhou-6";
        // create vpc
        var vpc = new Tencentcloud.Vpc("vpc", new()
        {
            CidrBlock = "10.0.0.0/16",
        });
    
        // create subnet
        var subnet = new Tencentcloud.Subnet("subnet", new()
        {
            VpcId = vpc.VpcId,
            AvailabilityZone = availabilityZone,
            CidrBlock = "10.0.1.0/24",
            IsMulticast = false,
        });
    
        var exampleAsScalingConfig = new Tencentcloud.AsScalingConfig("exampleAsScalingConfig", new()
        {
            ConfigurationName = "tf-example",
            ImageId = "img-eb30mz89",
            InstanceTypes = new[]
            {
                "S6.MEDIUM4",
            },
            InstanceNameSettings = new Tencentcloud.Inputs.AsScalingConfigInstanceNameSettingsArgs
            {
                InstanceName = "demo-ins-name",
            },
        });
    
        var exampleAsScalingGroup = new Tencentcloud.AsScalingGroup("exampleAsScalingGroup", new()
        {
            ScalingGroupName = "tf-example",
            ConfigurationId = exampleAsScalingConfig.AsScalingConfigId,
            MaxSize = 1,
            MinSize = 0,
            VpcId = vpc.VpcId,
            SubnetIds = new[]
            {
                subnet.SubnetId,
            },
        });
    
        var exampleClbInstance = new Tencentcloud.ClbInstance("exampleClbInstance", new()
        {
            NetworkType = "INTERNAL",
            ClbName = "tf-example",
            VpcId = vpc.VpcId,
            SubnetId = subnet.SubnetId,
            Tags = 
            {
                { "createBy", "Terraform" },
            },
        });
    
        var exampleClbListener = new Tencentcloud.ClbListener("exampleClbListener", new()
        {
            ClbId = exampleClbInstance.ClbInstanceId,
            ListenerName = "tf-example",
            Port = 80,
            Protocol = "HTTP",
        });
    
        var exampleClbListenerRule = new Tencentcloud.ClbListenerRule("exampleClbListenerRule", new()
        {
            ListenerId = exampleClbListener.ListenerId,
            ClbId = exampleClbInstance.ClbInstanceId,
            Domain = "foo.net",
            Url = "/bar",
        });
    
        var exampleAsLoadBalancer = new Tencentcloud.AsLoadBalancer("exampleAsLoadBalancer", new()
        {
            AutoScalingGroupId = exampleAsScalingGroup.AsScalingGroupId,
            ForwardLoadBalancers = new[]
            {
                new Tencentcloud.Inputs.AsLoadBalancerForwardLoadBalancerArgs
                {
                    LoadBalancerId = exampleClbInstance.ClbInstanceId,
                    ListenerId = exampleClbListener.ListenerId,
                    LocationId = exampleClbListenerRule.RuleId,
                    TargetAttributes = new[]
                    {
                        new Tencentcloud.Inputs.AsLoadBalancerForwardLoadBalancerTargetAttributeArgs
                        {
                            Port = 8080,
                            Weight = 20,
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.tencentcloud.Vpc;
    import com.pulumi.tencentcloud.VpcArgs;
    import com.pulumi.tencentcloud.Subnet;
    import com.pulumi.tencentcloud.SubnetArgs;
    import com.pulumi.tencentcloud.AsScalingConfig;
    import com.pulumi.tencentcloud.AsScalingConfigArgs;
    import com.pulumi.tencentcloud.inputs.AsScalingConfigInstanceNameSettingsArgs;
    import com.pulumi.tencentcloud.AsScalingGroup;
    import com.pulumi.tencentcloud.AsScalingGroupArgs;
    import com.pulumi.tencentcloud.ClbInstance;
    import com.pulumi.tencentcloud.ClbInstanceArgs;
    import com.pulumi.tencentcloud.ClbListener;
    import com.pulumi.tencentcloud.ClbListenerArgs;
    import com.pulumi.tencentcloud.ClbListenerRule;
    import com.pulumi.tencentcloud.ClbListenerRuleArgs;
    import com.pulumi.tencentcloud.AsLoadBalancer;
    import com.pulumi.tencentcloud.AsLoadBalancerArgs;
    import com.pulumi.tencentcloud.inputs.AsLoadBalancerForwardLoadBalancerArgs;
    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 availabilityZone = config.get("availabilityZone").orElse("ap-guangzhou-6");
            // create vpc
            var vpc = new Vpc("vpc", VpcArgs.builder()
                .cidrBlock("10.0.0.0/16")
                .build());
    
            // create subnet
            var subnet = new Subnet("subnet", SubnetArgs.builder()
                .vpcId(vpc.vpcId())
                .availabilityZone(availabilityZone)
                .cidrBlock("10.0.1.0/24")
                .isMulticast(false)
                .build());
    
            var exampleAsScalingConfig = new AsScalingConfig("exampleAsScalingConfig", AsScalingConfigArgs.builder()
                .configurationName("tf-example")
                .imageId("img-eb30mz89")
                .instanceTypes("S6.MEDIUM4")
                .instanceNameSettings(AsScalingConfigInstanceNameSettingsArgs.builder()
                    .instanceName("demo-ins-name")
                    .build())
                .build());
    
            var exampleAsScalingGroup = new AsScalingGroup("exampleAsScalingGroup", AsScalingGroupArgs.builder()
                .scalingGroupName("tf-example")
                .configurationId(exampleAsScalingConfig.asScalingConfigId())
                .maxSize(1)
                .minSize(0)
                .vpcId(vpc.vpcId())
                .subnetIds(subnet.subnetId())
                .build());
    
            var exampleClbInstance = new ClbInstance("exampleClbInstance", ClbInstanceArgs.builder()
                .networkType("INTERNAL")
                .clbName("tf-example")
                .vpcId(vpc.vpcId())
                .subnetId(subnet.subnetId())
                .tags(Map.of("createBy", "Terraform"))
                .build());
    
            var exampleClbListener = new ClbListener("exampleClbListener", ClbListenerArgs.builder()
                .clbId(exampleClbInstance.clbInstanceId())
                .listenerName("tf-example")
                .port(80)
                .protocol("HTTP")
                .build());
    
            var exampleClbListenerRule = new ClbListenerRule("exampleClbListenerRule", ClbListenerRuleArgs.builder()
                .listenerId(exampleClbListener.listenerId())
                .clbId(exampleClbInstance.clbInstanceId())
                .domain("foo.net")
                .url("/bar")
                .build());
    
            var exampleAsLoadBalancer = new AsLoadBalancer("exampleAsLoadBalancer", AsLoadBalancerArgs.builder()
                .autoScalingGroupId(exampleAsScalingGroup.asScalingGroupId())
                .forwardLoadBalancers(AsLoadBalancerForwardLoadBalancerArgs.builder()
                    .loadBalancerId(exampleClbInstance.clbInstanceId())
                    .listenerId(exampleClbListener.listenerId())
                    .locationId(exampleClbListenerRule.ruleId())
                    .targetAttributes(AsLoadBalancerForwardLoadBalancerTargetAttributeArgs.builder()
                        .port(8080)
                        .weight(20)
                        .build())
                    .build())
                .build());
    
        }
    }
    
    configuration:
      availabilityZone:
        type: string
        default: ap-guangzhou-6
    resources:
      # create vpc
      vpc:
        type: tencentcloud:Vpc
        properties:
          cidrBlock: 10.0.0.0/16
      # create subnet
      subnet:
        type: tencentcloud:Subnet
        properties:
          vpcId: ${vpc.vpcId}
          availabilityZone: ${availabilityZone}
          cidrBlock: 10.0.1.0/24
          isMulticast: false
      exampleAsScalingConfig:
        type: tencentcloud:AsScalingConfig
        properties:
          configurationName: tf-example
          imageId: img-eb30mz89
          instanceTypes:
            - S6.MEDIUM4
          instanceNameSettings:
            instanceName: demo-ins-name
      exampleAsScalingGroup:
        type: tencentcloud:AsScalingGroup
        properties:
          scalingGroupName: tf-example
          configurationId: ${exampleAsScalingConfig.asScalingConfigId}
          maxSize: 1
          minSize: 0
          vpcId: ${vpc.vpcId}
          subnetIds:
            - ${subnet.subnetId}
      exampleClbInstance:
        type: tencentcloud:ClbInstance
        properties:
          networkType: INTERNAL
          clbName: tf-example
          vpcId: ${vpc.vpcId}
          subnetId: ${subnet.subnetId}
          tags:
            createBy: Terraform
      exampleClbListener:
        type: tencentcloud:ClbListener
        properties:
          clbId: ${exampleClbInstance.clbInstanceId}
          listenerName: tf-example
          port: 80
          protocol: HTTP
      exampleClbListenerRule:
        type: tencentcloud:ClbListenerRule
        properties:
          listenerId: ${exampleClbListener.listenerId}
          clbId: ${exampleClbInstance.clbInstanceId}
          domain: foo.net
          url: /bar
      exampleAsLoadBalancer:
        type: tencentcloud:AsLoadBalancer
        properties:
          autoScalingGroupId: ${exampleAsScalingGroup.asScalingGroupId}
          forwardLoadBalancers:
            - loadBalancerId: ${exampleClbInstance.clbInstanceId}
              listenerId: ${exampleClbListener.listenerId}
              locationId: ${exampleClbListenerRule.ruleId}
              targetAttributes:
                - port: 8080
                  weight: 20
    

    Create AsLoadBalancer Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new AsLoadBalancer(name: string, args: AsLoadBalancerArgs, opts?: CustomResourceOptions);
    @overload
    def AsLoadBalancer(resource_name: str,
                       args: AsLoadBalancerArgs,
                       opts: Optional[ResourceOptions] = None)
    
    @overload
    def AsLoadBalancer(resource_name: str,
                       opts: Optional[ResourceOptions] = None,
                       auto_scaling_group_id: Optional[str] = None,
                       as_load_balancer_id: Optional[str] = None,
                       forward_load_balancers: Optional[Sequence[AsLoadBalancerForwardLoadBalancerArgs]] = None)
    func NewAsLoadBalancer(ctx *Context, name string, args AsLoadBalancerArgs, opts ...ResourceOption) (*AsLoadBalancer, error)
    public AsLoadBalancer(string name, AsLoadBalancerArgs args, CustomResourceOptions? opts = null)
    public AsLoadBalancer(String name, AsLoadBalancerArgs args)
    public AsLoadBalancer(String name, AsLoadBalancerArgs args, CustomResourceOptions options)
    
    type: tencentcloud:AsLoadBalancer
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args AsLoadBalancerArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args AsLoadBalancerArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args AsLoadBalancerArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args AsLoadBalancerArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args AsLoadBalancerArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    AsLoadBalancer Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The AsLoadBalancer resource accepts the following input properties:

    AutoScalingGroupId string
    ID of a scaling group.
    AsLoadBalancerId string
    ID of the resource.
    ForwardLoadBalancers List<AsLoadBalancerForwardLoadBalancer>
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    AutoScalingGroupId string
    ID of a scaling group.
    AsLoadBalancerId string
    ID of the resource.
    ForwardLoadBalancers []AsLoadBalancerForwardLoadBalancerArgs
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    autoScalingGroupId String
    ID of a scaling group.
    asLoadBalancerId String
    ID of the resource.
    forwardLoadBalancers List<AsLoadBalancerForwardLoadBalancer>
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    autoScalingGroupId string
    ID of a scaling group.
    asLoadBalancerId string
    ID of the resource.
    forwardLoadBalancers AsLoadBalancerForwardLoadBalancer[]
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    auto_scaling_group_id str
    ID of a scaling group.
    as_load_balancer_id str
    ID of the resource.
    forward_load_balancers Sequence[AsLoadBalancerForwardLoadBalancerArgs]
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    autoScalingGroupId String
    ID of a scaling group.
    asLoadBalancerId String
    ID of the resource.
    forwardLoadBalancers List<Property Map>
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the AsLoadBalancer resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing AsLoadBalancer Resource

    Get an existing AsLoadBalancer resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: AsLoadBalancerState, opts?: CustomResourceOptions): AsLoadBalancer
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            as_load_balancer_id: Optional[str] = None,
            auto_scaling_group_id: Optional[str] = None,
            forward_load_balancers: Optional[Sequence[AsLoadBalancerForwardLoadBalancerArgs]] = None) -> AsLoadBalancer
    func GetAsLoadBalancer(ctx *Context, name string, id IDInput, state *AsLoadBalancerState, opts ...ResourceOption) (*AsLoadBalancer, error)
    public static AsLoadBalancer Get(string name, Input<string> id, AsLoadBalancerState? state, CustomResourceOptions? opts = null)
    public static AsLoadBalancer get(String name, Output<String> id, AsLoadBalancerState state, CustomResourceOptions options)
    resources:  _:    type: tencentcloud:AsLoadBalancer    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AsLoadBalancerId string
    ID of the resource.
    AutoScalingGroupId string
    ID of a scaling group.
    ForwardLoadBalancers List<AsLoadBalancerForwardLoadBalancer>
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    AsLoadBalancerId string
    ID of the resource.
    AutoScalingGroupId string
    ID of a scaling group.
    ForwardLoadBalancers []AsLoadBalancerForwardLoadBalancerArgs
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    asLoadBalancerId String
    ID of the resource.
    autoScalingGroupId String
    ID of a scaling group.
    forwardLoadBalancers List<AsLoadBalancerForwardLoadBalancer>
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    asLoadBalancerId string
    ID of the resource.
    autoScalingGroupId string
    ID of a scaling group.
    forwardLoadBalancers AsLoadBalancerForwardLoadBalancer[]
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    as_load_balancer_id str
    ID of the resource.
    auto_scaling_group_id str
    ID of a scaling group.
    forward_load_balancers Sequence[AsLoadBalancerForwardLoadBalancerArgs]
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.
    asLoadBalancerId String
    ID of the resource.
    autoScalingGroupId String
    ID of a scaling group.
    forwardLoadBalancers List<Property Map>
    List of application load balancers. The maximum number of application-type load balancers bound to each scaling group is 100.

    Supporting Types

    AsLoadBalancerForwardLoadBalancer, AsLoadBalancerForwardLoadBalancerArgs

    ListenerId string
    Application load balancer listener ID.
    LoadBalancerId string
    Application load balancer instance ID.
    TargetAttributes List<AsLoadBalancerForwardLoadBalancerTargetAttribute>
    List of TargetAttribute.
    LocationId string
    Application load balancer location ID.
    Region string
    Load balancer instance region. Default value is the region of current auto scaling group. The format is the same as the public parameter Region, for example: ap-guangzhou.
    ListenerId string
    Application load balancer listener ID.
    LoadBalancerId string
    Application load balancer instance ID.
    TargetAttributes []AsLoadBalancerForwardLoadBalancerTargetAttribute
    List of TargetAttribute.
    LocationId string
    Application load balancer location ID.
    Region string
    Load balancer instance region. Default value is the region of current auto scaling group. The format is the same as the public parameter Region, for example: ap-guangzhou.
    listenerId String
    Application load balancer listener ID.
    loadBalancerId String
    Application load balancer instance ID.
    targetAttributes List<AsLoadBalancerForwardLoadBalancerTargetAttribute>
    List of TargetAttribute.
    locationId String
    Application load balancer location ID.
    region String
    Load balancer instance region. Default value is the region of current auto scaling group. The format is the same as the public parameter Region, for example: ap-guangzhou.
    listenerId string
    Application load balancer listener ID.
    loadBalancerId string
    Application load balancer instance ID.
    targetAttributes AsLoadBalancerForwardLoadBalancerTargetAttribute[]
    List of TargetAttribute.
    locationId string
    Application load balancer location ID.
    region string
    Load balancer instance region. Default value is the region of current auto scaling group. The format is the same as the public parameter Region, for example: ap-guangzhou.
    listener_id str
    Application load balancer listener ID.
    load_balancer_id str
    Application load balancer instance ID.
    target_attributes Sequence[AsLoadBalancerForwardLoadBalancerTargetAttribute]
    List of TargetAttribute.
    location_id str
    Application load balancer location ID.
    region str
    Load balancer instance region. Default value is the region of current auto scaling group. The format is the same as the public parameter Region, for example: ap-guangzhou.
    listenerId String
    Application load balancer listener ID.
    loadBalancerId String
    Application load balancer instance ID.
    targetAttributes List<Property Map>
    List of TargetAttribute.
    locationId String
    Application load balancer location ID.
    region String
    Load balancer instance region. Default value is the region of current auto scaling group. The format is the same as the public parameter Region, for example: ap-guangzhou.

    AsLoadBalancerForwardLoadBalancerTargetAttribute, AsLoadBalancerForwardLoadBalancerTargetAttributeArgs

    Port double
    Target port.
    Weight double
    Target weight.
    Port float64
    Target port.
    Weight float64
    Target weight.
    port Double
    Target port.
    weight Double
    Target weight.
    port number
    Target port.
    weight number
    Target weight.
    port float
    Target port.
    weight float
    Target weight.
    port Number
    Target port.
    weight Number
    Target weight.

    Import

    as load balancer can be imported using the id, e.g.

    $ pulumi import tencentcloud:index/asLoadBalancer:AsLoadBalancer example asg-bpp4uol2
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    tencentcloud tencentcloudstack/terraform-provider-tencentcloud
    License
    Notes
    This Pulumi package is based on the tencentcloud Terraform Provider.
    tencentcloud logo
    tencentcloud 1.81.189 published on Wednesday, Apr 30, 2025 by tencentcloudstack