hpegl.VmaasLoadBalancer
Explore with Pulumi AI
Compatible version >= 5.4.6
loadbalancer resource facilitates creating, updating
and deleting NSX-T Network Load Balancers.
hpegl.VmaasLoadBalancer resource supports NSX-T Load Balancer creation.
Example Usage
Creating NSX-T Load Balancer With All Possible Attributes
import * as pulumi from "@pulumi/pulumi";
import * as hpegl from "@pulumi/hpegl";
// (C) Copyright 2022 Hewlett Packard Enterprise Development LP
const tfLb = new hpegl.VmaasLoadBalancer("tfLb", {
    description: "Loadbalancer created using tf",
    enabled: true,
    groupAccess: {
        all: true,
    },
    configs: [{
        adminState: true,
        size: "SMALL",
        logLevel: "INFO",
        tier1Gateways: data.hpegl_vmaas_router.tier1_router.provider_id,
    }],
});
import pulumi
import pulumi_hpegl as hpegl
# (C) Copyright 2022 Hewlett Packard Enterprise Development LP
tf_lb = hpegl.VmaasLoadBalancer("tfLb",
    description="Loadbalancer created using tf",
    enabled=True,
    group_access={
        "all": True,
    },
    configs=[{
        "admin_state": True,
        "size": "SMALL",
        "log_level": "INFO",
        "tier1_gateways": data["hpegl_vmaas_router"]["tier1_router"]["provider_id"],
    }])
