1. Packages
  2. UpCloud
  3. API Docs
  4. Loadbalancer
UpCloud v0.1.0 published on Friday, Mar 14, 2025 by UpCloudLtd

upcloud.Loadbalancer

Explore with Pulumi AI

This resource represents Managed Load Balancer service.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as upcloud from "@upcloud/pulumi-upcloud";

const config = new pulumi.Config();
const lbZone = config.get("lbZone") || "fi-hel2";
const lbNetwork = new upcloud.Network("lb_network", {
    name: "lb-test-net",
    zone: lbZone,
    ipNetwork: {
        address: "10.0.0.0/24",
        dhcp: true,
        family: "IPv4",
    },
});
const lb = new upcloud.Loadbalancer("lb", {
    configuredStatus: "started",
    name: "lb-test",
    plan: "development",
    zone: lbZone,
    networks: [
        {
            name: "Private-Net",
            type: "private",
            family: "IPv4",
            network: upcloudNetwork.lbNetwork.id,
        },
        {
            name: "Public-Net",
            type: "public",
            family: "IPv4",
        },
    ],
});
Copy
import pulumi
import pulumi_upcloud as upcloud

config = pulumi.Config()
lb_zone = config.get("lbZone")
if lb_zone is None:
    lb_zone = "fi-hel2"
lb_network = upcloud.Network("lb_network",
    name="lb-test-net",
    zone=lb_zone,
    ip_network={
        "address": "10.0.0.0/24",
        "dhcp": True,
        "family": "IPv4",
    })
lb = upcloud.Loadbalancer("lb",
    configured_status="started",
    name="lb-test",
    plan="development",
    zone=lb_zone,
    networks=[
        {
            "name": "Private-Net",
            "type": "private",
            "family": "IPv4",
            "network": upcloud_network["lbNetwork"]["id"],
        },
        {
            "name": "Public-Net",
            "type": "public",
            "family": "IPv4",
        },
    ])
Copy
package main

