public class CreateVolumeRequest extends AmazonWebServiceRequest implements java.io.Serializable, DryRunSupportedRequest<CreateVolumeRequest>
CreateVolume operation
.
Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints .
You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume.
You can create encrypted volumes with the Encrypted
parameter. Encrypted volumes may only be attached to instances that
support Amazon EBS encryption. Volumes that are created from encrypted
snapshots are also automatically encrypted. For more information, see
Amazon EBS Encryption
in the Amazon Elastic Compute Cloud User Guide .
For more information, see Creating or Restoring an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide .
Constructor and Description |
---|
CreateVolumeRequest()
Default constructor for a new CreateVolumeRequest object.
|
CreateVolumeRequest(java.lang.Integer size,
java.lang.String availabilityZone)
Constructs a new CreateVolumeRequest object.
|
CreateVolumeRequest(java.lang.String snapshotId,
java.lang.String availabilityZone)
Constructs a new CreateVolumeRequest object.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
java.lang.String |
getAvailabilityZone()
The Availability Zone in which to create the volume.
|
Request<CreateVolumeRequest> |
getDryRunRequest()
This method is intended for internal use only.
|
java.lang.Boolean |
getEncrypted()
Specifies whether the volume should be encrypted.
|
java.lang.Integer |
getIops()
Only valid for Provisioned IOPS SSD volumes.
|
java.lang.String |
getKmsKeyId()
The full ARN of the AWS Key Management Service (AWS KMS) customer
master key (CMK) to use when creating the encrypted volume.
|
java.lang.Integer |
getSize()
The size of the volume, in GiBs.
|
java.lang.String |
getSnapshotId()
The snapshot from which to create the volume.
|
java.lang.String |
getVolumeType()
The volume type.
|
int |
hashCode() |
java.lang.Boolean |
isEncrypted()
Specifies whether the volume should be encrypted.
|
void |
setAvailabilityZone(java.lang.String availabilityZone)
The Availability Zone in which to create the volume.
|
void |
setEncrypted(java.lang.Boolean encrypted)
Specifies whether the volume should be encrypted.
|
void |
setIops(java.lang.Integer iops)
Only valid for Provisioned IOPS SSD volumes.
|
void |
setKmsKeyId(java.lang.String kmsKeyId)
The full ARN of the AWS Key Management Service (AWS KMS) customer
master key (CMK) to use when creating the encrypted volume.
|
void |
setSize(java.lang.Integer size)
The size of the volume, in GiBs.
|
void |
setSnapshotId(java.lang.String snapshotId)
The snapshot from which to create the volume.
|
void |
setVolumeType(java.lang.String volumeType)
The volume type.
|
void |
setVolumeType(VolumeType volumeType)
The volume type.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
CreateVolumeRequest |
withAvailabilityZone(java.lang.String availabilityZone)
The Availability Zone in which to create the volume.
|
CreateVolumeRequest |
withEncrypted(java.lang.Boolean encrypted)
Specifies whether the volume should be encrypted.
|
CreateVolumeRequest |
withIops(java.lang.Integer iops)
Only valid for Provisioned IOPS SSD volumes.
|
CreateVolumeRequest |
withKmsKeyId(java.lang.String kmsKeyId)
The full ARN of the AWS Key Management Service (AWS KMS) customer
master key (CMK) to use when creating the encrypted volume.
|
CreateVolumeRequest |
withSize(java.lang.Integer size)
The size of the volume, in GiBs.
|
CreateVolumeRequest |
withSnapshotId(java.lang.String snapshotId)
The snapshot from which to create the volume.
|
CreateVolumeRequest |
withVolumeType(java.lang.String volumeType)
The volume type.
|
CreateVolumeRequest |
withVolumeType(VolumeType volumeType)
The volume type.
|
clone, getCloneRoot, getCloneSource, getGeneralProgressListener, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollector
public CreateVolumeRequest()
public CreateVolumeRequest(java.lang.Integer size, java.lang.String availabilityZone)
size
- The size of the volume, in GiBs. Constraints: 1-16384
for gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
availabilityZone
- The Availability Zone in which to create the
volume. Use DescribeAvailabilityZones to list the Availability
Zones that are currently available to you.public CreateVolumeRequest(java.lang.String snapshotId, java.lang.String availabilityZone)
snapshotId
- The snapshot from which to create the volume.availabilityZone
- The Availability Zone in which to create the
volume. Use DescribeAvailabilityZones to list the Availability
Zones that are currently available to you.public java.lang.Integer getSize()
Constraints: 1-16384 for
gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
Constraints: 1-16384 for
gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
public void setSize(java.lang.Integer size)
Constraints: 1-16384 for
gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
size
- The size of the volume, in GiBs. Constraints: 1-16384 for
gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
public CreateVolumeRequest withSize(java.lang.Integer size)
Constraints: 1-16384 for
gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
Returns a reference to this object so that method calls can be chained together.
size
- The size of the volume, in GiBs. Constraints: 1-16384 for
gp2
, 4-16384 for io1
, 500-16384 for
st1
, 500-16384 for sc1
, and 1-1024 for
standard
. If you specify a snapshot, the volume size must
be equal to or larger than the snapshot size.
Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
public java.lang.String getSnapshotId()
public void setSnapshotId(java.lang.String snapshotId)
snapshotId
- The snapshot from which to create the volume.public CreateVolumeRequest withSnapshotId(java.lang.String snapshotId)
Returns a reference to this object so that method calls can be chained together.
snapshotId
- The snapshot from which to create the volume.public java.lang.String getAvailabilityZone()
public void setAvailabilityZone(java.lang.String availabilityZone)
availabilityZone
- The Availability Zone in which to create the volume. Use
DescribeAvailabilityZones to list the Availability Zones that
are currently available to you.public CreateVolumeRequest withAvailabilityZone(java.lang.String availabilityZone)
Returns a reference to this object so that method calls can be chained together.
availabilityZone
- The Availability Zone in which to create the volume. Use
DescribeAvailabilityZones to list the Availability Zones that
are currently available to you.public java.lang.String getVolumeType()
gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
Constraints:
Allowed Values: standard, io1, gp2, sc1, st1
gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
VolumeType
public void setVolumeType(java.lang.String volumeType)
gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
Constraints:
Allowed Values: standard, io1, gp2, sc1, st1
volumeType
- The volume type. This can be gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
VolumeType
public CreateVolumeRequest withVolumeType(java.lang.String volumeType)
gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: standard, io1, gp2, sc1, st1
volumeType
- The volume type. This can be gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
VolumeType
public void setVolumeType(VolumeType volumeType)
gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
Constraints:
Allowed Values: standard, io1, gp2, sc1, st1
volumeType
- The volume type. This can be gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
VolumeType
public CreateVolumeRequest withVolumeType(VolumeType volumeType)
gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: standard, io1, gp2, sc1, st1
volumeType
- The volume type. This can be gp2
for General Purpose SSD,
io1
for Provisioned IOPS SSD, st1
for
Throughput Optimized HDD, sc1
for Cold HDD, or
standard
for Magnetic volumes. Default:
standard
VolumeType
public java.lang.Integer getIops()
Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
public void setIops(java.lang.Integer iops)
Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
iops
- Only valid for Provisioned IOPS SSD volumes. The number of I/O
operations per second (IOPS) to provision for the volume, with a
maximum ratio of 30 IOPS/GiB. Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
public CreateVolumeRequest withIops(java.lang.Integer iops)
Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
Returns a reference to this object so that method calls can be chained together.
iops
- Only valid for Provisioned IOPS SSD volumes. The number of I/O
operations per second (IOPS) to provision for the volume, with a
maximum ratio of 30 IOPS/GiB. Constraint: Range is 100 to 20000 for Provisioned IOPS SSD volumes
public java.lang.Boolean isEncrypted()
public void setEncrypted(java.lang.Boolean encrypted)
encrypted
- Specifies whether the volume should be encrypted. Encrypted Amazon EBS
volumes may only be attached to instances that support Amazon EBS
encryption. Volumes that are created from encrypted snapshots are
automatically encrypted. There is no way to create an encrypted volume
from an unencrypted snapshot or vice versa. If your AMI uses encrypted
volumes, you can only launch it on supported instance types. For more
information, see Amazon
EBS Encryption in the Amazon Elastic Compute Cloud User
Guide.public CreateVolumeRequest withEncrypted(java.lang.Boolean encrypted)
Returns a reference to this object so that method calls can be chained together.
encrypted
- Specifies whether the volume should be encrypted. Encrypted Amazon EBS
volumes may only be attached to instances that support Amazon EBS
encryption. Volumes that are created from encrypted snapshots are
automatically encrypted. There is no way to create an encrypted volume
from an unencrypted snapshot or vice versa. If your AMI uses encrypted
volumes, you can only launch it on supported instance types. For more
information, see Amazon
EBS Encryption in the Amazon Elastic Compute Cloud User
Guide.public java.lang.Boolean getEncrypted()
public java.lang.String getKmsKeyId()
arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the
key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.
If a KmsKeyId
is specified, the Encrypted
flag must also be set.arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the
key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.
If a KmsKeyId
is specified, the Encrypted
flag must also be set.public void setKmsKeyId(java.lang.String kmsKeyId)
arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the
key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.
If a KmsKeyId
is specified, the Encrypted
flag must also be set.kmsKeyId
- The full ARN of the AWS Key Management Service (AWS KMS) customer
master key (CMK) to use when creating the encrypted volume. This
parameter is only required if you want to use a non-default CMK; if
this parameter is not specified, the default CMK for EBS is used. The
ARN contains the arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the
key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.
If a KmsKeyId
is specified, the Encrypted
flag must also be set.public CreateVolumeRequest withKmsKeyId(java.lang.String kmsKeyId)
arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the
key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.
If a KmsKeyId
is specified, the Encrypted
flag must also be set.
Returns a reference to this object so that method calls can be chained together.
kmsKeyId
- The full ARN of the AWS Key Management Service (AWS KMS) customer
master key (CMK) to use when creating the encrypted volume. This
parameter is only required if you want to use a non-default CMK; if
this parameter is not specified, the default CMK for EBS is used. The
ARN contains the arn:aws:kms
namespace, followed by the
region of the CMK, the AWS account ID of the CMK owner, the
key
namespace, and then the CMK ID. For example,
arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.
If a KmsKeyId
is specified, the Encrypted
flag must also be set.public Request<CreateVolumeRequest> getDryRunRequest()
getDryRunRequest
in interface DryRunSupportedRequest<CreateVolumeRequest>
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
Copyright © 2018 Amazon Web Services, Inc. All Rights Reserved.