Class CreateVolumeRequest
- All Implemented Interfaces:
SdkPojo,ToCopyableBuilder<CreateVolumeRequest.Builder,CreateVolumeRequest>
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal StringThe ID of the Availability Zone in which to create the volume.final StringThe ID of the Availability Zone in which to create the volume.static CreateVolumeRequest.Builderbuilder()final StringUnique, case-sensitive identifier that you provide to ensure the idempotency of the request.final BooleandryRun()Checks whether you have the required permissions for the action, without actually making the request, and provides an error response.final BooleanIndicates whether the volume should be encrypted.final booleanfinal booleanequalsBySdkFields(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 inthashCode()final booleanFor responses, this returns true if the service returned a value for the TagSpecifications property.final Integeriops()The number of I/O operations per second (IOPS) to provision for the volume.final StringkmsKeyId()The identifier of the KMS key to use for Amazon EBS encryption.final BooleanIndicates whether to enable Amazon EBS Multi-Attach.final OperatorRequestoperator()Reserved for internal use.final StringThe Amazon Resource Name (ARN) of the Outpost on which to create the volume.static Class<? extends CreateVolumeRequest.Builder> final Integersize()The size of the volume, in GiBs.final StringThe snapshot from which to create the volume.final List<TagSpecification> The tags to apply to the volume during creation.final IntegerThe 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 StringtoString()Returns a string representation of this object.final IntegerSpecifies 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 VolumeTypeThe volume type.final StringThe volume type.Methods inherited from class software.amazon.awssdk.awscore.AwsRequest
overrideConfigurationMethods 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
AvailabilityZoneorAvailabilityZoneIdmust be specified, but not both.- Returns:
- The ID of the Availability Zone in which to create the volume. For example,
us-east-1a.Either
AvailabilityZoneorAvailabilityZoneIdmust be specified, but not both.
-
availabilityZoneId
The ID of the Availability Zone in which to create the volume. For example,
use1-az1.Either
AvailabilityZoneorAvailabilityZoneIdmust be specified, but not both.- Returns:
- The ID of the Availability Zone in which to create the volume. For example,
use1-az1.Either
AvailabilityZoneorAvailabilityZoneIdmust be specified, but not both.
-
encrypted
Indicates whether the volume should be encrypted. The effect of setting the encryption state to
truedepends 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
truedepends 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
io1andio2volumes. Optional forgp3volumes. Omit for all other volume types.Valid ranges:
-
gp3:
3,000(default)- 80,000IOPS -
io1:
100 - 64,000IOPS -
io2:
100 - 256,000IOPS
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
io1andio2volumes. Optional forgp3volumes. Omit for all other volume types.Valid ranges:
-
gp3:
3,000(default)- 80,000IOPS -
io1:
100 - 64,000IOPS -
io2:
100 - 256,000IOPS
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
KmsKeyIdis 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
KmsKeyIdis 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,384GiB -
gp3:
1 - 65,536GiB -
io1:
4 - 16,384GiB -
io2:
4 - 65,536GiB -
st1 and sc1:
125 - 16,384GiB -
standard:
1 - 1024GiB
- 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,384GiB -
gp3:
1 - 65,536GiB -
io1:
4 - 16,384GiB -
io2:
4 - 65,536GiB -
st1 and sc1:
125 - 16,384GiB -
standard:
1 - 1024GiB
-
-
-
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:
gp2If the service returns an enum value that is not available in the current SDK version,
volumeTypewill 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:
gp2If the service returns an enum value that is not available in the current SDK version,
volumeTypewill 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
io1andio2volumes 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
io1andio2volumes 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
gp3volumes only. Omit for all other volume types.Valid Range:
125 - 2000MiB/s- Returns:
- The throughput to provision for the volume, in MiB/s. Supported for
gp3volumes only. Omit for all other volume types.Valid Range:
125 - 2000MiB/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:ToCopyableBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToCopyableBuilder<CreateVolumeRequest.Builder,CreateVolumeRequest> - Specified by:
toBuilderin classEc2Request- Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
public final int hashCode()- Overrides:
hashCodein classAwsRequest
-
equals
- Overrides:
equalsin classAwsRequest
-
equalsBySdkFields
Description copied from interface:SdkPojoIndicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojoclass, and is generated based on a service model.If an
SdkPojoclass does not have any inherited fields,equalsBySdkFieldsandequalsare essentially the same.- Specified by:
equalsBySdkFieldsin 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:SdkRequestUsed 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:
getValueForFieldin 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:
sdkFieldNameToFieldin interfaceSdkPojo- Returns:
- The mapping between the field name and its corresponding field.
-