1. Packages
  2. Hpegl Provider
  3. API Docs
  4. VmaasLoadBalancer
hpegl 0.4.17 published on Monday, Apr 14, 2025 by hpe

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,
    }],
});
Copy
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"],
    }])
Copy
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
	})
}
Copy
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,
            },
        },
    });

});
Copy
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());

    }
}
Copy
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}
Copy

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 This property is required. string
The unique name of the resource.
args This property is required. VmaasLoadBalancerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. 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 This property is required. string
The unique name of the resource.
args This property is required. VmaasLoadBalancerArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. VmaasLoadBalancerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. 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",
});
Copy
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"),
})
Copy
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());
Copy
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")
Copy
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",
});
Copy
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
Copy

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 This property is required. List<VmaasLoadBalancerConfig>
Network Load Balancer Configuration
Description string
Creating the Network loadbalancer
Enabled bool
Pass true to allow for enabled and Pass false to disabled
GroupAccess VmaasLoadBalancerGroupAccess
Name string
Network loadbalancer name
VmaasLoadBalancerId string
The ID of this resource.
Configs This property is required. []VmaasLoadBalancerConfigArgs
Network Load Balancer Configuration
Description string
Creating the Network loadbalancer
Enabled bool
Pass true to allow for enabled and Pass false to disabled
GroupAccess VmaasLoadBalancerGroupAccessArgs
Name string
Network loadbalancer name
VmaasLoadBalancerId string
The ID of this resource.
configs This property is required. List<VmaasLoadBalancerConfig>
Network Load Balancer Configuration
description String
Creating the Network loadbalancer
enabled Boolean
Pass true to allow for enabled and Pass false to disabled
groupAccess VmaasLoadBalancerGroupAccess
name String
Network loadbalancer name
vmaasLoadBalancerId String
The ID of this resource.
configs This property is required. VmaasLoadBalancerConfig[]
Network Load Balancer Configuration
description string
Creating the Network loadbalancer
enabled boolean
Pass true to allow for enabled and Pass false to disabled
groupAccess VmaasLoadBalancerGroupAccess
name string
Network loadbalancer name
vmaasLoadBalancerId string
The ID of this resource.
configs This property is required. Sequence[VmaasLoadBalancerConfigArgs]
Network Load Balancer Configuration
description str
Creating the Network loadbalancer
enabled bool
Pass true to allow for enabled and Pass false to disabled
group_access VmaasLoadBalancerGroupAccessArgs
name str
Network loadbalancer name
vmaas_load_balancer_id str
The ID of this resource.
configs This property is required. List<Property Map>
Network Load Balancer Configuration
description String
Creating the Network loadbalancer
enabled Boolean
Pass true to allow for enabled and Pass false to disabled
groupAccess Property Map
name String
Network loadbalancer name
vmaasLoadBalancerId String
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
NetworkServerId double
NSX-T Integration ID
Id string
The provider-assigned unique ID for this managed resource.
LbType string
Type of Network loadbalancer
NetworkServerId float64
NSX-T Integration ID
id String
The provider-assigned unique ID for this managed resource.
lbType String
Type of Network loadbalancer
networkServerId Double
NSX-T Integration ID
id string
The provider-assigned unique ID for this managed resource.
lbType string
Type of Network loadbalancer
networkServerId number
NSX-T Integration ID
id str
The provider-assigned unique ID for this managed resource.
lb_type str
Type of Network loadbalancer
network_server_id float
NSX-T Integration ID
id String
The provider-assigned unique ID for this managed resource.
lbType String
Type of Network loadbalancer
networkServerId Number
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) -> VmaasLoadBalancer
func 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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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:
Configs List<VmaasLoadBalancerConfig>
Network Load Balancer Configuration
Description string
Creating the Network loadbalancer
Enabled bool
Pass true to allow for enabled and Pass false to disabled
GroupAccess VmaasLoadBalancerGroupAccess
LbType string
Type of Network loadbalancer
Name string
Network loadbalancer name
NetworkServerId double
NSX-T Integration ID
VmaasLoadBalancerId string
The ID of this resource.
Configs []VmaasLoadBalancerConfigArgs
Network Load Balancer Configuration
Description string
Creating the Network loadbalancer
Enabled bool
Pass true to allow for enabled and Pass false to disabled
GroupAccess VmaasLoadBalancerGroupAccessArgs
LbType string
Type of Network loadbalancer
Name string
Network loadbalancer name
NetworkServerId float64
NSX-T Integration ID
VmaasLoadBalancerId string
The ID of this resource.
configs List<VmaasLoadBalancerConfig>
Network Load Balancer Configuration
description String
Creating the Network loadbalancer
enabled Boolean
Pass true to allow for enabled and Pass false to disabled
groupAccess VmaasLoadBalancerGroupAccess
lbType String
Type of Network loadbalancer
name String
Network loadbalancer name
networkServerId Double
NSX-T Integration ID
vmaasLoadBalancerId String
The ID of this resource.
configs VmaasLoadBalancerConfig[]
Network Load Balancer Configuration
description string
Creating the Network loadbalancer
enabled boolean
Pass true to allow for enabled and Pass false to disabled
groupAccess VmaasLoadBalancerGroupAccess
lbType string
Type of Network loadbalancer
name string
Network loadbalancer name
networkServerId number
NSX-T Integration ID
vmaasLoadBalancerId string
The ID of this resource.
configs Sequence[VmaasLoadBalancerConfigArgs]
Network Load Balancer Configuration
description str
Creating the Network loadbalancer
enabled bool
Pass true to allow for enabled and Pass false to disabled
group_access VmaasLoadBalancerGroupAccessArgs
lb_type str
Type of Network loadbalancer
name str
Network loadbalancer name
network_server_id float
NSX-T Integration ID
vmaas_load_balancer_id str
The ID of this resource.
configs List<Property Map>
Network Load Balancer Configuration
description String
Creating the Network loadbalancer
enabled Boolean
Pass true to allow for enabled and Pass false to disabled
groupAccess Property Map
lbType String
Type of Network loadbalancer
name String
Network loadbalancer name
networkServerId Number
NSX-T Integration ID
vmaasLoadBalancerId String
The ID of this resource.

