awsx.ec2.Vpc
Explore with Pulumi AI
Create Vpc Resource
new Vpc(name: string, args?: VpcArgs, opts?: CustomResourceOptions);
@overload
def Vpc(resource_name: str,
opts: Optional[ResourceOptions] = None,
assign_generated_ipv6_cidr_block: Optional[bool] = None,
availability_zone_names: Optional[Sequence[str]] = None,
cidr_block: Optional[str] = None,
enable_classiclink: Optional[bool] = None,
enable_classiclink_dns_support: Optional[bool] = None,
enable_dns_hostnames: Optional[bool] = None,
enable_dns_support: Optional[bool] = None,
instance_tenancy: Optional[str] = None,
ipv4_ipam_pool_id: Optional[str] = None,
ipv4_netmask_length: Optional[int] = None,
ipv6_cidr_block: Optional[str] = None,
ipv6_cidr_block_network_border_group: Optional[str] = None,
ipv6_ipam_pool_id: Optional[str] = None,
ipv6_netmask_length: Optional[int] = None,
nat_gateways: Optional[NatGatewayConfigurationArgs] = None,
number_of_availability_zones: Optional[int] = None,
subnet_specs: Optional[Sequence[SubnetSpecArgs]] = None,
tags: Optional[Mapping[str, str]] = None,
vpc_endpoint_specs: Optional[Sequence[VpcEndpointSpecArgs]] = None)
@overload
def Vpc(resource_name: str,
args: Optional[VpcArgs] = None,
opts: Optional[ResourceOptions] = None)
func NewVpc(ctx *Context, name string, args *VpcArgs, opts ...ResourceOption) (*Vpc, error)
public Vpc(string name, VpcArgs? args = null, CustomResourceOptions? opts = null)
type: awsx:ec2:Vpc
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VpcArgs
- 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 VpcArgs
- 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 VpcArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args VpcArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args VpcArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Vpc Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Vpc resource accepts the following input properties:
- Assign
Generated boolIpv6Cidr Block Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is
false
. Conflicts withipv6_ipam_pool_id
- Availability
Zone List<string>Names A list of availability zone names to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- Cidr
Block string The CIDR block for the VPC. Optional. Defaults to 10.0.0.0/16.
- Enable
Classiclink bool A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the ClassicLink documentation for more information. Defaults false.
- Enable
Classiclink boolDns Support A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
- Enable
Dns boolHostnames A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
- Enable
Dns boolSupport A boolean flag to enable/disable DNS support in the VPC. Defaults true.
- Instance
Tenancy string A tenancy option for instances launched into the VPC. Default is
default
, which ensures that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the EC2 instance is launched. The only other option isdedicated
, which ensures that EC2 instances launched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specified at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage fee.- Ipv4Ipam
Pool stringId The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can monitor IP address usage throughout your AWS Organization.
- Ipv4Netmask
Length int The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying a
ipv4_ipam_pool_id
.- Ipv6Cidr
Block string IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM using
ipv6_netmask_length
.- Ipv6Cidr
Block stringNetwork Border Group By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_border_group will be set to the region of the VPC. This can be changed to restrict advertisement of public addresses to specific Network Border Groups such as LocalZones.
- Ipv6Ipam
Pool stringId IPAM Pool ID for a IPv6 pool. Conflicts with
assign_generated_ipv6_cidr_block
.- Ipv6Netmask
Length int Netmask length to request from IPAM Pool. Conflicts with
ipv6_cidr_block
. This can be omitted if IPAM pool as aallocation_default_netmask_length
set. Valid values:56
.- Nat
Gateways Pulumi.Awsx. Ec2. Inputs. Nat Gateway Configuration Args Configuration for NAT Gateways. Optional. If private and public subnets are both specified, defaults to one gateway per availability zone. Otherwise, no gateways will be created.
- Number
Of intAvailability Zones A number of availability zones to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- Subnet
Specs List<Pulumi.Awsx. Ec2. Inputs. Subnet Spec Args> A list of subnet specs that should be deployed to each AZ specified in availabilityZoneNames. Optional. Defaults to a (smaller) public subnet and a (larger) private subnet based on the size of the CIDR block for the VPC.
- Dictionary<string, string>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Vpc
Endpoint List<Pulumi.Specs Awsx. Ec2. Inputs. Vpc Endpoint Spec Args> A list of VPC Endpoints specs to be deployed as part of the VPC
- Assign
Generated boolIpv6Cidr Block Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is
false
. Conflicts withipv6_ipam_pool_id
- Availability
Zone []stringNames A list of availability zone names to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- Cidr
Block string The CIDR block for the VPC. Optional. Defaults to 10.0.0.0/16.
- Enable
Classiclink bool A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the ClassicLink documentation for more information. Defaults false.
- Enable
Classiclink boolDns Support A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
- Enable
Dns boolHostnames A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
- Enable
Dns boolSupport A boolean flag to enable/disable DNS support in the VPC. Defaults true.
- Instance
Tenancy string A tenancy option for instances launched into the VPC. Default is
default
, which ensures that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the EC2 instance is launched. The only other option isdedicated
, which ensures that EC2 instances launched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specified at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage fee.- Ipv4Ipam
Pool stringId The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can monitor IP address usage throughout your AWS Organization.
- Ipv4Netmask
Length int The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying a
ipv4_ipam_pool_id
.- Ipv6Cidr
Block string IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM using
ipv6_netmask_length
.- Ipv6Cidr
Block stringNetwork Border Group By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_border_group will be set to the region of the VPC. This can be changed to restrict advertisement of public addresses to specific Network Border Groups such as LocalZones.
- Ipv6Ipam
Pool stringId IPAM Pool ID for a IPv6 pool. Conflicts with
assign_generated_ipv6_cidr_block
.- Ipv6Netmask
Length int Netmask length to request from IPAM Pool. Conflicts with
ipv6_cidr_block
. This can be omitted if IPAM pool as aallocation_default_netmask_length
set. Valid values:56
.- Nat
Gateways NatGateway Configuration Args Configuration for NAT Gateways. Optional. If private and public subnets are both specified, defaults to one gateway per availability zone. Otherwise, no gateways will be created.
- Number
Of intAvailability Zones A number of availability zones to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- Subnet
Specs []SubnetSpec Args A list of subnet specs that should be deployed to each AZ specified in availabilityZoneNames. Optional. Defaults to a (smaller) public subnet and a (larger) private subnet based on the size of the CIDR block for the VPC.
- map[string]string
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Vpc
Endpoint []VpcSpecs Endpoint Spec Args A list of VPC Endpoints specs to be deployed as part of the VPC
- assign
Generated BooleanIpv6Cidr Block Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is
false
. Conflicts withipv6_ipam_pool_id
- availability
Zone List<String>Names A list of availability zone names to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- cidr
Block String The CIDR block for the VPC. Optional. Defaults to 10.0.0.0/16.
- enable
Classiclink Boolean A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the ClassicLink documentation for more information. Defaults false.
- enable
Classiclink BooleanDns Support A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
- enable
Dns BooleanHostnames A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
- enable
Dns BooleanSupport A boolean flag to enable/disable DNS support in the VPC. Defaults true.
- instance
Tenancy String A tenancy option for instances launched into the VPC. Default is
default
, which ensures that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the EC2 instance is launched. The only other option isdedicated
, which ensures that EC2 instances launched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specified at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage fee.- ipv4Ipam
Pool StringId The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can monitor IP address usage throughout your AWS Organization.
- ipv4Netmask
Length Integer The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying a
ipv4_ipam_pool_id
.- ipv6Cidr
Block String IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM using
ipv6_netmask_length
.- ipv6Cidr
Block StringNetwork Border Group By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_border_group will be set to the region of the VPC. This can be changed to restrict advertisement of public addresses to specific Network Border Groups such as LocalZones.
- ipv6Ipam
Pool StringId IPAM Pool ID for a IPv6 pool. Conflicts with
assign_generated_ipv6_cidr_block
.- ipv6Netmask
Length Integer Netmask length to request from IPAM Pool. Conflicts with
ipv6_cidr_block
. This can be omitted if IPAM pool as aallocation_default_netmask_length
set. Valid values:56
.- nat
Gateways NatGateway Configuration Args Configuration for NAT Gateways. Optional. If private and public subnets are both specified, defaults to one gateway per availability zone. Otherwise, no gateways will be created.
- number
Of IntegerAvailability Zones A number of availability zones to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- subnet
Specs List<SubnetSpec Args> A list of subnet specs that should be deployed to each AZ specified in availabilityZoneNames. Optional. Defaults to a (smaller) public subnet and a (larger) private subnet based on the size of the CIDR block for the VPC.
- Map<String,String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc
Endpoint List<VpcSpecs Endpoint Spec Args> A list of VPC Endpoints specs to be deployed as part of the VPC
- assign
Generated booleanIpv6Cidr Block Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is
false
. Conflicts withipv6_ipam_pool_id
- availability
Zone string[]Names A list of availability zone names to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- cidr
Block string The CIDR block for the VPC. Optional. Defaults to 10.0.0.0/16.
- enable
Classiclink boolean A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the ClassicLink documentation for more information. Defaults false.
- enable
Classiclink booleanDns Support A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
- enable
Dns booleanHostnames A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
- enable
Dns booleanSupport A boolean flag to enable/disable DNS support in the VPC. Defaults true.
- instance
Tenancy string A tenancy option for instances launched into the VPC. Default is
default
, which ensures that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the EC2 instance is launched. The only other option isdedicated
, which ensures that EC2 instances launched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specified at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage fee.- ipv4Ipam
Pool stringId The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can monitor IP address usage throughout your AWS Organization.
- ipv4Netmask
Length number The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying a
ipv4_ipam_pool_id
.- ipv6Cidr
Block string IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM using
ipv6_netmask_length
.- ipv6Cidr
Block stringNetwork Border Group By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_border_group will be set to the region of the VPC. This can be changed to restrict advertisement of public addresses to specific Network Border Groups such as LocalZones.
- ipv6Ipam
Pool stringId IPAM Pool ID for a IPv6 pool. Conflicts with
assign_generated_ipv6_cidr_block
.- ipv6Netmask
Length number Netmask length to request from IPAM Pool. Conflicts with
ipv6_cidr_block
. This can be omitted if IPAM pool as aallocation_default_netmask_length
set. Valid values:56
.- nat
Gateways NatGateway Configuration Args Configuration for NAT Gateways. Optional. If private and public subnets are both specified, defaults to one gateway per availability zone. Otherwise, no gateways will be created.
- number
Of numberAvailability Zones A number of availability zones to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- subnet
Specs SubnetSpec Args[] A list of subnet specs that should be deployed to each AZ specified in availabilityZoneNames. Optional. Defaults to a (smaller) public subnet and a (larger) private subnet based on the size of the CIDR block for the VPC.
- {[key: string]: string}
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc
Endpoint VpcSpecs Endpoint Spec Args[] A list of VPC Endpoints specs to be deployed as part of the VPC
- assign_
generated_ boolipv6_ cidr_ block Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is
false
. Conflicts withipv6_ipam_pool_id
- availability_
zone_ Sequence[str]names A list of availability zone names to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- cidr_
block str The CIDR block for the VPC. Optional. Defaults to 10.0.0.0/16.
- enable_
classiclink bool A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the ClassicLink documentation for more information. Defaults false.
- enable_
classiclink_ booldns_ support A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
- enable_
dns_ boolhostnames A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
- enable_
dns_ boolsupport A boolean flag to enable/disable DNS support in the VPC. Defaults true.
- instance_
tenancy str A tenancy option for instances launched into the VPC. Default is
default
, which ensures that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the EC2 instance is launched. The only other option isdedicated
, which ensures that EC2 instances launched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specified at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage fee.- ipv4_
ipam_ strpool_ id The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can monitor IP address usage throughout your AWS Organization.
- ipv4_
netmask_ intlength The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying a
ipv4_ipam_pool_id
.- ipv6_
cidr_ strblock IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM using
ipv6_netmask_length
.- ipv6_
cidr_ strblock_ network_ border_ group By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_border_group will be set to the region of the VPC. This can be changed to restrict advertisement of public addresses to specific Network Border Groups such as LocalZones.
- ipv6_
ipam_ strpool_ id IPAM Pool ID for a IPv6 pool. Conflicts with
assign_generated_ipv6_cidr_block
.- ipv6_
netmask_ intlength Netmask length to request from IPAM Pool. Conflicts with
ipv6_cidr_block
. This can be omitted if IPAM pool as aallocation_default_netmask_length
set. Valid values:56
.- nat_
gateways NatGateway Configuration Args Configuration for NAT Gateways. Optional. If private and public subnets are both specified, defaults to one gateway per availability zone. Otherwise, no gateways will be created.
- number_
of_ intavailability_ zones A number of availability zones to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- subnet_
specs Sequence[SubnetSpec Args] A list of subnet specs that should be deployed to each AZ specified in availabilityZoneNames. Optional. Defaults to a (smaller) public subnet and a (larger) private subnet based on the size of the CIDR block for the VPC.
- Mapping[str, str]
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc_
endpoint_ Sequence[Vpcspecs Endpoint Spec Args] A list of VPC Endpoints specs to be deployed as part of the VPC
- assign
Generated BooleanIpv6Cidr Block Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block. Default is
false
. Conflicts withipv6_ipam_pool_id
- availability
Zone List<String>Names A list of availability zone names to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- cidr
Block String The CIDR block for the VPC. Optional. Defaults to 10.0.0.0/16.
- enable
Classiclink Boolean A boolean flag to enable/disable ClassicLink for the VPC. Only valid in regions and accounts that support EC2 Classic. See the ClassicLink documentation for more information. Defaults false.
- enable
Classiclink BooleanDns Support A boolean flag to enable/disable ClassicLink DNS Support for the VPC. Only valid in regions and accounts that support EC2 Classic.
- enable
Dns BooleanHostnames A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false.
- enable
Dns BooleanSupport A boolean flag to enable/disable DNS support in the VPC. Defaults true.
- instance
Tenancy String A tenancy option for instances launched into the VPC. Default is
default
, which ensures that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the EC2 instance is launched. The only other option isdedicated
, which ensures that EC2 instances launched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specified at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage fee.- ipv4Ipam
Pool StringId The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can monitor IP address usage throughout your AWS Organization.
- ipv4Netmask
Length Number The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying a
ipv4_ipam_pool_id
.- ipv6Cidr
Block String IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM using
ipv6_netmask_length
.- ipv6Cidr
Block StringNetwork Border Group By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_border_group will be set to the region of the VPC. This can be changed to restrict advertisement of public addresses to specific Network Border Groups such as LocalZones.
- ipv6Ipam
Pool StringId IPAM Pool ID for a IPv6 pool. Conflicts with
assign_generated_ipv6_cidr_block
.- ipv6Netmask
Length Number Netmask length to request from IPAM Pool. Conflicts with
ipv6_cidr_block
. This can be omitted if IPAM pool as aallocation_default_netmask_length
set. Valid values:56
.- nat
Gateways Property Map Configuration for NAT Gateways. Optional. If private and public subnets are both specified, defaults to one gateway per availability zone. Otherwise, no gateways will be created.
- number
Of NumberAvailability Zones A number of availability zones to which the subnets defined in subnetSpecs will be deployed. Optional, defaults to the first 3 AZs in the current region.
- subnet
Specs List<Property Map> A list of subnet specs that should be deployed to each AZ specified in availabilityZoneNames. Optional. Defaults to a (smaller) public subnet and a (larger) private subnet based on the size of the CIDR block for the VPC.
- Map<String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc
Endpoint List<Property Map>Specs A list of VPC Endpoints specs to be deployed as part of the VPC
Outputs
All input properties are implicitly available as output properties. Additionally, the Vpc resource produces the following output properties:
- Aws
Vpc Pulumi.Aws. Ec2. Vpc The VPC.
- Eips
List<Pulumi.
Aws. Ec2. Eip> The EIPs for any NAT Gateways for the VPC. If no NAT Gateways are specified, this will be an empty list.
- Internet
Gateway Pulumi.Aws. Ec2. Internet Gateway The Internet Gateway for the VPC.
- Isolated
Subnet List<string>Ids - Private
Subnet List<string>Ids - Public
Subnet List<string>Ids - Route
Table List<Pulumi.Associations Aws. Ec2. Route Table Association> The Route Table Associations for the VPC.
- Route
Tables List<Pulumi.Aws. Ec2. Route Table> The Route Tables for the VPC.
- Routes
List<Pulumi.
Aws. Ec2. Route> The Routes for the VPC.
- Subnets
List<Pulumi.
Aws. Ec2. Subnet> The VPC's subnets.
- Vpc
Endpoints List<Pulumi.Aws. Ec2. Vpc Endpoint> The VPC Endpoints that are enabled
- Vpc
Id string
- Eips Eip
The EIPs for any NAT Gateways for the VPC. If no NAT Gateways are specified, this will be an empty list.
- Internet
Gateway InternetGateway The Internet Gateway for the VPC.
- Isolated
Subnet []stringIds - Private
Subnet []stringIds - Public
Subnet []stringIds - Route
Table RouteAssociations Table Association The Route Table Associations for the VPC.
- Route
Tables RouteTable The Route Tables for the VPC.
- Routes Route
The Routes for the VPC.
- Subnets Subnet
The VPC's subnets.
- Vpc Vpc
The VPC.
- Vpc
Endpoints VpcEndpoint The VPC Endpoints that are enabled
- Vpc
Id string
- eips List<Eip>
The EIPs for any NAT Gateways for the VPC. If no NAT Gateways are specified, this will be an empty list.
- internet
Gateway InternetGateway The Internet Gateway for the VPC.
- isolated
Subnet List<String>Ids - private
Subnet List<String>Ids - public
Subnet List<String>Ids - route
Table List<RouteAssociations Table Association> The Route Table Associations for the VPC.
- route
Tables List<RouteTable> The Route Tables for the VPC.
- routes List<Route>
The Routes for the VPC.
- subnets List<Subnet>
The VPC's subnets.
- vpc Vpc
The VPC.
- vpc
Endpoints List<VpcEndpoint> The VPC Endpoints that are enabled
- vpc
Id String
- eips
pulumi
Aws. Eip[] The EIPs for any NAT Gateways for the VPC. If no NAT Gateways are specified, this will be an empty list.
- internet
Gateway pulumiAws. Internet Gateway The Internet Gateway for the VPC.
- isolated
Subnet string[]Ids - private
Subnet string[]Ids - public
Subnet string[]Ids - route
Table pulumiAssociations Aws. Route Table Association[] The Route Table Associations for the VPC.
- route
Tables pulumiAws. Route Table[] The Route Tables for the VPC.
- routes
pulumi
Aws. Route[] The Routes for the VPC.
- subnets
pulumi
Aws. Subnet[] The VPC's subnets.
- vpc
pulumi
Aws. Vpc The VPC.
- vpc
Endpoints pulumiAws. Vpc Endpoint[] The VPC Endpoints that are enabled
- vpc
Id string
- eips Eip]
The EIPs for any NAT Gateways for the VPC. If no NAT Gateways are specified, this will be an empty list.
- internet_
gateway InternetGateway The Internet Gateway for the VPC.
- isolated_
subnet_ Sequence[str]ids - private_
subnet_ Sequence[str]ids - public_
subnet_ Sequence[str]ids - route_
table_ Routeassociations Table Association] The Route Table Associations for the VPC.
- route_
tables RouteTable] The Route Tables for the VPC.
- routes Route]
The Routes for the VPC.
- subnets Subnet]
The VPC's subnets.
- vpc Vpc
The VPC.
- vpc_
endpoints VpcEndpoint] The VPC Endpoints that are enabled
- vpc_
id str
- eips List<aws::Eip>
The EIPs for any NAT Gateways for the VPC. If no NAT Gateways are specified, this will be an empty list.
- internet
Gateway aws::InternetGateway The Internet Gateway for the VPC.
- isolated
Subnet List<String>Ids - private
Subnet List<String>Ids - public
Subnet List<String>Ids - route
Table List<aws::RouteAssociations Table Association> The Route Table Associations for the VPC.
- route
Tables List<aws::RouteTable> The Route Tables for the VPC.
- routes List<aws::Route>
The Routes for the VPC.
- subnets List<aws::Subnet>
The VPC's subnets.
- vpc aws::Vpc
The VPC.
- vpc
Endpoints List<aws::VpcEndpoint> The VPC Endpoints that are enabled
- vpc
Id String
Supporting Types
NatGatewayConfiguration
- Strategy
Pulumi.
Awsx. Ec2. Nat Gateway Strategy The strategy for deploying NAT Gateways.
- Elastic
Ip List<string>Allocation Ids A list of EIP allocation IDs to assign to the NAT Gateways. Optional. If specified, the number of supplied values must match the chosen strategy (either one, or the number of availability zones).
- Strategy
Nat
Gateway Strategy The strategy for deploying NAT Gateways.
- Elastic
Ip []stringAllocation Ids A list of EIP allocation IDs to assign to the NAT Gateways. Optional. If specified, the number of supplied values must match the chosen strategy (either one, or the number of availability zones).
- strategy
Nat
Gateway Strategy The strategy for deploying NAT Gateways.
- elastic
Ip List<String>Allocation Ids A list of EIP allocation IDs to assign to the NAT Gateways. Optional. If specified, the number of supplied values must match the chosen strategy (either one, or the number of availability zones).
- strategy
Nat
Gateway Strategy The strategy for deploying NAT Gateways.
- elastic
Ip string[]Allocation Ids A list of EIP allocation IDs to assign to the NAT Gateways. Optional. If specified, the number of supplied values must match the chosen strategy (either one, or the number of availability zones).
- strategy
Nat
Gateway Strategy The strategy for deploying NAT Gateways.
- elastic_
ip_ Sequence[str]allocation_ ids A list of EIP allocation IDs to assign to the NAT Gateways. Optional. If specified, the number of supplied values must match the chosen strategy (either one, or the number of availability zones).
- strategy
"None" | "Single" | "One
Per Az" The strategy for deploying NAT Gateways.
- elastic
Ip List<String>Allocation Ids A list of EIP allocation IDs to assign to the NAT Gateways. Optional. If specified, the number of supplied values must match the chosen strategy (either one, or the number of availability zones).
NatGatewayStrategy
- None
- None
Do not create any NAT Gateways. Resources in private subnets will not be able to access the internet.
- Single
- Single
Create a single NAT Gateway for the entire VPC. This configuration is not recommended for production infrastructure as it creates a single point of failure.
- One
Per Az - OnePerAz
Create a NAT Gateway in each availability zone. This is the recommended configuration for production infrastructure.
- Nat
Gateway Strategy None - None
Do not create any NAT Gateways. Resources in private subnets will not be able to access the internet.
- Nat
Gateway Strategy Single - Single
Create a single NAT Gateway for the entire VPC. This configuration is not recommended for production infrastructure as it creates a single point of failure.
- Nat
Gateway Strategy One Per Az - OnePerAz
Create a NAT Gateway in each availability zone. This is the recommended configuration for production infrastructure.
- None
- None
Do not create any NAT Gateways. Resources in private subnets will not be able to access the internet.
- Single
- Single
Create a single NAT Gateway for the entire VPC. This configuration is not recommended for production infrastructure as it creates a single point of failure.
- One
Per Az - OnePerAz
Create a NAT Gateway in each availability zone. This is the recommended configuration for production infrastructure.
- None
- None
Do not create any NAT Gateways. Resources in private subnets will not be able to access the internet.
- Single
- Single
Create a single NAT Gateway for the entire VPC. This configuration is not recommended for production infrastructure as it creates a single point of failure.
- One
Per Az - OnePerAz
Create a NAT Gateway in each availability zone. This is the recommended configuration for production infrastructure.
- NONE
- None
Do not create any NAT Gateways. Resources in private subnets will not be able to access the internet.
- SINGLE
- Single
Create a single NAT Gateway for the entire VPC. This configuration is not recommended for production infrastructure as it creates a single point of failure.
- ONE_PER_AZ
- OnePerAz
Create a NAT Gateway in each availability zone. This is the recommended configuration for production infrastructure.
- "None"
- None
Do not create any NAT Gateways. Resources in private subnets will not be able to access the internet.
- "Single"
- Single
Create a single NAT Gateway for the entire VPC. This configuration is not recommended for production infrastructure as it creates a single point of failure.
- "One
Per Az" - OnePerAz
Create a NAT Gateway in each availability zone. This is the recommended configuration for production infrastructure.
SubnetSpec
- Type
Pulumi.
Awsx. Ec2. Subnet Type The type of subnet.
- Cidr
Mask int The bitmask for the subnet's CIDR block.
- Name string
The subnet's name. Will be templated upon creation.
- Dictionary<string, string>
A map of tags to assign to the resource.
- Type
Subnet
Type The type of subnet.
- Cidr
Mask int The bitmask for the subnet's CIDR block.
- Name string
The subnet's name. Will be templated upon creation.
- map[string]string
A map of tags to assign to the resource.
- type
Subnet
Type The type of subnet.
- cidr
Mask Integer The bitmask for the subnet's CIDR block.
- name String
The subnet's name. Will be templated upon creation.
- Map<String,String>
A map of tags to assign to the resource.
- type
Subnet
Type The type of subnet.
- cidr
Mask number The bitmask for the subnet's CIDR block.
- name string
The subnet's name. Will be templated upon creation.
- {[key: string]: string}
A map of tags to assign to the resource.
- type
Subnet
Type The type of subnet.
- cidr_
mask int The bitmask for the subnet's CIDR block.
- name str
The subnet's name. Will be templated upon creation.
- Mapping[str, str]
A map of tags to assign to the resource.
- type "Public" | "Private" | "Isolated"
The type of subnet.
- cidr
Mask Number The bitmask for the subnet's CIDR block.
- name String
The subnet's name. Will be templated upon creation.
- Map<String>
A map of tags to assign to the resource.
SubnetType
- Public
- Public
A subnet whose hosts can directly communicate with the internet.
- Private
- Private
A subnet whose hosts can not directly communicate with the internet, but can initiate outbound network traffic via a NAT Gateway.
- Isolated
- Isolated
A subnet whose hosts have no connectivity with the internet.
- Subnet
Type Public - Public
A subnet whose hosts can directly communicate with the internet.
- Subnet
Type Private - Private
A subnet whose hosts can not directly communicate with the internet, but can initiate outbound network traffic via a NAT Gateway.
- Subnet
Type Isolated - Isolated
A subnet whose hosts have no connectivity with the internet.
- Public
- Public
A subnet whose hosts can directly communicate with the internet.
- Private
- Private
A subnet whose hosts can not directly communicate with the internet, but can initiate outbound network traffic via a NAT Gateway.
- Isolated
- Isolated
A subnet whose hosts have no connectivity with the internet.
- Public
- Public
A subnet whose hosts can directly communicate with the internet.
- Private
- Private
A subnet whose hosts can not directly communicate with the internet, but can initiate outbound network traffic via a NAT Gateway.
- Isolated
- Isolated
A subnet whose hosts have no connectivity with the internet.
- PUBLIC
- Public
A subnet whose hosts can directly communicate with the internet.
- PRIVATE
- Private
A subnet whose hosts can not directly communicate with the internet, but can initiate outbound network traffic via a NAT Gateway.
- ISOLATED
- Isolated
A subnet whose hosts have no connectivity with the internet.
- "Public"
- Public
A subnet whose hosts can directly communicate with the internet.
- "Private"
- Private
A subnet whose hosts can not directly communicate with the internet, but can initiate outbound network traffic via a NAT Gateway.
- "Isolated"
- Isolated
A subnet whose hosts have no connectivity with the internet.
VpcEndpointSpec
- Service
Name string The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
).- Auto
Accept bool Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- Policy string
A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details.- Private
Dns boolEnabled Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to
false
.- Route
Table List<string>Ids One or more route table IDs. Applicable for endpoints of type
Gateway
.- Security
Group List<string>Ids The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint.- Subnet
Ids List<string> The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
.- Dictionary<string, string>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Vpc
Endpoint stringType The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- Service
Name string The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
).- Auto
Accept bool Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- Policy string
A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details.- Private
Dns boolEnabled Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to
false
.- Route
Table []stringIds One or more route table IDs. Applicable for endpoints of type
Gateway
.- Security
Group []stringIds The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint.- Subnet
Ids []string The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
.- map[string]string
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Vpc
Endpoint stringType The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service
Name String The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
).- auto
Accept Boolean Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- policy String
A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details.- private
Dns BooleanEnabled Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to
false
.- route
Table List<String>Ids One or more route table IDs. Applicable for endpoints of type
Gateway
.- security
Group List<String>Ids The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint.- subnet
Ids List<String> The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
.- Map<String,String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc
Endpoint StringType The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service
Name string The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
).- auto
Accept boolean Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- policy string
A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details.- private
Dns booleanEnabled Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to
false
.- route
Table string[]Ids One or more route table IDs. Applicable for endpoints of type
Gateway
.- security
Group string[]Ids The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint.- subnet
Ids string[] The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
.- {[key: string]: string}
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc
Endpoint stringType The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service_
name str The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
).- auto_
accept bool Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- policy str
A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details.- private_
dns_ boolenabled Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to
false
.- route_
table_ Sequence[str]ids One or more route table IDs. Applicable for endpoints of type
Gateway
.- security_
group_ Sequence[str]ids The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint.- subnet_
ids Sequence[str] The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
.- Mapping[str, str]
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc_
endpoint_ strtype The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
- service
Name String The service name. For AWS services the service name is usually in the form
com.amazonaws.<region>.<service>
(the SageMaker Notebook service is an exception to this rule, the service name is in the formaws.sagemaker.<region>.notebook
).- auto
Accept Boolean Accept the VPC endpoint (the VPC endpoint and service need to be in the same AWS account).
- policy String
A policy to attach to the endpoint that controls access to the service. This is a JSON formatted string. Defaults to full access. All
Gateway
and someInterface
endpoints support policies - see the relevant AWS documentation for more details.- private
Dns BooleanEnabled Whether or not to associate a private hosted zone with the specified VPC. Applicable for endpoints of type Interface. Defaults to
false
.- route
Table List<String>Ids One or more route table IDs. Applicable for endpoints of type
Gateway
.- security
Group List<String>Ids The ID of one or more security groups to associate with the network interface. Applicable for endpoints of type
Interface
. If no security groups are specified, the VPC's default security group is associated with the endpoint.- subnet
Ids List<String> The ID of one or more subnets in which to create a network interface for the endpoint. Applicable for endpoints of type
GatewayLoadBalancer
andInterface
.- Map<String>
A map of tags to assign to the resource. If configured with a provider
default_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.- vpc
Endpoint StringType The VPC endpoint type,
Gateway
,GatewayLoadBalancer
, orInterface
. Defaults toGateway
.
Package Details
- Repository
- AWSx (Pulumi Crosswalk for AWS) pulumi/pulumi-awsx
- License
- Apache-2.0