Get started with Pulumi in a free one hour introductory workshop. Register Now

NodeBalancerConfig

Provides a Linode NodeBalancer Config resource. This can be used to create, modify, and delete Linodes NodeBalancer Configs. For more information, see Getting Started with NodeBalancers and the Linode APIv4 docs.

Attributes

This resource exports the following attributes:

  • ssl_commonname - The common name for the SSL certification this port is serving if this port is not configured to use SSL.

  • ssl_fingerprint - The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

  • node_status_up - The number of backends considered to be ‘UP’ and healthy, and that are serving requests.

  • node_status_down - The number of backends considered to be ‘DOWN’ and unhealthy. These are not in rotation, and not serving requests.

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",
        });
        var foofig = new Linode.NodeBalancerConfig("foofig", new Linode.NodeBalancerConfigArgs
        {
            Algorithm = "source",
            Check = "http",
            CheckAttempts = 3,
            CheckPath = "/foo",
            CheckTimeout = 30,
            NodebalancerId = foobar.Id,
            Port = 8088,
            Protocol = "http",
            Stickiness = "http_cookie",
        });
    }

}
package main

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

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        foobar, err := linode.NewNodeBalancer(ctx, "foobar", &linode.NodeBalancerArgs{
            ClientConnThrottle: pulumi.Int(20),
            Label:              pulumi.String("mynodebalancer"),
            Region:             pulumi.String("us-east"),
        })
        if err != nil {
            return err
        }
        _, err = linode.NewNodeBalancerConfig(ctx, "foofig", &linode.NodeBalancerConfigArgs{
            Algorithm:      pulumi.String("source"),
            Check:          pulumi.String("http"),
            CheckAttempts:  pulumi.Int(3),
            CheckPath:      pulumi.String("/foo"),
            CheckTimeout:   pulumi.Int(30),
            NodebalancerId: foobar.ID(),
            Port:           pulumi.Int(8088),
            Protocol:       pulumi.String("http"),
            Stickiness:     pulumi.String("http_cookie"),
        })
        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")
foofig = linode.NodeBalancerConfig("foofig",
    algorithm="source",
    check="http",
    check_attempts=3,
    check_path="/foo",
    check_timeout=30,
    nodebalancer_id=foobar.id,
    port=8088,
    protocol="http",
    stickiness="http_cookie")
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",
});
const foofig = new linode.NodeBalancerConfig("foofig", {
    algorithm: "source",
    check: "http",
    checkAttempts: 3,
    checkPath: "/foo",
    checkTimeout: 30,
    nodebalancerId: foobar.id.apply(id => Number.parseFloat(id)),
    port: 8088,
    protocol: "http",
    stickiness: "http_cookie",
});

Create a NodeBalancerConfig Resource

def NodeBalancerConfig(resource_name: str, opts: Optional[ResourceOptions] = None, algorithm: Optional[str] = None, check: Optional[str] = None, check_attempts: Optional[int] = None, check_body: Optional[str] = None, check_interval: Optional[int] = None, check_passive: Optional[bool] = None, check_path: Optional[str] = None, check_timeout: Optional[int] = None, cipher_suite: Optional[str] = None, nodebalancer_id: Optional[int] = None, port: Optional[int] = None, protocol: Optional[str] = None, proxy_protocol: Optional[str] = None, ssl_cert: Optional[str] = None, ssl_key: Optional[str] = None, stickiness: Optional[str] = None)
name string
The unique name of the resource.
args NodeBalancerConfigArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
opts ResourceOptions
A bag of options that control this resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args NodeBalancerConfigArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args NodeBalancerConfigArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

NodeBalancerConfig Resource Properties

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

Inputs

The NodeBalancerConfig resource accepts the following input properties:

NodebalancerId int

The ID of the NodeBalancer to access.

Algorithm string

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

Check string

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

CheckAttempts int

How many times to attempt a check before considering a backend to be down. (1-30)

CheckBody string

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

CheckInterval int

How often, in seconds, to check that backends are up and serving requests.

