AWS v6.75.0 published on Wednesday, Apr 2, 2025 by Pulumi
aws.ec2.getVpcIpamPools
Explore with Pulumi AI
aws.ec2.getVpcIpamPools
provides details about IPAM pools.
This resource can prove useful when IPAM pools are created in another root module and you need the pool ids as input variables. For example, pools can be shared via RAM and used to create vpcs with CIDRs from that pool.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = aws.ec2.getVpcIpamPools({
filters: [
{
name: "description",
values: ["*test*"],
},
{
name: "address-family",
values: ["ipv4"],
},
],
});
import pulumi
import pulumi_aws as aws
test = aws.ec2.get_vpc_ipam_pools(filters=[
{
"name": "description",
"values": ["*test*"],
},
{
"name": "address-family",
"values": ["ipv4"],
},
])
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ec2.GetVpcIpamPools(ctx, &ec2.GetVpcIpamPoolsArgs{
Filters: []ec2.GetVpcIpamPoolsFilter{
{
Name: "description",
Values: []string{
"*test*",
},
},
{
Name: "address-family",
Values: []string{
"ipv4",
},
},
},
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = Aws.Ec2.GetVpcIpamPools.Invoke(new()
{
Filters = new[]
{
new Aws.Ec2.Inputs.GetVpcIpamPoolsFilterInputArgs
{
Name = "description",
Values = new[]
{
"*test*",
},
},
new Aws.Ec2.Inputs.GetVpcIpamPoolsFilterInputArgs
{
Name = "address-family",
Values = new[]
{
"ipv4",
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ec2.Ec2Functions;
import com.pulumi.aws.ec2.inputs.GetVpcIpamPoolsArgs;
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) {
final var test = Ec2Functions.getVpcIpamPools(GetVpcIpamPoolsArgs.builder()
.filters(
GetVpcIpamPoolsFilterArgs.builder()
.name("description")
.values("*test*")
.build(),
GetVpcIpamPoolsFilterArgs.builder()
.name("address-family")
.values("ipv4")
.build())
.build());
}
}
variables:
test:
fn::invoke:
function: aws:ec2:getVpcIpamPools
arguments:
filters:
- name: description
values:
- '*test*'
- name: address-family
values:
- ipv4
Using getVpcIpamPools
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getVpcIpamPools(args: GetVpcIpamPoolsArgs, opts?: InvokeOptions): Promise<GetVpcIpamPoolsResult>
function getVpcIpamPoolsOutput(args: GetVpcIpamPoolsOutputArgs, opts?: InvokeOptions): Output<GetVpcIpamPoolsResult>
def get_vpc_ipam_pools(filters: Optional[Sequence[GetVpcIpamPoolsFilter]] = None,
opts: Optional[InvokeOptions] = None) -> GetVpcIpamPoolsResult
def get_vpc_ipam_pools_output(filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetVpcIpamPoolsFilterArgs]]]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetVpcIpamPoolsResult]
func GetVpcIpamPools(ctx *Context, args *GetVpcIpamPoolsArgs, opts ...InvokeOption) (*GetVpcIpamPoolsResult, error)
func GetVpcIpamPoolsOutput(ctx *Context, args *GetVpcIpamPoolsOutputArgs, opts ...InvokeOption) GetVpcIpamPoolsResultOutput
> Note: This function is named GetVpcIpamPools
in the Go SDK.
public static class GetVpcIpamPools
{
public static Task<GetVpcIpamPoolsResult> InvokeAsync(GetVpcIpamPoolsArgs args, InvokeOptions? opts = null)
public static Output<GetVpcIpamPoolsResult> Invoke(GetVpcIpamPoolsInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetVpcIpamPoolsResult> getVpcIpamPools(GetVpcIpamPoolsArgs args, InvokeOptions options)
public static Output<GetVpcIpamPoolsResult> getVpcIpamPools(GetVpcIpamPoolsArgs args, InvokeOptions options)
fn::invoke:
function: aws:ec2/getVpcIpamPools:getVpcIpamPools
arguments:
# arguments dictionary
The following arguments are supported:
- Filters
List<Get
Vpc Ipam Pools Filter> - Custom filter block as described below.
- Filters
[]Get
Vpc Ipam Pools Filter - Custom filter block as described below.
- filters
List<Get
Vpc Ipam Pools Filter> - Custom filter block as described below.
- filters
Get
Vpc Ipam Pools Filter[] - Custom filter block as described below.
- filters
Sequence[Get
Vpc Ipam Pools Filter] - Custom filter block as described below.
- filters List<Property Map>
- Custom filter block as described below.
getVpcIpamPools Result
The following output properties are available:
- Id string
- The provider-assigned unique ID for this managed resource.
- Ipam
Pools List<GetVpc Ipam Pools Ipam Pool> - List of IPAM pools and their attributes. See below for details
- Filters
List<Get
Vpc Ipam Pools Filter>
- Id string
- The provider-assigned unique ID for this managed resource.
- Ipam
Pools []GetVpc Ipam Pools Ipam Pool - List of IPAM pools and their attributes. See below for details
- Filters
[]Get
Vpc Ipam Pools Filter
- id String
- The provider-assigned unique ID for this managed resource.
- ipam
Pools List<GetVpc Ipam Pools Ipam Pool> - List of IPAM pools and their attributes. See below for details
- filters
List<Get
Vpc Ipam Pools Filter>
- id string
- The provider-assigned unique ID for this managed resource.
- ipam
Pools GetVpc Ipam Pools Ipam Pool[] - List of IPAM pools and their attributes. See below for details
- filters
Get
Vpc Ipam Pools Filter[]
- id str
- The provider-assigned unique ID for this managed resource.
- ipam_
pools Sequence[GetVpc Ipam Pools Ipam Pool] - List of IPAM pools and their attributes. See below for details
- filters
Sequence[Get
Vpc Ipam Pools Filter]
- id String
- The provider-assigned unique ID for this managed resource.
- ipam
Pools List<Property Map> - List of IPAM pools and their attributes. See below for details
- filters List<Property Map>
Supporting Types
GetVpcIpamPoolsFilter
GetVpcIpamPoolsIpamPool
- Address
Family This property is required. string - IP protocol assigned to this pool.
- Allocation
Default Netmask Length This property is required. int - A default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is
10.0.0.0/8
and you enter 16 here, new allocations will default to10.0.0.0/16
. - Allocation
Max Netmask Length This property is required. int - The maximum netmask length that will be required for CIDR allocations in this pool.
- Allocation
Min Netmask Length This property is required. int - The minimum netmask length that will be required for CIDR allocations in this pool.
This property is required. Dictionary<string, string>- Tags that are required to create resources in using this pool.
- Arn
This property is required. string - ARN of the pool
- Auto
Import This property is required. bool - If enabled, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
- Aws
Service This property is required. string - Limits which service in AWS that the pool can be used in.
ec2
for example, allows users to use space for Elastic IP addresses and VPCs. - Description
This property is required. string - Description for the IPAM pool.
- Id
This property is required. string - ID of the IPAM pool.
- Ipam
Scope Id This property is required. string - ID of the scope the pool belongs to.
- Ipam
Scope Type This property is required. string - Locale
This property is required. string - Locale is the Region where your pool is available for allocations. You can only create pools with locales that match the operating Regions of the IPAM. You can only create VPCs from a pool whose locale matches the VPC's Region.
- Pool
Depth This property is required. int - Publicly
Advertisable This property is required. bool - Defines whether or not IPv6 pool space is publicly advertisable over the internet.
- Source
Ipam Pool Id This property is required. string - ID of the source IPAM pool.
- State
This property is required. string This property is required. Dictionary<string, string>- Map of tags to assigned to the resource.
- Address
Family This property is required. string - IP protocol assigned to this pool.
- Allocation
Default Netmask Length This property is required. int - A default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is
10.0.0.0/8
and you enter 16 here, new allocations will default to10.0.0.0/16
. - Allocation
Max Netmask Length This property is required. int - The maximum netmask length that will be required for CIDR allocations in this pool.
- Allocation
Min Netmask Length This property is required. int - The minimum netmask length that will be required for CIDR allocations in this pool.
This property is required. map[string]string- Tags that are required to create resources in using this pool.
- Arn
This property is required. string - ARN of the pool
- Auto
Import This property is required. bool - If enabled, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
- Aws
Service This property is required. string - Limits which service in AWS that the pool can be used in.
ec2
for example, allows users to use space for Elastic IP addresses and VPCs. - Description
This property is required. string - Description for the IPAM pool.
- Id
This property is required. string - ID of the IPAM pool.
- Ipam
Scope Id This property is required. string - ID of the scope the pool belongs to.
- Ipam
Scope Type This property is required. string - Locale
This property is required. string - Locale is the Region where your pool is available for allocations. You can only create pools with locales that match the operating Regions of the IPAM. You can only create VPCs from a pool whose locale matches the VPC's Region.
- Pool
Depth This property is required. int - Publicly
Advertisable This property is required. bool - Defines whether or not IPv6 pool space is publicly advertisable over the internet.
- Source
Ipam Pool Id This property is required. string - ID of the source IPAM pool.
- State
This property is required. string This property is required. map[string]string- Map of tags to assigned to the resource.
- address
Family This property is required. String - IP protocol assigned to this pool.
- allocation
Default Netmask Length This property is required. Integer - A default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is
10.0.0.0/8
and you enter 16 here, new allocations will default to10.0.0.0/16
. - allocation
Max Netmask Length This property is required. Integer - The maximum netmask length that will be required for CIDR allocations in this pool.
- allocation
Min Netmask Length This property is required. Integer - The minimum netmask length that will be required for CIDR allocations in this pool.
This property is required. Map<String,String>- Tags that are required to create resources in using this pool.
- arn
This property is required. String - ARN of the pool
- auto
Import This property is required. Boolean - If enabled, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
- aws
Service This property is required. String - Limits which service in AWS that the pool can be used in.
ec2
for example, allows users to use space for Elastic IP addresses and VPCs. - description
This property is required. String - Description for the IPAM pool.
- id
This property is required. String - ID of the IPAM pool.
- ipam
Scope Id This property is required. String - ID of the scope the pool belongs to.
- ipam
Scope Type This property is required. String - locale
This property is required. String - Locale is the Region where your pool is available for allocations. You can only create pools with locales that match the operating Regions of the IPAM. You can only create VPCs from a pool whose locale matches the VPC's Region.
- pool
Depth This property is required. Integer - publicly
Advertisable This property is required. Boolean - Defines whether or not IPv6 pool space is publicly advertisable over the internet.
- source
Ipam Pool Id This property is required. String - ID of the source IPAM pool.
- state
This property is required. String This property is required. Map<String,String>- Map of tags to assigned to the resource.
- address
Family This property is required. string - IP protocol assigned to this pool.
- allocation
Default Netmask Length This property is required. number - A default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is
10.0.0.0/8
and you enter 16 here, new allocations will default to10.0.0.0/16
. - allocation
Max Netmask Length This property is required. number - The maximum netmask length that will be required for CIDR allocations in this pool.
- allocation
Min Netmask Length This property is required. number - The minimum netmask length that will be required for CIDR allocations in this pool.
This property is required. {[key: string]: string}- Tags that are required to create resources in using this pool.
- arn
This property is required. string - ARN of the pool
- auto
Import This property is required. boolean - If enabled, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
- aws
Service This property is required. string - Limits which service in AWS that the pool can be used in.
ec2
for example, allows users to use space for Elastic IP addresses and VPCs. - description
This property is required. string - Description for the IPAM pool.
- id
This property is required. string - ID of the IPAM pool.
- ipam
Scope Id This property is required. string - ID of the scope the pool belongs to.
- ipam
Scope Type This property is required. string - locale
This property is required. string - Locale is the Region where your pool is available for allocations. You can only create pools with locales that match the operating Regions of the IPAM. You can only create VPCs from a pool whose locale matches the VPC's Region.
- pool
Depth This property is required. number - publicly
Advertisable This property is required. boolean - Defines whether or not IPv6 pool space is publicly advertisable over the internet.
- source
Ipam Pool Id This property is required. string - ID of the source IPAM pool.
- state
This property is required. string This property is required. {[key: string]: string}- Map of tags to assigned to the resource.
- address_
family This property is required. str - IP protocol assigned to this pool.
- allocation_
default_ netmask_ length This property is required. int - A default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is
10.0.0.0/8
and you enter 16 here, new allocations will default to10.0.0.0/16
. - allocation_
max_ netmask_ length This property is required. int - The maximum netmask length that will be required for CIDR allocations in this pool.
- allocation_
min_ netmask_ length This property is required. int - The minimum netmask length that will be required for CIDR allocations in this pool.
This property is required. Mapping[str, str]- Tags that are required to create resources in using this pool.
- arn
This property is required. str - ARN of the pool
- auto_
import This property is required. bool - If enabled, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
- aws_
service This property is required. str - Limits which service in AWS that the pool can be used in.
ec2
for example, allows users to use space for Elastic IP addresses and VPCs. - description
This property is required. str - Description for the IPAM pool.
- id
This property is required. str - ID of the IPAM pool.
- ipam_
scope_ id This property is required. str - ID of the scope the pool belongs to.
- ipam_
scope_ type This property is required. str - locale
This property is required. str - Locale is the Region where your pool is available for allocations. You can only create pools with locales that match the operating Regions of the IPAM. You can only create VPCs from a pool whose locale matches the VPC's Region.
- pool_
depth This property is required. int - publicly_
advertisable This property is required. bool - Defines whether or not IPv6 pool space is publicly advertisable over the internet.
- source_
ipam_ pool_ id This property is required. str - ID of the source IPAM pool.
- state
This property is required. str This property is required. Mapping[str, str]- Map of tags to assigned to the resource.
- address
Family This property is required. String - IP protocol assigned to this pool.
- allocation
Default Netmask Length This property is required. Number - A default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is
10.0.0.0/8
and you enter 16 here, new allocations will default to10.0.0.0/16
. - allocation
Max Netmask Length This property is required. Number - The maximum netmask length that will be required for CIDR allocations in this pool.
- allocation
Min Netmask Length This property is required. Number - The minimum netmask length that will be required for CIDR allocations in this pool.
This property is required. Map<String>- Tags that are required to create resources in using this pool.
- arn
This property is required. String - ARN of the pool
- auto
Import This property is required. Boolean - If enabled, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
- aws
Service This property is required. String - Limits which service in AWS that the pool can be used in.
ec2
for example, allows users to use space for Elastic IP addresses and VPCs. - description
This property is required. String - Description for the IPAM pool.
- id
This property is required. String - ID of the IPAM pool.
- ipam
Scope Id This property is required. String - ID of the scope the pool belongs to.
- ipam
Scope Type This property is required. String - locale
This property is required. String - Locale is the Region where your pool is available for allocations. You can only create pools with locales that match the operating Regions of the IPAM. You can only create VPCs from a pool whose locale matches the VPC's Region.
- pool
Depth This property is required. Number - publicly
Advertisable This property is required. Boolean - Defines whether or not IPv6 pool space is publicly advertisable over the internet.
- source
Ipam Pool Id This property is required. String - ID of the source IPAM pool.
- state
This property is required. String This property is required. Map<String>- Map of tags to assigned to the resource.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
aws
Terraform Provider.