Queue Args
Provides a RabbitMQ (AMQP) Queue resource. For information about RabbitMQ (AMQP) Queue and how to use it, see What is Queue.
NOTE: Available since v1.127.0.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = new alicloud.amqp.Instance("default", {
instanceType: "enterprise",
maxTps: "3000",
queueCapacity: "200",
storageSize: "700",
supportEip: false,
maxEipTps: "128",
paymentType: "Subscription",
period: 1,
});
const defaultVirtualHost = new alicloud.amqp.VirtualHost("default", {
instanceId: _default.id,
virtualHostName: "tf-example",
});
const defaultExchange = new alicloud.amqp.Exchange("default", {
autoDeleteState: false,
exchangeName: "tf-example",
exchangeType: "DIRECT",
instanceId: _default.id,
internal: false,
virtualHostName: defaultVirtualHost.virtualHostName,
});
const example = new alicloud.amqp.Queue("example", {
instanceId: _default.id,
queueName: "tf-example",
virtualHostName: defaultVirtualHost.virtualHostName,
});
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.amqp.Instance("default",
instance_type="enterprise",
max_tps="3000",
queue_capacity="200",
storage_size="700",
support_eip=False,
max_eip_tps="128",
payment_type="Subscription",
period=1)
default_virtual_host = alicloud.amqp.VirtualHost("default",
instance_id=default.id,
virtual_host_name="tf-example")
default_exchange = alicloud.amqp.Exchange("default",
auto_delete_state=False,
exchange_name="tf-example",
exchange_type="DIRECT",
instance_id=default.id,
internal=False,
virtual_host_name=default_virtual_host.virtual_host_name)
example = alicloud.amqp.Queue("example",
instance_id=default.id,
queue_name="tf-example",
virtual_host_name=default_virtual_host.virtual_host_name)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = new AliCloud.Amqp.Instance("default", new()
{
InstanceType = "enterprise",
MaxTps = "3000",
QueueCapacity = "200",
StorageSize = "700",
SupportEip = false,
MaxEipTps = "128",
PaymentType = "Subscription",
Period = 1,
});
var defaultVirtualHost = new AliCloud.Amqp.VirtualHost("default", new()
{
InstanceId = @default.Id,
VirtualHostName = "tf-example",
});
var defaultExchange = new AliCloud.Amqp.Exchange("default", new()
{
AutoDeleteState = false,
ExchangeName = "tf-example",
ExchangeType = "DIRECT",
InstanceId = @default.Id,
Internal = false,
VirtualHostName = defaultVirtualHost.VirtualHostName,
});
var example = new AliCloud.Amqp.Queue("example", new()
{
InstanceId = @default.Id,
QueueName = "tf-example",
VirtualHostName = defaultVirtualHost.VirtualHostName,
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/amqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := amqp.NewInstance(ctx, "default", &amqp.InstanceArgs{
InstanceType: pulumi.String("enterprise"),
MaxTps: pulumi.String("3000"),
QueueCapacity: pulumi.String("200"),
StorageSize: pulumi.String("700"),
SupportEip: pulumi.Bool(false),
MaxEipTps: pulumi.String("128"),
PaymentType: pulumi.String("Subscription"),
Period: pulumi.Int(1),
})
if err != nil {
return err
}
defaultVirtualHost, err := amqp.NewVirtualHost(ctx, "default", &amqp.VirtualHostArgs{
InstanceId: _default.ID(),
VirtualHostName: pulumi.String("tf-example"),
})
if err != nil {
return err
}
_, err = amqp.NewExchange(ctx, "default", &amqp.ExchangeArgs{
AutoDeleteState: pulumi.Bool(false),
ExchangeName: pulumi.String("tf-example"),
ExchangeType: pulumi.String("DIRECT"),
InstanceId: _default.ID(),
Internal: pulumi.Bool(false),
VirtualHostName: defaultVirtualHost.VirtualHostName,
})
if err != nil {
return err
}
_, err = amqp.NewQueue(ctx, "example", &amqp.QueueArgs{
InstanceId: _default.ID(),
QueueName: pulumi.String("tf-example"),
VirtualHostName: defaultVirtualHost.VirtualHostName,
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.amqp.Instance;
import com.pulumi.alicloud.amqp.InstanceArgs;
import com.pulumi.alicloud.amqp.VirtualHost;
import com.pulumi.alicloud.amqp.VirtualHostArgs;
import com.pulumi.alicloud.amqp.Exchange;
import com.pulumi.alicloud.amqp.ExchangeArgs;
import com.pulumi.alicloud.amqp.Queue;
import com.pulumi.alicloud.amqp.QueueArgs;
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 Instance("default", InstanceArgs.builder()
.instanceType("enterprise")
.maxTps("3000")
.queueCapacity("200")
.storageSize("700")
.supportEip(false)
.maxEipTps("128")
.paymentType("Subscription")
.period(1)
.build());
var defaultVirtualHost = new VirtualHost("defaultVirtualHost", VirtualHostArgs.builder()
.instanceId(default_.id())
.virtualHostName("tf-example")
.build());
var defaultExchange = new Exchange("defaultExchange", ExchangeArgs.builder()
.autoDeleteState(false)
.exchangeName("tf-example")
.exchangeType("DIRECT")
.instanceId(default_.id())
.internal(false)
.virtualHostName(defaultVirtualHost.virtualHostName())
.build());
var example = new Queue("example", QueueArgs.builder()
.instanceId(default_.id())
.queueName("tf-example")
.virtualHostName(defaultVirtualHost.virtualHostName())
.build());
}
}
resources:
default:
type: alicloud:amqp:Instance
properties:
instanceType: enterprise
maxTps: 3000
queueCapacity: 200
storageSize: 700
supportEip: false
maxEipTps: 128
paymentType: Subscription
period: 1
defaultVirtualHost:
type: alicloud:amqp:VirtualHost
name: default
properties:
instanceId: ${default.id}
virtualHostName: tf-example
defaultExchange:
type: alicloud:amqp:Exchange
name: default
properties:
autoDeleteState: false
exchangeName: tf-example
exchangeType: DIRECT
instanceId: ${default.id}
internal: false
virtualHostName: ${defaultVirtualHost.virtualHostName}
example:
type: alicloud:amqp:Queue
properties:
instanceId: ${default.id}
queueName: tf-example
virtualHostName: ${defaultVirtualHost.virtualHostName}
Import
RabbitMQ (AMQP) Queue can be imported using the id, e.g.
$ pulumi import alicloud:amqp/queue:Queue example <instance_id>:<virtual_host_name>:<queue_name>
Constructors
Properties
Specifies whether the Auto Delete attribute is configured. Valid values:
The validity period after which the queue is automatically deleted. If the queue is not accessed within a specified period of time, it is automatically deleted.
The dead-letter exchange. A dead-letter exchange is used to receive rejected messages. If a consumer rejects a message that cannot be retried, this message is routed to a specified dead-letter exchange. Then, the dead-letter exchange routes the message to the queue that is bound to the dead-letter exchange.
The dead letter routing key.
Specifies whether the queue is an exclusive queue. Valid values:
The ID of the instance.
The highest priority supported by the queue. This parameter is set to a positive integer. Valid values: 0 to 255. Recommended values: 1 to 10
The message TTL of the queue. If the retention period of a message in the queue exceeds the message TTL of the queue, the message expires. Message TTL must be set to a non-negative integer, in milliseconds. For example, if the message TTL of the queue is 1000, messages survive for at most 1 second in the queue.
The name of the virtual host.