Welcome to Pulumi Registry, your window into the cloud. Read the announcement.

NodeBalancer

Provides a Linode NodeBalancer resource. This can be used to create, modify, and delete Linodes NodeBalancers in Linode’s managed load balancer service. For more information, see Getting Started with NodeBalancers and the Linode APIv4 docs.

Attributes

This resource exports the following attributes:

  • hostname - This NodeBalancer’s hostname, ending with .nodebalancer.linode.com

  • ipv4 - The Public IPv4 Address of this NodeBalancer

  • ipv6 - The Public IPv6 Address of this NodeBalancer

  • created - When this NodeBalancer was created

  • updated - When this NodeBalancer was last updated.

  • transfer - The network transfer stats for the current month

transfer

The following attributes are available on transfer:

  • in - The total transfer, in MB, used by this NodeBalancer for the current month

  • out - The total inbound transfer, in MB, used for this NodeBalancer for the current month

  • total - The total outbound transfer, in MB, used for this NodeBalancer for the current month

Example Usage

using Pulumi;
using Linode = Pulumi.Linode;

class MyStack : Stack
{
    public MyStack()
    {
        var foobar = new Linode.NodeBalancer("foobar", new Linode.NodeBalancerArgs
        {
            ClientConnThrottle = 20,
            Label = "mynodebalancer",
            Region = "us-east",
            Tags = 
            {
                "foobar",
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-linode/sdk/v3/go/linode"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := linode.NewNodeBalancer(ctx, "foobar", &linode.NodeBalancerArgs{
			ClientConnThrottle: pulumi.Int(20),
			Label:              pulumi.String("mynodebalancer"),
			Region:             pulumi.String("us-east"),
			Tags: pulumi.StringArray{
				pulumi.String("foobar"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_linode as linode

foobar = linode.NodeBalancer("foobar",
    client_conn_throttle=20,
    label="mynodebalancer",
    region="us-east",
    tags=["foobar"])
import * as pulumi from "@pulumi/pulumi";
import * as linode from "@pulumi/linode";

const foobar = new linode.NodeBalancer("foobar", {
    clientConnThrottle: 20,
    label: "mynodebalancer",
    region: "us-east",
    tags: ["foobar"],
});

Create a NodeBalancer Resource

new NodeBalancer(name: string, args: NodeBalancerArgs, opts?: CustomResourceOptions);
@overload
def NodeBalancer(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 client_conn_throttle: Optional[int] = None,
                 label: Optional[str] = None,
                 region: Optional[str] = None,
                 tags: Optional[Sequence[str]] = None)
@overload
def NodeBalancer(resource_name: str,
                 args: NodeBalancerArgs,
                 opts: Optional[ResourceOptions] = None)
func NewNodeBalancer(ctx *Context, name string, args NodeBalancerArgs, opts ...ResourceOption) (*NodeBalancer, error)
public NodeBalancer(string name, NodeBalancerArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args NodeBalancerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args NodeBalancerArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args NodeBalancerArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args NodeBalancerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

NodeBalancer Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The NodeBalancer resource accepts the following input properties:

Region string
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
ClientConnThrottle int
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
Label string
The label of the Linode NodeBalancer
Tags List<string>
A list of tags applied to this object. Tags are for organizational purposes only.
Region string
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
ClientConnThrottle int
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
Label string
The label of the Linode NodeBalancer
Tags []string
A list of tags applied to this object. Tags are for organizational purposes only.
region string
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
clientConnThrottle number
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
label string
The label of the Linode NodeBalancer
tags string[]
A list of tags applied to this object. Tags are for organizational purposes only.
region str
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
client_conn_throttle int
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
label str
The label of the Linode NodeBalancer
tags Sequence[str]
A list of tags applied to this object. Tags are for organizational purposes only.

Outputs

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

Created string
When this NodeBalancer was created.
Hostname string
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
Id string
The provider-assigned unique ID for this managed resource.
Ipv4 string
The Public IPv4 Address of this NodeBalancer
Ipv6 string
The Public IPv6 Address of this NodeBalancer
Transfers List<NodeBalancerTransfer>
Information about the amount of transfer this NodeBalancer has had so far this month.
Updated string
When this NodeBalancer was last updated.
Created string
When this NodeBalancer was created.
Hostname string
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
Id string
The provider-assigned unique ID for this managed resource.
Ipv4 string
The Public IPv4 Address of this NodeBalancer
Ipv6 string
The Public IPv6 Address of this NodeBalancer
Transfers []NodeBalancerTransfer
Information about the amount of transfer this NodeBalancer has had so far this month.
Updated string
When this NodeBalancer was last updated.
created string
When this NodeBalancer was created.
hostname string
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
id string
The provider-assigned unique ID for this managed resource.
ipv4 string
The Public IPv4 Address of this NodeBalancer
ipv6 string
The Public IPv6 Address of this NodeBalancer
transfers NodeBalancerTransfer[]
Information about the amount of transfer this NodeBalancer has had so far this month.
updated string
When this NodeBalancer was last updated.
created str
When this NodeBalancer was created.
hostname str
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
id str
The provider-assigned unique ID for this managed resource.
ipv4 str
The Public IPv4 Address of this NodeBalancer
ipv6 str
The Public IPv6 Address of this NodeBalancer
transfers Sequence[NodeBalancerTransfer]
Information about the amount of transfer this NodeBalancer has had so far this month.
updated str
When this NodeBalancer was last updated.

Look up an Existing NodeBalancer Resource

Get an existing NodeBalancer 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?: NodeBalancerState, opts?: CustomResourceOptions): NodeBalancer
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        client_conn_throttle: Optional[int] = None,
        created: Optional[str] = None,
        hostname: Optional[str] = None,
        ipv4: Optional[str] = None,
        ipv6: Optional[str] = None,
        label: Optional[str] = None,
        region: Optional[str] = None,
        tags: Optional[Sequence[str]] = None,
        transfers: Optional[Sequence[NodeBalancerTransferArgs]] = None,
        updated: Optional[str] = None) -> NodeBalancer
func GetNodeBalancer(ctx *Context, name string, id IDInput, state *NodeBalancerState, opts ...ResourceOption) (*NodeBalancer, error)
public static NodeBalancer Get(string name, Input<string> id, NodeBalancerState? state, CustomResourceOptions? opts = null)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

ClientConnThrottle int
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
Created string
When this NodeBalancer was created.
Hostname string
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
Ipv4 string
The Public IPv4 Address of this NodeBalancer
Ipv6 string
The Public IPv6 Address of this NodeBalancer
Label string
The label of the Linode NodeBalancer
Region string
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
Tags List<string>
A list of tags applied to this object. Tags are for organizational purposes only.
Transfers List<NodeBalancerTransferArgs>
Information about the amount of transfer this NodeBalancer has had so far this month.
Updated string
When this NodeBalancer was last updated.
ClientConnThrottle int
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
Created string
When this NodeBalancer was created.
Hostname string
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
Ipv4 string
The Public IPv4 Address of this NodeBalancer
Ipv6 string
The Public IPv6 Address of this NodeBalancer
Label string
The label of the Linode NodeBalancer
Region string
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
Tags []string
A list of tags applied to this object. Tags are for organizational purposes only.
Transfers []NodeBalancerTransferArgs
Information about the amount of transfer this NodeBalancer has had so far this month.
Updated string
When this NodeBalancer was last updated.
clientConnThrottle number
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
created string
When this NodeBalancer was created.
hostname string
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
ipv4 string
The Public IPv4 Address of this NodeBalancer
ipv6 string
The Public IPv6 Address of this NodeBalancer
label string
The label of the Linode NodeBalancer
region string
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
tags string[]
A list of tags applied to this object. Tags are for organizational purposes only.
transfers NodeBalancerTransferArgs[]
Information about the amount of transfer this NodeBalancer has had so far this month.
updated string
When this NodeBalancer was last updated.
client_conn_throttle int
Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
created str
When this NodeBalancer was created.
hostname str
This NodeBalancer’s hostname, ending with .nodebalancer.linode.com
ipv4 str
The Public IPv4 Address of this NodeBalancer
ipv6 str
The Public IPv6 Address of this NodeBalancer
label str
The label of the Linode NodeBalancer
region str
The region where this NodeBalancer will be deployed. Examples are "us-east", "us-west", "ap-south", etc. See all regions here. Changing region forces the creation of a new Linode NodeBalancer..
tags Sequence[str]
A list of tags applied to this object. Tags are for organizational purposes only.
transfers Sequence[NodeBalancerTransferArgs]
Information about the amount of transfer this NodeBalancer has had so far this month.
updated str
When this NodeBalancer was last updated.

Supporting Types

NodeBalancerTransfer

In double
Out double
Total double
In float64
Out float64
Total float64
in number
out number
total number
in_ float
out float
total float

Import

Linodes NodeBalancers can be imported using the Linode NodeBalancer id, e.g.

 $ pulumi import linode:index/nodeBalancer:NodeBalancer mynodebalancer 1234567

The Linode Guide, Import Existing Infrastructure to Terraform, offers resource importing examples for NodeBalancers and other Linode resource types.

Package Details

Repository
https://github.com/pulumi/pulumi-linode
License
Apache-2.0
Notes
This Pulumi package is based on the linode Terraform Provider.