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

upcloud.LoadbalancerFrontend

Explore with Pulumi AI

This resource represents load balancer frontend 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 lbFe1 = new upcloud.LoadbalancerFrontend("lb_fe_1", {
    loadbalancer: upcloudLoadbalancer.lb.id,
    name: "lb-fe-1-test",
    mode: "http",
    port: 8080,
    defaultBackendName: upcloudLoadbalancerBackend.lbBe1.name,
    networks: [{
        name: upcloudLoadbalancer.lb.networks[1].name,
    }],
});
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",
        },
    ],
});
const lbBe1 = new upcloud.LoadbalancerBackend("lb_be_1", {
    loadbalancer: upcloudLoadbalancer.lb.id,
    name: "lb-be-1-test",
});
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_fe1 = upcloud.LoadbalancerFrontend("lb_fe_1",
    loadbalancer=upcloud_loadbalancer["lb"]["id"],
    name="lb-fe-1-test",
    mode="http",
    port=8080,
    default_backend_name=upcloud_loadbalancer_backend["lbBe1"]["name"],
    networks=[{
        "name": upcloud_loadbalancer["lb"]["networks"][1]["name"],
    }])
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",
        },
    ])
lb_be1 = upcloud.LoadbalancerBackend("lb_be_1",
    loadbalancer=upcloud_loadbalancer["lb"]["id"],
    name="lb-be-1-test")
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.NewLoadbalancerFrontend(ctx, "lb_fe_1", &upcloud.LoadbalancerFrontendArgs{
			Loadbalancer:       pulumi.Any(upcloudLoadbalancer.Lb.Id),
			Name:               pulumi.String("lb-fe-1-test"),
			Mode:               pulumi.String("http"),
			Port:               pulumi.Int(8080),
			DefaultBackendName: pulumi.Any(upcloudLoadbalancerBackend.LbBe1.Name),
			Networks: upcloud.LoadbalancerFrontendNetworkArray{
				&upcloud.LoadbalancerFrontendNetworkArgs{
					Name: pulumi.Any(upcloudLoadbalancer.Lb.Networks[1].Name),
				},
			},
		})
		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
		}
		_, err = upcloud.NewLoadbalancerBackend(ctx, "lb_be_1", &upcloud.LoadbalancerBackendArgs{
			Loadbalancer: pulumi.Any(upcloudLoadbalancer.Lb.Id),
			Name:         pulumi.String("lb-be-1-test"),
		})
		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 lbFe1 = new UpCloud.LoadbalancerFrontend("lb_fe_1", new()
    {
        Loadbalancer = upcloudLoadbalancer.Lb.Id,
        Name = "lb-fe-1-test",
        Mode = "http",
        Port = 8080,
        DefaultBackendName = upcloudLoadbalancerBackend.LbBe1.Name,
        Networks = new[]
        {
            new UpCloud.Inputs.LoadbalancerFrontendNetworkArgs
            {
                Name = upcloudLoadbalancer.Lb.Networks[1].Name,
            },
        },
    });

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

    var lbBe1 = new UpCloud.LoadbalancerBackend("lb_be_1", new()
    {
        Loadbalancer = upcloudLoadbalancer.Lb.Id,
        Name = "lb-be-1-test",
    });

});
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.LoadbalancerFrontend;
import com.pulumi.upcloud.LoadbalancerFrontendArgs;
import com.pulumi.upcloud.inputs.LoadbalancerFrontendNetworkArgs;
import com.pulumi.upcloud.Loadbalancer;
import com.pulumi.upcloud.LoadbalancerArgs;
import com.pulumi.upcloud.inputs.LoadbalancerNetworkArgs;
import com.pulumi.upcloud.LoadbalancerBackend;
import com.pulumi.upcloud.LoadbalancerBackendArgs;
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 lbFe1 = new LoadbalancerFrontend("lbFe1", LoadbalancerFrontendArgs.builder()
            .loadbalancer(upcloudLoadbalancer.lb().id())
            .name("lb-fe-1-test")
            .mode("http")
            .port(8080)
            .defaultBackendName(upcloudLoadbalancerBackend.lbBe1().name())
            .networks(LoadbalancerFrontendNetworkArgs.builder()
                .name(upcloudLoadbalancer.lb().networks()[1].name())
                .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());

        var lbBe1 = new LoadbalancerBackend("lbBe1", LoadbalancerBackendArgs.builder()
            .loadbalancer(upcloudLoadbalancer.lb().id())
            .name("lb-be-1-test")
            .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
  lbFe1:
    type: upcloud:LoadbalancerFrontend
    name: lb_fe_1
    properties:
      loadbalancer: ${upcloudLoadbalancer.lb.id}
      name: lb-fe-1-test
      mode: http
      port: 8080
      defaultBackendName: ${upcloudLoadbalancerBackend.lbBe1.name}
      networks:
        - name: ${upcloudLoadbalancer.lb.networks[1].name}
  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
  lbBe1:
    type: upcloud:LoadbalancerBackend
    name: lb_be_1
    properties:
      loadbalancer: ${upcloudLoadbalancer.lb.id}
      name: lb-be-1-test
Copy

Create LoadbalancerFrontend Resource

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

Constructor syntax

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

@overload
def LoadbalancerFrontend(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         default_backend_name: Optional[str] = None,
                         loadbalancer: Optional[str] = None,
                         mode: Optional[str] = None,
                         port: Optional[int] = None,
                         name: Optional[str] = None,
                         networks: Optional[Sequence[LoadbalancerFrontendNetworkArgs]] = None,
                         properties: Optional[LoadbalancerFrontendPropertiesArgs] = None)
func NewLoadbalancerFrontend(ctx *Context, name string, args LoadbalancerFrontendArgs, opts ...ResourceOption) (*LoadbalancerFrontend, error)
public LoadbalancerFrontend(string name, LoadbalancerFrontendArgs args, CustomResourceOptions? opts = null)
public LoadbalancerFrontend(String name, LoadbalancerFrontendArgs args)
public LoadbalancerFrontend(String name, LoadbalancerFrontendArgs args, CustomResourceOptions options)
type: upcloud:LoadbalancerFrontend
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. LoadbalancerFrontendArgs
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. LoadbalancerFrontendArgs
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. LoadbalancerFrontendArgs
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. LoadbalancerFrontendArgs
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. LoadbalancerFrontendArgs
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 loadbalancerFrontendResource = new UpCloud.LoadbalancerFrontend("loadbalancerFrontendResource", new()
{
    DefaultBackendName = "string",
    Loadbalancer = "string",
    Mode = "string",
    Port = 0,
    Name = "string",
    Networks = new[]
    {
        new UpCloud.Inputs.LoadbalancerFrontendNetworkArgs
        {
            Name = "string",
        },
    },
    Properties = new UpCloud.Inputs.LoadbalancerFrontendPropertiesArgs
    {
        Http2Enabled = false,
        InboundProxyProtocol = false,
        TimeoutClient = 0,
    },
});
Copy
example, err := upcloud.NewLoadbalancerFrontend(ctx, "loadbalancerFrontendResource", &upcloud.LoadbalancerFrontendArgs{
	DefaultBackendName: pulumi.String("string"),
	Loadbalancer:       pulumi.String("string"),
	Mode:               pulumi.String("string"),
	Port:               pulumi.Int(0),
	Name:               pulumi.String("string"),
	Networks: upcloud.LoadbalancerFrontendNetworkArray{
		&upcloud.LoadbalancerFrontendNetworkArgs{
			Name: pulumi.String("string"),
		},
	},
	Properties: &upcloud.LoadbalancerFrontendPropertiesArgs{
		Http2Enabled:         pulumi.Bool(false),
		InboundProxyProtocol: pulumi.Bool(false),
		TimeoutClient:        pulumi.Int(0),
	},
})
Copy
var loadbalancerFrontendResource = new LoadbalancerFrontend("loadbalancerFrontendResource", LoadbalancerFrontendArgs.builder()
    .defaultBackendName("string")
    .loadbalancer("string")
    .mode("string")
    .port(0)
    .name("string")
    .networks(LoadbalancerFrontendNetworkArgs.builder()
        .name("string")
        .build())
    .properties(LoadbalancerFrontendPropertiesArgs.builder()
        .http2Enabled(false)
        .inboundProxyProtocol(false)
        .timeoutClient(0)
        .build())
    .build());
Copy
loadbalancer_frontend_resource = upcloud.LoadbalancerFrontend("loadbalancerFrontendResource",
    default_backend_name="string",
    loadbalancer="string",
    mode="string",
    port=0,
    name="string",
    networks=[{
        "name": "string",
    }],
    properties={
        "http2_enabled": False,
        "inbound_proxy_protocol": False,
        "timeout_client": 0,
    })
Copy
const loadbalancerFrontendResource = new upcloud.LoadbalancerFrontend("loadbalancerFrontendResource", {
    defaultBackendName: "string",
    loadbalancer: "string",
    mode: "string",
    port: 0,
    name: "string",
    networks: [{
        name: "string",
    }],
    properties: {
        http2Enabled: false,
        inboundProxyProtocol: false,
        timeoutClient: 0,
    },
});
Copy
type: upcloud:LoadbalancerFrontend
properties:
    defaultBackendName: string
    loadbalancer: string
    mode: string
    name: string
    networks:
        - name: string
    port: 0
    properties:
        http2Enabled: false
        inboundProxyProtocol: false
        timeoutClient: 0
Copy

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

DefaultBackendName This property is required. string
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
Loadbalancer This property is required. string
UUID of the load balancer to which the frontend is connected.
Mode This property is required. string
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
Port This property is required. int
Port to listen for incoming requests.
Name string
The name of the frontend. Must be unique within the load balancer service.
Networks List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerFrontendNetwork>
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
Properties UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerFrontendProperties
DefaultBackendName This property is required. string
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
Loadbalancer This property is required. string
UUID of the load balancer to which the frontend is connected.
Mode This property is required. string
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
Port This property is required. int
Port to listen for incoming requests.
Name string
The name of the frontend. Must be unique within the load balancer service.
Networks []LoadbalancerFrontendNetworkArgs
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
Properties LoadbalancerFrontendPropertiesArgs
defaultBackendName This property is required. String
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer This property is required. String
UUID of the load balancer to which the frontend is connected.
mode This property is required. String
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
port This property is required. Integer
Port to listen for incoming requests.
name String
The name of the frontend. Must be unique within the load balancer service.
networks List<LoadbalancerFrontendNetwork>
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
properties LoadbalancerFrontendProperties
defaultBackendName This property is required. string
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer This property is required. string
UUID of the load balancer to which the frontend is connected.
mode This property is required. string
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
port This property is required. number
Port to listen for incoming requests.
name string
The name of the frontend. Must be unique within the load balancer service.
networks LoadbalancerFrontendNetwork[]
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
properties LoadbalancerFrontendProperties
default_backend_name This property is required. str
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer This property is required. str
UUID of the load balancer to which the frontend is connected.
mode This property is required. str
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
port This property is required. int
Port to listen for incoming requests.
name str
The name of the frontend. Must be unique within the load balancer service.
networks Sequence[LoadbalancerFrontendNetworkArgs]
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
properties LoadbalancerFrontendPropertiesArgs
defaultBackendName This property is required. String
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer This property is required. String
UUID of the load balancer to which the frontend is connected.
mode This property is required. String
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
port This property is required. Number
Port to listen for incoming requests.
name String
The name of the frontend. Must be unique within the load balancer service.
networks List<Property Map>
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
properties Property Map

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
Rules List<string>
Set of frontend rule names.
TlsConfigs List<string>
Set of TLS config names.
Id string
The provider-assigned unique ID for this managed resource.
Rules []string
Set of frontend rule names.
TlsConfigs []string
Set of TLS config names.
id String
The provider-assigned unique ID for this managed resource.
rules List<String>
Set of frontend rule names.
tlsConfigs List<String>
Set of TLS config names.
id string
The provider-assigned unique ID for this managed resource.
rules string[]
Set of frontend rule names.
tlsConfigs string[]
Set of TLS config names.
id str
The provider-assigned unique ID for this managed resource.
rules Sequence[str]
Set of frontend rule names.
tls_configs Sequence[str]
Set of TLS config names.
id String
The provider-assigned unique ID for this managed resource.
rules List<String>
Set of frontend rule names.
tlsConfigs List<String>
Set of TLS config names.

Look up Existing LoadbalancerFrontend Resource

Get an existing LoadbalancerFrontend 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?: LoadbalancerFrontendState, opts?: CustomResourceOptions): LoadbalancerFrontend
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        default_backend_name: Optional[str] = None,
        loadbalancer: Optional[str] = None,
        mode: Optional[str] = None,
        name: Optional[str] = None,
        networks: Optional[Sequence[LoadbalancerFrontendNetworkArgs]] = None,
        port: Optional[int] = None,
        properties: Optional[LoadbalancerFrontendPropertiesArgs] = None,
        rules: Optional[Sequence[str]] = None,
        tls_configs: Optional[Sequence[str]] = None) -> LoadbalancerFrontend
func GetLoadbalancerFrontend(ctx *Context, name string, id IDInput, state *LoadbalancerFrontendState, opts ...ResourceOption) (*LoadbalancerFrontend, error)
public static LoadbalancerFrontend Get(string name, Input<string> id, LoadbalancerFrontendState? state, CustomResourceOptions? opts = null)
public static LoadbalancerFrontend get(String name, Output<String> id, LoadbalancerFrontendState state, CustomResourceOptions options)
resources:  _:    type: upcloud:LoadbalancerFrontend    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:
DefaultBackendName string
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
Loadbalancer string
UUID of the load balancer to which the frontend is connected.
Mode string
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
Name string
The name of the frontend. Must be unique within the load balancer service.
Networks List<UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerFrontendNetwork>
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
Port int
Port to listen for incoming requests.
Properties UpCloud.Pulumi.UpCloud.Inputs.LoadbalancerFrontendProperties
Rules List<string>
Set of frontend rule names.
TlsConfigs List<string>
Set of TLS config names.
DefaultBackendName string
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
Loadbalancer string
UUID of the load balancer to which the frontend is connected.
Mode string
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
Name string
The name of the frontend. Must be unique within the load balancer service.
Networks []LoadbalancerFrontendNetworkArgs
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
Port int
Port to listen for incoming requests.
Properties LoadbalancerFrontendPropertiesArgs
Rules []string
Set of frontend rule names.
TlsConfigs []string
Set of TLS config names.
defaultBackendName String
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer String
UUID of the load balancer to which the frontend is connected.
mode String
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
name String
The name of the frontend. Must be unique within the load balancer service.
networks List<LoadbalancerFrontendNetwork>
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
port Integer
Port to listen for incoming requests.
properties LoadbalancerFrontendProperties
rules List<String>
Set of frontend rule names.
tlsConfigs List<String>
Set of TLS config names.
defaultBackendName string
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer string
UUID of the load balancer to which the frontend is connected.
mode string
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
name string
The name of the frontend. Must be unique within the load balancer service.
networks LoadbalancerFrontendNetwork[]
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
port number
Port to listen for incoming requests.
properties LoadbalancerFrontendProperties
rules string[]
Set of frontend rule names.
tlsConfigs string[]
Set of TLS config names.
default_backend_name str
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer str
UUID of the load balancer to which the frontend is connected.
mode str
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
name str
The name of the frontend. Must be unique within the load balancer service.
networks Sequence[LoadbalancerFrontendNetworkArgs]
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
port int
Port to listen for incoming requests.
properties LoadbalancerFrontendPropertiesArgs
rules Sequence[str]
Set of frontend rule names.
tls_configs Sequence[str]
Set of TLS config names.
defaultBackendName String
The name of the backend where traffic will be routed by default. The default backend can be overridden in frontend rules. Note that the frontend resource depends on the default backend resource. Use the name field of a backend resource as the value for this field (like in the example above) or the depends_on meta argument to ensure the resources are created and destroyed in the correct order.
loadbalancer String
UUID of the load balancer to which the frontend is connected.
mode String
When load balancer operating in tcp mode it acts as a layer 4 proxy. In http mode it acts as a layer 7 proxy.
name String
The name of the frontend. Must be unique within the load balancer service.
networks List<Property Map>
Networks that frontend will be listening. Networks are required if load balancer has networks defined. This field will be required when deprecated field network is removed from load balancer resource.
port Number
Port to listen for incoming requests.
properties Property Map
rules List<String>
Set of frontend rule names.
tlsConfigs List<String>
Set of TLS config names.

Supporting Types

LoadbalancerFrontendNetwork
, LoadbalancerFrontendNetworkArgs

Name This property is required. string
Name of the load balancer network.
Name This property is required. string
Name of the load balancer network.
name This property is required. String
Name of the load balancer network.
name This property is required. string
Name of the load balancer network.
name This property is required. str
Name of the load balancer network.
name This property is required. String
Name of the load balancer network.

LoadbalancerFrontendProperties
, LoadbalancerFrontendPropertiesArgs

Http2Enabled bool
Enable or disable HTTP/2 support.
InboundProxyProtocol bool
Enable or disable inbound proxy protocol support.
TimeoutClient int
Client request timeout in seconds.
Http2Enabled bool
Enable or disable HTTP/2 support.
InboundProxyProtocol bool
Enable or disable inbound proxy protocol support.
TimeoutClient int
Client request timeout in seconds.
http2Enabled Boolean
Enable or disable HTTP/2 support.
inboundProxyProtocol Boolean
Enable or disable inbound proxy protocol support.
timeoutClient Integer
Client request timeout in seconds.
http2Enabled boolean
Enable or disable HTTP/2 support.
inboundProxyProtocol boolean
Enable or disable inbound proxy protocol support.
timeoutClient number
Client request timeout in seconds.
http2_enabled bool
Enable or disable HTTP/2 support.
inbound_proxy_protocol bool
Enable or disable inbound proxy protocol support.
timeout_client int
Client request timeout in seconds.
http2Enabled Boolean
Enable or disable HTTP/2 support.
inboundProxyProtocol Boolean
Enable or disable inbound proxy protocol support.
timeoutClient Number
Client request timeout in seconds.

Package Details

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