CheckPassive bool

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

CheckPath string

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

CheckTimeout int

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

CipherSuite string

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

Port int

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

Protocol string

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

ProxyProtocol string

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

SslCert string

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

SslKey string

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

Stickiness string

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

NodebalancerId int

The ID of the NodeBalancer to access.

Algorithm string

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

Check string

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

CheckAttempts int

How many times to attempt a check before considering a backend to be down. (1-30)

CheckBody string

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

CheckInterval int

How often, in seconds, to check that backends are up and serving requests.

CheckPassive bool

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

CheckPath string

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

CheckTimeout int

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

CipherSuite string

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

Port int

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

Protocol string

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

ProxyProtocol string

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

SslCert string

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

SslKey string

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

Stickiness string

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

nodebalancerId number

The ID of the NodeBalancer to access.

algorithm string

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

check string

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

checkAttempts number

How many times to attempt a check before considering a backend to be down. (1-30)

checkBody string

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

checkInterval number

How often, in seconds, to check that backends are up and serving requests.

checkPassive boolean

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

checkPath string

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

checkTimeout number

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

cipherSuite string

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

port number

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

protocol string

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

proxyProtocol string

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

sslCert string

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

sslKey string

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

stickiness string

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

nodebalancer_id int

The ID of the NodeBalancer to access.

algorithm str

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

check str

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

check_attempts int

How many times to attempt a check before considering a backend to be down. (1-30)

check_body str

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

check_interval int

How often, in seconds, to check that backends are up and serving requests.

check_passive bool

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

check_path str

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

check_timeout int

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

cipher_suite str

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

port int

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

protocol str

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

proxy_protocol str

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

ssl_cert str

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

ssl_key str

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

stickiness str

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
NodeStatus NodeBalancerConfigNodeStatus
SslCommonname string

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

SslFingerprint string

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

Id string
The provider-assigned unique ID for this managed resource.
NodeStatus NodeBalancerConfigNodeStatus
SslCommonname string

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

SslFingerprint string

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

id string
The provider-assigned unique ID for this managed resource.
nodeStatus NodeBalancerConfigNodeStatus
sslCommonname string

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

sslFingerprint string

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

id str
The provider-assigned unique ID for this managed resource.
node_status NodeBalancerConfigNodeStatus
ssl_commonname str

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

ssl_fingerprint str

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

Look up an Existing NodeBalancerConfig Resource

