#[non_exhaustive]
pub struct OpenZfsCreateRootVolumeConfiguration { pub record_size_kib: Option<i32>, pub data_compression_type: Option<OpenZfsDataCompressionType>, pub nfs_exports: Option<Vec<OpenZfsNfsExport>>, pub user_and_group_quotas: Option<Vec<OpenZfsUserOrGroupQuota>>, pub copy_tags_to_snapshots: Option<bool>, pub read_only: Option<bool>, }
Expand description

The configuration of an Amazon FSx for OpenZFS root volume.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§record_size_kib: Option<i32>

Specifies the record size of an OpenZFS root volume, in kibibytes (KiB). Valid values are 4, 8, 16, 32, 64, 128, 256, 512, or 1024 KiB. The default is 128 KiB. Most workloads should use the default record size. Database workflows can benefit from a smaller record size, while streaming workflows can benefit from a larger record size. For additional guidance on setting a custom record size, see Tips for maximizing performance in the Amazon FSx for OpenZFS User Guide.

§data_compression_type: 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. Compared to LZ4, Z-Standard provides a better compression ratio to minimize on-disk storage utilization.

  • LZ4 - Compresses the data in the volume using the LZ4 compression algorithm. Compared to Z-Standard, LZ4 is less compute-intensive and delivers higher write throughput speeds.

§nfs_exports: Option<Vec<OpenZfsNfsExport>>

The configuration object for mounting a file system.

§user_and_group_quotas: Option<Vec<OpenZfsUserOrGroupQuota>>

An object specifying how much storage users or groups can use on the volume.

§copy_tags_to_snapshots: Option<bool>

A Boolean value indicating whether tags for the volume should be copied to snapshots of the volume. 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.

§read_only: Option<bool>

A Boolean value indicating whether the volume is read-only. Setting this value to true can be useful after you have completed changes to a volume and no longer want changes to occur.

Implementations§

source§

impl OpenZfsCreateRootVolumeConfiguration

source

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

Specifies the record size of an OpenZFS root volume, in kibibytes (KiB). Valid values are 4, 8, 16, 32, 64, 128, 256, 512, or 1024 KiB. The default is 128 KiB. Most workloads should use the default record size. Database workflows can benefit from a smaller record size, while streaming workflows can benefit from a larger record size. For additional guidance on setting a custom record size, see Tips for maximizing performance in the Amazon FSx for OpenZFS User Guide.

source

pub fn 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. Compared to LZ4, Z-Standard provides a better compression ratio to minimize on-disk storage utilization.

  • LZ4 - Compresses the data in the volume using the LZ4 compression algorithm. Compared to Z-Standard, LZ4 is less compute-intensive and delivers higher write throughput speeds.

source

pub fn nfs_exports(&self) -> &[OpenZfsNfsExport]

The configuration object for mounting a file system.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .nfs_exports.is_none().

source

pub fn user_and_group_quotas(&self) -> &[OpenZfsUserOrGroupQuota]

An object specifying how much storage users or groups can use on the volume.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .user_and_group_quotas.is_none().

source

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

A Boolean value indicating whether tags for the volume should be copied to snapshots of the volume. 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 read_only(&self) -> Option<bool>

A Boolean value indicating whether the volume is read-only. Setting this value to true can be useful after you have completed changes to a volume and no longer want changes to occur.

source§

impl OpenZfsCreateRootVolumeConfiguration

source

pub fn builder() -> OpenZfsCreateRootVolumeConfigurationBuilder

Creates a new builder-style object to manufacture OpenZfsCreateRootVolumeConfiguration.

Trait Implementations§

source§

impl Clone for OpenZfsCreateRootVolumeConfiguration

source§

fn clone(&self) -> OpenZfsCreateRootVolumeConfiguration

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 OpenZfsCreateRootVolumeConfiguration

source§

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

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

impl PartialEq for OpenZfsCreateRootVolumeConfiguration

source§

fn eq(&self, other: &OpenZfsCreateRootVolumeConfiguration) -> 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 OpenZfsCreateRootVolumeConfiguration

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