#[non_exhaustive]
pub struct CreateOpenZfsVolumeConfigurationBuilder { /* private fields */ }
Expand description

Implementations§

source§

impl CreateOpenZfsVolumeConfigurationBuilder

source

pub fn parent_volume_id(self, input: impl Into<String>) -> Self

The ID of the volume to use as the parent volume of the volume that you are creating.

This field is required.
source

pub fn set_parent_volume_id(self, input: Option<String>) -> Self

The ID of the volume to use as the parent volume of the volume that you are creating.

source

pub fn get_parent_volume_id(&self) -> &Option<String>

The ID of the volume to use as the parent volume of the volume that you are creating.

source

pub fn storage_capacity_reservation_gib(self, input: i32) -> Self

Specifies the amount of storage in gibibytes (GiB) to reserve from the parent volume. Setting StorageCapacityReservationGiB guarantees that the specified amount of storage space on the parent volume will always be available for the volume. You can't reserve more storage than the parent volume has. To not specify a storage capacity reservation, set this to 0 or -1. For more information, see Volume properties in the Amazon FSx for OpenZFS User Guide.

source

pub fn set_storage_capacity_reservation_gib(self, input: Option<i32>) -> Self

Specifies the amount of storage in gibibytes (GiB) to reserve from the parent volume. Setting StorageCapacityReservationGiB guarantees that the specified amount of storage space on the parent volume will always be available for the volume. You can't reserve more storage than the parent volume has. To not specify a storage capacity reservation, set this to 0 or -1. For more information, see Volume properties in the Amazon FSx for OpenZFS User Guide.

source

pub fn get_storage_capacity_reservation_gib(&self) -> &Option<i32>

Specifies the amount of storage in gibibytes (GiB) to reserve from the parent volume. Setting StorageCapacityReservationGiB guarantees that the specified amount of storage space on the parent volume will always be available for the volume. You can't reserve more storage than the parent volume has. To not specify a storage capacity reservation, set this to 0 or -1. For more information, see Volume properties in the Amazon FSx for OpenZFS User Guide.

source

pub fn storage_capacity_quota_gib(self, input: i32) -> Self

Sets the maximum storage size in gibibytes (GiB) for the volume. You can specify a quota that is larger than the storage on the parent volume. A volume quota limits the amount of storage that the volume can consume to the configured amount, but does not guarantee the space will be available on the parent volume. To guarantee quota space, you must also set StorageCapacityReservationGiB. To not specify a storage capacity quota, set this to -1.

For more information, see Volume properties in the Amazon FSx for OpenZFS User Guide.

source

pub fn set_storage_capacity_quota_gib(self, input: Option<i32>) -> Self

Sets the maximum storage size in gibibytes (GiB) for the volume. You can specify a quota that is larger than the storage on the parent volume. A volume quota limits the amount of storage that the volume can consume to the configured amount, but does not guarantee the space will be available on the parent volume. To guarantee quota space, you must also set StorageCapacityReservationGiB. To not specify a storage capacity quota, set this to -1.

For more information, see Volume properties in the Amazon FSx for OpenZFS User Guide.

source

pub fn get_storage_capacity_quota_gib(&self) -> &Option<i32>

Sets the maximum storage size in gibibytes (GiB) for the volume. You can specify a quota that is larger than the storage on the parent volume. A volume quota limits the amount of storage that the volume can consume to the configured amount, but does not guarantee the space will be available on the parent volume. To guarantee quota space, you must also set StorageCapacityReservationGiB. To not specify a storage capacity quota, set this to -1.

For more information, see Volume properties in the Amazon FSx for OpenZFS User Guide.

source

pub fn record_size_kib(self, input: i32) -> Self

Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB). Valid values are 4, 8, 16, 32, 64, 128, 256, 512, or 1024 KiB. The default is 128 KiB. We recommend using the default setting for the majority of use cases. Generally, workloads that write in fixed small or large record sizes may benefit from setting a custom record size, like database workloads (small record size) or media streaming workloads (large record size). For additional guidance on when to set a custom record size, see ZFS Record size in the Amazon FSx for OpenZFS User Guide.

source

pub fn set_record_size_kib(self, input: Option<i32>) -> Self

Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB). Valid values are 4, 8, 16, 32, 64, 128, 256, 512, or 1024 KiB. The default is 128 KiB. We recommend using the default setting for the majority of use cases. Generally, workloads that write in fixed small or large record sizes may benefit from setting a custom record size, like database workloads (small record size) or media streaming workloads (large record size). For additional guidance on when to set a custom record size, see ZFS Record size in the Amazon FSx for OpenZFS User Guide.

source

pub fn get_record_size_kib(&self) -> &Option<i32>

Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB). Valid values are 4, 8, 16, 32, 64, 128, 256, 512, or 1024 KiB. The default is 128 KiB. We recommend using the default setting for the majority of use cases. Generally, workloads that write in fixed small or large record sizes may benefit from setting a custom record size, like database workloads (small record size) or media streaming workloads (large record size). For additional guidance on when to set a custom record size, see ZFS Record size in the Amazon FSx for OpenZFS User Guide.

source

pub fn data_compression_type(self, input: OpenZfsDataCompressionType) -> Self

Specifies the method used to compress the data on the volume. The compression type is NONE by default.

  • NONE - Doesn't compress the data on the volume. NONE is the default.

  • ZSTD - Compresses the data in the volume using the Zstandard (ZSTD) compression algorithm. ZSTD compression provides a higher level of data compression and higher read throughput performance than LZ4 compression.

  • LZ4 - Compresses the data in the volume using the LZ4 compression algorithm. LZ4 compression provides a lower level of compression and higher write throughput performance than ZSTD compression.

For more information about volume compression types and the performance of your Amazon FSx for OpenZFS file system, see Tips for maximizing performance File system and volume settings in the Amazon FSx for OpenZFS User Guide.

source

pub fn set_data_compression_type( self, input: Option<OpenZfsDataCompressionType> ) -> Self

Specifies the method used to compress the data on the volume. The compression type is NONE by default.

  • NONE - Doesn't compress the data on the volume. NONE is the default.

  • ZSTD - Compresses the data in the volume using the Zstandard (ZSTD) compression algorithm. ZSTD compression provides a higher level of data compression and higher read throughput performance than LZ4 compression.

  • LZ4 - Compresses the data in the volume using the LZ4 compression algorithm. LZ4 compression provides a lower level of compression and higher write throughput performance than ZSTD compression.

For more information about volume compression types and the performance of your Amazon FSx for OpenZFS file system, see Tips for maximizing performance File system and volume settings in the Amazon FSx for OpenZFS User Guide.

source

pub fn get_data_compression_type(&self) -> &Option<OpenZfsDataCompressionType>

Specifies the method used to compress the data on the volume. The compression type is NONE by default.

  • NONE - Doesn't compress the data on the volume. NONE is the default.

  • ZSTD - Compresses the data in the volume using the Zstandard (ZSTD) compression algorithm. ZSTD compression provides a higher level of data compression and higher read throughput performance than LZ4 compression.

  • LZ4 - Compresses the data in the volume using the LZ4 compression algorithm. LZ4 compression provides a lower level of compression and higher write throughput performance than ZSTD compression.

For more information about volume compression types and the performance of your Amazon FSx for OpenZFS file system, see Tips for maximizing performance File system and volume settings in the Amazon FSx for OpenZFS User Guide.

source

pub fn copy_tags_to_snapshots(self, input: bool) -> Self

A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to false. If it's set to true, all tags for the volume are copied to snapshots where the user doesn't specify tags. If this value is true, and you specify one or more tags, only the specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are copied from the volume, regardless of this value.

source

pub fn set_copy_tags_to_snapshots(self, input: Option<bool>) -> Self

A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to false. If it's set to true, all tags for the volume are copied to snapshots where the user doesn't specify tags. If this value is true, and you specify one or more tags, only the specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are copied from the volume, regardless of this value.

source

pub fn get_copy_tags_to_snapshots(&self) -> &Option<bool>

A Boolean value indicating whether tags for the volume should be copied to snapshots. This value defaults to false. If it's set to true, all tags for the volume are copied to snapshots where the user doesn't specify tags. If this value is true, and you specify one or more tags, only the specified tags are copied to snapshots. If you specify one or more tags when creating the snapshot, no tags are copied from the volume, regardless of this value.

source

pub fn origin_snapshot( self, input: CreateOpenZfsOriginSnapshotConfiguration ) -> Self

The configuration object that specifies the snapshot to use as the origin of the data for the volume.

source

pub fn set_origin_snapshot( self, input: Option<CreateOpenZfsOriginSnapshotConfiguration> ) -> Self

The configuration object that specifies the snapshot to use as the origin of the data for the volume.

source

pub fn get_origin_snapshot( &self ) -> &Option<CreateOpenZfsOriginSnapshotConfiguration>

The configuration object that specifies the snapshot to use as the origin of the data for the volume.

source

pub fn read_only(self, input: bool) -> Self

A Boolean value indicating whether the volume is read-only.

source

pub fn set_read_only(self, input: Option<bool>) -> Self

A Boolean value indicating whether the volume is read-only.

source

pub fn get_read_only(&self) -> &Option<bool>

A Boolean value indicating whether the volume is read-only.

source

pub fn nfs_exports(self, input: OpenZfsNfsExport) -> Self

Appends an item to nfs_exports.

To override the contents of this collection use set_nfs_exports.

The configuration object for mounting a Network File System (NFS) file system.

source

pub fn set_nfs_exports(self, input: Option<Vec<OpenZfsNfsExport>>) -> Self

The configuration object for mounting a Network File System (NFS) file system.

source

pub fn get_nfs_exports(&self) -> &Option<Vec<OpenZfsNfsExport>>

The configuration object for mounting a Network File System (NFS) file system.

source

pub fn user_and_group_quotas(self, input: OpenZfsUserOrGroupQuota) -> Self

Appends an item to user_and_group_quotas.

To override the contents of this collection use set_user_and_group_quotas.

Configures how much storage users and groups can use on the volume.

source

pub fn set_user_and_group_quotas( self, input: Option<Vec<OpenZfsUserOrGroupQuota>> ) -> Self

Configures how much storage users and groups can use on the volume.

source

pub fn get_user_and_group_quotas(&self) -> &Option<Vec<OpenZfsUserOrGroupQuota>>

Configures how much storage users and groups can use on the volume.

source

pub fn build(self) -> CreateOpenZfsVolumeConfiguration

Consumes the builder and constructs a CreateOpenZfsVolumeConfiguration.

Trait Implementations§

source§

impl Clone for CreateOpenZfsVolumeConfigurationBuilder

source§

fn clone(&self) -> CreateOpenZfsVolumeConfigurationBuilder

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CreateOpenZfsVolumeConfigurationBuilder

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for CreateOpenZfsVolumeConfigurationBuilder

source§

fn default() -> CreateOpenZfsVolumeConfigurationBuilder

Returns the “default value” for a type. Read more
source§

impl PartialEq for CreateOpenZfsVolumeConfigurationBuilder

source§

fn eq(&self, other: &CreateOpenZfsVolumeConfigurationBuilder) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for CreateOpenZfsVolumeConfigurationBuilder

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more