1. Packages
  2. Openstack Provider
  3. API Docs
  4. loadbalancer
  5. Pool
OpenStack v5.0.0 published on Friday, Sep 27, 2024 by Pulumi

openstack.loadbalancer.Pool

Explore with Pulumi AI

openstack logo
OpenStack v5.0.0 published on Friday, Sep 27, 2024 by Pulumi

    Manages a V2 pool resource within OpenStack.

    Note: This resource has attributes that depend on octavia minor versions. Please ensure your Openstack cloud supports the required minor version.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as openstack from "@pulumi/openstack";
    
    const pool1 = new openstack.loadbalancer.Pool("pool_1", {
        protocol: "HTTP",
        lbMethod: "ROUND_ROBIN",
        listenerId: "d9415786-5f1a-428b-b35f-2f1523e146d2",
        persistence: {
            type: "APP_COOKIE",
            cookieName: "testCookie",
        },
    });
    
    import pulumi
    import pulumi_openstack as openstack
    
    pool1 = openstack.loadbalancer.Pool("pool_1",
        protocol="HTTP",
        lb_method="ROUND_ROBIN",
        listener_id="d9415786-5f1a-428b-b35f-2f1523e146d2",
        persistence={
            "type": "APP_COOKIE",
            "cookie_name": "testCookie",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-openstack/sdk/v5/go/openstack/loadbalancer"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := loadbalancer.NewPool(ctx, "pool_1", &loadbalancer.PoolArgs{
    			Protocol:   pulumi.String("HTTP"),
    			LbMethod:   pulumi.String("ROUND_ROBIN"),
    			ListenerId: pulumi.String("d9415786-5f1a-428b-b35f-2f1523e146d2"),
    			Persistence: &loadbalancer.PoolPersistenceArgs{
    				Type:       pulumi.String("APP_COOKIE"),
    				CookieName: pulumi.String("testCookie"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using OpenStack = Pulumi.OpenStack;
    
    return await Deployment.RunAsync(() => 
    {
        var pool1 = new OpenStack.LoadBalancer.Pool("pool_1", new()
        {
            Protocol = "HTTP",
            LbMethod = "ROUND_ROBIN",
            ListenerId = "d9415786-5f1a-428b-b35f-2f1523e146d2",
            Persistence = new OpenStack.LoadBalancer.Inputs.PoolPersistenceArgs
            {
                Type = "APP_COOKIE",
                CookieName = "testCookie",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.openstack.loadbalancer.Pool;
    import com.pulumi.openstack.loadbalancer.PoolArgs;
    import com.pulumi.openstack.loadbalancer.inputs.PoolPersistenceArgs;
    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) {
            var pool1 = new Pool("pool1", PoolArgs.builder()
                .protocol("HTTP")
                .lbMethod("ROUND_ROBIN")
                .listenerId("d9415786-5f1a-428b-b35f-2f1523e146d2")
                .persistence(PoolPersistenceArgs.builder()
                    .type("APP_COOKIE")
                    .cookieName("testCookie")
                    .build())
                .build());
    
        }
    }
    
    resources:
      pool1:
        type: openstack:loadbalancer:Pool
        name: pool_1
        properties:
          protocol: HTTP
          lbMethod: ROUND_ROBIN
          listenerId: d9415786-5f1a-428b-b35f-2f1523e146d2
          persistence:
            type: APP_COOKIE
            cookieName: testCookie
    

    Create Pool Resource

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

    Constructor syntax

    new Pool(name: string, args: PoolArgs, opts?: CustomResourceOptions);
    @overload
    def Pool(resource_name: str,
             args: PoolArgs,
             opts: Optional[ResourceOptions] = None)
    
    @overload
    def Pool(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             lb_method: Optional[str] = None,
             protocol: Optional[str] = None,
             name: Optional[str] = None,
             persistence: Optional[PoolPersistenceArgs] = None,
             description: Optional[str] = None,
             ca_tls_container_ref: Optional[str] = None,
             listener_id: Optional[str] = None,
             loadbalancer_id: Optional[str] = None,
             admin_state_up: Optional[bool] = None,
             crl_container_ref: Optional[str] = None,
             alpn_protocols: Optional[Sequence[str]] = None,
             region: Optional[str] = None,
             tags: Optional[Sequence[str]] = None,
             tenant_id: Optional[str] = None,
             tls_ciphers: Optional[str] = None,
             tls_container_ref: Optional[str] = None,
             tls_enabled: Optional[bool] = None,
             tls_versions: Optional[Sequence[str]] = None)
    func NewPool(ctx *Context, name string, args PoolArgs, opts ...ResourceOption) (*Pool, error)
    public Pool(string name, PoolArgs args, CustomResourceOptions? opts = null)
    public Pool(String name, PoolArgs args)
    public Pool(String name, PoolArgs args, CustomResourceOptions options)
    
    type: openstack:loadbalancer:Pool
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    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.
    args PoolArgs
    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 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.
    name String
    The unique name of the resource.
    args PoolArgs
    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 poolResource = new OpenStack.LoadBalancer.Pool("poolResource", new()
    {
        LbMethod = "string",
        Protocol = "string",
        Name = "string",
        Persistence = new OpenStack.LoadBalancer.Inputs.PoolPersistenceArgs
        {
            Type = "string",
            CookieName = "string",
        },
        Description = "string",
        CaTlsContainerRef = "string",
        ListenerId = "string",
        LoadbalancerId = "string",
        AdminStateUp = false,
        CrlContainerRef = "string",
        AlpnProtocols = new[]
        {
            "string",
        },
        Region = "string",
        Tags = new[]
        {
            "string",
        },
        TenantId = "string",
        TlsCiphers = "string",
        TlsContainerRef = "string",
        TlsEnabled = false,
        TlsVersions = new[]
        {
            "string",
        },
    });
    
    example, err := loadbalancer.NewPool(ctx, "poolResource", &loadbalancer.PoolArgs{
    	LbMethod: pulumi.String("string"),
    	Protocol: pulumi.String("string"),
    	Name:     pulumi.String("string"),
    	Persistence: &loadbalancer.PoolPersistenceArgs{
    		Type:       pulumi.String("string"),
    		CookieName: pulumi.String("string"),
    	},
    	Description:       pulumi.String("string"),
    	CaTlsContainerRef: pulumi.String("string"),
    	ListenerId:        pulumi.String("string"),
    	LoadbalancerId:    pulumi.String("string"),
    	AdminStateUp:      pulumi.Bool(false),
    	CrlContainerRef:   pulumi.String("string"),
    	AlpnProtocols: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Region: pulumi.String("string"),
    	Tags: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	TenantId:        pulumi.String("string"),
    	TlsCiphers:      pulumi.String("string"),
    	TlsContainerRef: pulumi.String("string"),
    	TlsEnabled:      pulumi.Bool(false),
    	TlsVersions: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var poolResource = new Pool("poolResource", PoolArgs.builder()
        .lbMethod("string")
        .protocol("string")
        .name("string")
        .persistence(PoolPersistenceArgs.builder()
            .type("string")
            .cookieName("string")
            .build())
        .description("string")
        .caTlsContainerRef("string")
        .listenerId("string")
        .loadbalancerId("string")
        .adminStateUp(false)
        .crlContainerRef("string")
        .alpnProtocols("string")
        .region("string")
        .tags("string")
        .tenantId("string")
        .tlsCiphers("string")
        .tlsContainerRef("string")
        .tlsEnabled(false)
        .tlsVersions("string")
        .build());
    
    pool_resource = openstack.loadbalancer.Pool("poolResource",
        lb_method="string",
        protocol="string",
        name="string",
        persistence={
            "type": "string",
            "cookie_name": "string",
        },
        description="string",
        ca_tls_container_ref="string",
        listener_id="string",
        loadbalancer_id="string",
        admin_state_up=False,
        crl_container_ref="string",
        alpn_protocols=["string"],
        region="string",
        tags=["string"],
        tenant_id="string",
        tls_ciphers="string",
        tls_container_ref="string",
        tls_enabled=False,
        tls_versions=["string"])
    
    const poolResource = new openstack.loadbalancer.Pool("poolResource", {
        lbMethod: "string",
        protocol: "string",
        name: "string",
        persistence: {
            type: "string",
            cookieName: "string",
        },
        description: "string",
        caTlsContainerRef: "string",
        listenerId: "string",
        loadbalancerId: "string",
        adminStateUp: false,
        crlContainerRef: "string",
        alpnProtocols: ["string"],
        region: "string",
        tags: ["string"],
        tenantId: "string",
        tlsCiphers: "string",
        tlsContainerRef: "string",
        tlsEnabled: false,
        tlsVersions: ["string"],
    });
    
    type: openstack:loadbalancer:Pool
    properties:
        adminStateUp: false
        alpnProtocols:
            - string
        caTlsContainerRef: string
        crlContainerRef: string
        description: string
        lbMethod: string
        listenerId: string
        loadbalancerId: string
        name: string
        persistence:
            cookieName: string
            type: string
        protocol: string
        region: string
        tags:
            - string
        tenantId: string
        tlsCiphers: string
        tlsContainerRef: string
        tlsEnabled: false
        tlsVersions:
            - string
    

    Pool 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 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.
    Protocol string
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). Changing this creates a new pool.
    AdminStateUp bool
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    AlpnProtocols List<string>
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    CaTlsContainerRef string
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    CrlContainerRef string
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    Tags List<string>
    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.
    TlsCiphers string
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    TlsContainerRef string
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    TlsEnabled bool
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    TlsVersions List<string>
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    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.
    Protocol string
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). Changing this creates a new pool.
    AdminStateUp bool
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    AlpnProtocols []string
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    CaTlsContainerRef string
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    CrlContainerRef string
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    Tags []string
    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.
    TlsCiphers string
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    TlsContainerRef string
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    TlsEnabled bool
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    TlsVersions []string
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    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.
    protocol String
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). Changing this creates a new pool.
    adminStateUp Boolean
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpnProtocols List<String>
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    caTlsContainerRef String
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crlContainerRef String
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags List<String>
    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.
    tlsCiphers String
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tlsContainerRef String
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tlsEnabled Boolean
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tlsVersions List<String>
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    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.
    protocol string
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). Changing this creates a new pool.
    adminStateUp boolean
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpnProtocols string[]
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    caTlsContainerRef string
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crlContainerRef string
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags string[]
    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.
    tlsCiphers string
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tlsContainerRef string
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tlsEnabled boolean
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tlsVersions string[]
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    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.
    protocol str
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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).
    alpn_protocols Sequence[str]
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    ca_tls_container_ref str
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crl_container_ref str
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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 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 str
    The region in which to obtain the V2 Networking client. A Networking client is needed to create a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags Sequence[str]
    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.
    tls_ciphers str
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tls_container_ref str
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tls_enabled bool
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tls_versions Sequence[str]
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    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.
    protocol String
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). Changing this creates a new pool.
    adminStateUp Boolean
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpnProtocols List<String>
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    caTlsContainerRef String
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crlContainerRef String
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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 Property Map
    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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags List<String>
    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.
    tlsCiphers String
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tlsContainerRef String
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tlsEnabled Boolean
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tlsVersions List<String>
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.

    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 string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up 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
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            admin_state_up: Optional[bool] = None,
            alpn_protocols: Optional[Sequence[str]] = None,
            ca_tls_container_ref: Optional[str] = None,
            crl_container_ref: Optional[str] = None,
            description: Optional[str] = None,
            lb_method: Optional[str] = None,
            listener_id: Optional[str] = None,
            loadbalancer_id: Optional[str] = None,
            name: Optional[str] = None,
            persistence: Optional[PoolPersistenceArgs] = None,
            protocol: Optional[str] = None,
            region: Optional[str] = None,
            tags: Optional[Sequence[str]] = None,
            tenant_id: Optional[str] = None,
            tls_ciphers: Optional[str] = None,
            tls_container_ref: Optional[str] = None,
            tls_enabled: Optional[bool] = None,
            tls_versions: Optional[Sequence[str]] = None) -> Pool
    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)
    public static Pool get(String name, Output<String> id, PoolState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    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.
    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).
    AlpnProtocols List<string>
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    CaTlsContainerRef string
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    CrlContainerRef string
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.
    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.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, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    Tags List<string>
    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.
    TlsCiphers string
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    TlsContainerRef string
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    TlsEnabled bool
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    TlsVersions List<string>
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    AdminStateUp bool
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    AlpnProtocols []string
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    CaTlsContainerRef string
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    CrlContainerRef string
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.
    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 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, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    Tags []string
    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.
    TlsCiphers string
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    TlsContainerRef string
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    TlsEnabled bool
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    TlsVersions []string
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    adminStateUp Boolean
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpnProtocols List<String>
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    caTlsContainerRef String
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crlContainerRef String
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.
    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, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags List<String>
    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.
    tlsCiphers String
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tlsContainerRef String
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tlsEnabled Boolean
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tlsVersions List<String>
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    adminStateUp boolean
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpnProtocols string[]
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    caTlsContainerRef string
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crlContainerRef string
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.
    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, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags string[]
    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.
    tlsCiphers string
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tlsContainerRef string
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tlsEnabled boolean
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tlsVersions string[]
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    admin_state_up bool
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpn_protocols Sequence[str]
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    ca_tls_container_ref str
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crl_container_ref str
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.
    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 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 str
    The protocol - can either be TCP, HTTP, HTTPS, PROXY, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags Sequence[str]
    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.
    tls_ciphers str
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tls_container_ref str
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tls_enabled bool
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tls_versions Sequence[str]
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.
    adminStateUp Boolean
    The administrative state of the pool. A valid value is true (UP) or false (DOWN).
    alpnProtocols List<String>
    A list of ALPN protocols. Available protocols: http/1.0, http/1.1, h2. Supported only in Octavia minor version >= 2.24.
    caTlsContainerRef String
    The reference of the key manager service secret containing a PEM format CA certificate bundle for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    crlContainerRef String
    The reference of the key manager service secret containing a PEM format CA revocation list file for tls_enabled pools. Supported only in Octavia minor version >= 2.8.
    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.
    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 Property Map
    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, UDP, PROXYV2 (Octavia minor version >= 2.22) or SCTP (Octavia minor version >= 2.23). 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 a pool. If omitted, the region argument of the provider is used. Changing this creates a new pool.
    tags List<String>
    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.
    tlsCiphers String
    List of ciphers in OpenSSL format (colon-separated). See https://www.openssl.org/docs/man1.1.1/man1/ciphers.html for more information. Supported only in Octavia minor version >= 2.15.
    tlsContainerRef String
    The reference to the key manager service secret containing a PKCS12 format certificate/key bundle for tls_enabled pools for TLS client authentication to the member servers. Supported only in Octavia minor version >= 2.8.
    tlsEnabled Boolean
    When true connections to backend member servers will use TLS encryption. Default is false. Supported only in Octavia minor version >= 2.8.
    tlsVersions List<String>
    A list of TLS protocol versions. Available versions: TLSv1, TLSv1.1, TLSv1.2, TLSv1.3. Supported only in Octavia minor version >= 2.17.

    Supporting Types

    PoolPersistence, PoolPersistenceArgs

    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 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.
    cookie_name str
    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.

    Import

    Load Balancer Pool can be imported using the Pool ID, e.g.:

    $ pulumi import openstack:loadbalancer/pool:Pool pool_1 60ad9ee4-249a-4d60-a45b-aa60e046c513
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    OpenStack pulumi/pulumi-openstack
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the openstack Terraform Provider.
    openstack logo
    OpenStack v5.0.0 published on Friday, Sep 27, 2024 by Pulumi