NatGateway
- Implements: INatGateway
This class encapsulates and extends the ROS resource type ALIYUN::VPC::NatGatewayThe , which resource type creates a NAT Gateway.
Initializers
import ros_cdk_vpc
ros_cdk_vpc.NatGateway(
scope: Construct,
id: str,
vpc_id: typing.Union[str, IResolvable],
v_switch_id: typing.Union[str, IResolvable],
access_mode: typing.Union[IResolvable, AccessModeProperty] = None,
availability_mode: typing.Union[str, IResolvable] = None,
deletion_force: typing.Union[bool, IResolvable] = None,
deletion_protection: typing.Union[bool, IResolvable] = None,
description: typing.Union[str, IResolvable] = None,
eip_bind_mode: typing.Union[str, IResolvable] = None,
icmp_reply_enabled: typing.Union[bool, IResolvable] = None,
instance_charge_type: typing.Union[str, IResolvable] = None,
internet_charge_type: typing.Union[str, IResolvable] = None,
ipv4_prefix: typing.Union[str, IResolvable] = None,
nat_gateway_name: typing.Union[str, IResolvable] = None,
nat_ip: typing.Union[str, IResolvable] = None,
nat_type: typing.Union[str, IResolvable] = None,
network_type: typing.Union[str, IResolvable] = None,
private_link_enabled: typing.Union[bool, IResolvable] = None,
security_protection_enabled: typing.Union[bool, IResolvable] = None,
tags: typing.List[TagsProperty] = None,
enable_resource_property_constraint: bool = None
)
| Name | Type | Description |
|---|---|---|
scope | ros_cdk_core.Construct | No description. |
id | str | No description. |
vpc_id | typing.Union[str, ros_cdk_core.IResolvable] | Property vpcId: The VPC id to create NAT gateway. |
v_switch_id | typing.Union[str, ros_cdk_core.IResolvable] | Property vSwitchId: The VSwitch id to create NAT gateway. |
access_mode | typing.Union[ros_cdk_core.IResolvable, AccessModeProperty] | Property accessMode: Reverse access mode to the VPC NAT gateway. |
availability_mode | typing.Union[str, ros_cdk_core.IResolvable] | Property availabilityMode: The availability mode of the NAT gateway. |
deletion_force | typing.Union[bool, ros_cdk_core.IResolvable] | Property deletionForce: Whether force delete the relative snat and dnat entries in the net gateway and unbind eips. |
deletion_protection | typing.Union[bool, ros_cdk_core.IResolvable] | Property deletionProtection: Whether to enable deletion protection. |
description | typing.Union[str, ros_cdk_core.IResolvable] | Property description: Description of the NAT gateway, [2, 256] characters. |
eip_bind_mode | typing.Union[str, ros_cdk_core.IResolvable] | Property eipBindMode: The mode in which the EIP is associated with the NAT gateway. |
icmp_reply_enabled | typing.Union[bool, ros_cdk_core.IResolvable] | Property icmpReplyEnabled: Specifies whether to enable the ICMP non-retrieval feature. |
instance_charge_type | typing.Union[str, ros_cdk_core.IResolvable] | Property instanceChargeType: The billing method. |
internet_charge_type | typing.Union[str, ros_cdk_core.IResolvable] | Property internetChargeType: The billing method for the NAT gateway. |
ipv4_prefix | typing.Union[str, ros_cdk_core.IResolvable] | Property ipv4Prefix: The IPv4 prefix. |
nat_gateway_name | typing.Union[str, ros_cdk_core.IResolvable] | Property natGatewayName: Display name of the NAT gateway, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'. |
nat_ip | typing.Union[str, ros_cdk_core.IResolvable] | Property natIp: The NAT IP address. |
nat_type | typing.Union[str, ros_cdk_core.IResolvable] | Property natType: The type of the NAT gateway. |
network_type | typing.Union[str, ros_cdk_core.IResolvable] | Property networkType: The type of the created NAT gateway. |
private_link_enabled | typing.Union[bool, ros_cdk_core.IResolvable] | Property privateLinkEnabled: Whether to support private network connection. |
security_protection_enabled | typing.Union[bool, ros_cdk_core.IResolvable] | Property securityProtectionEnabled: Specifies whether to enable the firewall feature. |
tags | typing.List[TagsProperty] | Property tags: Tags to attach to natgateway. |
enable_resource_property_constraint | bool | No description. |
scopeRequired
- Type: ros_cdk_core.Construct
idRequired
- Type: str
vpc_idRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property vpcId: The VPC id to create NAT gateway.
v_switch_idRequired
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property vSwitchId: The VSwitch id to create NAT gateway.
access_modeOptional
- Type: typing.Union[ros_cdk_core.IResolvable, AccessModeProperty]
Property accessMode: Reverse access mode to the VPC NAT gateway.
availability_modeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property availabilityMode: The availability mode of the NAT gateway.
Valid values: CrossAZ, SingleAZ
deletion_forceOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property deletionForce: Whether force delete the relative snat and dnat entries in the net gateway and unbind eips.
Default value is false.
deletion_protectionOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property deletionProtection: Whether to enable deletion protection.
Default to False.
descriptionOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property description: Description of the NAT gateway, [2, 256] characters.
Do not fill or empty, the default is empty.
eip_bind_modeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property eipBindMode: The mode in which the EIP is associated with the NAT gateway.
Valid values:MULTI_BINDED (default): the multi-EIP-to-ENI mode. NAT: NAT mode. IPv4 gateways are supported. Note If the EIP is associated with the NAT gateway in NAT mode, the EIP occupies a private IP address of the vSwitch to which the NAT gateway belongs. Make sure that the vSwitch has sufficient private IP addresses. Otherwise, the EIP cannot be associated with the NAT gateway. In NAT mode, a maximum number of 50 EIPs can be associated with each NAT gateway.
icmp_reply_enabledOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property icmpReplyEnabled: Specifies whether to enable the ICMP non-retrieval feature.
Default: True
instance_charge_typeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property instanceChargeType: The billing method.
The default value is PostPaid (which means pay-as-you-go).
internet_charge_typeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property internetChargeType: The billing method for the NAT gateway.
Valid values: PayBySpec: billed on a pay-by-specification basis.
ipv4_prefixOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property ipv4Prefix: The IPv4 prefix.
nat_gateway_nameOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property natGatewayName: Display name of the NAT gateway, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'.
nat_ipOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property natIp: The NAT IP address.
nat_typeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property natType: The type of the NAT gateway.
Valid values:
- Enhanced: enhanced NAT gateway.
network_typeOptional
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Property networkType: The type of the created NAT gateway.
Internet: public network NAT gateway. Intranet: VPC NAT gateway.
private_link_enabledOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property privateLinkEnabled: Whether to support private network connection.
security_protection_enabledOptional
- Type: typing.Union[bool, ros_cdk_core.IResolvable]
Property securityProtectionEnabled: Specifies whether to enable the firewall feature.
Default: False
tagsOptional
- Type: typing.List[TagsProperty]
Property tags: Tags to attach to natgateway.
Max support 20 tags to add during create natgateway. Each tag with two properties Key and Value, and Key is required.
enable_resource_property_constraintOptional
- Type: bool
Methods
| Name | Description |
|---|---|
to_string | Returns a string representation of this construct. |
synthesize | Allows this construct to emit artifacts into the cloud assembly during synthesis. |
add_condition | No description. |
add_count | No description. |
add_dependency | No description. |
add_resource_desc | No description. |
apply_removal_policy | No description. |
fetch_condition | No description. |
fetch_dependency | No description. |
fetch_resource_desc | No description. |
get_att | No description. |
set_metadata | No description. |
to_string
def to_string() -> str
Returns a string representation of this construct.
synthesize
def synthesize(
session: ISynthesisSession
) -> None
Allows this construct to emit artifacts into the cloud assembly during synthesis.
This method is usually implemented by framework-level constructs such as Stack and Asset as they participate in synthesizing the cloud assembly.
- Type: ros_cdk_core.ISynthesisSession
The synthesis session.
add_condition
def add_condition(
condition: RosCondition
) -> None
- Type: ros_cdk_core.RosCondition
add_count
def add_count(
count: typing.Union[typing.Union[int, float], IResolvable]
) -> None
- Type: typing.Union[typing.Union[int, float], ros_cdk_core.IResolvable]
add_dependency
def add_dependency(
resource: Resource
) -> None
- Type: ros_cdk_core.Resource
add_resource_desc
def add_resource_desc(
desc: str
) -> None
- Type: str
apply_removal_policy
def apply_removal_policy(
policy: RemovalPolicy
) -> None
- Type: ros_cdk_core.RemovalPolicy
fetch_condition
def fetch_condition() -> RosCondition
fetch_dependency
def fetch_dependency() -> typing.List[str]
fetch_resource_desc
def fetch_resource_desc() -> str
get_att
def get_att(
name: str
) -> IResolvable
- Type: str
set_metadata
def set_metadata(
key: str,
value: typing.Any
) -> None
- Type: str
- Type: typing.Any
Static Functions
| Name | Description |
|---|---|
is_construct | Return whether the given object is a Construct. |
is_construct
import ros_cdk_vpc
ros_cdk_vpc.NatGateway.is_construct(
x: typing.Any
)
Return whether the given object is a Construct.
- Type: typing.Any
Properties
| Name | Type | Description |
|---|---|---|
node | ros_cdk_core.ConstructNode | The construct tree node associated with this construct. |
env | ros_cdk_core.IResourceEnvironment | The environment this resource belongs to. |
ref | str | No description. |
stack | ros_cdk_core.Stack | The stack in which this resource is defined. |
resource | ros_cdk_core.RosResource | No description. |
attr_forward_table_id | typing.Union[str, ros_cdk_core.IResolvable] | Attribute ForwardTableId: The forward table id. |
attr_nat_gateway_id | typing.Union[str, ros_cdk_core.IResolvable] | Attribute NatGatewayId: The Id of created NAT gateway. |
attr_s_nat_table_id | typing.Union[str, ros_cdk_core.IResolvable] | Attribute SNatTableId: The SNAT table id. |
props | NatGatewayProps | No description. |
nodeRequired
node: ConstructNode
- Type: ros_cdk_core.ConstructNode
The construct tree node associated with this construct.
envRequired
env: IResourceEnvironment
- Type: ros_cdk_core.IResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
refRequired
ref: str
- Type: str
stackRequired
stack: Stack
- Type: ros_cdk_core.Stack
The stack in which this resource is defined.
resourceOptional
resource: RosResource
- Type: ros_cdk_core.RosResource
attr_forward_table_idRequired
attr_forward_table_id: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute ForwardTableId: The forward table id.
attr_nat_gateway_idRequired
attr_nat_gateway_id: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute NatGatewayId: The Id of created NAT gateway.
attr_s_nat_table_idRequired
attr_s_nat_table_id: typing.Union[str, IResolvable]
- Type: typing.Union[str, ros_cdk_core.IResolvable]
Attribute SNatTableId: The SNAT table id.
propsRequired
props: NatGatewayProps
- Type: NatGatewayProps