get Listeners
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);
Content copied to clipboard
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)
Content copied to clipboard
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.Apply(getListenersResult => getListenersResult.SlbListeners[0]?.Protocol),
};
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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(_sampleDs -> _sampleDs.slbListeners()[0].protocol()));
}
}
Content copied to clipboard
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}
Content copied to clipboard
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
description Regex
A regex string to filter results by SLB listener description.
frontend Port
Filter listeners by the specified frontend port.
load Balancer Id
ID of the SLB with listeners.
output File
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
suspend fun getListeners(argument: suspend GetListenersPlainArgsBuilder.() -> Unit): GetListenersResult
Return
A collection of values returned by getListeners.
Parameters
argument
Builder for com.pulumi.alicloud.slb.kotlin.inputs.GetListenersPlainArgs.