Get an existing NodeBalancerConfig 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?: NodeBalancerConfigState, opts?: CustomResourceOptions): NodeBalancerConfig
@staticmethod
def get(resource_name: str, id: str, opts: Optional[ResourceOptions] = None, algorithm: Optional[str] = None, check: Optional[str] = None, check_attempts: Optional[int] = None, check_body: Optional[str] = None, check_interval: Optional[int] = None, check_passive: Optional[bool] = None, check_path: Optional[str] = None, check_timeout: Optional[int] = None, cipher_suite: Optional[str] = None, node_status: Optional[NodeBalancerConfigNodeStatusArgs] = None, nodebalancer_id: Optional[int] = None, port: Optional[int] = None, protocol: Optional[str] = None, proxy_protocol: Optional[str] = None, ssl_cert: Optional[str] = None, ssl_commonname: Optional[str] = None, ssl_fingerprint: Optional[str] = None, ssl_key: Optional[str] = None, stickiness: Optional[str] = None) -> NodeBalancerConfig
func GetNodeBalancerConfig(ctx *Context, name string, id IDInput, state *NodeBalancerConfigState, opts ...ResourceOption) (*NodeBalancerConfig, error)
public static NodeBalancerConfig Get(string name, Input<string> id, NodeBalancerConfigState? 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:

Algorithm string

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

Check string

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

CheckAttempts int

How many times to attempt a check before considering a backend to be down. (1-30)

CheckBody string

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

CheckInterval int

How often, in seconds, to check that backends are up and serving requests.

CheckPassive bool

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

CheckPath string

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

CheckTimeout int

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

CipherSuite string

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

NodeStatus NodeBalancerConfigNodeStatusArgs
NodebalancerId int

The ID of the NodeBalancer to access.

Port int

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

Protocol string

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

ProxyProtocol string

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

SslCert string

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

SslCommonname string

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

SslFingerprint string

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

SslKey string

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

Stickiness string

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

Algorithm string

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

Check string

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

CheckAttempts int

How many times to attempt a check before considering a backend to be down. (1-30)

CheckBody string

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

CheckInterval int

How often, in seconds, to check that backends are up and serving requests.

CheckPassive bool

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

CheckPath string

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

CheckTimeout int

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

CipherSuite string

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

NodeStatus NodeBalancerConfigNodeStatus
NodebalancerId int

The ID of the NodeBalancer to access.

Port int

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

Protocol string

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

ProxyProtocol string

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

SslCert string

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

SslCommonname string

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

SslFingerprint string

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

SslKey string

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

Stickiness string

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

algorithm string

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

check string

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

checkAttempts number

How many times to attempt a check before considering a backend to be down. (1-30)

checkBody string

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

checkInterval number

How often, in seconds, to check that backends are up and serving requests.

checkPassive boolean

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

checkPath string

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

checkTimeout number

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

cipherSuite string

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

nodeStatus NodeBalancerConfigNodeStatus
nodebalancerId number

The ID of the NodeBalancer to access.

port number

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

protocol string

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

proxyProtocol string

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

sslCert string

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

sslCommonname string

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

sslFingerprint string

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

sslKey string

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

stickiness string

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

algorithm str

What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source

check str

The type of check to perform against backends to ensure they are serving requests. This is used to determine if backends are up or down. If none no check is performed. connection requires only a connection to the backend to succeed. http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.

check_attempts int

How many times to attempt a check before considering a backend to be down. (1-30)

check_body str

This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down

check_interval int

How often, in seconds, to check that backends are up and serving requests.

check_passive bool

If true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.

check_path str

The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.

check_timeout int

How long, in seconds, to wait for a check attempt before considering it failed. (1-30)

cipher_suite str

What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.

node_status NodeBalancerConfigNodeStatusArgs
nodebalancer_id int

The ID of the NodeBalancer to access.

port int

The TCP port this Config is for. These values must be unique across configs on a single NodeBalancer (you can’t have two configs for port 80, for example). While some ports imply some protocols, no enforcement is done and you may configure your NodeBalancer however is useful to you. For example, while port 443 is generally used for HTTPS, you do not need SSL configured to have a NodeBalancer listening on port 443. (Defaults to 80)

protocol str

The protocol this port is configured to serve. If this is set to https you must include an ssl_cert and an ssl_key. (Defaults to “http”)

proxy_protocol str

The version of ProxyProtocol to use for the underlying NodeBalancer. This requires protocol to be tcp. Valid values are none, v1, and v2. (Defaults to none)

ssl_cert str

The certificate this port is serving. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

ssl_commonname str

The common name for the SSL certification this port is serving if this port is not configured to use SSL.

ssl_fingerprint str

The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.

ssl_key str

The private key corresponding to this port’s certificate. This is not returned. If set, this field will come back as <REDACTED>. Please use the ssl_commonname and ssl_fingerprint to identify the certificate.

stickiness str

Controls how session stickiness is handled on this port: ‘none’, ‘table’, ‘http_cookie’

Supporting Types

NodeBalancerConfigNodeStatus

See the output API doc for this type.

See the output API doc for this type.

See the output API doc for this type.

StatusDown int
StatusUp int
StatusDown int
StatusUp int
statusDown number
statusUp number
status_down int
status_up int

Import

NodeBalancer Configs can be imported using the NodeBalancer nodebalancer_id followed by the NodeBalancer Config id separated by a comma, e.g.

 $ pulumi import linode:index/nodeBalancerConfig:NodeBalancerConfig http-foobar 1234567,7654321

The Linode Guide, Import Existing Infrastructure to Terraform, offers resource importing examples for NodeBalancer Configs 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.