import (
	"github.com/UpCloudLtd/pulumi-upcloud/sdk/go/upcloud"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		lbZone := "fi-hel2"
		if param := cfg.Get("lbZone"); param != "" {
			lbZone = param
		}
		_, err := upcloud.NewNetwork(ctx, "lb_network", &upcloud.NetworkArgs{
			Name: pulumi.String("lb-test-net"),
			Zone: pulumi.String(lbZone),
			IpNetwork: &upcloud.NetworkIpNetworkArgs{
				Address: pulumi.String("10.0.0.0/24"),
				Dhcp:    pulumi.Bool(true),
				Family:  pulumi.String("IPv4"),
			},
		})
		if err != nil {
			return err
		}
		_, err = upcloud.NewLoadbalancer(ctx, "lb", &upcloud.LoadbalancerArgs{
			ConfiguredStatus: pulumi.String("started"),
			Name:             pulumi.String("lb-test"),
			Plan:             pulumi.String("development"),
			Zone:             pulumi.String(lbZone),
			Networks: upcloud.LoadbalancerNetworkArray{
				&upcloud.LoadbalancerNetworkArgs{
					Name:    pulumi.String("Private-Net"),
					Type:    pulumi.String("private"),
					Family:  pulumi.String("IPv4"),
					Network: pulumi.Any(upcloudNetwork.LbNetwork.Id),
				},
				&upcloud.LoadbalancerNetworkArgs{
					Name:   pulumi.String("Public-Net"),
					Type:   pulumi.String("public"),
					Family: pulumi.String("IPv4"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using UpCloud = UpCloud.Pulumi.UpCloud;

return await Deployment.RunAsync(() => 
{
    var config = new Config();
    var lbZone = config.Get("lbZone") ?? "fi-hel2";
    var lbNetwork = new UpCloud.Network("lb_network", new()
    {
        Name = "lb-test-net",
        Zone = lbZone,
        IpNetwork = new UpCloud.Inputs.NetworkIpNetworkArgs
        {
            Address = "10.0.0.0/24",
            Dhcp = true,
            Family = "IPv4",
        },
    });

    var lb = new UpCloud.Loadbalancer("lb", new()
    {
        ConfiguredStatus = "started",
        Name = "lb-test",
        Plan = "development",
        Zone = lbZone,
        Networks = new[]
        {
            new UpCloud.Inputs.LoadbalancerNetworkArgs
            {
                Name = "Private-Net",
                Type = "private",
                Family = "IPv4",
                Network = upcloudNetwork.LbNetwork.Id,
            },
            new UpCloud.Inputs.LoadbalancerNetworkArgs
            {
                Name = "Public-Net",
                Type = "public",
                Family = "IPv4",
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.upcloud.Network;
import com.pulumi.upcloud.NetworkArgs;
import com.pulumi.upcloud.inputs.NetworkIpNetworkArgs;
import com.pulumi.upcloud.Loadbalancer;
import com.pulumi.upcloud.LoadbalancerArgs;
import com.pulumi.upcloud.inputs.LoadbalancerNetworkArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        final var config = ctx.config();
        final var lbZone = config.get("lbZone").orElse("fi-hel2");
        var lbNetwork = new Network("lbNetwork", NetworkArgs.builder()
            .name("lb-test-net")
            .zone(lbZone)
            .ipNetwork(NetworkIpNetworkArgs.builder()
                .address("10.0.0.0/24")
                .dhcp(true)
                .family("IPv4")
                .build())
            .build());

        var lb = new Loadbalancer("lb", LoadbalancerArgs.builder()
            .configuredStatus("started")
            .name("lb-test")
            .plan("development")
            .zone(lbZone)
            .networks(            
                LoadbalancerNetworkArgs.builder()
                    .name("Private-Net")
                    .type("private")
                    .family("IPv4")
                    .network(upcloudNetwork.lbNetwork().id())
                    .build(),
                LoadbalancerNetworkArgs.builder()
                    .name("Public-Net")
                    .type("public")
                    .family("IPv4")
                    .build())
            .build());

    }
}
Copy
configuration:
  lbZone:
    type: string
    default: fi-hel2
resources:
  lbNetwork:
    type: upcloud:Network
    name: lb_network
    properties:
      name: lb-test-net
      zone: ${lbZone}
      ipNetwork:
        address: 10.0.0.0/24
        dhcp: true
        family: IPv4
  lb:
    type: upcloud:Loadbalancer
    properties:
      configuredStatus: started
      name: lb-test
      plan: development
      zone: ${lbZone}
      networks:
        - name: Private-Net
          type: private
          family: IPv4
          network: ${upcloudNetwork.lbNetwork.id}
        - name: Public-Net
          type: public
          family: IPv4
Copy

Create Loadbalancer Resource

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

Constructor syntax

new Loadbalancer(name: string, args: LoadbalancerArgs, opts?: CustomResourceOptions);
@overload
def Loadbalancer(resource_name: str,
                 args: LoadbalancerArgs,
                 opts: Optional[ResourceOptions] = None)

@overload
def Loadbalancer(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 plan: Optional[str] = None,
                 zone: Optional[str] = None,
                 configured_status: Optional[str] = None,
                 labels: Optional[Mapping[str, str]] = None,
                 maintenance_dow: Optional[str] = None,
                 maintenance_time: Optional[str] = None,
                 name: Optional[str] = None,
                 network: Optional[str] = None,
                 networks: Optional[Sequence[LoadbalancerNetworkArgs]] = None)
func NewLoadbalancer(ctx *Context, name string, args LoadbalancerArgs, opts ...ResourceOption) (*Loadbalancer, error)
public Loadbalancer(string name, LoadbalancerArgs args, CustomResourceOptions? opts = null)
public Loadbalancer(String name, LoadbalancerArgs args)
public Loadbalancer(String name, LoadbalancerArgs args, CustomResourceOptions options)
type: upcloud:Loadbalancer
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. LoadbalancerArgs
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. LoadbalancerArgs
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. LoadbalancerArgs
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. LoadbalancerArgs
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. LoadbalancerArgs
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 loadbalancerResource = new UpCloud.Loadbalancer("loadbalancerResource", new()
{
    Plan = "string",
    Zone = "string",
    ConfiguredStatus = "string",
    Labels = 
    {
        { "string", "string" },
    },
    MaintenanceDow = "string",
    MaintenanceTime = "string",
    Name = "string",
    Networks = new[]
    {
        new UpCloud.Inputs.LoadbalancerNetworkArgs
        {
            Family = "string",
            Name = "string",
            Type = "string",
            DnsName = "string",
            Id = "string",
            Network = "string",
        },
    },
});
Copy
example, err := upcloud.NewLoadbalancer(ctx, "loadbalancerResource", &upcloud.LoadbalancerArgs{
	Plan:             pulumi.String("string"),
	Zone:             pulumi.String("string"),
	ConfiguredStatus: pulumi.String("string"),
	Labels: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	MaintenanceDow:  pulumi.String("string"),
	MaintenanceTime: pulumi.String("string"),
	Name:            pulumi.String("string"),
	Networks: upcloud.LoadbalancerNetworkArray{
		&upcloud.LoadbalancerNetworkArgs{
			Family:  pulumi.String("string"),
			Name:    pulumi.String("string"),
			Type:    pulumi.String("string"),
			DnsName: pulumi.String("string"),
			Id:      pulumi.String("string"),
			Network: pulumi.String("string"),
		},
	},
})
Copy
var loadbalancerResource = new Loadbalancer("loadbalancerResource", LoadbalancerArgs.builder()
    .plan("string")
    .zone("string")
    .configuredStatus("string")
    .labels(Map.of("string", "string"))
    .maintenanceDow("string")
    .maintenanceTime("string")
    .name("string")
    .networks(LoadbalancerNetworkArgs.builder()
        .family("string")
        .name("string")
        .type("string")
        .dnsName("string")
        .id("string")
        .network("string")
        .build())
    .build());
Copy
loadbalancer_resource = upcloud.Loadbalancer("loadbalancerResource",
    plan="string",
    zone="string",
    configured_status="string",
    labels={
        "string": "string",
    },
    maintenance_dow="string",
    maintenance_time="string",
    name="string",
    networks=[{
        "family": "string",
        "name": "string",
        "type": "string",
        "dns_name": "string",
        "id": "string",
        "network": "string",
    }])
Copy
const loadbalancerResource = new upcloud.Loadbalancer("loadbalancerResource", {
    plan: "string",
    zone: "string",
    configuredStatus: "string",
    labels: {
        string: "string",
    },
    maintenanceDow: "string",
    maintenanceTime: "string",
    name: "string",
    networks: [{
        family: "string",
        name: "string",
        type: "string",
        dnsName: "string",
        id: "string",
        network: "string",
    }],
});
Copy
type: upcloud:Loadbalancer
properties:
    configuredStatus: string
    labels:
        string: string
    maintenanceDow: string
    maintenanceTime: string
    name: string
    networks:
        - dnsName: string
          family: string
          id: string
          name: string
          network: string
          type: string
    plan: string
    zone: string
Copy

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

Plan This property is required. string
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
Zone This property is required. string
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
ConfiguredStatus string
The service configured status indicates the service's current intended status. Managed by the customer.
Labels Dictionary<string, string>
User defined key-value pairs to classify the load balancer.
MaintenanceDow string
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
MaintenanceTime string
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
Name string
The name of the service. Must be unique within customer account.
Network string
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

Networks List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerNetwork>
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
Plan This property is required. string
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
Zone This property is required. string
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
ConfiguredStatus string
The service configured status indicates the service's current intended status. Managed by the customer.
Labels map[string]string
User defined key-value pairs to classify the load balancer.
MaintenanceDow string
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
MaintenanceTime string
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
Name string
The name of the service. Must be unique within customer account.
Network string
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

Networks []LoadbalancerNetworkArgs
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
plan This property is required. String
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
zone This property is required. String
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
configuredStatus String
The service configured status indicates the service's current intended status. Managed by the customer.
labels Map<String,String>
User defined key-value pairs to classify the load balancer.
maintenanceDow String
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenanceTime String
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name String
The name of the service. Must be unique within customer account.
network String
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks List<LoadbalancerNetwork>
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
plan This property is required. string
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
zone This property is required. string
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
configuredStatus string
The service configured status indicates the service's current intended status. Managed by the customer.
labels {[key: string]: string}
User defined key-value pairs to classify the load balancer.
maintenanceDow string
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenanceTime string
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name string
The name of the service. Must be unique within customer account.
network string
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks LoadbalancerNetwork[]
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
plan This property is required. str
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
zone This property is required. str
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
configured_status str
The service configured status indicates the service's current intended status. Managed by the customer.
labels Mapping[str, str]
User defined key-value pairs to classify the load balancer.
maintenance_dow str
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenance_time str
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name str
The name of the service. Must be unique within customer account.
network str
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks Sequence[LoadbalancerNetworkArgs]
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
plan This property is required. String
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
zone This property is required. String
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
configuredStatus String
The service configured status indicates the service's current intended status. Managed by the customer.
labels Map<String>
User defined key-value pairs to classify the load balancer.
maintenanceDow String
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenanceTime String
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name String
The name of the service. Must be unique within customer account.
network String
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks List<Property Map>
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.

Outputs

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

Backends List<string>
Backends are groups of customer servers whose traffic should be balanced.
DnsName string
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

Frontends List<string>
Frontends receive the traffic before dispatching it to the backends.
Id string
The provider-assigned unique ID for this managed resource.
Nodes List<UpCloud.Pulumi.UpCloud.Outputs.LoadbalancerNode>
Nodes are instances running load balancer service
OperationalState string
The service operational state indicates the service's current operational, effective state. Managed by the system.
Resolvers List<string>
Domain Name Resolvers.
Backends []string
Backends are groups of customer servers whose traffic should be balanced.
DnsName string
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

Frontends []string
Frontends receive the traffic before dispatching it to the backends.
Id string
The provider-assigned unique ID for this managed resource.
Nodes []LoadbalancerNode
Nodes are instances running load balancer service
OperationalState string
The service operational state indicates the service's current operational, effective state. Managed by the system.
Resolvers []string
Domain Name Resolvers.
backends List<String>
Backends are groups of customer servers whose traffic should be balanced.
dnsName String
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends List<String>
Frontends receive the traffic before dispatching it to the backends.
id String
The provider-assigned unique ID for this managed resource.
nodes List<LoadbalancerNode>
Nodes are instances running load balancer service
operationalState String
The service operational state indicates the service's current operational, effective state. Managed by the system.
resolvers List<String>
Domain Name Resolvers.
backends string[]
Backends are groups of customer servers whose traffic should be balanced.
dnsName string
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends string[]
Frontends receive the traffic before dispatching it to the backends.
id string
The provider-assigned unique ID for this managed resource.
nodes LoadbalancerNode[]
Nodes are instances running load balancer service
operationalState string
The service operational state indicates the service's current operational, effective state. Managed by the system.
resolvers string[]
Domain Name Resolvers.
backends Sequence[str]
Backends are groups of customer servers whose traffic should be balanced.
dns_name str
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends Sequence[str]
Frontends receive the traffic before dispatching it to the backends.
id str
The provider-assigned unique ID for this managed resource.
nodes Sequence[LoadbalancerNode]
Nodes are instances running load balancer service
operational_state str
The service operational state indicates the service's current operational, effective state. Managed by the system.
resolvers Sequence[str]
Domain Name Resolvers.
backends List<String>
Backends are groups of customer servers whose traffic should be balanced.
dnsName String
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends List<String>
Frontends receive the traffic before dispatching it to the backends.
id String
The provider-assigned unique ID for this managed resource.
nodes List<Property Map>
Nodes are instances running load balancer service
operationalState String
The service operational state indicates the service's current operational, effective state. Managed by the system.
resolvers List<String>
Domain Name Resolvers.

Look up Existing Loadbalancer Resource

Get an existing Loadbalancer 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?: LoadbalancerState, opts?: CustomResourceOptions): Loadbalancer
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        backends: Optional[Sequence[str]] = None,
        configured_status: Optional[str] = None,
        dns_name: Optional[str] = None,
        frontends: Optional[Sequence[str]] = None,
        labels: Optional[Mapping[str, str]] = None,
        maintenance_dow: Optional[str] = None,
        maintenance_time: Optional[str] = None,
        name: Optional[str] = None,
        network: Optional[str] = None,
        networks: Optional[Sequence[LoadbalancerNetworkArgs]] = None,
        nodes: Optional[Sequence[LoadbalancerNodeArgs]] = None,
        operational_state: Optional[str] = None,
        plan: Optional[str] = None,
        resolvers: Optional[Sequence[str]] = None,
        zone: Optional[str] = None) -> Loadbalancer
func GetLoadbalancer(ctx *Context, name string, id IDInput, state *LoadbalancerState, opts ...ResourceOption) (*Loadbalancer, error)
public static Loadbalancer Get(string name, Input<string> id, LoadbalancerState? state, CustomResourceOptions? opts = null)
public static Loadbalancer get(String name, Output<String> id, LoadbalancerState state, CustomResourceOptions options)
resources:  _:    type: upcloud:Loadbalancer    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:
Backends List<string>
Backends are groups of customer servers whose traffic should be balanced.
ConfiguredStatus string
The service configured status indicates the service's current intended status. Managed by the customer.
DnsName string
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

Frontends List<string>
Frontends receive the traffic before dispatching it to the backends.
Labels Dictionary<string, string>
User defined key-value pairs to classify the load balancer.
MaintenanceDow string
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
MaintenanceTime string
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
Name string
The name of the service. Must be unique within customer account.
Network string
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

Networks List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerNetwork>
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
Nodes List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerNode>
Nodes are instances running load balancer service
OperationalState string
The service operational state indicates the service's current operational, effective state. Managed by the system.
Plan string
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
Resolvers List<string>
Domain Name Resolvers.
Zone string
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
Backends []string
Backends are groups of customer servers whose traffic should be balanced.
ConfiguredStatus string
The service configured status indicates the service's current intended status. Managed by the customer.
DnsName string
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

Frontends []string
Frontends receive the traffic before dispatching it to the backends.
Labels map[string]string
User defined key-value pairs to classify the load balancer.
MaintenanceDow string
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
MaintenanceTime string
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
Name string
The name of the service. Must be unique within customer account.
Network string
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

Networks []LoadbalancerNetworkArgs
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
Nodes []LoadbalancerNodeArgs
Nodes are instances running load balancer service
OperationalState string
The service operational state indicates the service's current operational, effective state. Managed by the system.
Plan string
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
Resolvers []string
Domain Name Resolvers.
Zone string
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
backends List<String>
Backends are groups of customer servers whose traffic should be balanced.
configuredStatus String
The service configured status indicates the service's current intended status. Managed by the customer.
dnsName String
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends List<String>
Frontends receive the traffic before dispatching it to the backends.
labels Map<String,String>
User defined key-value pairs to classify the load balancer.
maintenanceDow String
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenanceTime String
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name String
The name of the service. Must be unique within customer account.
network String
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks List<LoadbalancerNetwork>
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
nodes List<LoadbalancerNode>
Nodes are instances running load balancer service
operationalState String
The service operational state indicates the service's current operational, effective state. Managed by the system.
plan String
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
resolvers List<String>
Domain Name Resolvers.
zone String
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
backends string[]
Backends are groups of customer servers whose traffic should be balanced.
configuredStatus string
The service configured status indicates the service's current intended status. Managed by the customer.
dnsName string
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends string[]
Frontends receive the traffic before dispatching it to the backends.
labels {[key: string]: string}
User defined key-value pairs to classify the load balancer.
maintenanceDow string
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenanceTime string
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name string
The name of the service. Must be unique within customer account.
network string
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks LoadbalancerNetwork[]
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
nodes LoadbalancerNode[]
Nodes are instances running load balancer service
operationalState string
The service operational state indicates the service's current operational, effective state. Managed by the system.
plan string
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
resolvers string[]
Domain Name Resolvers.
zone string
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
backends Sequence[str]
Backends are groups of customer servers whose traffic should be balanced.
configured_status str
The service configured status indicates the service's current intended status. Managed by the customer.
dns_name str
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends Sequence[str]
Frontends receive the traffic before dispatching it to the backends.
labels Mapping[str, str]
User defined key-value pairs to classify the load balancer.
maintenance_dow str
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenance_time str
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name str
The name of the service. Must be unique within customer account.
network str
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks Sequence[LoadbalancerNetworkArgs]
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
nodes Sequence[LoadbalancerNodeArgs]
Nodes are instances running load balancer service
operational_state str
The service operational state indicates the service's current operational, effective state. Managed by the system.
plan str
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
resolvers Sequence[str]
Domain Name Resolvers.
zone str
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.
backends List<String>
Backends are groups of customer servers whose traffic should be balanced.
configuredStatus String
The service configured status indicates the service's current intended status. Managed by the customer.
dnsName String
DNS name of the load balancer

Deprecated: Use 'networks' to get network DNS name

frontends List<String>
Frontends receive the traffic before dispatching it to the backends.
labels Map<String>
User defined key-value pairs to classify the load balancer.
maintenanceDow String
The day of the week on which maintenance will be performed. If not provided, we will randomly select a weekend day. Valid values monday|tuesday|wednesday|thursday|friday|saturday|sunday.
maintenanceTime String
The time at which the maintenance will begin in UTC. A 2-hour timeframe has been allocated for maintenance. During this period, the multi-node production plans will not experience any downtime, while the one-node plans will have a downtime of 1-2 minutes. If not provided, we will randomly select an off-peak time. Needs to be a valid time format in UTC HH:MM:SSZ, for example 20:01:01Z.
name String
The name of the service. Must be unique within customer account.
network String
Private network UUID where traffic will be routed. Must reside in load balancer zone.

Deprecated: Use 'networks' to define networks attached to load balancer

networks List<Property Map>
Attached Networks from where traffic consumed and routed. Private networks must reside in loadbalancer zone.
nodes List<Property Map>
Nodes are instances running load balancer service
operationalState String
The service operational state indicates the service's current operational, effective state. Managed by the system.
plan String
Plan which the service will have. You can list available load balancer plans with upctl loadbalancer plans
resolvers List<String>
Domain Name Resolvers.
zone String
Zone in which the service will be hosted, e.g. fi-hel1. You can list available zones with upctl zone list.

Supporting Types

LoadbalancerNetwork
, LoadbalancerNetworkArgs

Family This property is required. string
Network family. Currently only IPv4 is supported.
Name This property is required. string
The name of the network. Must be unique within the service.
Type This property is required. string
The type of the network. Only one public network can be attached and at least one private network must be attached.
DnsName string
DNS name of the load balancer network
Id string
The unique identifier of the network.
Network string
Private network UUID. Required for private networks and must reside in loadbalancer zone. For public network the field should be omitted.
Family This property is required. string
Network family. Currently only IPv4 is supported.
Name This property is required. string
The name of the network. Must be unique within the service.
Type This property is required. string
The type of the network. Only one public network can be attached and at least one private network must be attached.
DnsName string
DNS name of the load balancer network
Id string
The unique identifier of the network.
Network string
Private network UUID. Required for private networks and must reside in loadbalancer zone. For public network the field should be omitted.
family This property is required. String
Network family. Currently only IPv4 is supported.
name This property is required. String
The name of the network. Must be unique within the service.
type This property is required. String
The type of the network. Only one public network can be attached and at least one private network must be attached.
dnsName String
DNS name of the load balancer network
id String
The unique identifier of the network.
network String
Private network UUID. Required for private networks and must reside in loadbalancer zone. For public network the field should be omitted.
family This property is required. string
Network family. Currently only IPv4 is supported.
name This property is required. string
The name of the network. Must be unique within the service.
type This property is required. string
The type of the network. Only one public network can be attached and at least one private network must be attached.
dnsName string
DNS name of the load balancer network
id string
The unique identifier of the network.
network string
Private network UUID. Required for private networks and must reside in loadbalancer zone. For public network the field should be omitted.
family This property is required. str
Network family. Currently only IPv4 is supported.
name This property is required. str
The name of the network. Must be unique within the service.
type This property is required. str
The type of the network. Only one public network can be attached and at least one private network must be attached.
dns_name str
DNS name of the load balancer network
id str
The unique identifier of the network.
network str
Private network UUID. Required for private networks and must reside in loadbalancer zone. For public network the field should be omitted.
family This property is required. String
Network family. Currently only IPv4 is supported.
name This property is required. String
The name of the network. Must be unique within the service.
type This property is required. String
The type of the network. Only one public network can be attached and at least one private network must be attached.
dnsName String
DNS name of the load balancer network
id String
The unique identifier of the network.
network String
Private network UUID. Required for private networks and must reside in loadbalancer zone. For public network the field should be omitted.

LoadbalancerNode
, LoadbalancerNodeArgs

Networks List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerNodeNetwork>
Networks attached to the node
OperationalState string
Node's operational state. Managed by the system.
Networks []LoadbalancerNodeNetwork
Networks attached to the node
OperationalState string
Node's operational state. Managed by the system.
networks List<LoadbalancerNodeNetwork>
Networks attached to the node
operationalState String
Node's operational state. Managed by the system.
networks LoadbalancerNodeNetwork[]
Networks attached to the node
operationalState string
Node's operational state. Managed by the system.
networks Sequence[LoadbalancerNodeNetwork]
Networks attached to the node
operational_state str
Node's operational state. Managed by the system.
networks List<Property Map>
Networks attached to the node
operationalState String
Node's operational state. Managed by the system.

LoadbalancerNodeNetwork
, LoadbalancerNodeNetworkArgs

IpAddresses List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerNodeNetworkIpAddress>
IP addresses attached to the network
Name string
The name of the network
Type string
The type of the network
IpAddresses []LoadbalancerNodeNetworkIpAddress
IP addresses attached to the network
Name string
The name of the network
Type string
The type of the network
ipAddresses List<LoadbalancerNodeNetworkIpAddress>
IP addresses attached to the network
name String
The name of the network
type String
The type of the network
ipAddresses LoadbalancerNodeNetworkIpAddress[]
IP addresses attached to the network
name string
The name of the network
type string
The type of the network
ip_addresses Sequence[LoadbalancerNodeNetworkIpAddress]
IP addresses attached to the network
name str
The name of the network
type str
The type of the network
ipAddresses List<Property Map>
IP addresses attached to the network
name String
The name of the network
type String
The type of the network

LoadbalancerNodeNetworkIpAddress
, LoadbalancerNodeNetworkIpAddressArgs

Address string
Node's IP address
Listen bool
Whether the node listens to the traffic
Address string
Node's IP address
Listen bool
Whether the node listens to the traffic
address String
Node's IP address
listen Boolean
Whether the node listens to the traffic
address string
Node's IP address
listen boolean
Whether the node listens to the traffic
address str
Node's IP address
listen bool
Whether the node listens to the traffic
address String
Node's IP address
listen Boolean
Whether the node listens to the traffic

Package Details

Repository
upcloud UpCloudLtd/pulumi-upcloud
License
Apache-2.0
Notes
This Pulumi package is based on the upcloud Terraform Provider.