Struct aws_sdk_ec2::client::fluent_builders::CreateSubnet
source · [−]pub struct CreateSubnet { /* private fields */ }
Expand description
Fluent builder constructing a request to CreateSubnet
.
Creates a subnet in a specified VPC.
You must specify an IPv4 CIDR block for the subnet. After you create a subnet, you can't change its CIDR block. The allowed block size is between a /16 netmask (65,536 IP addresses) and /28 netmask (16 IP addresses). The CIDR block must not overlap with the CIDR block of an existing subnet in the VPC.
If you've associated an IPv6 CIDR block with your VPC, you can create a subnet with an IPv6 CIDR block that uses a /64 prefix length.
Amazon Web Services reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for use.
If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle.
When you stop an instance in a subnet, it retains its private IPv4 address. It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available.
For more information about subnets, see Your VPC and subnets in the Amazon Virtual Private Cloud User Guide.
Implementations
sourceimpl CreateSubnet
impl CreateSubnet
sourcepub async fn send(
self
) -> Result<CreateSubnetOutput, SdkError<CreateSubnetError>>
pub async fn send(
self
) -> Result<CreateSubnetOutput, SdkError<CreateSubnetError>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
sourcepub fn tag_specifications(self, input: TagSpecification) -> Self
pub fn tag_specifications(self, input: TagSpecification) -> Self
Appends an item to TagSpecifications
.
To override the contents of this collection use set_tag_specifications
.
The tags to assign to the subnet.
sourcepub fn set_tag_specifications(self, input: Option<Vec<TagSpecification>>) -> Self
pub fn set_tag_specifications(self, input: Option<Vec<TagSpecification>>) -> Self
The tags to assign to the subnet.
sourcepub fn availability_zone(self, input: impl Into<String>) -> Self
pub fn availability_zone(self, input: impl Into<String>) -> Self
The Availability Zone or Local Zone for the subnet.
Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet.
To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a
. For information about the Regions that support Local Zones, see Available Regions in the Amazon Elastic Compute Cloud User Guide.
To create a subnet in an Outpost, set this value to the Availability Zone for the Outpost and specify the Outpost ARN.
sourcepub fn set_availability_zone(self, input: Option<String>) -> Self
pub fn set_availability_zone(self, input: Option<String>) -> Self
The Availability Zone or Local Zone for the subnet.
Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet.
To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a
. For information about the Regions that support Local Zones, see Available Regions in the Amazon Elastic Compute Cloud User Guide.
To create a subnet in an Outpost, set this value to the Availability Zone for the Outpost and specify the Outpost ARN.
sourcepub fn availability_zone_id(self, input: impl Into<String>) -> Self
pub fn availability_zone_id(self, input: impl Into<String>) -> Self
The AZ ID or the Local Zone ID of the subnet.
sourcepub fn set_availability_zone_id(self, input: Option<String>) -> Self
pub fn set_availability_zone_id(self, input: Option<String>) -> Self
The AZ ID or the Local Zone ID of the subnet.
sourcepub fn cidr_block(self, input: impl Into<String>) -> Self
pub fn cidr_block(self, input: impl Into<String>) -> Self
The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24
. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18
, we modify it to 100.68.0.0/18
.
This parameter is not supported for an IPv6 only subnet.
sourcepub fn set_cidr_block(self, input: Option<String>) -> Self
pub fn set_cidr_block(self, input: Option<String>) -> Self
The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24
. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18
, we modify it to 100.68.0.0/18
.
This parameter is not supported for an IPv6 only subnet.
sourcepub fn ipv6_cidr_block(self, input: impl Into<String>) -> Self
pub fn ipv6_cidr_block(self, input: impl Into<String>) -> Self
The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
This parameter is required for an IPv6 only subnet.
sourcepub fn set_ipv6_cidr_block(self, input: Option<String>) -> Self
pub fn set_ipv6_cidr_block(self, input: Option<String>) -> Self
The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
This parameter is required for an IPv6 only subnet.
sourcepub fn outpost_arn(self, input: impl Into<String>) -> Self
pub fn outpost_arn(self, input: impl Into<String>) -> Self
The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost ARN, you must also specify the Availability Zone of the Outpost subnet.
sourcepub fn set_outpost_arn(self, input: Option<String>) -> Self
pub fn set_outpost_arn(self, input: Option<String>) -> Self
The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost ARN, you must also specify the Availability Zone of the Outpost subnet.
sourcepub fn set_vpc_id(self, input: Option<String>) -> Self
pub fn set_vpc_id(self, input: Option<String>) -> Self
The ID of the VPC.
sourcepub fn dry_run(self, input: bool) -> Self
pub fn dry_run(self, input: bool) -> Self
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
sourcepub fn set_dry_run(self, input: Option<bool>) -> Self
pub fn set_dry_run(self, input: Option<bool>) -> Self
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
sourcepub fn ipv6_native(self, input: bool) -> Self
pub fn ipv6_native(self, input: bool) -> Self
Indicates whether to create an IPv6 only subnet.
sourcepub fn set_ipv6_native(self, input: Option<bool>) -> Self
pub fn set_ipv6_native(self, input: Option<bool>) -> Self
Indicates whether to create an IPv6 only subnet.
Trait Implementations
sourceimpl Clone for CreateSubnet
impl Clone for CreateSubnet
sourcefn clone(&self) -> CreateSubnet
fn clone(&self) -> CreateSubnet
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl !RefUnwindSafe for CreateSubnet
impl Send for CreateSubnet
impl Sync for CreateSubnet
impl Unpin for CreateSubnet
impl !UnwindSafe for CreateSubnet
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more