cloudamqp.PrivatelinkAws
Explore with Pulumi AI
Enable PrivateLink for a CloudAMQP instance hosted in AWS. If no existing VPC available when enable
PrivateLink, a new VPC will be created with subnet 10.52.72.0/24
.
Note: Enabling PrivateLink will automatically add firewall rules for the peered subnet.
Default PrivateLink firewall rule
Example Usage
CloudAMQP instance without existing VPC
import * as pulumi from "@pulumi/pulumi";
import * as cloudamqp from "@pulumi/cloudamqp";
const instance = new cloudamqp.Instance("instance", {
name: "Instance 01",
plan: "bunny-1",
region: "amazon-web-services::us-west-1",
tags: [],
});
const privatelink = new cloudamqp.PrivatelinkAws("privatelink", {
instanceId: instance.id,
allowedPrincipals: ["arn:aws:iam::aws-account-id:user/user-name"],
});
import pulumi
import pulumi_cloudamqp as cloudamqp
instance = cloudamqp.Instance("instance",
name="Instance 01",
plan="bunny-1",
region="amazon-web-services::us-west-1",
tags=[])
privatelink = cloudamqp.PrivatelinkAws("privatelink",
instance_id=instance.id,
allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
package main
import (
"github.com/pulumi/pulumi-cloudamqp/sdk/v3/go/cloudamqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
instance, err := cloudamqp.NewInstance(ctx, "instance", &cloudamqp.InstanceArgs{
Name: pulumi.String("Instance 01"),
Plan: pulumi.String("bunny-1"),
Region: pulumi.String("amazon-web-services::us-west-1"),
Tags: pulumi.StringArray{},
})
if err != nil {
return err
}
_, err = cloudamqp.NewPrivatelinkAws(ctx, "privatelink", &cloudamqp.PrivatelinkAwsArgs{
InstanceId: instance.ID(),
AllowedPrincipals: pulumi.StringArray{
pulumi.String("arn:aws:iam::aws-account-id:user/user-name"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using CloudAmqp = Pulumi.CloudAmqp;
return await Deployment.RunAsync(() =>
{
var instance = new CloudAmqp.Instance("instance", new()
{
Name = "Instance 01",
Plan = "bunny-1",
Region = "amazon-web-services::us-west-1",
Tags = new[] {},
});
var privatelink = new CloudAmqp.PrivatelinkAws("privatelink", new()
{
InstanceId = instance.Id,
AllowedPrincipals = new[]
{
"arn:aws:iam::aws-account-id:user/user-name",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudamqp.Instance;
import com.pulumi.cloudamqp.InstanceArgs;
import com.pulumi.cloudamqp.PrivatelinkAws;
import com.pulumi.cloudamqp.PrivatelinkAwsArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.name("Instance 01")
.plan("bunny-1")
.region("amazon-web-services::us-west-1")
.tags()
.build());
var privatelink = new PrivatelinkAws("privatelink", PrivatelinkAwsArgs.builder()
.instanceId(instance.id())
.allowedPrincipals("arn:aws:iam::aws-account-id:user/user-name")
.build());
}
}
resources:
instance:
type: cloudamqp:Instance
properties:
name: Instance 01
plan: bunny-1
region: amazon-web-services::us-west-1
tags: []
privatelink:
type: cloudamqp:PrivatelinkAws
properties:
instanceId: ${instance.id}
allowedPrincipals:
- arn:aws:iam::aws-account-id:user/user-name
CloudAMQP instance in an existing VPC
import * as pulumi from "@pulumi/pulumi";
import * as cloudamqp from "@pulumi/cloudamqp";
const vpc = new cloudamqp.Vpc("vpc", {
name: "Standalone VPC",
region: "amazon-web-services::us-west-1",
subnet: "10.56.72.0/24",
tags: [],
});
const instance = new cloudamqp.Instance("instance", {
name: "Instance 01",
plan: "bunny-1",
region: "amazon-web-services::us-west-1",
tags: [],
vpcId: vpc.id,
keepAssociatedVpc: true,
});
const privatelink = new cloudamqp.PrivatelinkAws("privatelink", {
instanceId: instance.id,
allowedPrincipals: ["arn:aws:iam::aws-account-id:user/user-name"],
});
import pulumi
import pulumi_cloudamqp as cloudamqp
vpc = cloudamqp.Vpc("vpc",
name="Standalone VPC",
region="amazon-web-services::us-west-1",
subnet="10.56.72.0/24",
tags=[])
instance = cloudamqp.Instance("instance",
name="Instance 01",
plan="bunny-1",
region="amazon-web-services::us-west-1",
tags=[],
vpc_id=vpc.id,
keep_associated_vpc=True)
privatelink = cloudamqp.PrivatelinkAws("privatelink",
instance_id=instance.id,
allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
package main
import (
"github.com/pulumi/pulumi-cloudamqp/sdk/v3/go/cloudamqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
vpc, err := cloudamqp.NewVpc(ctx, "vpc", &cloudamqp.VpcArgs{
Name: pulumi.String("Standalone VPC"),
Region: pulumi.String("amazon-web-services::us-west-1"),
Subnet: pulumi.String("10.56.72.0/24"),
Tags: pulumi.StringArray{},
})
if err != nil {
return err
}
instance, err := cloudamqp.NewInstance(ctx, "instance", &cloudamqp.InstanceArgs{
Name: pulumi.String("Instance 01"),
Plan: pulumi.String("bunny-1"),
Region: pulumi.String("amazon-web-services::us-west-1"),
Tags: pulumi.StringArray{},
VpcId: vpc.ID(),
KeepAssociatedVpc: pulumi.Bool(true),
})
if err != nil {
return err
}
_, err = cloudamqp.NewPrivatelinkAws(ctx, "privatelink", &cloudamqp.PrivatelinkAwsArgs{
InstanceId: instance.ID(),
AllowedPrincipals: pulumi.StringArray{
pulumi.String("arn:aws:iam::aws-account-id:user/user-name"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using CloudAmqp = Pulumi.CloudAmqp;
return await Deployment.RunAsync(() =>
{
var vpc = new CloudAmqp.Vpc("vpc", new()
{
Name = "Standalone VPC",
Region = "amazon-web-services::us-west-1",
Subnet = "10.56.72.0/24",
Tags = new[] {},
});
var instance = new CloudAmqp.Instance("instance", new()
{
Name = "Instance 01",
Plan = "bunny-1",
Region = "amazon-web-services::us-west-1",
Tags = new[] {},
VpcId = vpc.Id,
KeepAssociatedVpc = true,
});
var privatelink = new CloudAmqp.PrivatelinkAws("privatelink", new()
{
InstanceId = instance.Id,
AllowedPrincipals = new[]
{
"arn:aws:iam::aws-account-id:user/user-name",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudamqp.Vpc;
import com.pulumi.cloudamqp.VpcArgs;
import com.pulumi.cloudamqp.Instance;
import com.pulumi.cloudamqp.InstanceArgs;
import com.pulumi.cloudamqp.PrivatelinkAws;
import com.pulumi.cloudamqp.PrivatelinkAwsArgs;
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 vpc = new Vpc("vpc", VpcArgs.builder()
.name("Standalone VPC")
.region("amazon-web-services::us-west-1")
.subnet("10.56.72.0/24")
.tags()
.build());
var instance = new Instance("instance", InstanceArgs.builder()
.name("Instance 01")
.plan("bunny-1")
.region("amazon-web-services::us-west-1")
.tags()
.vpcId(vpc.id())
.keepAssociatedVpc(true)
.build());
var privatelink = new PrivatelinkAws("privatelink", PrivatelinkAwsArgs.builder()
.instanceId(instance.id())
.allowedPrincipals("arn:aws:iam::aws-account-id:user/user-name")
.build());
}
}
resources:
vpc:
type: cloudamqp:Vpc
properties:
name: Standalone VPC
region: amazon-web-services::us-west-1
subnet: 10.56.72.0/24
tags: []
instance:
type: cloudamqp:Instance
properties:
name: Instance 01
plan: bunny-1
region: amazon-web-services::us-west-1
tags: []
vpcId: ${vpc.id}
keepAssociatedVpc: true
privatelink:
type: cloudamqp:PrivatelinkAws
properties:
instanceId: ${instance.id}
allowedPrincipals:
- arn:aws:iam::aws-account-id:user/user-name
With Additional Firewall Rules
CloudAMQP instance in an existing VPC with managed firewall rules
import * as pulumi from "@pulumi/pulumi";
import * as cloudamqp from "@pulumi/cloudamqp";
const vpc = new cloudamqp.Vpc("vpc", {
name: "Standalone VPC",
region: "amazon-web-services::us-west-1",
subnet: "10.56.72.0/24",
tags: [],
});
const instance = new cloudamqp.Instance("instance", {
name: "Instance 01",
plan: "bunny-1",
region: "amazon-web-services::us-west-1",
tags: [],
vpcId: vpc.id,
keepAssociatedVpc: true,
});
const privatelink = new cloudamqp.PrivatelinkAws("privatelink", {
instanceId: instance.id,
allowedPrincipals: ["arn:aws:iam::aws-account-id:user/user-name"],
});
const firewallSettings = new cloudamqp.SecurityFirewall("firewall_settings", {
instanceId: instance.id,
rules: [
{
description: "Custom PrivateLink setup",
ip: vpc.subnet,
ports: [],
services: [
"AMQP",
"AMQPS",
"HTTPS",
"STREAM",
"STREAM_SSL",
],
},
{
description: "MGMT interface",
ip: "0.0.0.0/0",
ports: [],
services: ["HTTPS"],
},
],
}, {
dependsOn: [privatelink],
});
import pulumi
import pulumi_cloudamqp as cloudamqp
vpc = cloudamqp.Vpc("vpc",
name="Standalone VPC",
region="amazon-web-services::us-west-1",
subnet="10.56.72.0/24",
tags=[])
instance = cloudamqp.Instance("instance",
name="Instance 01",
plan="bunny-1",
region="amazon-web-services::us-west-1",
tags=[],
vpc_id=vpc.id,
keep_associated_vpc=True)
privatelink = cloudamqp.PrivatelinkAws("privatelink",
instance_id=instance.id,
allowed_principals=["arn:aws:iam::aws-account-id:user/user-name"])
firewall_settings = cloudamqp.SecurityFirewall("firewall_settings",
instance_id=instance.id,
rules=[
{
"description": "Custom PrivateLink setup",
"ip": vpc.subnet,
"ports": [],
"services": [
"AMQP",
"AMQPS",
"HTTPS",
"STREAM",
"STREAM_SSL",
],
},
{
"description": "MGMT interface",
"ip": "0.0.0.0/0",
"ports": [],
"services": ["HTTPS"],
},
],
opts = pulumi.ResourceOptions(depends_on=[privatelink]))
package main
import (
"github.com/pulumi/pulumi-cloudamqp/sdk/v3/go/cloudamqp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
vpc, err := cloudamqp.NewVpc(ctx, "vpc", &cloudamqp.VpcArgs{
Name: pulumi.String("Standalone VPC"),
Region: pulumi.String("amazon-web-services::us-west-1"),
Subnet: pulumi.String("10.56.72.0/24"),
Tags: pulumi.StringArray{},
})
if err != nil {
return err
}
instance, err := cloudamqp.NewInstance(ctx, "instance", &cloudamqp.InstanceArgs{
Name: pulumi.String("Instance 01"),
Plan: pulumi.String("bunny-1"),
Region: pulumi.String("amazon-web-services::us-west-1"),
Tags: pulumi.StringArray{},
VpcId: vpc.ID(),
KeepAssociatedVpc: pulumi.Bool(true),
})
if err != nil {
return err
}
privatelink, err := cloudamqp.NewPrivatelinkAws(ctx, "privatelink", &cloudamqp.PrivatelinkAwsArgs{
InstanceId: instance.ID(),
AllowedPrincipals: pulumi.StringArray{
pulumi.String("arn:aws:iam::aws-account-id:user/user-name"),
},
})
if err != nil {
return err
}
_, err = cloudamqp.NewSecurityFirewall(ctx, "firewall_settings", &cloudamqp.SecurityFirewallArgs{
InstanceId: instance.ID(),
Rules: cloudamqp.SecurityFirewallRuleArray{
&cloudamqp.SecurityFirewallRuleArgs{
Description: pulumi.String("Custom PrivateLink setup"),
Ip: vpc.Subnet,
Ports: pulumi.IntArray{},
Services: pulumi.StringArray{
pulumi.String("AMQP"),
pulumi.String("AMQPS"),
pulumi.String("HTTPS"),
pulumi.String("STREAM"),
pulumi.String("STREAM_SSL"),
},
},
&cloudamqp.SecurityFirewallRuleArgs{
Description: pulumi.String("MGMT interface"),
Ip: pulumi.String("0.0.0.0/0"),
Ports: pulumi.IntArray{},
Services: pulumi.StringArray{
pulumi.String("HTTPS"),
},
},
},
}, pulumi.DependsOn([]pulumi.Resource{
privatelink,
}))
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using CloudAmqp = Pulumi.CloudAmqp;
return await Deployment.RunAsync(() =>
{
var vpc = new CloudAmqp.Vpc("vpc", new()
{
Name = "Standalone VPC",
Region = "amazon-web-services::us-west-1",
Subnet = "10.56.72.0/24",
Tags = new[] {},
});
var instance = new CloudAmqp.Instance("instance", new()
{
Name = "Instance 01",
Plan = "bunny-1",
Region = "amazon-web-services::us-west-1",
Tags = new[] {},
VpcId = vpc.Id,
KeepAssociatedVpc = true,
});
var privatelink = new CloudAmqp.PrivatelinkAws("privatelink", new()
{
InstanceId = instance.Id,
AllowedPrincipals = new[]
{
"arn:aws:iam::aws-account-id:user/user-name",
},
});
var firewallSettings = new CloudAmqp.SecurityFirewall("firewall_settings", new()
{
InstanceId = instance.Id,
Rules = new[]
{
new CloudAmqp.Inputs.SecurityFirewallRuleArgs
{
Description = "Custom PrivateLink setup",
Ip = vpc.Subnet,
Ports = new() { },
Services = new[]
{
"AMQP",
"AMQPS",
"HTTPS",
"STREAM",
"STREAM_SSL",
},
},
new CloudAmqp.Inputs.SecurityFirewallRuleArgs
{
Description = "MGMT interface",
Ip = "0.0.0.0/0",
Ports = new() { },
Services = new[]
{
"HTTPS",
},
},
},
}, new CustomResourceOptions
{
DependsOn =
{
privatelink,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.cloudamqp.Vpc;
import com.pulumi.cloudamqp.VpcArgs;
import com.pulumi.cloudamqp.Instance;
import com.pulumi.cloudamqp.InstanceArgs;
import com.pulumi.cloudamqp.PrivatelinkAws;
import com.pulumi.cloudamqp.PrivatelinkAwsArgs;
import com.pulumi.cloudamqp.SecurityFirewall;
import com.pulumi.cloudamqp.SecurityFirewallArgs;
import com.pulumi.cloudamqp.inputs.SecurityFirewallRuleArgs;
import com.pulumi.resources.CustomResourceOptions;
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 vpc = new Vpc("vpc", VpcArgs.builder()
.name("Standalone VPC")
.region("amazon-web-services::us-west-1")
.subnet("10.56.72.0/24")
.tags()
.build());
var instance = new Instance("instance", InstanceArgs.builder()
.name("Instance 01")
.plan("bunny-1")
.region("amazon-web-services::us-west-1")
.tags()
.vpcId(vpc.id())
.keepAssociatedVpc(true)
.build());
var privatelink = new PrivatelinkAws("privatelink", PrivatelinkAwsArgs.builder()
.instanceId(instance.id())
.allowedPrincipals("arn:aws:iam::aws-account-id:user/user-name")
.build());
var firewallSettings = new SecurityFirewall("firewallSettings", SecurityFirewallArgs.builder()
.instanceId(instance.id())
.rules(
SecurityFirewallRuleArgs.builder()
.description("Custom PrivateLink setup")
.ip(vpc.subnet())
.ports()
.services(
"AMQP",
"AMQPS",
"HTTPS",
"STREAM",
"STREAM_SSL")
.build(),
SecurityFirewallRuleArgs.builder()
.description("MGMT interface")
.ip("0.0.0.0/0")
.ports()
.services("HTTPS")
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(privatelink)
.build());
}
}
resources:
vpc:
type: cloudamqp:Vpc
properties:
name: Standalone VPC
region: amazon-web-services::us-west-1
subnet: 10.56.72.0/24
tags: []
instance:
type: cloudamqp:Instance
properties:
name: Instance 01
plan: bunny-1
region: amazon-web-services::us-west-1
tags: []
vpcId: ${vpc.id}
keepAssociatedVpc: true
privatelink:
type: cloudamqp:PrivatelinkAws
properties:
instanceId: ${instance.id}
allowedPrincipals:
- arn:aws:iam::aws-account-id:user/user-name
firewallSettings:
type: cloudamqp:SecurityFirewall
name: firewall_settings
properties:
instanceId: ${instance.id}
rules:
- description: Custom PrivateLink setup
ip: ${vpc.subnet}
ports: []
services:
- AMQP
- AMQPS
- HTTPS
- STREAM
- STREAM_SSL
- description: MGMT interface
ip: 0.0.0.0/0
ports: []
services:
- HTTPS
options:
dependson:
- ${privatelink}
Depedency
This resource depends on CloudAMQP instance identifier, cloudamqp_instance.instance.id
.
Create PrivateLink with additional firewall rules
To create a PrivateLink configuration with additional firewall rules, it’s required to chain the cloudamqp.SecurityFirewall
resource to avoid parallel conflicting resource calls. You can do this by making the firewall
resource depend on the PrivateLink resource, cloudamqp_privatelink_aws.privatelink
.
Furthermore, since all firewall rules are overwritten, the otherwise automatically added rules for the PrivateLink also needs to be added.
Create PrivatelinkAws Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new PrivatelinkAws(name: string, args: PrivatelinkAwsArgs, opts?: CustomResourceOptions);
@overload
def PrivatelinkAws(resource_name: str,
args: PrivatelinkAwsArgs,
opts: Optional[ResourceOptions] = None)
@overload
def PrivatelinkAws(resource_name: str,
opts: Optional[ResourceOptions] = None,
allowed_principals: Optional[Sequence[str]] = None,
instance_id: Optional[int] = None,
sleep: Optional[int] = None,
timeout: Optional[int] = None)
func NewPrivatelinkAws(ctx *Context, name string, args PrivatelinkAwsArgs, opts ...ResourceOption) (*PrivatelinkAws, error)
public PrivatelinkAws(string name, PrivatelinkAwsArgs args, CustomResourceOptions? opts = null)
public PrivatelinkAws(String name, PrivatelinkAwsArgs args)
public PrivatelinkAws(String name, PrivatelinkAwsArgs args, CustomResourceOptions options)
type: cloudamqp:PrivatelinkAws
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 PrivatelinkAwsArgs
- 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 PrivatelinkAwsArgs
- 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 PrivatelinkAwsArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args PrivatelinkAwsArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args PrivatelinkAwsArgs
- 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 privatelinkAwsResource = new CloudAmqp.PrivatelinkAws("privatelinkAwsResource", new()
{
AllowedPrincipals = new[]
{
"string",
},
InstanceId = 0,
Sleep = 0,
Timeout = 0,
});
example, err := cloudamqp.NewPrivatelinkAws(ctx, "privatelinkAwsResource", &cloudamqp.PrivatelinkAwsArgs{
AllowedPrincipals: pulumi.StringArray{
pulumi.String("string"),
},
InstanceId: pulumi.Int(0),
Sleep: pulumi.Int(0),
Timeout: pulumi.Int(0),
})
var privatelinkAwsResource = new PrivatelinkAws("privatelinkAwsResource", PrivatelinkAwsArgs.builder()
.allowedPrincipals("string")
.instanceId(0)
.sleep(0)
.timeout(0)
.build());
privatelink_aws_resource = cloudamqp.PrivatelinkAws("privatelinkAwsResource",
allowed_principals=["string"],
instance_id=0,
sleep=0,
timeout=0)
const privatelinkAwsResource = new cloudamqp.PrivatelinkAws("privatelinkAwsResource", {
allowedPrincipals: ["string"],
instanceId: 0,
sleep: 0,
timeout: 0,
});
type: cloudamqp:PrivatelinkAws
properties:
allowedPrincipals:
- string
instanceId: 0
sleep: 0
timeout: 0
PrivatelinkAws 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 PrivatelinkAws resource accepts the following input properties:
- Allowed
Principals List<string> - Allowed principals to access the endpoint service.
- Instance
Id int - The CloudAMQP instance identifier.
- Sleep int
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- Timeout int
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- Allowed
Principals []string - Allowed principals to access the endpoint service.
- Instance
Id int - The CloudAMQP instance identifier.
- Sleep int
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- Timeout int
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- allowed
Principals List<String> - Allowed principals to access the endpoint service.
- instance
Id Integer - The CloudAMQP instance identifier.
- sleep Integer
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- timeout Integer
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- allowed
Principals string[] - Allowed principals to access the endpoint service.
- instance
Id number - The CloudAMQP instance identifier.
- sleep number
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- timeout number
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- allowed_
principals Sequence[str] - Allowed principals to access the endpoint service.
- instance_
id int - The CloudAMQP instance identifier.
- sleep int
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- timeout int
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- allowed
Principals List<String> - Allowed principals to access the endpoint service.
- instance
Id Number - The CloudAMQP instance identifier.
- sleep Number
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- timeout Number
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
Outputs
All input properties are implicitly available as output properties. Additionally, the PrivatelinkAws resource produces the following output properties:
- Active
Zones List<string> - Covering availability zones used when creating an Endpoint from other VPC.
- Id string
- The provider-assigned unique ID for this managed resource.
- Service
Name string - Service name of the PrivateLink used when creating the endpoint from other VPC.
- Status string
- PrivateLink status [enable, pending, disable]
- Active
Zones []string - Covering availability zones used when creating an Endpoint from other VPC.
- Id string
- The provider-assigned unique ID for this managed resource.
- Service
Name string - Service name of the PrivateLink used when creating the endpoint from other VPC.
- Status string
- PrivateLink status [enable, pending, disable]
- active
Zones List<String> - Covering availability zones used when creating an Endpoint from other VPC.
- id String
- The provider-assigned unique ID for this managed resource.
- service
Name String - Service name of the PrivateLink used when creating the endpoint from other VPC.
- status String
- PrivateLink status [enable, pending, disable]
- active
Zones string[] - Covering availability zones used when creating an Endpoint from other VPC.
- id string
- The provider-assigned unique ID for this managed resource.
- service
Name string - Service name of the PrivateLink used when creating the endpoint from other VPC.
- status string
- PrivateLink status [enable, pending, disable]
- active_
zones Sequence[str] - Covering availability zones used when creating an Endpoint from other VPC.
- id str
- The provider-assigned unique ID for this managed resource.
- service_
name str - Service name of the PrivateLink used when creating the endpoint from other VPC.
- status str
- PrivateLink status [enable, pending, disable]
- active
Zones List<String> - Covering availability zones used when creating an Endpoint from other VPC.
- id String
- The provider-assigned unique ID for this managed resource.
- service
Name String - Service name of the PrivateLink used when creating the endpoint from other VPC.
- status String
- PrivateLink status [enable, pending, disable]
Look up Existing PrivatelinkAws Resource
Get an existing PrivatelinkAws 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?: PrivatelinkAwsState, opts?: CustomResourceOptions): PrivatelinkAws
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
active_zones: Optional[Sequence[str]] = None,
allowed_principals: Optional[Sequence[str]] = None,
instance_id: Optional[int] = None,
service_name: Optional[str] = None,
sleep: Optional[int] = None,
status: Optional[str] = None,
timeout: Optional[int] = None) -> PrivatelinkAws
func GetPrivatelinkAws(ctx *Context, name string, id IDInput, state *PrivatelinkAwsState, opts ...ResourceOption) (*PrivatelinkAws, error)
public static PrivatelinkAws Get(string name, Input<string> id, PrivatelinkAwsState? state, CustomResourceOptions? opts = null)
public static PrivatelinkAws get(String name, Output<String> id, PrivatelinkAwsState 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.
- Active
Zones List<string> - Covering availability zones used when creating an Endpoint from other VPC.
- Allowed
Principals List<string> - Allowed principals to access the endpoint service.
- Instance
Id int - The CloudAMQP instance identifier.
- Service
Name string - Service name of the PrivateLink used when creating the endpoint from other VPC.
- Sleep int
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- Status string
- PrivateLink status [enable, pending, disable]
- Timeout int
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- Active
Zones []string - Covering availability zones used when creating an Endpoint from other VPC.
- Allowed
Principals []string - Allowed principals to access the endpoint service.
- Instance
Id int - The CloudAMQP instance identifier.
- Service
Name string - Service name of the PrivateLink used when creating the endpoint from other VPC.
- Sleep int
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- Status string
- PrivateLink status [enable, pending, disable]
- Timeout int
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- active
Zones List<String> - Covering availability zones used when creating an Endpoint from other VPC.
- allowed
Principals List<String> - Allowed principals to access the endpoint service.
- instance
Id Integer - The CloudAMQP instance identifier.
- service
Name String - Service name of the PrivateLink used when creating the endpoint from other VPC.
- sleep Integer
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- status String
- PrivateLink status [enable, pending, disable]
- timeout Integer
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- active
Zones string[] - Covering availability zones used when creating an Endpoint from other VPC.
- allowed
Principals string[] - Allowed principals to access the endpoint service.
- instance
Id number - The CloudAMQP instance identifier.
- service
Name string - Service name of the PrivateLink used when creating the endpoint from other VPC.
- sleep number
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- status string
- PrivateLink status [enable, pending, disable]
- timeout number
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- active_
zones Sequence[str] - Covering availability zones used when creating an Endpoint from other VPC.
- allowed_
principals Sequence[str] - Allowed principals to access the endpoint service.
- instance_
id int - The CloudAMQP instance identifier.
- service_
name str - Service name of the PrivateLink used when creating the endpoint from other VPC.
- sleep int
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- status str
- PrivateLink status [enable, pending, disable]
- timeout int
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
- active
Zones List<String> - Covering availability zones used when creating an Endpoint from other VPC.
- allowed
Principals List<String> - Allowed principals to access the endpoint service.
- instance
Id Number - The CloudAMQP instance identifier.
- service
Name String - Service name of the PrivateLink used when creating the endpoint from other VPC.
- sleep Number
- Configurable sleep time (seconds) when enable PrivateLink. Default set to 10 seconds. Available from v1.29.0
- status String
- PrivateLink status [enable, pending, disable]
- timeout Number
Configurable timeout time (seconds) when enable PrivateLink. Default set to 1800 seconds. Available from v1.29.0
Allowed principals format:
arn:aws:iam::aws-account-id:root
arn:aws:iam::aws-account-id:user/user-name
arn:aws:iam::aws-account-id:role/role-name
Import
cloudamqp_privatelink_aws
can be imported using CloudAMQP internal identifier.
$ pulumi import cloudamqp:index/privatelinkAws:PrivatelinkAws privatelink <id>`
The resource uses the same identifier as the CloudAMQP instance. To retrieve the identifier for an instance, either use CloudAMQP customer API or use the data source cloudamqp_account
.
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- CloudAMQP pulumi/pulumi-cloudamqp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
cloudamqp
Terraform Provider.