getListeners

This data source provides the listeners related to a server load balancer of the current Alibaba Cloud user.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = new alicloud.slb.ApplicationLoadBalancer("default", {loadBalancerName: "tf-testAccSlbListenertcp"});
const tcp = new alicloud.slb.Listener("tcp", {
loadBalancerId: _default.id,
backendPort: 22,
frontendPort: 22,
protocol: "tcp",
bandwidth: 10,
healthCheckType: "tcp",
persistenceTimeout: 3600,
healthyThreshold: 8,
unhealthyThreshold: 8,
healthCheckTimeout: 8,
healthCheckInterval: 5,
healthCheckHttpCode: "http_2xx",
healthCheckConnectPort: 20,
healthCheckUri: "/console",
establishedTimeout: 600,
});
const sampleDs = alicloud.slb.getListenersOutput({
loadBalancerId: _default.id,
});
export const firstSlbListenerProtocol = sampleDs.apply(sampleDs => sampleDs.slbListeners?.[0]?.protocol);
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.slb.ApplicationLoadBalancer("default", load_balancer_name="tf-testAccSlbListenertcp")
tcp = alicloud.slb.Listener("tcp",
load_balancer_id=default.id,
backend_port=22,
frontend_port=22,
protocol="tcp",
bandwidth=10,
health_check_type="tcp",
persistence_timeout=3600,
healthy_threshold=8,
unhealthy_threshold=8,
health_check_timeout=8,
health_check_interval=5,
health_check_http_code="http_2xx",
health_check_connect_port=20,
health_check_uri="/console",
established_timeout=600)
sample_ds = alicloud.slb.get_listeners_output(load_balancer_id=default.id)
pulumi.export("firstSlbListenerProtocol", sample_ds.slb_listeners[0].protocol)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = new AliCloud.Slb.ApplicationLoadBalancer("default", new()
{
LoadBalancerName = "tf-testAccSlbListenertcp",
});
var tcp = new AliCloud.Slb.Listener("tcp", new()
{
LoadBalancerId = @default.Id,
BackendPort = 22,
FrontendPort = 22,
Protocol = "tcp",
Bandwidth = 10,
HealthCheckType = "tcp",
PersistenceTimeout = 3600,
HealthyThreshold = 8,
UnhealthyThreshold = 8,
HealthCheckTimeout = 8,
HealthCheckInterval = 5,
HealthCheckHttpCode = "http_2xx",
HealthCheckConnectPort = 20,
HealthCheckUri = "/console",
EstablishedTimeout = 600,
});
var sampleDs = AliCloud.Slb.GetListeners.Invoke(new()
{
LoadBalancerId = @default.Id,
});
return new Dictionary<string, object?>
{
["firstSlbListenerProtocol"] = sampleDs&#46;Apply(getListenersResult => getListenersResult&#46;SlbListeners[0]?.Protocol),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/slb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := slb.NewApplicationLoadBalancer(ctx, "default", &slb.ApplicationLoadBalancerArgs{
LoadBalancerName: pulumi.String("tf-testAccSlbListenertcp"),
})
if err != nil {
return err
}
_, err = slb.NewListener(ctx, "tcp", &slb.ListenerArgs{
LoadBalancerId: _default.ID(),
BackendPort: pulumi.Int(22),
FrontendPort: pulumi.Int(22),
Protocol: pulumi.String("tcp"),
Bandwidth: pulumi.Int(10),
HealthCheckType: pulumi.String("tcp"),
PersistenceTimeout: pulumi.Int(3600),
HealthyThreshold: pulumi.Int(8),
UnhealthyThreshold: pulumi.Int(8),
HealthCheckTimeout: pulumi.Int(8),
HealthCheckInterval: pulumi.Int(5),
HealthCheckHttpCode: pulumi.String("http_2xx"),
HealthCheckConnectPort: pulumi.Int(20),
HealthCheckUri: pulumi.String("/console"),
EstablishedTimeout: pulumi.Int(600),
})
if err != nil {
return err
}
sampleDs := slb.GetListenersOutput(ctx, slb.GetListenersOutputArgs{
LoadBalancerId: _default.ID(),
}, nil)
ctx.Export("firstSlbListenerProtocol", sampleDs.ApplyT(func(sampleDs slb.GetListenersResult) (*string, error) {
return &sampleDs.SlbListeners[0].Protocol, nil
}).(pulumi.StringPtrOutput))
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.slb.ApplicationLoadBalancer;
import com.pulumi.alicloud.slb.ApplicationLoadBalancerArgs;
import com.pulumi.alicloud.slb.Listener;
import com.pulumi.alicloud.slb.ListenerArgs;
import com.pulumi.alicloud.slb.SlbFunctions;
import com.pulumi.alicloud.slb.inputs.GetListenersArgs;
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 default_ = new ApplicationLoadBalancer("default", ApplicationLoadBalancerArgs.builder()
.loadBalancerName("tf-testAccSlbListenertcp")
.build());
var tcp = new Listener("tcp", ListenerArgs.builder()
.loadBalancerId(default_.id())
.backendPort("22")
.frontendPort("22")
.protocol("tcp")
.bandwidth("10")
.healthCheckType("tcp")
.persistenceTimeout(3600)
.healthyThreshold(8)
.unhealthyThreshold(8)
.healthCheckTimeout(8)
.healthCheckInterval(5)
.healthCheckHttpCode("http_2xx")
.healthCheckConnectPort(20)
.healthCheckUri("/console")
.establishedTimeout(600)
.build());
final var sampleDs = SlbFunctions.getListeners(GetListenersArgs.builder()
.loadBalancerId(default_.id())
.build());
ctx.export("firstSlbListenerProtocol", sampleDs.applyValue(getListenersResult -> getListenersResult).applyValue(sampleDs -> sampleDs.applyValue(getListenersResult -> getListenersResult.slbListeners()[0].protocol())));
}
}
resources:
default:
type: alicloud:slb:ApplicationLoadBalancer
properties:
loadBalancerName: tf-testAccSlbListenertcp
tcp:
type: alicloud:slb:Listener
properties:
loadBalancerId: ${default.id}
backendPort: '22'
frontendPort: '22'
protocol: tcp
bandwidth: '10'
healthCheckType: tcp
persistenceTimeout: 3600
healthyThreshold: 8
unhealthyThreshold: 8
healthCheckTimeout: 8
healthCheckInterval: 5
healthCheckHttpCode: http_2xx
healthCheckConnectPort: 20
healthCheckUri: /console
establishedTimeout: 600
variables:
sampleDs:
fn::invoke:
function: alicloud:slb:getListeners
arguments:
loadBalancerId: ${default.id}
outputs:
firstSlbListenerProtocol: ${sampleDs.slbListeners[0].protocol}

Return

A collection of values returned by getListeners.

Parameters

argument

A collection of arguments for invoking getListeners.


suspend fun getListeners(descriptionRegex: String? = null, frontendPort: Int? = null, loadBalancerId: String, outputFile: String? = null, protocol: String? = null): GetListenersResult

Return

A collection of values returned by getListeners.

Parameters

descriptionRegex

A regex string to filter results by SLB listener description.

frontendPort

Filter listeners by the specified frontend port.

loadBalancerId

ID of the SLB with listeners.

outputFile

File name where to save data source results (after running pulumi preview).

protocol

Filter listeners by the specified protocol. Valid values: http, https, tcp and udp.

See also


Return

A collection of values returned by getListeners.

Parameters

argument

Builder for com.pulumi.alicloud.slb.kotlin.inputs.GetListenersPlainArgs.

See also