Interface CfnVolumePropsMixin.IOpenZFSConfigurationProperty
Specifies the configuration of the Amazon FSx for OpenZFS volume that you are creating.
Namespace: Amazon.CDK.Mixins.Preview.AWS.FSx.Mixins
Assembly: Amazon.CDK.Mixins.Preview.dll
Syntax (csharp)
public interface CfnVolumePropsMixin.IOpenZFSConfigurationProperty
Syntax (vb)
Public Interface CfnVolumePropsMixin.IOpenZFSConfigurationProperty
Remarks
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.Mixins.Preview.AWS.FSx.Mixins;
var openZFSConfigurationProperty = new OpenZFSConfigurationProperty {
CopyTagsToSnapshots = false,
DataCompressionType = "dataCompressionType",
NfsExports = new [] { new NfsExportsProperty {
ClientConfigurations = new [] { new ClientConfigurationsProperty {
Clients = "clients",
Options = new [] { "options" }
} }
} },
Options = new [] { "options" },
OriginSnapshot = new OriginSnapshotProperty {
CopyStrategy = "copyStrategy",
SnapshotArn = "snapshotArn"
},
ParentVolumeId = "parentVolumeId",
ReadOnly = false,
RecordSizeKiB = 123,
StorageCapacityQuotaGiB = 123,
StorageCapacityReservationGiB = 123,
UserAndGroupQuotas = new [] { new UserAndGroupQuotasProperty {
Id = 123,
StorageCapacityQuotaGiB = 123,
Type = "type"
} }
};
Synopsis
Properties
| CopyTagsToSnapshots | A Boolean value indicating whether tags for the volume should be copied to snapshots. |
| DataCompressionType | Specifies the method used to compress the data on the volume. The compression type is |
| NfsExports | The configuration object for mounting a Network File System (NFS) file system. |
| Options | To delete the volume's child volumes, snapshots, and clones, use the string |
| OriginSnapshot | The configuration object that specifies the snapshot to use as the origin of the data for the volume. |
| ParentVolumeId | The ID of the volume to use as the parent volume of the volume that you are creating. |
| ReadOnly | A Boolean value indicating whether the volume is read-only. |
| RecordSizeKiB | Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB). |
| StorageCapacityQuotaGiB | Sets the maximum storage size in gibibytes (GiB) for the volume. |
| StorageCapacityReservationGiB | Specifies the amount of storage in gibibytes (GiB) to reserve from the parent volume. |
| UserAndGroupQuotas | Configures how much storage users and groups can use on the volume. |
Properties
CopyTagsToSnapshots
A Boolean value indicating whether tags for the volume should be copied to snapshots.
object? CopyTagsToSnapshots { get; }
Property Value
Remarks
This value defaults to false . If this value is set to true , and you do not specify any tags, all tags for the original volume are copied over to snapshots. If this value is set to true , and you do specify one or more tags, only the specified tags for the original volume are copied over to snapshots. If you specify one or more tags when creating a new snapshot, no tags are copied over from the original volume, regardless of this value.
Type union: either bool or IResolvable
DataCompressionType
Specifies the method used to compress the data on the volume. The compression type is NONE by default.
string? DataCompressionType { get; }
Property Value
Remarks
NfsExports
The configuration object for mounting a Network File System (NFS) file system.
object? NfsExports { get; }
Property Value
Remarks
Options
To delete the volume's child volumes, snapshots, and clones, use the string DELETE_CHILD_VOLUMES_AND_SNAPSHOTS .
string[]? Options { get; }
Property Value
string[]
Remarks
OriginSnapshot
The configuration object that specifies the snapshot to use as the origin of the data for the volume.
object? OriginSnapshot { get; }
Property Value
Remarks
ParentVolumeId
The ID of the volume to use as the parent volume of the volume that you are creating.
string? ParentVolumeId { get; }
Property Value
Remarks
ReadOnly
A Boolean value indicating whether the volume is read-only.
object? ReadOnly { get; }
Property Value
Remarks
RecordSizeKiB
Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB).
double? RecordSizeKiB { get; }
Property Value
Remarks
For file systems using the Intelligent-Tiering storage class, valid values are 128, 256, 512, 1024, 2048, or 4096 KiB, with a default of 1024 KiB. For all other file systems, valid values are 4, 8, 16, 32, 64, 128, 256, 512, or 1024 KiB, with a default of 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 .
StorageCapacityQuotaGiB
Sets the maximum storage size in gibibytes (GiB) for the volume.
double? StorageCapacityQuotaGiB { get; }
Property Value
Remarks
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 .
StorageCapacityReservationGiB
Specifies the amount of storage in gibibytes (GiB) to reserve from the parent volume.
double? StorageCapacityReservationGiB { get; }
Property Value
Remarks
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 .
UserAndGroupQuotas
Configures how much storage users and groups can use on the volume.
object? UserAndGroupQuotas { get; }