Class 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.
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",
});
}
}
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.
Inherited Members
Namespace: Pulumi.Linode
Assembly: Pulumi.Linode.dll
Syntax
public class NodeBalancerConfig : CustomResource
Constructors
View SourceNodeBalancerConfig(String, NodeBalancerConfigArgs, CustomResourceOptions)
Create a NodeBalancerConfig resource with the given unique name, arguments, and options.
Declaration
public NodeBalancerConfig(string name, NodeBalancerConfigArgs args, CustomResourceOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | The unique name of the resource |
| NodeBalancerConfigArgs | args | The arguments used to populate this resource's properties |
| CustomResourceOptions | options | A bag of options that control this resource's behavior |
Properties
View SourceAlgorithm
What algorithm this NodeBalancer should use for routing traffic to backends: roundrobin, leastconn, source
Declaration
public Output<string> Algorithm { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Check
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.
Declaration
public Output<string> Check { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
CheckAttempts
How many times to attempt a check before considering a backend to be down. (1-30)
Declaration
public Output<int> CheckAttempts { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Int32> |
CheckBody
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
Declaration
public Output<string> CheckBody { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
CheckInterval
How often, in seconds, to check that backends are up and serving requests.
Declaration
public Output<int> CheckInterval { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Int32> |
CheckPassive
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.
Declaration
public Output<bool> CheckPassive { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Boolean> |
CheckPath
The URL path to check on each backend. If the backend does not respond to this request it is considered to be down.
Declaration
public Output<string> CheckPath { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
CheckTimeout
How long, in seconds, to wait for a check attempt before considering it failed. (1-30)
Declaration
public Output<int> CheckTimeout { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Int32> |
CipherSuite
What ciphers to use for SSL connections served by this NodeBalancer. legacy is considered insecure and should only be used if necessary.
Declaration
public Output<string> CipherSuite { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
NodebalancerId
The ID of the NodeBalancer to access.
Declaration
public Output<int> NodebalancerId { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Int32> |
NodeStatus
Declaration
public Output<NodeBalancerConfigNodeStatus> NodeStatus { get; }
Property Value
| Type | Description |
|---|---|
| Output<NodeBalancerConfigNodeStatus> |
Port
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)
Declaration
public Output<int?> Port { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.Nullable<System.Int32>> |
Protocol
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")
Declaration
public Output<string> Protocol { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SslCert
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.
Declaration
public Output<string> SslCert { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SslCommonname
The common name for the SSL certification this port is serving if this port is not configured to use SSL.
Declaration
public Output<string> SslCommonname { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SslFingerprint
The fingerprint for the SSL certification this port is serving if this port is not configured to use SSL.
Declaration
public Output<string> SslFingerprint { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
SslKey
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.
Declaration
public Output<string> SslKey { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Stickiness
Controls how session stickiness is handled on this port: 'none', 'table', 'http_cookie'
Declaration
public Output<string> Stickiness { get; }
Property Value
| Type | Description |
|---|---|
| Output<System.String> |
Methods
View SourceGet(String, Input<String>, NodeBalancerConfigState, CustomResourceOptions)
Get an existing NodeBalancerConfig resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
Declaration
public static NodeBalancerConfig Get(string name, Input<string> id, NodeBalancerConfigState state = null, CustomResourceOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | name | The unique name of the resulting resource. |
| Input<System.String> | id | The unique provider ID of the resource to lookup. |
| NodeBalancerConfigState | state | Any extra arguments used during the lookup. |
| CustomResourceOptions | options | A bag of options that control this resource's behavior |
Returns
| Type | Description |
|---|---|
| NodeBalancerConfig |