Supporting Types

VmaasLoadBalancerConfig
, VmaasLoadBalancerConfigArgs

Tier1Gateways This property is required. string
Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
AdminState bool
If true then 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 This property is required. string
Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
AdminState bool
If true then 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 This property is required. String
Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
adminState Boolean
If true then 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 This property is required. string
Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
adminState boolean
If true then 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 This property is required. str
Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
admin_state bool
If true then 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 This property is required. String
Provider ID of the Tier1 Gateway. Use hpeglvmaasrouter datasource to obtain the provider_id here.
adminState Boolean
If true then 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 true to allow access to all groups.
Sites List<VmaasLoadBalancerGroupAccessSite>
List of sites/groups
All bool
Pass true to allow access to all groups.
Sites []VmaasLoadBalancerGroupAccessSite
List of sites/groups
all Boolean
Pass true to allow access to all groups.
sites List<VmaasLoadBalancerGroupAccessSite>
List of sites/groups
all boolean
Pass true to allow access to all groups.
sites VmaasLoadBalancerGroupAccessSite[]
List of sites/groups
all bool
Pass true to allow access to all groups.
sites Sequence[VmaasLoadBalancerGroupAccessSite]
List of sites/groups
all Boolean
Pass true to allow access to all groups.
sites List<Property Map>
List of sites/groups

VmaasLoadBalancerGroupAccessSite
, VmaasLoadBalancerGroupAccessSiteArgs

Default bool
Group Default Selection
Id double
ID of the site/group
Default bool
Group Default Selection
Id float64
ID of the site/group
default_ Boolean
Group Default Selection
id Double
ID of the site/group
default boolean
Group Default Selection
id number
ID of the site/group
default bool
Group Default Selection
id float
ID of the site/group
default Boolean
Group Default Selection
id Number
ID of the site/group

Package Details

Repository
hpegl hpe/terraform-provider-hpegl
License
Notes
This Pulumi package is based on the hpegl Terraform Provider.