okustera_loadbalancer_listener (Resource)
The okustera_loadbalancer_listener resource provisions and manages a frontend listener on an Octavia Load Balancer in Okustera. Listeners check for incoming connection requests on a specified protocol and port.
Example Usage
HTTP Listener with Backend Pool
resource "okustera_loadbalancer_listener" "http" {
name = "http-web-listener"
loadbalancer_id = okustera_loadbalancer.ingress_lb.id
protocol = "HTTP"
protocol_port = 80
default_pool_id = okustera_loadbalancer_pool.web_pool.id
description = "Inbound HTTP frontend listener"
}
Terminated HTTPS with Barbican TLS Secret
resource "okustera_loadbalancer_listener" "https" {
name = "https-web-listener"
loadbalancer_id = okustera_loadbalancer.ingress_lb.id
protocol = "TERMINATED_HTTPS"
protocol_port = 443
default_pool_id = okustera_loadbalancer_pool.web_pool.id
default_tls_container_ref = "https://barbican.okustera.internal/v1/containers/550e8400-e29b-41d4-a716-446655440000"
}
Schema
Required
name(String) Human-readable name of the listener.loadbalancer_id(String) UUID of the target load balancer to attach this listener. (Forces replacement on change)protocol(String) Protocol for incoming traffic:HTTP,HTTPS(pass-through),TERMINATED_HTTPS(TLS offloading),TCP, orUDP.protocol_port(Number) Port number on which to listen for incoming traffic (1–65535).
Optional
description(String) Optional description of the listener.default_pool_id(String) UUID of the default backend pool for routing traffic.default_tls_container_ref(String) Barbican secret container URI storing the TLS certificate and private key (required forTERMINATED_HTTPS).
Read-Only
id(String) Unique identifier UUID of the listener.operating_status(String) Operating health status of the listener (ONLINE,DEGRADED,ERROR).provisioning_status(String) Provisioning lifecycle state (ACTIVE,PENDING_CREATE).
Import
Existing listeners can be imported using their UUID:
terraform import okustera_loadbalancer_listener.http <listener_uuid>