@Generated(value="jsii-pacmak/1.67.0 (build 2c027f5)", date="2022-09-19T20:26:38.177Z") @Stability(value=Stable) public class CfnIPAMPool extends CfnResource implements IInspectable
In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.services.ec2.*;
CfnIPAMPool cfnIPAMPool = CfnIPAMPool.Builder.create(this, "MyCfnIPAMPool")
.addressFamily("addressFamily")
.ipamScopeId("ipamScopeId")
// the properties below are optional
.allocationDefaultNetmaskLength(123)
.allocationMaxNetmaskLength(123)
.allocationMinNetmaskLength(123)
.allocationResourceTags(List.of(CfnTag.builder()
.key("key")
.value("value")
.build()))
.autoImport(false)
.awsService("awsService")
.description("description")
.locale("locale")
.provisionedCidrs(List.of(ProvisionedCidrProperty.builder()
.cidr("cidr")
.build()))
.publiclyAdvertisable(false)
.sourceIpamPoolId("sourceIpamPoolId")
.tags(List.of(CfnTag.builder()
.key("key")
.value("value")
.build()))
.build();
| Modifier and Type | Class and Description |
|---|---|
static class |
CfnIPAMPool.Builder
A fluent builder for
CfnIPAMPool. |
static interface |
CfnIPAMPool.ProvisionedCidrProperty
The CIDR provisioned to the IPAM pool.
|
software.amazon.jsii.JsiiObject.InitializationModeIInspectable.Jsii$Default, IInspectable.Jsii$Proxy| Modifier and Type | Field and Description |
|---|---|
static String |
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
|
| Modifier | Constructor and Description |
|---|---|
|
CfnIPAMPool(software.constructs.Construct scope,
String id,
CfnIPAMPoolProps props)
Create a new `AWS::EC2::IPAMPool`.
|
protected |
CfnIPAMPool(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
CfnIPAMPool(software.amazon.jsii.JsiiObjectRef objRef) |
| Modifier and Type | Method and Description |
|---|---|
String |
getAddressFamily()
The address family of the pool.
|
Number |
getAllocationDefaultNetmaskLength()
The default netmask length for allocations added to this pool.
|
Number |
getAllocationMaxNetmaskLength()
The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant.
|
Number |
getAllocationMinNetmaskLength()
The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant.
|
Object |
getAllocationResourceTags()
Tags that are required for resources that use CIDRs from this IPAM pool.
|
String |
getAttrArn()
The ARN of the IPAM pool.
|
String |
getAttrIpamArn()
The ARN of the IPAM.
|
String |
getAttrIpamPoolId()
The ID of the IPAM pool.
|
String |
getAttrIpamScopeArn()
The ARN of the scope of the IPAM pool.
|
String |
getAttrIpamScopeType()
The scope of the IPAM.
|
Number |
getAttrPoolDepth()
The depth of pools in your IPAM pool.
|
String |
getAttrState()
The state of the IPAM pool.
|
String |
getAttrStateMessage()
A message related to the failed creation of an IPAM pool.
|
Object |
getAutoImport()
If selected, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
|
String |
getAwsService()
`AWS::EC2::IPAMPool.AwsService`.
|
protected Map<String,Object> |
getCfnProperties() |
String |
getDescription()
The description of the IPAM pool.
|
String |
getIpamScopeId()
The ID of the scope in which you would like to create the IPAM pool.
|
String |
getLocale()
The locale of the IPAM pool.
|
Object |
getProvisionedCidrs()
Information about the CIDRs provisioned to an IPAM pool.
|
Object |
getPubliclyAdvertisable()
Determines if a pool is publicly advertisable.
|
String |
getSourceIpamPoolId()
The ID of the source IPAM pool.
|
TagManager |
getTags()
The key/value combination of a tag assigned to the resource.
|
void |
inspect(TreeInspector inspector)
Examines the CloudFormation resource and discloses attributes.
|
protected Map<String,Object> |
renderProperties(Map<String,Object> props) |
void |
setAddressFamily(String value)
The address family of the pool.
|
void |
setAllocationDefaultNetmaskLength(Number value)
The default netmask length for allocations added to this pool.
|
void |
setAllocationMaxNetmaskLength(Number value)
The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant.
|
void |
setAllocationMinNetmaskLength(Number value)
The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant.
|
void |
setAllocationResourceTags(IResolvable value)
Tags that are required for resources that use CIDRs from this IPAM pool.
|
void |
setAllocationResourceTags(List<Object> value)
Tags that are required for resources that use CIDRs from this IPAM pool.
|
void |
setAutoImport(Boolean value)
If selected, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
|
void |
setAutoImport(IResolvable value)
If selected, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM.
|
void |
setAwsService(String value)
`AWS::EC2::IPAMPool.AwsService`.
|
void |
setDescription(String value)
The description of the IPAM pool.
|
void |
setIpamScopeId(String value)
The ID of the scope in which you would like to create the IPAM pool.
|
void |
setLocale(String value)
The locale of the IPAM pool.
|
void |
setProvisionedCidrs(IResolvable value)
Information about the CIDRs provisioned to an IPAM pool.
|
void |
setProvisionedCidrs(List<Object> value)
Information about the CIDRs provisioned to an IPAM pool.
|
void |
setPubliclyAdvertisable(Boolean value)
Determines if a pool is publicly advertisable.
|
void |
setPubliclyAdvertisable(IResolvable value)
Determines if a pool is publicly advertisable.
|
void |
setSourceIpamPoolId(String value)
The ID of the source IPAM pool.
|
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, getUpdatedProperties, isCfnResource, shouldSynthesize, toString, validatePropertiesgetRefgetCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalIdjsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet@Stability(value=Stable) public static final String CFN_RESOURCE_TYPE_NAME
protected CfnIPAMPool(software.amazon.jsii.JsiiObjectRef objRef)
protected CfnIPAMPool(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
@Stability(value=Stable)
public CfnIPAMPool(@NotNull
software.constructs.Construct scope,
@NotNull
String id,
@NotNull
CfnIPAMPoolProps props)
scope - - scope in which this resource is defined. This parameter is required.id - - scoped id of the resource. This parameter is required.props - - resource properties. This parameter is required.@Stability(value=Stable)
public void inspect(@NotNull
TreeInspector inspector)
inspect in interface IInspectableinspector - - tree inspector to collect and process attributes. This parameter is required.@Stability(value=Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
renderProperties in class CfnResourceprops - This parameter is required.@Stability(value=Stable) @NotNull public String getAttrArn()
@Stability(value=Stable) @NotNull public String getAttrIpamArn()
@Stability(value=Stable) @NotNull public String getAttrIpamPoolId()
@Stability(value=Stable) @NotNull public String getAttrIpamScopeArn()
@Stability(value=Stable) @NotNull public String getAttrIpamScopeType()
@Stability(value=Stable) @NotNull public Number getAttrPoolDepth()
The pool depth quota is 10.
@Stability(value=Stable) @NotNull public String getAttrState()
@Stability(value=Stable) @NotNull public String getAttrStateMessage()
@Stability(value=Stable) @NotNull protected Map<String,Object> getCfnProperties()
getCfnProperties in class CfnResource@Stability(value=Stable) @NotNull public TagManager getTags()
Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA , specify tag:Owner for the filter name and TeamA for the filter value.
@Stability(value=Stable) @NotNull public String getAddressFamily()
@Stability(value=Stable)
public void setAddressFamily(@NotNull
String value)
@Stability(value=Stable) @NotNull public String getIpamScopeId()
@Stability(value=Stable)
public void setIpamScopeId(@NotNull
String value)
@Stability(value=Stable) @Nullable public Number getAllocationDefaultNetmaskLength()
If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.
@Stability(value=Stable)
public void setAllocationDefaultNetmaskLength(@Nullable
Number value)
If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.
@Stability(value=Stable) @Nullable public Number getAllocationMaxNetmaskLength()
The maximum netmask length must be greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.
@Stability(value=Stable)
public void setAllocationMaxNetmaskLength(@Nullable
Number value)
The maximum netmask length must be greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.
@Stability(value=Stable) @Nullable public Number getAllocationMinNetmaskLength()
The minimum netmask length must be less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.
@Stability(value=Stable)
public void setAllocationMinNetmaskLength(@Nullable
Number value)
The minimum netmask length must be less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.
@Stability(value=Stable) @Nullable public Object getAllocationResourceTags()
Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.
@Stability(value=Stable)
public void setAllocationResourceTags(@Nullable
IResolvable value)
Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.
@Stability(value=Stable)
public void setAllocationResourceTags(@Nullable
List<Object> value)
Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.
@Stability(value=Stable) @Nullable public Object getAutoImport()
The CIDRs that will be allocated for these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.
A locale must be set on the pool for this feature to work.
@Stability(value=Stable)
public void setAutoImport(@Nullable
Boolean value)
The CIDRs that will be allocated for these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.
A locale must be set on the pool for this feature to work.
@Stability(value=Stable)
public void setAutoImport(@Nullable
IResolvable value)
The CIDRs that will be allocated for these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.
A locale must be set on the pool for this feature to work.
@Stability(value=Stable) @Nullable public String getAwsService()
@Stability(value=Stable)
public void setAwsService(@Nullable
String value)
@Stability(value=Stable) @Nullable public String getDescription()
@Stability(value=Stable)
public void setDescription(@Nullable
String value)
@Stability(value=Stable) @Nullable public String getLocale()
In IPAM, the locale is the AWS Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you choose an AWS Region for locale that has not been configured as an operating Region for the IPAM, you'll get an error.
@Stability(value=Stable)
public void setLocale(@Nullable
String value)
In IPAM, the locale is the AWS Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you choose an AWS Region for locale that has not been configured as an operating Region for the IPAM, you'll get an error.
@Stability(value=Stable) @Nullable public Object getProvisionedCidrs()
@Stability(value=Stable)
public void setProvisionedCidrs(@Nullable
IResolvable value)
@Stability(value=Stable)
public void setProvisionedCidrs(@Nullable
List<Object> value)
@Stability(value=Stable) @Nullable public Object getPubliclyAdvertisable()
This option is not available for pools with AddressFamily set to ipv4 .
@Stability(value=Stable)
public void setPubliclyAdvertisable(@Nullable
Boolean value)
This option is not available for pools with AddressFamily set to ipv4 .
@Stability(value=Stable)
public void setPubliclyAdvertisable(@Nullable
IResolvable value)
This option is not available for pools with AddressFamily set to ipv4 .
@Stability(value=Stable) @Nullable public String getSourceIpamPoolId()
You can use this option to create an IPAM pool within an existing source pool.
@Stability(value=Stable)
public void setSourceIpamPoolId(@Nullable
String value)
You can use this option to create an IPAM pool within an existing source pool.
Copyright © 2022. All rights reserved.