Class CreateVolumeRequest
- All Implemented Interfaces:
SdkPojo
,ToCopyableBuilder<CreateVolumeRequest.Builder,
CreateVolumeRequest>
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal String
The ID of the Availability Zone in which to create the volume.final String
The ID of the Availability Zone in which to create the volume.static CreateVolumeRequest.Builder
builder()
final String
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.final Boolean
dryRun()
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response.final Boolean
Indicates whether the volume should be encrypted.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) Used to retrieve the value of a field from any class that extendsSdkRequest
.final int
hashCode()
final boolean
For responses, this returns true if the service returned a value for the TagSpecifications property.final Integer
iops()
The number of I/O operations per second (IOPS) to provision for the volume.final String
kmsKeyId()
The identifier of the KMS key to use for Amazon EBS encryption.final Boolean
Indicates whether to enable Amazon EBS Multi-Attach.final OperatorRequest
operator()
Reserved for internal use.final String
The Amazon Resource Name (ARN) of the Outpost on which to create the volume.static Class
<? extends CreateVolumeRequest.Builder> final Integer
size()
The size of the volume, in GiBs.final String
The snapshot from which to create the volume.final List
<TagSpecification> The tags to apply to the volume during creation.final Integer
The throughput to provision for the volume, in MiB/s.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.final Integer
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.final VolumeType
The volume type.final String
The volume type.Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfiguration
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
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.- Returns:
- 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.
-
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:
- 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.
-
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.
- Returns:
- 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.
-
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.
- Returns:
- 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.
-
-
-
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.
- Returns:
- 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.
-
-
-
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:
- 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.
-
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:
- 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
-
-
-
snapshotId
The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
- Returns:
- The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
-
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
If the service returns an enum value that is not available in the current SDK version,
volumeType
will returnVolumeType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromvolumeTypeAsString()
.- Returns:
- 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
-
- See Also:
-
-
volumeTypeAsString
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
If the service returns an enum value that is not available in the current SDK version,
volumeType
will returnVolumeType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available fromvolumeTypeAsString()
.- Returns:
- 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
-
- See Also:
-
-
hasTagSpecifications
public final boolean hasTagSpecifications()For responses, this returns true if the service returned a value for the TagSpecifications property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
tagSpecifications
The tags to apply to the volume during creation.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasTagSpecifications()
method.- Returns:
- The tags to apply to the volume during creation.
-
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.- Returns:
- 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.
-
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- Returns:
- 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
-
clientToken
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
- Returns:
- Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
-
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:
- 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
-
-
-
operator
Reserved for internal use.
- Returns:
- Reserved for internal use.
-
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
.- Returns:
- 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
.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<CreateVolumeRequest.Builder,
CreateVolumeRequest> - Specified by:
toBuilder
in classEc2Request
- Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode()- Overrides:
hashCode
in classAwsRequest
-
equals
- Overrides:
equals
in classAwsRequest
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
Description copied from class:SdkRequest
Used to retrieve the value of a field from any class that extendsSdkRequest
. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, theSdkRequest.getValueForField(String, Class)
method will again be available.- Overrides:
getValueForField
in classSdkRequest
- Parameters:
fieldName
- The name of the member to be retrieved.clazz
- The class to cast the returned object to.- Returns:
- Optional containing the casted return value
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
- Returns:
- The mapping between the field name and its corresponding field.
-