Pool

Manages a V2 pool resource within OpenStack.

Example Usage

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
    public MyStack()
    {
        var pool1 = new OpenStack.LoadBalancer.Pool("pool1", new OpenStack.LoadBalancer.PoolArgs
        {
            LbMethod = "ROUND_ROBIN",
            ListenerId = "d9415786-5f1a-428b-b35f-2f1523e146d2",
            Persistence = new OpenStack.LoadBalancer.Inputs.PoolPersistenceArgs
            {
                CookieName = "testCookie",
                Type = "APP_COOKIE",
            },
            Protocol = "HTTP",
        });
    }

}

Coming soon!

import pulumi
import pulumi_openstack as openstack

pool1 = openstack.loadbalancer.Pool("pool1",
    lb_method="ROUND_ROBIN",
    listener_id="d9415786-5f1a-428b-b35f-2f1523e146d2",
    persistence={
        "cookieName": "testCookie",
        "type": "APP_COOKIE",
    },
    protocol="HTTP")
import * as pulumi from "@pulumi/pulumi";
import * as openstack from "@pulumi/openstack";

const pool1 = new openstack.loadbalancer.Pool("pool_1", {
    lbMethod: "ROUND_ROBIN",
    listenerId: "d9415786-5f1a-428b-b35f-2f1523e146d2",
    persistence: {
        cookieName: "testCookie",
        type: "APP_COOKIE",
    },
    protocol: "HTTP",
});

Create a Pool Resource

new Pool(name: string, args: PoolArgs, opts?: CustomResourceOptions);
def Pool(resource_name, opts=None, admin_state_up=None, description=None, lb_method=None, listener_id=None, loadbalancer_id=None, name=None, persistence=None, protocol=None, region=None, tenant_id=None, __props__=None);
func NewPool(ctx *Context, name string, args PoolArgs, opts ...ResourceOption) (*Pool, error)
public Pool(string name, PoolArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args PoolArgs
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 PoolArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args PoolArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Pool Resource Properties

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

Inputs

The Pool resource accepts the following input properties:

LbMethod string

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

Protocol string

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

AdminStateUp bool

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

Description string

Human-readable description for the pool.

ListenerId string

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

LoadbalancerId string

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

Name string

Human-readable name for the pool.

Persistence Pulumi.OpenStack.LoadBalancer.Inputs.PoolPersistenceArgs

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

Region string

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

TenantId string

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

LbMethod string

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

Protocol string

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

AdminStateUp bool

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

Description string

Human-readable description for the pool.

ListenerId string

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

LoadbalancerId string

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

Name string

Human-readable name for the pool.

Persistence PoolPersistence

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

Region string

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

TenantId string

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

lbMethod string

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

protocol string

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

adminStateUp boolean

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

description string

Human-readable description for the pool.

listenerId string

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

loadbalancerId string

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

name string

Human-readable name for the pool.

persistence PoolPersistence

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

region string

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

tenantId string

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

lb_method str

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

protocol str

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

admin_state_up bool

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

description str

Human-readable description for the pool.

listener_id str

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

loadbalancer_id str

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

name str

Human-readable name for the pool.

persistence Dict[PoolPersistence]

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

region str

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

tenant_id str

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.

Look up an Existing Pool Resource

Get an existing Pool 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?: PoolState, opts?: CustomResourceOptions): Pool
static get(resource_name, id, opts=None, admin_state_up=None, description=None, lb_method=None, listener_id=None, loadbalancer_id=None, name=None, persistence=None, protocol=None, region=None, tenant_id=None, __props__=None);
func GetPool(ctx *Context, name string, id IDInput, state *PoolState, opts ...ResourceOption) (*Pool, error)
public static Pool Get(string name, Input<string> id, PoolState? 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:

AdminStateUp bool

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

Description string

Human-readable description for the pool.

LbMethod string

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

ListenerId string

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

LoadbalancerId string

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

Name string

Human-readable name for the pool.

Persistence Pulumi.OpenStack.LoadBalancer.Inputs.PoolPersistenceArgs

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

Protocol string

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

Region string

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

TenantId string

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

AdminStateUp bool

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

Description string

Human-readable description for the pool.

LbMethod string

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

ListenerId string

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

LoadbalancerId string

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

Name string

Human-readable name for the pool.

Persistence PoolPersistence

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

Protocol string

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

Region string

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

TenantId string

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

adminStateUp boolean

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

description string

Human-readable description for the pool.

lbMethod string

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

listenerId string

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

loadbalancerId string

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

name string

Human-readable name for the pool.

persistence PoolPersistence

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

protocol string

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

region string

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

tenantId string

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

admin_state_up bool

The administrative state of the pool. A valid value is true (UP) or false (DOWN).

description str

Human-readable description for the pool.

lb_method str

The load balancing algorithm to distribute traffic to the pool’s members. Must be one of ROUND_ROBIN, LEAST_CONNECTIONS, SOURCE_IP, or SOURCE_IP_PORT (supported only in Octavia).

listener_id str

The Listener on which the members of the pool will be associated with. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

loadbalancer_id str

The load balancer on which to provision this pool. Changing this creates a new pool. Note: One of LoadbalancerID or ListenerID must be provided.

name str

Human-readable name for the pool.

persistence Dict[PoolPersistence]

Omit this field to prevent session persistence. Indicates whether connections in the same session will be processed by the same Pool member or not. Changing this creates a new pool.

protocol str

The protocol - can either be TCP, HTTP, HTTPS, PROXY or UDP (supported only in Octavia). Changing this creates a new pool.

region str

The region in which to obtain the V2 Networking client. A Networking client is needed to create an . If omitted, the region argument of the provider is used. Changing this creates a new pool.

tenant_id str

Required for admins. The UUID of the tenant who owns the pool. Only administrative users can specify a tenant UUID other than their own. Changing this creates a new pool.

Supporting Types

PoolPersistence

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

Type string

The type of persistence mode. The current specification supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE.

CookieName string

The name of the cookie if persistence mode is set appropriately. Required if type = APP_COOKIE.

Type string

The type of persistence mode. The current specification supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE.

CookieName string

The name of the cookie if persistence mode is set appropriately. Required if type = APP_COOKIE.

type string

The type of persistence mode. The current specification supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE.

cookieName string

The name of the cookie if persistence mode is set appropriately. Required if type = APP_COOKIE.

type str

The type of persistence mode. The current specification supports SOURCE_IP, HTTP_COOKIE, and APP_COOKIE.

cookieName str

The name of the cookie if persistence mode is set appropriately. Required if type = APP_COOKIE.

Package Details

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