package main
import (
	"github.com/pulumi/pulumi-terraform-provider/sdks/go/hpegl/hpegl"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// (C) Copyright 2022 Hewlett Packard Enterprise Development LP
		_, err := hpegl.NewVmaasLoadBalancer(ctx, "tfLb", &hpegl.VmaasLoadBalancerArgs{
			Description: pulumi.String("Loadbalancer created using tf"),
			Enabled:     pulumi.Bool(true),
			GroupAccess: &hpegl.VmaasLoadBalancerGroupAccessArgs{
				All: pulumi.Bool(true),
			},
			Configs: hpegl.VmaasLoadBalancerConfigArray{
				&hpegl.VmaasLoadBalancerConfigArgs{
					AdminState:    pulumi.Bool(true),
					Size:          pulumi.String("SMALL"),
					LogLevel:      pulumi.String("INFO"),
					Tier1Gateways: pulumi.Any(data.Hpegl_vmaas_router.Tier1_router.Provider_id),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Hpegl = Pulumi.Hpegl;
return await Deployment.RunAsync(() => 
{
    // (C) Copyright 2022 Hewlett Packard Enterprise Development LP
    var tfLb = new Hpegl.VmaasLoadBalancer("tfLb", new()
    {
        Description = "Loadbalancer created using tf",
        Enabled = true,
        GroupAccess = new Hpegl.Inputs.VmaasLoadBalancerGroupAccessArgs
        {
            All = true,
        },
        Configs = new[]
        {
            new Hpegl.Inputs.VmaasLoadBalancerConfigArgs
            {
                AdminState = true,
                Size = "SMALL",
                LogLevel = "INFO",
                Tier1Gateways = data.Hpegl_vmaas_router.Tier1_router.Provider_id,
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.hpegl.VmaasLoadBalancer;
import com.pulumi.hpegl.VmaasLoadBalancerArgs;
import com.pulumi.hpegl.inputs.VmaasLoadBalancerGroupAccessArgs;
import com.pulumi.hpegl.inputs.VmaasLoadBalancerConfigArgs;
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) {
        // (C) Copyright 2022 Hewlett Packard Enterprise Development LP
        var tfLb = new VmaasLoadBalancer("tfLb", VmaasLoadBalancerArgs.builder()
            .description("Loadbalancer created using tf")
            .enabled(true)
            .groupAccess(VmaasLoadBalancerGroupAccessArgs.builder()
                .all(true)
                .build())
            .configs(VmaasLoadBalancerConfigArgs.builder()
                .adminState(true)
                .size("SMALL")
                .logLevel("INFO")
                .tier1Gateways(data.hpegl_vmaas_router().tier1_router().provider_id())
                .build())
            .build());
    }
}
resources:
  # (C) Copyright 2022 Hewlett Packard Enterprise Development LP
  tfLb:
    type: hpegl:VmaasLoadBalancer
    properties:
      description: Loadbalancer created using tf
      enabled: true
      groupAccess:
        all: true
      configs:
        - adminState: true
          size: SMALL
          logLevel: INFO
          tier1Gateways: ${data.hpegl_vmaas_router.tier1_router.provider_id}
Create VmaasLoadBalancer Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new VmaasLoadBalancer(name: string, args: VmaasLoadBalancerArgs, opts?: CustomResourceOptions);@overload
def VmaasLoadBalancer(resource_name: str,
                      args: VmaasLoadBalancerArgs,
                      opts: Optional[ResourceOptions] = None)
@overload
def VmaasLoadBalancer(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      configs: Optional[Sequence[VmaasLoadBalancerConfigArgs]] = None,
                      description: Optional[str] = None,
                      enabled: Optional[bool] = None,
                      group_access: Optional[VmaasLoadBalancerGroupAccessArgs] = None,
                      name: Optional[str] = None,
                      vmaas_load_balancer_id: Optional[str] = None)func NewVmaasLoadBalancer(ctx *Context, name string, args VmaasLoadBalancerArgs, opts ...ResourceOption) (*VmaasLoadBalancer, error)public VmaasLoadBalancer(string name, VmaasLoadBalancerArgs args, CustomResourceOptions? opts = null)
public VmaasLoadBalancer(String name, VmaasLoadBalancerArgs args)
public VmaasLoadBalancer(String name, VmaasLoadBalancerArgs args, CustomResourceOptions options)
type: hpegl:VmaasLoadBalancer
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args VmaasLoadBalancerArgs
- 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 VmaasLoadBalancerArgs
- 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 VmaasLoadBalancerArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VmaasLoadBalancerArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args VmaasLoadBalancerArgs
- 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 vmaasLoadBalancerResource = new Hpegl.VmaasLoadBalancer("vmaasLoadBalancerResource", new()
{
    Configs = new[]
    {
        new Hpegl.Inputs.VmaasLoadBalancerConfigArgs
        {
            Tier1Gateways = "string",
            AdminState = false,
            LogLevel = "string",
            Size = "string",
        },
    },
    Description = "string",
    Enabled = false,
    GroupAccess = new Hpegl.Inputs.VmaasLoadBalancerGroupAccessArgs
    {
        All = false,
        Sites = new[]
        {
            new Hpegl.Inputs.VmaasLoadBalancerGroupAccessSiteArgs
            {
                Default = false,
                Id = 0,
            },
        },
    },
    Name = "string",
    VmaasLoadBalancerId = "string",
});
example, err := hpegl.NewVmaasLoadBalancer(ctx, "vmaasLoadBalancerResource", &hpegl.VmaasLoadBalancerArgs{
Configs: .VmaasLoadBalancerConfigArray{
&.VmaasLoadBalancerConfigArgs{
Tier1Gateways: pulumi.String("string"),
AdminState: pulumi.Bool(false),
LogLevel: pulumi.String("string"),
Size: pulumi.String("string"),
},
},
Description: pulumi.String("string"),
Enabled: pulumi.Bool(false),
GroupAccess: &.VmaasLoadBalancerGroupAccessArgs{
All: pulumi.Bool(false),
Sites: .VmaasLoadBalancerGroupAccessSiteArray{
&.VmaasLoadBalancerGroupAccessSiteArgs{
Default: pulumi.Bool(false),
Id: pulumi.Float64(0),
},
},
},
Name: pulumi.String("string"),
VmaasLoadBalancerId: pulumi.String("string"),
})
var vmaasLoadBalancerResource = new VmaasLoadBalancer("vmaasLoadBalancerResource", VmaasLoadBalancerArgs.builder()
    .configs(VmaasLoadBalancerConfigArgs.builder()
        .tier1Gateways("string")
        .adminState(false)
        .logLevel("string")
        .size("string")
        .build())
    .description("string")
    .enabled(false)
    .groupAccess(VmaasLoadBalancerGroupAccessArgs.builder()
        .all(false)
        .sites(VmaasLoadBalancerGroupAccessSiteArgs.builder()
            .default_(false)
            .id(0)
            .build())
        .build())
    .name("string")
    .vmaasLoadBalancerId("string")
    .build());
vmaas_load_balancer_resource = hpegl.VmaasLoadBalancer("vmaasLoadBalancerResource",
    configs=[{
        "tier1_gateways": "string",
        "admin_state": False,
        "log_level": "string",
        "size": "string",
    }],
    description="string",
    enabled=False,
    group_access={
        "all": False,
        "sites": [{
            "default": False,
            "id": 0,
        }],
    },
    name="string",
    vmaas_load_balancer_id="string")
const vmaasLoadBalancerResource = new hpegl.VmaasLoadBalancer("vmaasLoadBalancerResource", {
    configs: [{
        tier1Gateways: "string",
        adminState: false,
        logLevel: "string",
        size: "string",
    }],
    description: "string",
    enabled: false,
    groupAccess: {
        all: false,
        sites: [{
            "default": false,
            id: 0,
        }],
    },
    name: "string",
    vmaasLoadBalancerId: "string",
});
type: hpegl:VmaasLoadBalancer
properties:
    configs:
        - adminState: false
          logLevel: string
          size: string
          tier1Gateways: string
    description: string
    enabled: false
    groupAccess:
        all: false
        sites:
            - default: false
              id: 0
    name: string
    vmaasLoadBalancerId: string
VmaasLoadBalancer 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 VmaasLoadBalancer resource accepts the following input properties:
- Configs
List<VmaasLoad Balancer Config> 
- Network Load Balancer Configuration
- Description string
- Creating the Network loadbalancer
- Enabled bool
- Pass trueto allow for enabled and Passfalseto disabled
- GroupAccess VmaasLoad Balancer Group Access 
- Name string
- Network loadbalancer name
- VmaasLoad stringBalancer Id 
- The ID of this resource.
- Configs
[]VmaasLoad Balancer Config Args 
- Network Load Balancer Configuration
- Description string
- Creating the Network loadbalancer
- Enabled bool
- Pass trueto allow for enabled and Passfalseto disabled
- GroupAccess VmaasLoad Balancer Group Access Args 
- Name string
- Network loadbalancer name
- VmaasLoad stringBalancer Id 
- The ID of this resource.
- configs
List<VmaasLoad Balancer Config> 
- Network Load Balancer Configuration
- description String
- Creating the Network loadbalancer
- enabled Boolean
- Pass trueto allow for enabled and Passfalseto disabled
- groupAccess VmaasLoad Balancer Group Access 
- name String
- Network loadbalancer name
- vmaasLoad StringBalancer Id 
- The ID of this resource.
- configs
VmaasLoad Balancer Config[] 
- Network Load Balancer Configuration
- description string
- Creating the Network loadbalancer
- enabled boolean
- Pass trueto allow for enabled and Passfalseto disabled
- groupAccess VmaasLoad Balancer Group Access 
- name string
- Network loadbalancer name
- vmaasLoad stringBalancer Id 
- The ID of this resource.
- configs
Sequence[VmaasLoad Balancer Config Args] 
- Network Load Balancer Configuration
- description str
- Creating the Network loadbalancer
- enabled bool
- Pass trueto allow for enabled and Passfalseto disabled
- group_access VmaasLoad Balancer Group Access Args 
- name str
- Network loadbalancer name
- vmaas_load_ strbalancer_ id 
- The ID of this resource.
- configs List<Property Map>
- Network Load Balancer Configuration
- description String
- Creating the Network loadbalancer
- enabled Boolean
- Pass trueto allow for enabled and Passfalseto disabled
- groupAccess Property Map
- name String
- Network loadbalancer name
- vmaasLoad StringBalancer Id 
- The ID of this resource.
Outputs
All input properties are implicitly available as output properties. Additionally, the VmaasLoadBalancer resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- LbType string
- Type of Network loadbalancer
- NetworkServer doubleId 
- NSX-T Integration ID
- Id string
- The provider-assigned unique ID for this managed resource.
- LbType string
- Type of Network loadbalancer
- NetworkServer float64Id 
- NSX-T Integration ID
- id String
- The provider-assigned unique ID for this managed resource.
- lbType String
- Type of Network loadbalancer
- networkServer DoubleId 
- NSX-T Integration ID
- id string
- The provider-assigned unique ID for this managed resource.
- lbType string
- Type of Network loadbalancer
- networkServer numberId 
- NSX-T Integration ID
- id str
- The provider-assigned unique ID for this managed resource.
- lb_type str
- Type of Network loadbalancer
- network_server_ floatid 
- NSX-T Integration ID
- id String
- The provider-assigned unique ID for this managed resource.
- lbType String
- Type of Network loadbalancer
- networkServer NumberId 
- NSX-T Integration ID
Look up Existing VmaasLoadBalancer Resource
Get an existing VmaasLoadBalancer 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?: VmaasLoadBalancerState, opts?: CustomResourceOptions): VmaasLoadBalancer@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        configs: Optional[Sequence[VmaasLoadBalancerConfigArgs]] = None,
        description: Optional[str] = None,
        enabled: Optional[bool] = None,
        group_access: Optional[VmaasLoadBalancerGroupAccessArgs] = None,
        lb_type: Optional[str] = None,
        name: Optional[str] = None,
        network_server_id: Optional[float] = None,
        vmaas_load_balancer_id: Optional[str] = None) -> VmaasLoadBalancerfunc GetVmaasLoadBalancer(ctx *Context, name string, id IDInput, state *VmaasLoadBalancerState, opts ...ResourceOption) (*VmaasLoadBalancer, error)public static VmaasLoadBalancer Get(string name, Input<string> id, VmaasLoadBalancerState? state, CustomResourceOptions? opts = null)public static VmaasLoadBalancer get(String name, Output<String> id, VmaasLoadBalancerState state, CustomResourceOptions options)resources:  _:    type: hpegl:VmaasLoadBalancer    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Configs
List<VmaasLoad Balancer Config> 
- Network Load Balancer Configuration
- Description string
- Creating the Network loadbalancer
- Enabled bool
- Pass trueto allow for enabled and Passfalseto disabled
- GroupAccess VmaasLoad Balancer Group Access 
- LbType string
- Type of Network loadbalancer
- Name string
- Network loadbalancer name
- NetworkServer doubleId 
- NSX-T Integration ID
- VmaasLoad stringBalancer Id 
- The ID of this resource.
- Configs
[]VmaasLoad Balancer Config Args 
- Network Load Balancer Configuration
- Description string
- Creating the Network loadbalancer
- Enabled bool
- Pass trueto allow for enabled and Passfalseto disabled
- GroupAccess VmaasLoad Balancer Group Access Args 
- LbType string
- Type of Network loadbalancer
- Name string
- Network loadbalancer name
- NetworkServer float64Id 
- NSX-T Integration ID
- VmaasLoad stringBalancer Id 
- The ID of this resource.
- configs
List<VmaasLoad Balancer Config> 
- Network Load Balancer Configuration
- description String
- Creating the Network loadbalancer
- enabled Boolean
- Pass trueto allow for enabled and Passfalseto disabled
- groupAccess VmaasLoad Balancer Group Access 
- lbType String
- Type of Network loadbalancer
- name String
- Network loadbalancer name
- networkServer DoubleId 
- NSX-T Integration ID
- vmaasLoad StringBalancer Id 
- The ID of this resource.
- configs
VmaasLoad Balancer Config[] 
- Network Load Balancer Configuration
- description string
- Creating the Network loadbalancer
- enabled boolean
- Pass trueto allow for enabled and Passfalseto disabled
- groupAccess VmaasLoad Balancer Group Access 
- lbType string
- Type of Network loadbalancer
- name string
- Network loadbalancer name
- networkServer numberId 
- NSX-T Integration ID
- vmaasLoad stringBalancer Id 
- The ID of this resource.
- configs
Sequence[VmaasLoad Balancer Config Args] 
- Network Load Balancer Configuration
- description str
- Creating the Network loadbalancer
- enabled bool
- Pass trueto allow for enabled and Passfalseto disabled
- group_access VmaasLoad Balancer Group Access Args 
- lb_type str
- Type of Network loadbalancer
- name str
- Network loadbalancer name
- network_server_ floatid 
- NSX-T Integration ID
- vmaas_load_ strbalancer_ id 
- The ID of this resource.
- configs List<Property Map>
- Network Load Balancer Configuration
- description String
- Creating the Network loadbalancer
- enabled Boolean
- Pass trueto allow for enabled and Passfalseto disabled
- groupAccess Property Map
- lbType String
- Type of Network loadbalancer
- name String
- Network loadbalancer name
- networkServer NumberId 
- NSX-T Integration ID
- vmaasLoad StringBalancer Id 
- The ID of this resource.
Supporting Types
VmaasLoadBalancerConfig, VmaasLoadBalancerConfigArgs        
- Tier1Gateways string
- Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
- AdminState bool
- If truethen admin State rule will be active/enabled.
- LogLevel string
- In Filter. Supported Values are "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"
- Size string
- In Filter. Supported Values are "SMALL", "MEDIUM", "LARGE"
- Tier1Gateways string
- Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
- AdminState bool
- If truethen admin State rule will be active/enabled.
- LogLevel string
- In Filter. Supported Values are "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"
- Size string
- In Filter. Supported Values are "SMALL", "MEDIUM", "LARGE"
- tier1Gateways String
- Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
- adminState Boolean
- If truethen admin State rule will be active/enabled.
- logLevel String
- In Filter. Supported Values are "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"
- size String
- In Filter. Supported Values are "SMALL", "MEDIUM", "LARGE"
- tier1Gateways string
- Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
- adminState boolean
- If truethen admin State rule will be active/enabled.
- logLevel string
- In Filter. Supported Values are "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"
- size string
- In Filter. Supported Values are "SMALL", "MEDIUM", "LARGE"
- tier1_gateways str
- Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
- admin_state bool
- If truethen admin State rule will be active/enabled.
- log_level str
- In Filter. Supported Values are "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"
- size str
- In Filter. Supported Values are "SMALL", "MEDIUM", "LARGE"
- tier1Gateways String
- Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
- adminState Boolean
- If truethen admin State rule will be active/enabled.
- logLevel String
- In Filter. Supported Values are "DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL", "ALERT", "EMERGENCY"
- size String
- In Filter. Supported Values are "SMALL", "MEDIUM", "LARGE"
VmaasLoadBalancerGroupAccess, VmaasLoadBalancerGroupAccessArgs          
- All bool
- Pass trueto allow access to all groups.
- Sites
List<VmaasLoad Balancer Group Access Site> 
- List of sites/groups
- All bool
- Pass trueto allow access to all groups.
- Sites
[]VmaasLoad Balancer Group Access Site 
- List of sites/groups
- all Boolean
- Pass trueto allow access to all groups.
- sites
List<VmaasLoad Balancer Group Access Site> 
- List of sites/groups
- all boolean
- Pass trueto allow access to all groups.
- sites
VmaasLoad Balancer Group Access Site[] 
- List of sites/groups
- all bool
- Pass trueto allow access to all groups.
- sites
Sequence[VmaasLoad Balancer Group Access Site] 
- List of sites/groups
- all Boolean
- Pass trueto allow access to all groups.
- sites List<Property Map>
- List of sites/groups
VmaasLoadBalancerGroupAccessSite, VmaasLoadBalancerGroupAccessSiteArgs            
Package Details
- Repository
- hpegl hpe/terraform-provider-hpegl
- License
- Notes
- This Pulumi package is based on the hpeglTerraform Provider.