1. Packages
  2. Packages
  3. Volcengine
  4. API Docs
  5. alb
  6. Alb
Viewing docs for Volcengine v0.0.47
published on Friday, Mar 13, 2026 by Volcengine
volcengine logo
Viewing docs for Volcengine v0.0.47
published on Friday, Mar 13, 2026 by Volcengine

    Provides a resource to manage alb

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as volcengine from "@pulumi/volcengine";
    import * as volcengine from "@volcengine/pulumi";
    
    const foo = volcengine.alb.getZones({});
    const vpcIpv6 = new volcengine.vpc.Vpc("vpcIpv6", {
        vpcName: "acc-test-vpc-ipv6",
        cidrBlock: "172.16.0.0/16",
        enableIpv6: true,
    });
    const subnetIpv61 = new volcengine.vpc.Subnet("subnetIpv61", {
        subnetName: "acc-test-subnet-ipv6-1",
        cidrBlock: "172.16.1.0/24",
        zoneId: foo.then(foo => foo.zones?.[0]?.id),
        vpcId: vpcIpv6.id,
        ipv6CidrBlock: 1,
    });
    const subnetIpv62 = new volcengine.vpc.Subnet("subnetIpv62", {
        subnetName: "acc-test-subnet-ipv6-2",
        cidrBlock: "172.16.2.0/24",
        zoneId: foo.then(foo => foo.zones?.[1]?.id),
        vpcId: vpcIpv6.id,
        ipv6CidrBlock: 2,
    });
    const ipv6Gateway = new volcengine.vpc.Ipv6Gateway("ipv6Gateway", {vpcId: vpcIpv6.id});
    const alb_private = new volcengine.alb.Alb("alb-private", {
        addressIpVersion: "IPv4",
        type: "private",
        loadBalancerName: "acc-test-alb-private",
        description: "acc-test",
        subnetIds: [
            subnetIpv61.id,
            subnetIpv62.id,
        ],
        projectName: "default",
        deleteProtection: "off",
        tags: [{
            key: "k1",
            value: "v1",
        }],
    });
    const alb_public = new volcengine.alb.Alb("alb-public", {
        addressIpVersion: "DualStack",
        type: "public",
        loadBalancerName: "acc-test-alb-public",
        description: "acc-test",
        subnetIds: [
            subnetIpv61.id,
            subnetIpv62.id,
        ],
        projectName: "default",
        deleteProtection: "off",
        modificationProtectionStatus: "NonProtection",
        modificationProtectionReason: "Test modification protection",
        loadBalancerEdition: "Basic",
        eipBillingConfig: {
            isp: "BGP",
            eipBillingType: "PostPaidByBandwidth",
            bandwidth: 1,
        },
        ipv6EipBillingConfig: {
            isp: "BGP",
            billingType: "PostPaidByBandwidth",
            bandwidth: 1,
        },
        tags: [{
            key: "k1",
            value: "v1",
        }],
    }, {
        dependsOn: [ipv6Gateway],
    });
    // CLone ALB instance
    const alb_cloned = new volcengine.alb.Alb("alb-cloned", {
        sourceLoadBalancerId: alb_private.id,
        loadBalancerName: "acc-test-alb-cloned",
        description: "cloned from alb-private",
        subnetIds: [subnetIpv61.id],
        type: "private",
        projectName: "default",
    });
    // Example of ALB network type change, private -> public
    const alb_type_change = new volcengine.alb.Alb("alb-type-change", {
        loadBalancerName: "acc-test-alb-type-change",
        description: "will change to public type",
        subnetIds: [
            subnetIpv61.id,
            subnetIpv62.id,
        ],
        type: "public",
        projectName: "default",
        allocationIds: [
            "eip-iinpy4k1rytc74o8curgocd7",
            "eip-iinpy4k1rytc74o8curgocd8",
        ],
    });
    
    import pulumi
    import pulumi_volcengine as volcengine
    
    foo = volcengine.alb.get_zones()
    vpc_ipv6 = volcengine.vpc.Vpc("vpcIpv6",
        vpc_name="acc-test-vpc-ipv6",
        cidr_block="172.16.0.0/16",
        enable_ipv6=True)
    subnet_ipv61 = volcengine.vpc.Subnet("subnetIpv61",
        subnet_name="acc-test-subnet-ipv6-1",
        cidr_block="172.16.1.0/24",
        zone_id=foo.zones[0].id,
        vpc_id=vpc_ipv6.id,
        ipv6_cidr_block=1)
    subnet_ipv62 = volcengine.vpc.Subnet("subnetIpv62",
        subnet_name="acc-test-subnet-ipv6-2",
        cidr_block="172.16.2.0/24",
        zone_id=foo.zones[1].id,
        vpc_id=vpc_ipv6.id,
        ipv6_cidr_block=2)
    ipv6_gateway = volcengine.vpc.Ipv6Gateway("ipv6Gateway", vpc_id=vpc_ipv6.id)
    alb_private = volcengine.alb.Alb("alb-private",
        address_ip_version="IPv4",
        type="private",
        load_balancer_name="acc-test-alb-private",
        description="acc-test",
        subnet_ids=[
            subnet_ipv61.id,
            subnet_ipv62.id,
        ],
        project_name="default",
        delete_protection="off",
        tags=[volcengine.alb.AlbTagArgs(
            key="k1",
            value="v1",
        )])
    alb_public = volcengine.alb.Alb("alb-public",
        address_ip_version="DualStack",
        type="public",
        load_balancer_name="acc-test-alb-public",
        description="acc-test",
        subnet_ids=[
            subnet_ipv61.id,
            subnet_ipv62.id,
        ],
        project_name="default",
        delete_protection="off",
        modification_protection_status="NonProtection",
        modification_protection_reason="Test modification protection",
        load_balancer_edition="Basic",
        eip_billing_config=volcengine.alb.AlbEipBillingConfigArgs(
            isp="BGP",
            eip_billing_type="PostPaidByBandwidth",
            bandwidth=1,
        ),
        ipv6_eip_billing_config=volcengine.alb.AlbIpv6EipBillingConfigArgs(
            isp="BGP",
            billing_type="PostPaidByBandwidth",
            bandwidth=1,
        ),
        tags=[volcengine.alb.AlbTagArgs(
            key="k1",
            value="v1",
        )],
        opts=pulumi.ResourceOptions(depends_on=[ipv6_gateway]))
    # CLone ALB instance
    alb_cloned = volcengine.alb.Alb("alb-cloned",
        source_load_balancer_id=alb_private.id,
        load_balancer_name="acc-test-alb-cloned",
        description="cloned from alb-private",
        subnet_ids=[subnet_ipv61.id],
        type="private",
        project_name="default")
    # Example of ALB network type change, private -> public
    alb_type_change = volcengine.alb.Alb("alb-type-change",
        load_balancer_name="acc-test-alb-type-change",
        description="will change to public type",
        subnet_ids=[
            subnet_ipv61.id,
            subnet_ipv62.id,
        ],
        type="public",
        project_name="default",
        allocation_ids=[
            "eip-iinpy4k1rytc74o8curgocd7",
            "eip-iinpy4k1rytc74o8curgocd8",
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/alb"
    	"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/vpc"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		foo, err := alb.GetZones(ctx, nil, nil)
    		if err != nil {
    			return err
    		}
    		vpcIpv6, err := vpc.NewVpc(ctx, "vpcIpv6", &vpc.VpcArgs{
    			VpcName:    pulumi.String("acc-test-vpc-ipv6"),
    			CidrBlock:  pulumi.String("172.16.0.0/16"),
    			EnableIpv6: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		subnetIpv61, err := vpc.NewSubnet(ctx, "subnetIpv61", &vpc.SubnetArgs{
    			SubnetName:    pulumi.String("acc-test-subnet-ipv6-1"),
    			CidrBlock:     pulumi.String("172.16.1.0/24"),
    			ZoneId:        pulumi.String(foo.Zones[0].Id),
    			VpcId:         vpcIpv6.ID(),
    			Ipv6CidrBlock: pulumi.Int(1),
    		})
    		if err != nil {
    			return err
    		}
    		subnetIpv62, err := vpc.NewSubnet(ctx, "subnetIpv62", &vpc.SubnetArgs{
    			SubnetName:    pulumi.String("acc-test-subnet-ipv6-2"),
    			CidrBlock:     pulumi.String("172.16.2.0/24"),
    			ZoneId:        pulumi.String(foo.Zones[1].Id),
    			VpcId:         vpcIpv6.ID(),
    			Ipv6CidrBlock: pulumi.Int(2),
    		})
    		if err != nil {
    			return err
    		}
    		ipv6Gateway, err := vpc.NewIpv6Gateway(ctx, "ipv6Gateway", &vpc.Ipv6GatewayArgs{
    			VpcId: vpcIpv6.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = alb.NewAlb(ctx, "alb-private", &alb.AlbArgs{
    			AddressIpVersion: pulumi.String("IPv4"),
    			Type:             pulumi.String("private"),
    			LoadBalancerName: pulumi.String("acc-test-alb-private"),
    			Description:      pulumi.String("acc-test"),
    			SubnetIds: pulumi.StringArray{
    				subnetIpv61.ID(),
    				subnetIpv62.ID(),
    			},
    			ProjectName:      pulumi.String("default"),
    			DeleteProtection: pulumi.String("off"),
    			Tags: alb.AlbTagArray{
    				&alb.AlbTagArgs{
    					Key:   pulumi.String("k1"),
    					Value: pulumi.String("v1"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		_, err = alb.NewAlb(ctx, "alb-public", &alb.AlbArgs{
    			AddressIpVersion: pulumi.String("DualStack"),
    			Type:             pulumi.String("public"),
    			LoadBalancerName: pulumi.String("acc-test-alb-public"),
    			Description:      pulumi.String("acc-test"),
    			SubnetIds: pulumi.StringArray{
    				subnetIpv61.ID(),
    				subnetIpv62.ID(),
    			},
    			ProjectName:                  pulumi.String("default"),
    			DeleteProtection:             pulumi.String("off"),
    			ModificationProtectionStatus: pulumi.String("NonProtection"),
    			ModificationProtectionReason: pulumi.String("Test modification protection"),
    			LoadBalancerEdition:          pulumi.String("Basic"),
    			EipBillingConfig: &alb.AlbEipBillingConfigArgs{
    				Isp:            pulumi.String("BGP"),
    				EipBillingType: pulumi.String("PostPaidByBandwidth"),
    				Bandwidth:      pulumi.Int(1),
    			},
    			Ipv6EipBillingConfig: &alb.AlbIpv6EipBillingConfigArgs{
    				Isp:         pulumi.String("BGP"),
    				BillingType: pulumi.String("PostPaidByBandwidth"),
    				Bandwidth:   pulumi.Int(1),
    			},
    			Tags: alb.AlbTagArray{
    				&alb.AlbTagArgs{
    					Key:   pulumi.String("k1"),
    					Value: pulumi.String("v1"),
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			ipv6Gateway,
    		}))
    		if err != nil {
    			return err
    		}
    		// CLone ALB instance
    		_, err = alb.NewAlb(ctx, "alb-cloned", &alb.AlbArgs{
    			SourceLoadBalancerId: alb_private.ID(),
    			LoadBalancerName:     pulumi.String("acc-test-alb-cloned"),
    			Description:          pulumi.String("cloned from alb-private"),
    			SubnetIds: pulumi.StringArray{
    				subnetIpv61.ID(),
    			},
    			Type:        pulumi.String("private"),
    			ProjectName: pulumi.String("default"),
    		})
    		if err != nil {
    			return err
    		}
    		// Example of ALB network type change, private -> public
    		_, err = alb.NewAlb(ctx, "alb-type-change", &alb.AlbArgs{
    			LoadBalancerName: pulumi.String("acc-test-alb-type-change"),
    			Description:      pulumi.String("will change to public type"),
    			SubnetIds: pulumi.StringArray{
    				subnetIpv61.ID(),
    				subnetIpv62.ID(),
    			},
    			Type:        pulumi.String("public"),
    			ProjectName: pulumi.String("default"),
    			AllocationIds: pulumi.StringArray{
    				pulumi.String("eip-iinpy4k1rytc74o8curgocd7"),
    				pulumi.String("eip-iinpy4k1rytc74o8curgocd8"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Volcengine = Pulumi.Volcengine;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = Volcengine.Alb.GetZones.Invoke();
    
        var vpcIpv6 = new Volcengine.Vpc.Vpc("vpcIpv6", new()
        {
            VpcName = "acc-test-vpc-ipv6",
            CidrBlock = "172.16.0.0/16",
            EnableIpv6 = true,
        });
    
        var subnetIpv61 = new Volcengine.Vpc.Subnet("subnetIpv61", new()
        {
            SubnetName = "acc-test-subnet-ipv6-1",
            CidrBlock = "172.16.1.0/24",
            ZoneId = foo.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
            VpcId = vpcIpv6.Id,
            Ipv6CidrBlock = 1,
        });
    
        var subnetIpv62 = new Volcengine.Vpc.Subnet("subnetIpv62", new()
        {
            SubnetName = "acc-test-subnet-ipv6-2",
            CidrBlock = "172.16.2.0/24",
            ZoneId = foo.Apply(getZonesResult => getZonesResult.Zones[1]?.Id),
            VpcId = vpcIpv6.Id,
            Ipv6CidrBlock = 2,
        });
    
        var ipv6Gateway = new Volcengine.Vpc.Ipv6Gateway("ipv6Gateway", new()
        {
            VpcId = vpcIpv6.Id,
        });
    
        var alb_private = new Volcengine.Alb.Alb("alb-private", new()
        {
            AddressIpVersion = "IPv4",
            Type = "private",
            LoadBalancerName = "acc-test-alb-private",
            Description = "acc-test",
            SubnetIds = new[]
            {
                subnetIpv61.Id,
                subnetIpv62.Id,
            },
            ProjectName = "default",
            DeleteProtection = "off",
            Tags = new[]
            {
                new Volcengine.Alb.Inputs.AlbTagArgs
                {
                    Key = "k1",
                    Value = "v1",
                },
            },
        });
    
        var alb_public = new Volcengine.Alb.Alb("alb-public", new()
        {
            AddressIpVersion = "DualStack",
            Type = "public",
            LoadBalancerName = "acc-test-alb-public",
            Description = "acc-test",
            SubnetIds = new[]
            {
                subnetIpv61.Id,
                subnetIpv62.Id,
            },
            ProjectName = "default",
            DeleteProtection = "off",
            ModificationProtectionStatus = "NonProtection",
            ModificationProtectionReason = "Test modification protection",
            LoadBalancerEdition = "Basic",
            EipBillingConfig = new Volcengine.Alb.Inputs.AlbEipBillingConfigArgs
            {
                Isp = "BGP",
                EipBillingType = "PostPaidByBandwidth",
                Bandwidth = 1,
            },
            Ipv6EipBillingConfig = new Volcengine.Alb.Inputs.AlbIpv6EipBillingConfigArgs
            {
                Isp = "BGP",
                BillingType = "PostPaidByBandwidth",
                Bandwidth = 1,
            },
            Tags = new[]
            {
                new Volcengine.Alb.Inputs.AlbTagArgs
                {
                    Key = "k1",
                    Value = "v1",
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                ipv6Gateway,
            },
        });
    
        // CLone ALB instance
        var alb_cloned = new Volcengine.Alb.Alb("alb-cloned", new()
        {
            SourceLoadBalancerId = alb_private.Id,
            LoadBalancerName = "acc-test-alb-cloned",
            Description = "cloned from alb-private",
            SubnetIds = new[]
            {
                subnetIpv61.Id,
            },
            Type = "private",
            ProjectName = "default",
        });
    
        // Example of ALB network type change, private -> public
        var alb_type_change = new Volcengine.Alb.Alb("alb-type-change", new()
        {
            LoadBalancerName = "acc-test-alb-type-change",
            Description = "will change to public type",
            SubnetIds = new[]
            {
                subnetIpv61.Id,
                subnetIpv62.Id,
            },
            Type = "public",
            ProjectName = "default",
            AllocationIds = new[]
            {
                "eip-iinpy4k1rytc74o8curgocd7",
                "eip-iinpy4k1rytc74o8curgocd8",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.volcengine.alb.AlbFunctions;
    import com.pulumi.volcengine.alb.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.Ipv6Gateway;
    import com.pulumi.volcengine.vpc.Ipv6GatewayArgs;
    import com.pulumi.volcengine.alb.Alb;
    import com.pulumi.volcengine.alb.AlbArgs;
    import com.pulumi.volcengine.alb.inputs.AlbTagArgs;
    import com.pulumi.volcengine.alb.inputs.AlbEipBillingConfigArgs;
    import com.pulumi.volcengine.alb.inputs.AlbIpv6EipBillingConfigArgs;
    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 foo = AlbFunctions.getZones();
    
            var vpcIpv6 = new Vpc("vpcIpv6", VpcArgs.builder()        
                .vpcName("acc-test-vpc-ipv6")
                .cidrBlock("172.16.0.0/16")
                .enableIpv6(true)
                .build());
    
            var subnetIpv61 = new Subnet("subnetIpv61", SubnetArgs.builder()        
                .subnetName("acc-test-subnet-ipv6-1")
                .cidrBlock("172.16.1.0/24")
                .zoneId(foo.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
                .vpcId(vpcIpv6.id())
                .ipv6CidrBlock(1)
                .build());
    
            var subnetIpv62 = new Subnet("subnetIpv62", SubnetArgs.builder()        
                .subnetName("acc-test-subnet-ipv6-2")
                .cidrBlock("172.16.2.0/24")
                .zoneId(foo.applyValue(getZonesResult -> getZonesResult.zones()[1].id()))
                .vpcId(vpcIpv6.id())
                .ipv6CidrBlock(2)
                .build());
    
            var ipv6Gateway = new Ipv6Gateway("ipv6Gateway", Ipv6GatewayArgs.builder()        
                .vpcId(vpcIpv6.id())
                .build());
    
            var alb_private = new Alb("alb-private", AlbArgs.builder()        
                .addressIpVersion("IPv4")
                .type("private")
                .loadBalancerName("acc-test-alb-private")
                .description("acc-test")
                .subnetIds(            
                    subnetIpv61.id(),
                    subnetIpv62.id())
                .projectName("default")
                .deleteProtection("off")
                .tags(AlbTagArgs.builder()
                    .key("k1")
                    .value("v1")
                    .build())
                .build());
    
            var alb_public = new Alb("alb-public", AlbArgs.builder()        
                .addressIpVersion("DualStack")
                .type("public")
                .loadBalancerName("acc-test-alb-public")
                .description("acc-test")
                .subnetIds(            
                    subnetIpv61.id(),
                    subnetIpv62.id())
                .projectName("default")
                .deleteProtection("off")
                .modificationProtectionStatus("NonProtection")
                .modificationProtectionReason("Test modification protection")
                .loadBalancerEdition("Basic")
                .eipBillingConfig(AlbEipBillingConfigArgs.builder()
                    .isp("BGP")
                    .eipBillingType("PostPaidByBandwidth")
                    .bandwidth(1)
                    .build())
                .ipv6EipBillingConfig(AlbIpv6EipBillingConfigArgs.builder()
                    .isp("BGP")
                    .billingType("PostPaidByBandwidth")
                    .bandwidth(1)
                    .build())
                .tags(AlbTagArgs.builder()
                    .key("k1")
                    .value("v1")
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(ipv6Gateway)
                    .build());
    
            // CLone ALB instance
            var alb_cloned = new Alb("alb-cloned", AlbArgs.builder()        
                .sourceLoadBalancerId(alb_private.id())
                .loadBalancerName("acc-test-alb-cloned")
                .description("cloned from alb-private")
                .subnetIds(subnetIpv61.id())
                .type("private")
                .projectName("default")
                .build());
    
            // Example of ALB network type change, private -> public
            var alb_type_change = new Alb("alb-type-change", AlbArgs.builder()        
                .loadBalancerName("acc-test-alb-type-change")
                .description("will change to public type")
                .subnetIds(            
                    subnetIpv61.id(),
                    subnetIpv62.id())
                .type("public")
                .projectName("default")
                .allocationIds(            
                    "eip-iinpy4k1rytc74o8curgocd7",
                    "eip-iinpy4k1rytc74o8curgocd8")
                .build());
    
        }
    }
    
    resources:
      vpcIpv6:
        type: volcengine:vpc:Vpc
        properties:
          vpcName: acc-test-vpc-ipv6
          cidrBlock: 172.16.0.0/16
          enableIpv6: true
      subnetIpv61:
        type: volcengine:vpc:Subnet
        properties:
          subnetName: acc-test-subnet-ipv6-1
          cidrBlock: 172.16.1.0/24
          zoneId: ${foo.zones[0].id}
          vpcId: ${vpcIpv6.id}
          ipv6CidrBlock: 1
      subnetIpv62:
        type: volcengine:vpc:Subnet
        properties:
          subnetName: acc-test-subnet-ipv6-2
          cidrBlock: 172.16.2.0/24
          zoneId: ${foo.zones[1].id}
          vpcId: ${vpcIpv6.id}
          ipv6CidrBlock: 2
      ipv6Gateway:
        type: volcengine:vpc:Ipv6Gateway
        properties:
          vpcId: ${vpcIpv6.id}
      alb-private:
        type: volcengine:alb:Alb
        properties:
          addressIpVersion: IPv4
          type: private
          loadBalancerName: acc-test-alb-private
          description: acc-test
          subnetIds:
            - ${subnetIpv61.id}
            - ${subnetIpv62.id}
          projectName: default
          deleteProtection: off
          tags:
            - key: k1
              value: v1
      alb-public:
        type: volcengine:alb:Alb
        properties:
          addressIpVersion: DualStack
          type: public
          loadBalancerName: acc-test-alb-public
          description: acc-test
          subnetIds:
            - ${subnetIpv61.id}
            - ${subnetIpv62.id}
          projectName: default
          deleteProtection: off
          modificationProtectionStatus: NonProtection
          modificationProtectionReason: Test modification protection
          loadBalancerEdition: Basic
          eipBillingConfig:
            isp: BGP
            eipBillingType: PostPaidByBandwidth
            bandwidth: 1
          ipv6EipBillingConfig:
            isp: BGP
            billingType: PostPaidByBandwidth
            bandwidth: 1
          tags:
            - key: k1
              value: v1
        options:
          dependson:
            - ${ipv6Gateway}
      # CLone ALB instance
      alb-cloned:
        type: volcengine:alb:Alb
        properties:
          sourceLoadBalancerId: ${["alb-private"].id}
          loadBalancerName: acc-test-alb-cloned
          description: cloned from alb-private
          subnetIds:
            - ${subnetIpv61.id}
          type: private
          projectName: default
      # Example of ALB network type change, private -> public
      alb-type-change:
        type: volcengine:alb:Alb
        properties:
          loadBalancerName: acc-test-alb-type-change
          description: will change to public type
          subnetIds:
            - ${subnetIpv61.id}
            - ${subnetIpv62.id}
          type: public
          projectName: default
          allocationIds:
            - eip-iinpy4k1rytc74o8curgocd7
            - eip-iinpy4k1rytc74o8curgocd8
    variables:
      foo:
        fn::invoke:
          Function: volcengine:alb:getZones
          Arguments: {}
    
    Example coming soon!
    

    Create Alb Resource

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

    Constructor syntax

    new Alb(name: string, args: AlbArgs, opts?: CustomResourceOptions);
    @overload
    def Alb(resource_name: str,
            args: AlbArgs,
            opts: Optional[ResourceOptions] = None)
    
    @overload
    def Alb(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            subnet_ids: Optional[Sequence[str]] = None,
            type: Optional[str] = None,
            modification_protection_status: Optional[str] = None,
            project_name: Optional[str] = None,
            eip_billing_config: Optional[AlbEipBillingConfigArgs] = None,
            global_accelerator: Optional[AlbGlobalAcceleratorArgs] = None,
            ipv6_eip_billing_config: Optional[AlbIpv6EipBillingConfigArgs] = None,
            load_balancer_edition: Optional[str] = None,
            load_balancer_name: Optional[str] = None,
            modification_protection_reason: Optional[str] = None,
            address_ip_version: Optional[str] = None,
            description: Optional[str] = None,
            proxy_protocol_enabled: Optional[str] = None,
            source_load_balancer_id: Optional[str] = None,
            delete_protection: Optional[str] = None,
            tags: Optional[Sequence[AlbTagArgs]] = None,
            allocation_ids: Optional[Sequence[str]] = None,
            waf_instance_id: Optional[str] = None,
            waf_protected_domain: Optional[str] = None,
            waf_protection_enabled: Optional[str] = None)
    func NewAlb(ctx *Context, name string, args AlbArgs, opts ...ResourceOption) (*Alb, error)
    public Alb(string name, AlbArgs args, CustomResourceOptions? opts = null)
    public Alb(String name, AlbArgs args)
    public Alb(String name, AlbArgs args, CustomResourceOptions options)
    
    type: volcengine:alb:Alb
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "volcengine_alb_alb" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args AlbArgs
    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 AlbArgs
    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 AlbArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args AlbArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args AlbArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var albResource = new Volcengine.Alb.Alb("albResource", new()
    {
        SubnetIds = new[]
        {
            "string",
        },
        Type = "string",
        ModificationProtectionStatus = "string",
        ProjectName = "string",
        EipBillingConfig = new Volcengine.Alb.Inputs.AlbEipBillingConfigArgs
        {
            Bandwidth = 0,
            EipBillingType = "string",
            Isp = "string",
        },
        GlobalAccelerator = new Volcengine.Alb.Inputs.AlbGlobalAcceleratorArgs
        {
            AcceleratorId = "string",
            AcceleratorListenerId = "string",
            EndpointGroupId = "string",
            Weight = 0,
        },
        Ipv6EipBillingConfig = new Volcengine.Alb.Inputs.AlbIpv6EipBillingConfigArgs
        {
            Bandwidth = 0,
            BillingType = "string",
            Isp = "string",
        },
        LoadBalancerEdition = "string",
        LoadBalancerName = "string",
        ModificationProtectionReason = "string",
        AddressIpVersion = "string",
        Description = "string",
        ProxyProtocolEnabled = "string",
        SourceLoadBalancerId = "string",
        DeleteProtection = "string",
        Tags = new[]
        {
            new Volcengine.Alb.Inputs.AlbTagArgs
            {
                Key = "string",
                Value = "string",
            },
        },
        AllocationIds = new[]
        {
            "string",
        },
        WafInstanceId = "string",
        WafProtectedDomain = "string",
        WafProtectionEnabled = "string",
    });
    
    example, err := alb.NewAlb(ctx, "albResource", &alb.AlbArgs{
    	SubnetIds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Type:                         pulumi.String("string"),
    	ModificationProtectionStatus: pulumi.String("string"),
    	ProjectName:                  pulumi.String("string"),
    	EipBillingConfig: &alb.AlbEipBillingConfigArgs{
    		Bandwidth:      pulumi.Int(0),
    		EipBillingType: pulumi.String("string"),
    		Isp:            pulumi.String("string"),
    	},
    	GlobalAccelerator: &alb.AlbGlobalAcceleratorArgs{
    		AcceleratorId:         pulumi.String("string"),
    		AcceleratorListenerId: pulumi.String("string"),
    		EndpointGroupId:       pulumi.String("string"),
    		Weight:                pulumi.Int(0),
    	},
    	Ipv6EipBillingConfig: &alb.AlbIpv6EipBillingConfigArgs{
    		Bandwidth:   pulumi.Int(0),
    		BillingType: pulumi.String("string"),
    		Isp:         pulumi.String("string"),
    	},
    	LoadBalancerEdition:          pulumi.String("string"),
    	LoadBalancerName:             pulumi.String("string"),
    	ModificationProtectionReason: pulumi.String("string"),
    	AddressIpVersion:             pulumi.String("string"),
    	Description:                  pulumi.String("string"),
    	ProxyProtocolEnabled:         pulumi.String("string"),
    	SourceLoadBalancerId:         pulumi.String("string"),
    	DeleteProtection:             pulumi.String("string"),
    	Tags: alb.AlbTagArray{
    		&alb.AlbTagArgs{
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	AllocationIds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	WafInstanceId:        pulumi.String("string"),
    	WafProtectedDomain:   pulumi.String("string"),
    	WafProtectionEnabled: pulumi.String("string"),
    })
    
    resource "volcengine_alb_alb" "albResource" {
      subnet_ids                     = ["string"]
      type                           = "string"
      modification_protection_status = "string"
      project_name                   = "string"
      eip_billing_config = {
        bandwidth        = 0
        eip_billing_type = "string"
        isp              = "string"
      }
      global_accelerator = {
        accelerator_id          = "string"
        accelerator_listener_id = "string"
        endpoint_group_id       = "string"
        weight                  = 0
      }
      ipv6_eip_billing_config = {
        bandwidth    = 0
        billing_type = "string"
        isp          = "string"
      }
      load_balancer_edition          = "string"
      load_balancer_name             = "string"
      modification_protection_reason = "string"
      address_ip_version             = "string"
      description                    = "string"
      proxy_protocol_enabled         = "string"
      source_load_balancer_id        = "string"
      delete_protection              = "string"
      tags {
        key   = "string"
        value = "string"
      }
      allocation_ids         = ["string"]
      waf_instance_id        = "string"
      waf_protected_domain   = "string"
      waf_protection_enabled = "string"
    }
    
    var albResource = new Alb("albResource", AlbArgs.builder()
        .subnetIds("string")
        .type("string")
        .modificationProtectionStatus("string")
        .projectName("string")
        .eipBillingConfig(AlbEipBillingConfigArgs.builder()
            .bandwidth(0)
            .eipBillingType("string")
            .isp("string")
            .build())
        .globalAccelerator(AlbGlobalAcceleratorArgs.builder()
            .acceleratorId("string")
            .acceleratorListenerId("string")
            .endpointGroupId("string")
            .weight(0)
            .build())
        .ipv6EipBillingConfig(AlbIpv6EipBillingConfigArgs.builder()
            .bandwidth(0)
            .billingType("string")
            .isp("string")
            .build())
        .loadBalancerEdition("string")
        .loadBalancerName("string")
        .modificationProtectionReason("string")
        .addressIpVersion("string")
        .description("string")
        .proxyProtocolEnabled("string")
        .sourceLoadBalancerId("string")
        .deleteProtection("string")
        .tags(AlbTagArgs.builder()
            .key("string")
            .value("string")
            .build())
        .allocationIds("string")
        .wafInstanceId("string")
        .wafProtectedDomain("string")
        .wafProtectionEnabled("string")
        .build());
    
    alb_resource = volcengine.alb.Alb("albResource",
        subnet_ids=["string"],
        type="string",
        modification_protection_status="string",
        project_name="string",
        eip_billing_config={
            "bandwidth": 0,
            "eip_billing_type": "string",
            "isp": "string",
        },
        global_accelerator={
            "accelerator_id": "string",
            "accelerator_listener_id": "string",
            "endpoint_group_id": "string",
            "weight": 0,
        },
        ipv6_eip_billing_config={
            "bandwidth": 0,
            "billing_type": "string",
            "isp": "string",
        },
        load_balancer_edition="string",
        load_balancer_name="string",
        modification_protection_reason="string",
        address_ip_version="string",
        description="string",
        proxy_protocol_enabled="string",
        source_load_balancer_id="string",
        delete_protection="string",
        tags=[{
            "key": "string",
            "value": "string",
        }],
        allocation_ids=["string"],
        waf_instance_id="string",
        waf_protected_domain="string",
        waf_protection_enabled="string")
    
    const albResource = new volcengine.alb.Alb("albResource", {
        subnetIds: ["string"],
        type: "string",
        modificationProtectionStatus: "string",
        projectName: "string",
        eipBillingConfig: {
            bandwidth: 0,
            eipBillingType: "string",
            isp: "string",
        },
        globalAccelerator: {
            acceleratorId: "string",
            acceleratorListenerId: "string",
            endpointGroupId: "string",
            weight: 0,
        },
        ipv6EipBillingConfig: {
            bandwidth: 0,
            billingType: "string",
            isp: "string",
        },
        loadBalancerEdition: "string",
        loadBalancerName: "string",
        modificationProtectionReason: "string",
        addressIpVersion: "string",
        description: "string",
        proxyProtocolEnabled: "string",
        sourceLoadBalancerId: "string",
        deleteProtection: "string",
        tags: [{
            key: "string",
            value: "string",
        }],
        allocationIds: ["string"],
        wafInstanceId: "string",
        wafProtectedDomain: "string",
        wafProtectionEnabled: "string",
    });
    
    type: volcengine:alb:Alb
    properties:
        addressIpVersion: string
        allocationIds:
            - string
        deleteProtection: string
        description: string
        eipBillingConfig:
            bandwidth: 0
            eipBillingType: string
            isp: string
        globalAccelerator:
            acceleratorId: string
            acceleratorListenerId: string
            endpointGroupId: string
            weight: 0
        ipv6EipBillingConfig:
            bandwidth: 0
            billingType: string
            isp: string
        loadBalancerEdition: string
        loadBalancerName: string
        modificationProtectionReason: string
        modificationProtectionStatus: string
        projectName: string
        proxyProtocolEnabled: string
        sourceLoadBalancerId: string
        subnetIds:
            - string
        tags:
            - key: string
              value: string
        type: string
        wafInstanceId: string
        wafProtectedDomain: string
        wafProtectionEnabled: string
    

    Alb 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 Alb resource accepts the following input properties:

    SubnetIds List<string>
    The id of the Subnet.
    Type string
    The type of the Alb. Valid values: public, private.
    AddressIpVersion string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    AllocationIds List<string>
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    DeleteProtection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    Description string
    The description of the Alb.
    EipBillingConfig AlbEipBillingConfig
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    GlobalAccelerator AlbGlobalAccelerator
    The global accelerator configuration.
    Ipv6EipBillingConfig AlbIpv6EipBillingConfig
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    LoadBalancerEdition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    LoadBalancerName string
    The name of the Alb.
    ModificationProtectionReason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    ModificationProtectionStatus string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    ProjectName string
    The ProjectName of the Alb.
    ProxyProtocolEnabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    SourceLoadBalancerId string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    Tags List<AlbTag>
    Tags.
    WafInstanceId string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectedDomain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectionEnabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    SubnetIds []string
    The id of the Subnet.
    Type string
    The type of the Alb. Valid values: public, private.
    AddressIpVersion string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    AllocationIds []string
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    DeleteProtection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    Description string
    The description of the Alb.
    EipBillingConfig AlbEipBillingConfigArgs
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    GlobalAccelerator AlbGlobalAcceleratorArgs
    The global accelerator configuration.
    Ipv6EipBillingConfig AlbIpv6EipBillingConfigArgs
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    LoadBalancerEdition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    LoadBalancerName string
    The name of the Alb.
    ModificationProtectionReason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    ModificationProtectionStatus string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    ProjectName string
    The ProjectName of the Alb.
    ProxyProtocolEnabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    SourceLoadBalancerId string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    Tags []AlbTagArgs
    Tags.
    WafInstanceId string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectedDomain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectionEnabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    subnet_ids list(string)
    The id of the Subnet.
    type string
    The type of the Alb. Valid values: public, private.
    address_ip_version string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocation_ids list(string)
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    delete_protection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description string
    The description of the Alb.
    eip_billing_config object
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    global_accelerator object
    The global accelerator configuration.
    ipv6_eip_billing_config object
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    load_balancer_edition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    load_balancer_name string
    The name of the Alb.
    modification_protection_reason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modification_protection_status string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    project_name string
    The ProjectName of the Alb.
    proxy_protocol_enabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    source_load_balancer_id string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    tags list(object)
    Tags.
    waf_instance_id string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protected_domain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protection_enabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    subnetIds List<String>
    The id of the Subnet.
    type String
    The type of the Alb. Valid values: public, private.
    addressIpVersion String
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocationIds List<String>
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    deleteProtection String
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description String
    The description of the Alb.
    eipBillingConfig AlbEipBillingConfig
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    globalAccelerator AlbGlobalAccelerator
    The global accelerator configuration.
    ipv6EipBillingConfig AlbIpv6EipBillingConfig
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    loadBalancerEdition String
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    loadBalancerName String
    The name of the Alb.
    modificationProtectionReason String
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modificationProtectionStatus String
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    projectName String
    The ProjectName of the Alb.
    proxyProtocolEnabled String
    ALB can support the Proxy Protocol and record the real IP of the client.
    sourceLoadBalancerId String
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    tags List<AlbTag>
    Tags.
    wafInstanceId String
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectedDomain String
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectionEnabled String
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    subnetIds string[]
    The id of the Subnet.
    type string
    The type of the Alb. Valid values: public, private.
    addressIpVersion string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocationIds string[]
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    deleteProtection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description string
    The description of the Alb.
    eipBillingConfig AlbEipBillingConfig
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    globalAccelerator AlbGlobalAccelerator
    The global accelerator configuration.
    ipv6EipBillingConfig AlbIpv6EipBillingConfig
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    loadBalancerEdition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    loadBalancerName string
    The name of the Alb.
    modificationProtectionReason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modificationProtectionStatus string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    projectName string
    The ProjectName of the Alb.
    proxyProtocolEnabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    sourceLoadBalancerId string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    tags AlbTag[]
    Tags.
    wafInstanceId string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectedDomain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectionEnabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    subnet_ids Sequence[str]
    The id of the Subnet.
    type str
    The type of the Alb. Valid values: public, private.
    address_ip_version str
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocation_ids Sequence[str]
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    delete_protection str
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description str
    The description of the Alb.
    eip_billing_config AlbEipBillingConfigArgs
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    global_accelerator AlbGlobalAcceleratorArgs
    The global accelerator configuration.
    ipv6_eip_billing_config AlbIpv6EipBillingConfigArgs
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    load_balancer_edition str
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    load_balancer_name str
    The name of the Alb.
    modification_protection_reason str
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modification_protection_status str
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    project_name str
    The ProjectName of the Alb.
    proxy_protocol_enabled str
    ALB can support the Proxy Protocol and record the real IP of the client.
    source_load_balancer_id str
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    tags Sequence[AlbTagArgs]
    Tags.
    waf_instance_id str
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protected_domain str
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protection_enabled str
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    subnetIds List<String>
    The id of the Subnet.
    type String
    The type of the Alb. Valid values: public, private.
    addressIpVersion String
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocationIds List<String>
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    deleteProtection String
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description String
    The description of the Alb.
    eipBillingConfig Property Map
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    globalAccelerator Property Map
    The global accelerator configuration.
    ipv6EipBillingConfig Property Map
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    loadBalancerEdition String
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    loadBalancerName String
    The name of the Alb.
    modificationProtectionReason String
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modificationProtectionStatus String
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    projectName String
    The ProjectName of the Alb.
    proxyProtocolEnabled String
    ALB can support the Proxy Protocol and record the real IP of the client.
    sourceLoadBalancerId String
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    tags List<Property Map>
    Tags.
    wafInstanceId String
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectedDomain String
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectionEnabled String
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.

    Outputs

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

    DnsName string
    The DNS name.
    Id string
    The provider-assigned unique ID for this managed resource.
    LocalAddresses List<string>
    The local addresses of the Alb.
    Status string
    The status of the Alb.
    VpcId string
    The vpc id of the Alb.
    ZoneMappings List<AlbZoneMapping>
    Configuration information of the Alb instance in different Availability Zones.
    DnsName string
    The DNS name.
    Id string
    The provider-assigned unique ID for this managed resource.
    LocalAddresses []string
    The local addresses of the Alb.
    Status string
    The status of the Alb.
    VpcId string
    The vpc id of the Alb.
    ZoneMappings []AlbZoneMapping
    Configuration information of the Alb instance in different Availability Zones.
    dns_name string
    The DNS name.
    id string
    The provider-assigned unique ID for this managed resource.
    local_addresses list(string)
    The local addresses of the Alb.
    status string
    The status of the Alb.
    vpc_id string
    The vpc id of the Alb.
    zone_mappings list(object)
    Configuration information of the Alb instance in different Availability Zones.
    dnsName String
    The DNS name.
    id String
    The provider-assigned unique ID for this managed resource.
    localAddresses List<String>
    The local addresses of the Alb.
    status String
    The status of the Alb.
    vpcId String
    The vpc id of the Alb.
    zoneMappings List<AlbZoneMapping>
    Configuration information of the Alb instance in different Availability Zones.
    dnsName string
    The DNS name.
    id string
    The provider-assigned unique ID for this managed resource.
    localAddresses string[]
    The local addresses of the Alb.
    status string
    The status of the Alb.
    vpcId string
    The vpc id of the Alb.
    zoneMappings AlbZoneMapping[]
    Configuration information of the Alb instance in different Availability Zones.
    dns_name str
    The DNS name.
    id str
    The provider-assigned unique ID for this managed resource.
    local_addresses Sequence[str]
    The local addresses of the Alb.
    status str
    The status of the Alb.
    vpc_id str
    The vpc id of the Alb.
    zone_mappings Sequence[AlbZoneMapping]
    Configuration information of the Alb instance in different Availability Zones.
    dnsName String
    The DNS name.
    id String
    The provider-assigned unique ID for this managed resource.
    localAddresses List<String>
    The local addresses of the Alb.
    status String
    The status of the Alb.
    vpcId String
    The vpc id of the Alb.
    zoneMappings List<Property Map>
    Configuration information of the Alb instance in different Availability Zones.

    Look up Existing Alb Resource

    Get an existing Alb 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?: AlbState, opts?: CustomResourceOptions): Alb
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            address_ip_version: Optional[str] = None,
            allocation_ids: Optional[Sequence[str]] = None,
            delete_protection: Optional[str] = None,
            description: Optional[str] = None,
            dns_name: Optional[str] = None,
            eip_billing_config: Optional[AlbEipBillingConfigArgs] = None,
            global_accelerator: Optional[AlbGlobalAcceleratorArgs] = None,
            ipv6_eip_billing_config: Optional[AlbIpv6EipBillingConfigArgs] = None,
            load_balancer_edition: Optional[str] = None,
            load_balancer_name: Optional[str] = None,
            local_addresses: Optional[Sequence[str]] = None,
            modification_protection_reason: Optional[str] = None,
            modification_protection_status: Optional[str] = None,
            project_name: Optional[str] = None,
            proxy_protocol_enabled: Optional[str] = None,
            source_load_balancer_id: Optional[str] = None,
            status: Optional[str] = None,
            subnet_ids: Optional[Sequence[str]] = None,
            tags: Optional[Sequence[AlbTagArgs]] = None,
            type: Optional[str] = None,
            vpc_id: Optional[str] = None,
            waf_instance_id: Optional[str] = None,
            waf_protected_domain: Optional[str] = None,
            waf_protection_enabled: Optional[str] = None,
            zone_mappings: Optional[Sequence[AlbZoneMappingArgs]] = None) -> Alb
    func GetAlb(ctx *Context, name string, id IDInput, state *AlbState, opts ...ResourceOption) (*Alb, error)
    public static Alb Get(string name, Input<string> id, AlbState? state, CustomResourceOptions? opts = null)
    public static Alb get(String name, Output<String> id, AlbState state, CustomResourceOptions options)
    resources:  _:    type: volcengine:alb:Alb    get:      id: ${id}
    import {
      to = volcengine_alb_alb.example
      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:
    AddressIpVersion string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    AllocationIds List<string>
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    DeleteProtection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    Description string
    The description of the Alb.
    DnsName string
    The DNS name.
    EipBillingConfig AlbEipBillingConfig
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    GlobalAccelerator AlbGlobalAccelerator
    The global accelerator configuration.
    Ipv6EipBillingConfig AlbIpv6EipBillingConfig
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    LoadBalancerEdition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    LoadBalancerName string
    The name of the Alb.
    LocalAddresses List<string>
    The local addresses of the Alb.
    ModificationProtectionReason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    ModificationProtectionStatus string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    ProjectName string
    The ProjectName of the Alb.
    ProxyProtocolEnabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    SourceLoadBalancerId string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    Status string
    The status of the Alb.
    SubnetIds List<string>
    The id of the Subnet.
    Tags List<AlbTag>
    Tags.
    Type string
    The type of the Alb. Valid values: public, private.
    VpcId string
    The vpc id of the Alb.
    WafInstanceId string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectedDomain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectionEnabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    ZoneMappings List<AlbZoneMapping>
    Configuration information of the Alb instance in different Availability Zones.
    AddressIpVersion string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    AllocationIds []string
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    DeleteProtection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    Description string
    The description of the Alb.
    DnsName string
    The DNS name.
    EipBillingConfig AlbEipBillingConfigArgs
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    GlobalAccelerator AlbGlobalAcceleratorArgs
    The global accelerator configuration.
    Ipv6EipBillingConfig AlbIpv6EipBillingConfigArgs
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    LoadBalancerEdition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    LoadBalancerName string
    The name of the Alb.
    LocalAddresses []string
    The local addresses of the Alb.
    ModificationProtectionReason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    ModificationProtectionStatus string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    ProjectName string
    The ProjectName of the Alb.
    ProxyProtocolEnabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    SourceLoadBalancerId string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    Status string
    The status of the Alb.
    SubnetIds []string
    The id of the Subnet.
    Tags []AlbTagArgs
    Tags.
    Type string
    The type of the Alb. Valid values: public, private.
    VpcId string
    The vpc id of the Alb.
    WafInstanceId string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectedDomain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    WafProtectionEnabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    ZoneMappings []AlbZoneMappingArgs
    Configuration information of the Alb instance in different Availability Zones.
    address_ip_version string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocation_ids list(string)
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    delete_protection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description string
    The description of the Alb.
    dns_name string
    The DNS name.
    eip_billing_config object
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    global_accelerator object
    The global accelerator configuration.
    ipv6_eip_billing_config object
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    load_balancer_edition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    load_balancer_name string
    The name of the Alb.
    local_addresses list(string)
    The local addresses of the Alb.
    modification_protection_reason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modification_protection_status string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    project_name string
    The ProjectName of the Alb.
    proxy_protocol_enabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    source_load_balancer_id string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    status string
    The status of the Alb.
    subnet_ids list(string)
    The id of the Subnet.
    tags list(object)
    Tags.
    type string
    The type of the Alb. Valid values: public, private.
    vpc_id string
    The vpc id of the Alb.
    waf_instance_id string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protected_domain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protection_enabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    zone_mappings list(object)
    Configuration information of the Alb instance in different Availability Zones.
    addressIpVersion String
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocationIds List<String>
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    deleteProtection String
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description String
    The description of the Alb.
    dnsName String
    The DNS name.
    eipBillingConfig AlbEipBillingConfig
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    globalAccelerator AlbGlobalAccelerator
    The global accelerator configuration.
    ipv6EipBillingConfig AlbIpv6EipBillingConfig
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    loadBalancerEdition String
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    loadBalancerName String
    The name of the Alb.
    localAddresses List<String>
    The local addresses of the Alb.
    modificationProtectionReason String
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modificationProtectionStatus String
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    projectName String
    The ProjectName of the Alb.
    proxyProtocolEnabled String
    ALB can support the Proxy Protocol and record the real IP of the client.
    sourceLoadBalancerId String
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    status String
    The status of the Alb.
    subnetIds List<String>
    The id of the Subnet.
    tags List<AlbTag>
    Tags.
    type String
    The type of the Alb. Valid values: public, private.
    vpcId String
    The vpc id of the Alb.
    wafInstanceId String
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectedDomain String
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectionEnabled String
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    zoneMappings List<AlbZoneMapping>
    Configuration information of the Alb instance in different Availability Zones.
    addressIpVersion string
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocationIds string[]
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    deleteProtection string
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description string
    The description of the Alb.
    dnsName string
    The DNS name.
    eipBillingConfig AlbEipBillingConfig
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    globalAccelerator AlbGlobalAccelerator
    The global accelerator configuration.
    ipv6EipBillingConfig AlbIpv6EipBillingConfig
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    loadBalancerEdition string
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    loadBalancerName string
    The name of the Alb.
    localAddresses string[]
    The local addresses of the Alb.
    modificationProtectionReason string
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modificationProtectionStatus string
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    projectName string
    The ProjectName of the Alb.
    proxyProtocolEnabled string
    ALB can support the Proxy Protocol and record the real IP of the client.
    sourceLoadBalancerId string
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    status string
    The status of the Alb.
    subnetIds string[]
    The id of the Subnet.
    tags AlbTag[]
    Tags.
    type string
    The type of the Alb. Valid values: public, private.
    vpcId string
    The vpc id of the Alb.
    wafInstanceId string
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectedDomain string
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectionEnabled string
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    zoneMappings AlbZoneMapping[]
    Configuration information of the Alb instance in different Availability Zones.
    address_ip_version str
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocation_ids Sequence[str]
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    delete_protection str
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description str
    The description of the Alb.
    dns_name str
    The DNS name.
    eip_billing_config AlbEipBillingConfigArgs
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    global_accelerator AlbGlobalAcceleratorArgs
    The global accelerator configuration.
    ipv6_eip_billing_config AlbIpv6EipBillingConfigArgs
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    load_balancer_edition str
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    load_balancer_name str
    The name of the Alb.
    local_addresses Sequence[str]
    The local addresses of the Alb.
    modification_protection_reason str
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modification_protection_status str
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    project_name str
    The ProjectName of the Alb.
    proxy_protocol_enabled str
    ALB can support the Proxy Protocol and record the real IP of the client.
    source_load_balancer_id str
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    status str
    The status of the Alb.
    subnet_ids Sequence[str]
    The id of the Subnet.
    tags Sequence[AlbTagArgs]
    Tags.
    type str
    The type of the Alb. Valid values: public, private.
    vpc_id str
    The vpc id of the Alb.
    waf_instance_id str
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protected_domain str
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    waf_protection_enabled str
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    zone_mappings Sequence[AlbZoneMappingArgs]
    Configuration information of the Alb instance in different Availability Zones.
    addressIpVersion String
    The address ip version of the Alb. Valid values: IPv4, DualStack. Default is ipv4.
    allocationIds List<String>
    The ID of the public IP. This field is only valid when the type field changes from private to public.
    deleteProtection String
    Whether to enable the delete protection function of the Alb. Valid values: on, off. Default is off.
    description String
    The description of the Alb.
    dnsName String
    The DNS name.
    eipBillingConfig Property Map
    The billing configuration of the EIP which automatically associated to the Alb. This field is valid when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.eip.Address and volcengine.eip.Associate to achieve public network access function.
    globalAccelerator Property Map
    The global accelerator configuration.
    ipv6EipBillingConfig Property Map
    The billing configuration of the Ipv6 EIP which automatically associated to the Alb. This field is required when the type of the Alb is public.When the type of the Alb is private, suggest using a combination of resource volcengine.vpc.Ipv6Gateway and volcengine.vpc.Ipv6AddressBandwidth to achieve ipv6 public network access function.
    loadBalancerEdition String
    The version of the ALB instance. Basic: Basic Edition. Standard: Standard Edition. Default is Basic.
    loadBalancerName String
    The name of the Alb.
    localAddresses List<String>
    The local addresses of the Alb.
    modificationProtectionReason String
    The reason for enabling instance modification protection. This parameter is valid when the modification_protection_status is ConsoleProtection.
    modificationProtectionStatus String
    Whether to enable the modification protection function of the Alb. Valid values: NonProtection, ConsoleProtection. Default is NonProtection. NonProtection: Instance modification protection is not enabled. ConsoleProtection: Instance modification protection is enabled; you cannot modify the instance configuration through the ALB console, and can only modify the instance configuration by calling the API.
    projectName String
    The ProjectName of the Alb.
    proxyProtocolEnabled String
    ALB can support the Proxy Protocol and record the real IP of the client.
    sourceLoadBalancerId String
    The source ALB instance ID for cloning. If specified, the ALB instance will be cloned from this source.
    status String
    The status of the Alb.
    subnetIds List<String>
    The id of the Subnet.
    tags List<Property Map>
    Tags.
    type String
    The type of the Alb. Valid values: public, private.
    vpcId String
    The vpc id of the Alb.
    wafInstanceId String
    The ID of the WAF instance to be associated with the Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectedDomain String
    The domain name of the WAF protected Alb. This field is valid when the value of the waf_protection_enabled is on.
    wafProtectionEnabled String
    Whether to enable the WAF protection function of the Alb. Valid values: off, on. Default is off.
    zoneMappings List<Property Map>
    Configuration information of the Alb instance in different Availability Zones.

    Supporting Types

    AlbEipBillingConfig, AlbEipBillingConfigArgs

    Bandwidth int
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    EipBillingType string
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    Isp string
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.
    Bandwidth int
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    EipBillingType string
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    Isp string
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth number
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    eip_billing_type string
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp string
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth Integer
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    eipBillingType String
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp String
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth number
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    eipBillingType string
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp string
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth int
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    eip_billing_type str
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp str
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth Number
    The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps.
    eipBillingType String
    The billing type of the EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp String
    The ISP of the EIP which automatically associated to the Alb, the value can be BGP.

    AlbGlobalAccelerator, AlbGlobalAcceleratorArgs

    AcceleratorId string
    The global accelerator id.
    AcceleratorListenerId string
    The global accelerator listener id.
    EndpointGroupId string
    The global accelerator endpoint group id.
    Weight int
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.
    AcceleratorId string
    The global accelerator id.
    AcceleratorListenerId string
    The global accelerator listener id.
    EndpointGroupId string
    The global accelerator endpoint group id.
    Weight int
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.
    accelerator_id string
    The global accelerator id.
    accelerator_listener_id string
    The global accelerator listener id.
    endpoint_group_id string
    The global accelerator endpoint group id.
    weight number
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.
    acceleratorId String
    The global accelerator id.
    acceleratorListenerId String
    The global accelerator listener id.
    endpointGroupId String
    The global accelerator endpoint group id.
    weight Integer
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.
    acceleratorId string
    The global accelerator id.
    acceleratorListenerId string
    The global accelerator listener id.
    endpointGroupId string
    The global accelerator endpoint group id.
    weight number
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.
    accelerator_id str
    The global accelerator id.
    accelerator_listener_id str
    The global accelerator listener id.
    endpoint_group_id str
    The global accelerator endpoint group id.
    weight int
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.
    acceleratorId String
    The global accelerator id.
    acceleratorListenerId String
    The global accelerator listener id.
    endpointGroupId String
    The global accelerator endpoint group id.
    weight Number
    The traffic distribution weight of the endpoint. The value range is: 1 - 100.

    AlbIpv6EipBillingConfig, AlbIpv6EipBillingConfigArgs

    Bandwidth int
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    BillingType string
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    Isp string
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.
    Bandwidth int
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    BillingType string
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    Isp string
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth number
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    billing_type string
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp string
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth Integer
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    billingType String
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp String
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth number
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    billingType string
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp string
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth int
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    billing_type str
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp str
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.
    bandwidth Number
    The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps.
    billingType String
    The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: PostPaidByBandwidth, PostPaidByTraffic.
    isp String
    The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be BGP.

    AlbTag, AlbTagArgs

    Key string
    The Key of Tags.
    Value string
    The Value of Tags.
    Key string
    The Key of Tags.
    Value string
    The Value of Tags.
    key string
    The Key of Tags.
    value string
    The Value of Tags.
    key String
    The Key of Tags.
    value String
    The Value of Tags.
    key string
    The Key of Tags.
    value string
    The Value of Tags.
    key str
    The Key of Tags.
    value str
    The Value of Tags.
    key String
    The Key of Tags.
    value String
    The Value of Tags.

    AlbZoneMapping, AlbZoneMappingArgs

    LoadBalancerAddresses List<AlbZoneMappingLoadBalancerAddress>
    The IP address information of the Alb in this availability zone.
    SubnetId string
    The subnet id of the Alb in this availability zone.
    ZoneId string
    The availability zone id of the Alb.
    LoadBalancerAddresses []AlbZoneMappingLoadBalancerAddress
    The IP address information of the Alb in this availability zone.
    SubnetId string
    The subnet id of the Alb in this availability zone.
    ZoneId string
    The availability zone id of the Alb.
    load_balancer_addresses list(object)
    The IP address information of the Alb in this availability zone.
    subnet_id string
    The subnet id of the Alb in this availability zone.
    zone_id string
    The availability zone id of the Alb.
    loadBalancerAddresses List<AlbZoneMappingLoadBalancerAddress>
    The IP address information of the Alb in this availability zone.
    subnetId String
    The subnet id of the Alb in this availability zone.
    zoneId String
    The availability zone id of the Alb.
    loadBalancerAddresses AlbZoneMappingLoadBalancerAddress[]
    The IP address information of the Alb in this availability zone.
    subnetId string
    The subnet id of the Alb in this availability zone.
    zoneId string
    The availability zone id of the Alb.
    load_balancer_addresses Sequence[AlbZoneMappingLoadBalancerAddress]
    The IP address information of the Alb in this availability zone.
    subnet_id str
    The subnet id of the Alb in this availability zone.
    zone_id str
    The availability zone id of the Alb.
    loadBalancerAddresses List<Property Map>
    The IP address information of the Alb in this availability zone.
    subnetId String
    The subnet id of the Alb in this availability zone.
    zoneId String
    The availability zone id of the Alb.

    AlbZoneMappingLoadBalancerAddress, AlbZoneMappingLoadBalancerAddressArgs

    EipAddress string
    The Eip address of the Alb in this availability zone.
    EipId string
    The Eip id of alb instance in this availability zone.
    EniAddress string
    The Eni address of the Alb in this availability zone.
    EniId string
    The Eni id of the Alb in this availability zone.
    EniIpv6Address string
    The Eni Ipv6 address of the Alb in this availability zone.
    Ipv6EipId string
    The Ipv6 Eip id of alb instance in this availability zone.
    EipAddress string
    The Eip address of the Alb in this availability zone.
    EipId string
    The Eip id of alb instance in this availability zone.
    EniAddress string
    The Eni address of the Alb in this availability zone.
    EniId string
    The Eni id of the Alb in this availability zone.
    EniIpv6Address string
    The Eni Ipv6 address of the Alb in this availability zone.
    Ipv6EipId string
    The Ipv6 Eip id of alb instance in this availability zone.
    eip_address string
    The Eip address of the Alb in this availability zone.
    eip_id string
    The Eip id of alb instance in this availability zone.
    eni_address string
    The Eni address of the Alb in this availability zone.
    eni_id string
    The Eni id of the Alb in this availability zone.
    eni_ipv6_address string
    The Eni Ipv6 address of the Alb in this availability zone.
    ipv6_eip_id string
    The Ipv6 Eip id of alb instance in this availability zone.
    eipAddress String
    The Eip address of the Alb in this availability zone.
    eipId String
    The Eip id of alb instance in this availability zone.
    eniAddress String
    The Eni address of the Alb in this availability zone.
    eniId String
    The Eni id of the Alb in this availability zone.
    eniIpv6Address String
    The Eni Ipv6 address of the Alb in this availability zone.
    ipv6EipId String
    The Ipv6 Eip id of alb instance in this availability zone.
    eipAddress string
    The Eip address of the Alb in this availability zone.
    eipId string
    The Eip id of alb instance in this availability zone.
    eniAddress string
    The Eni address of the Alb in this availability zone.
    eniId string
    The Eni id of the Alb in this availability zone.
    eniIpv6Address string
    The Eni Ipv6 address of the Alb in this availability zone.
    ipv6EipId string
    The Ipv6 Eip id of alb instance in this availability zone.
    eip_address str
    The Eip address of the Alb in this availability zone.
    eip_id str
    The Eip id of alb instance in this availability zone.
    eni_address str
    The Eni address of the Alb in this availability zone.
    eni_id str
    The Eni id of the Alb in this availability zone.
    eni_ipv6_address str
    The Eni Ipv6 address of the Alb in this availability zone.
    ipv6_eip_id str
    The Ipv6 Eip id of alb instance in this availability zone.
    eipAddress String
    The Eip address of the Alb in this availability zone.
    eipId String
    The Eip id of alb instance in this availability zone.
    eniAddress String
    The Eni address of the Alb in this availability zone.
    eniId String
    The Eni id of the Alb in this availability zone.
    eniIpv6Address String
    The Eni Ipv6 address of the Alb in this availability zone.
    ipv6EipId String
    The Ipv6 Eip id of alb instance in this availability zone.

    Import

    Alb can be imported using the id, e.g.

    $ pulumi import volcengine:alb/alb:Alb default resource_id
    

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

    Package Details

    Repository
    volcengine volcengine/pulumi-volcengine
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the volcengine Terraform Provider.
    volcengine logo
    Viewing docs for Volcengine v0.0.47
    published on Friday, Mar 13, 2026 by Volcengine

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial