Interface CreateVolumeRequest.Builder
- All Superinterfaces:
AwsRequest.Builder
,Buildable
,CopyableBuilder<CreateVolumeRequest.Builder,
,CreateVolumeRequest> Ec2Request.Builder
,SdkBuilder<CreateVolumeRequest.Builder,
,CreateVolumeRequest> SdkPojo
,SdkRequest.Builder
- Enclosing class:
CreateVolumeRequest
-
Method Summary
Modifier and TypeMethodDescriptionavailabilityZone
(String availabilityZone) The ID of the Availability Zone in which to create the volume.availabilityZoneId
(String availabilityZoneId) The ID of the Availability Zone in which to create the volume.clientToken
(String clientToken) Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.Checks whether you have the required permissions for the action, without actually making the request, and provides an error response.Indicates whether the volume should be encrypted.The number of I/O operations per second (IOPS) to provision for the volume.The identifier of the KMS key to use for Amazon EBS encryption.multiAttachEnabled
(Boolean multiAttachEnabled) Indicates whether to enable Amazon EBS Multi-Attach.default CreateVolumeRequest.Builder
operator
(Consumer<OperatorRequest.Builder> operator) Reserved for internal use.operator
(OperatorRequest operator) Reserved for internal use.outpostArn
(String outpostArn) The Amazon Resource Name (ARN) of the Outpost on which to create the volume.overrideConfiguration
(Consumer<AwsRequestOverrideConfiguration.Builder> builderConsumer) Add an optional request override configuration.overrideConfiguration
(AwsRequestOverrideConfiguration overrideConfiguration) Add an optional request override configuration.The size of the volume, in GiBs.snapshotId
(String snapshotId) The snapshot from which to create the volume.tagSpecifications
(Collection<TagSpecification> tagSpecifications) The tags to apply to the volume during creation.tagSpecifications
(Consumer<TagSpecification.Builder>... tagSpecifications) The tags to apply to the volume during creation.tagSpecifications
(TagSpecification... tagSpecifications) The tags to apply to the volume during creation.throughput
(Integer throughput) The throughput to provision for the volume, in MiB/s.volumeInitializationRate
(Integer volumeInitializationRate) Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume.volumeType
(String volumeType) The volume type.volumeType
(VolumeType volumeType) The volume type.Methods inherited from interface software.amazon.awssdk.awscore.AwsRequest.Builder
overrideConfiguration
Methods inherited from interface software.amazon.awssdk.utils.builder.CopyableBuilder
copy
Methods inherited from interface software.amazon.awssdk.services.ec2.model.Ec2Request.Builder
build
Methods inherited from interface software.amazon.awssdk.utils.builder.SdkBuilder
applyMutation, build
Methods inherited from interface software.amazon.awssdk.core.SdkPojo
equalsBySdkFields, sdkFieldNameToField, sdkFields
-
Method Details
-
availabilityZone
The ID of the Availability Zone in which to create the volume. For example,
us-east-1a
.Either
AvailabilityZone
orAvailabilityZoneId
must be specified, but not both.- Parameters:
availabilityZone
- The ID of the Availability Zone in which to create the volume. For example,us-east-1a
.Either
AvailabilityZone
orAvailabilityZoneId
must be specified, but not both.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
availabilityZoneId
The ID of the Availability Zone in which to create the volume. For example,
use1-az1
.Either
AvailabilityZone
orAvailabilityZoneId
must be specified, but not both.- Parameters:
availabilityZoneId
- The ID of the Availability Zone in which to create the volume. For example,use1-az1
.Either
AvailabilityZone
orAvailabilityZoneId
must be specified, but not both.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
encrypted
Indicates whether the volume should be encrypted. The effect of setting the encryption state to
true
depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon EBS User Guide.Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types.
- Parameters:
encrypted
- Indicates whether the volume should be encrypted. The effect of setting the encryption state totrue
depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon EBS User Guide.Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types.
- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
iops
The number of I/O operations per second (IOPS) to provision for the volume. Required for
io1
andio2
volumes. Optional forgp3
volumes. Omit for all other volume types.Valid ranges:
-
gp3:
3,000
(default)- 80,000
IOPS -
io1:
100 - 64,000
IOPS -
io2:
100 - 256,000
IOPS
Instances built on the Nitro System can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.
- Parameters:
iops
- The number of I/O operations per second (IOPS) to provision for the volume. Required forio1
andio2
volumes. Optional forgp3
volumes. Omit for all other volume types.Valid ranges:
-
gp3:
3,000
(default)- 80,000
IOPS -
io1:
100 - 64,000
IOPS -
io2:
100 - 256,000
IOPS
Instances built on the Nitro System can support up to 256,000 IOPS. Other instances can support up to 32,000 IOPS.
-
- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
-
kmsKeyId
The identifier of the KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If
KmsKeyId
is specified, the encrypted state must betrue
.You can specify the KMS key using any of the following:
-
Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.
-
Key alias. For example, alias/ExampleAlias.
-
Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.
-
Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.
Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.
- Parameters:
kmsKeyId
- The identifier of the KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. IfKmsKeyId
is specified, the encrypted state must betrue
.You can specify the KMS key using any of the following:
-
Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.
-
Key alias. For example, alias/ExampleAlias.
-
Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.
-
Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.
Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.
-
- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
-
outpostArn
The Amazon Resource Name (ARN) of the Outpost on which to create the volume.
If you intend to use a volume with an instance running on an outpost, then you must create the volume on the same outpost as the instance. You can't use a volume created in an Amazon Web Services Region with an instance on an Amazon Web Services outpost, or the other way around.
- Parameters:
outpostArn
- The Amazon Resource Name (ARN) of the Outpost on which to create the volume.If you intend to use a volume with an instance running on an outpost, then you must create the volume on the same outpost as the instance. You can't use a volume created in an Amazon Web Services Region with an instance on an Amazon Web Services outpost, or the other way around.
- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
size
The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size.
Valid sizes:
-
gp2:
1 - 16,384
GiB -
gp3:
1 - 65,536
GiB -
io1:
4 - 16,384
GiB -
io2:
4 - 65,536
GiB -
st1 and sc1:
125 - 16,384
GiB -
standard:
1 - 1024
GiB
- Parameters:
size
- The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size, and you can specify a volume size that is equal to or larger than the snapshot size.Valid sizes:
-
gp2:
1 - 16,384
GiB -
gp3:
1 - 65,536
GiB -
io1:
4 - 16,384
GiB -
io2:
4 - 65,536
GiB -
st1 and sc1:
125 - 16,384
GiB -
standard:
1 - 1024
GiB
-
- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
-
snapshotId
The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
- Parameters:
snapshotId
- The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
volumeType
The volume type. This parameter can be one of the following values:
-
General Purpose SSD:
gp2
|gp3
-
Provisioned IOPS SSD:
io1
|io2
-
Throughput Optimized HDD:
st1
-
Cold HDD:
sc1
-
Magnetic:
standard
Throughput Optimized HDD (
st1
) and Cold HDD (sc1
) volumes can't be used as boot volumes.For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
Default:
gp2
- Parameters:
volumeType
- The volume type. This parameter can be one of the following values:-
General Purpose SSD:
gp2
|gp3
-
Provisioned IOPS SSD:
io1
|io2
-
Throughput Optimized HDD:
st1
-
Cold HDD:
sc1
-
Magnetic:
standard
Throughput Optimized HDD (
st1
) and Cold HDD (sc1
) volumes can't be used as boot volumes.For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
Default:
gp2
-
- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
-
volumeType
The volume type. This parameter can be one of the following values:
-
General Purpose SSD:
gp2
|gp3
-
Provisioned IOPS SSD:
io1
|io2
-
Throughput Optimized HDD:
st1
-
Cold HDD:
sc1
-
Magnetic:
standard
Throughput Optimized HDD (
st1
) and Cold HDD (sc1
) volumes can't be used as boot volumes.For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
Default:
gp2
- Parameters:
volumeType
- The volume type. This parameter can be one of the following values:-
General Purpose SSD:
gp2
|gp3
-
Provisioned IOPS SSD:
io1
|io2
-
Throughput Optimized HDD:
st1
-
Cold HDD:
sc1
-
Magnetic:
standard
Throughput Optimized HDD (
st1
) and Cold HDD (sc1
) volumes can't be used as boot volumes.For more information, see Amazon EBS volume types in the Amazon EBS User Guide.
Default:
gp2
-
- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
-
tagSpecifications
The tags to apply to the volume during creation.
- Parameters:
tagSpecifications
- The tags to apply to the volume during creation.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
tagSpecifications
The tags to apply to the volume during creation.
- Parameters:
tagSpecifications
- The tags to apply to the volume during creation.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
tagSpecifications
CreateVolumeRequest.Builder tagSpecifications(Consumer<TagSpecification.Builder>... tagSpecifications) The tags to apply to the volume during creation.
This is a convenience method that creates an instance of theTagSpecification.Builder
avoiding the need to create one manually viaTagSpecification.builder()
.When the
Consumer
completes,SdkBuilder.build()
is called immediately and its result is passed totagSpecifications(List<TagSpecification>)
.- Parameters:
tagSpecifications
- a consumer that will call methods onTagSpecification.Builder
- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
multiAttachEnabled
Indicates whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the volume to up to 16 Instances built on the Nitro System in the same Availability Zone. This parameter is supported with
io1
andio2
volumes only. For more information, see Amazon EBS Multi-Attach in the Amazon EBS User Guide.- Parameters:
multiAttachEnabled
- Indicates whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the volume to up to 16 Instances built on the Nitro System in the same Availability Zone. This parameter is supported withio1
andio2
volumes only. For more information, see Amazon EBS Multi-Attach in the Amazon EBS User Guide.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
throughput
The throughput to provision for the volume, in MiB/s. Supported for
gp3
volumes only. Omit for all other volume types.Valid Range:
125 - 2000
MiB/s- Parameters:
throughput
- The throughput to provision for the volume, in MiB/s. Supported forgp3
volumes only. Omit for all other volume types.Valid Range:
125 - 2000
MiB/s- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
clientToken
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
- Parameters:
clientToken
- Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
volumeInitializationRate
Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as volume initialization. Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.
This parameter is supported only for volumes created from snapshots. Omit this parameter if:
-
You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.
If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.
-
You want to create a volume that is initialized at the default rate.
For more information, see Initialize Amazon EBS volumes in the Amazon EC2 User Guide.
Valid range: 100 - 300 MiB/s
- Parameters:
volumeInitializationRate
- Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as volume initialization. Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.This parameter is supported only for volumes created from snapshots. Omit this parameter if:
-
You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.
If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.
-
You want to create a volume that is initialized at the default rate.
For more information, see Initialize Amazon EBS volumes in the Amazon EC2 User Guide.
Valid range: 100 - 300 MiB/s
-
- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
-
operator
Reserved for internal use.
- Parameters:
operator
- Reserved for internal use.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
operator
Reserved for internal use.
This is a convenience method that creates an instance of theOperatorRequest.Builder
avoiding the need to create one manually viaOperatorRequest.builder()
.When the
Consumer
completes,SdkBuilder.build()
is called immediately and its result is passed tooperator(OperatorRequest)
.- Parameters:
operator
- a consumer that will call methods onOperatorRequest.Builder
- Returns:
- Returns a reference to this object so that method calls can be chained together.
- See Also:
-
dryRun
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 isUnauthorizedOperation
.- Parameters:
dryRun
- 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 isDryRunOperation
. Otherwise, it isUnauthorizedOperation
.- Returns:
- Returns a reference to this object so that method calls can be chained together.
-
overrideConfiguration
CreateVolumeRequest.Builder overrideConfiguration(AwsRequestOverrideConfiguration overrideConfiguration) Description copied from interface:AwsRequest.Builder
Add an optional request override configuration.- Specified by:
overrideConfiguration
in interfaceAwsRequest.Builder
- Parameters:
overrideConfiguration
- The override configuration.- Returns:
- This object for method chaining.
-
overrideConfiguration
CreateVolumeRequest.Builder overrideConfiguration(Consumer<AwsRequestOverrideConfiguration.Builder> builderConsumer) Description copied from interface:AwsRequest.Builder
Add an optional request override configuration.- Specified by:
overrideConfiguration
in interfaceAwsRequest.Builder
- Parameters:
builderConsumer
- AConsumer
to which an emptyAwsRequestOverrideConfiguration.Builder
will be given.- Returns:
- This object for method chaining.
-