Class: Aws::FSx::Types::CreateOpenZFSVolumeConfiguration

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb

Overview

Note:

When making an API call, you may pass CreateOpenZFSVolumeConfiguration data as a hash:

{
  parent_volume_id: "VolumeId", # required
  storage_capacity_reservation_gi_b: 1,
  storage_capacity_quota_gi_b: 1,
  record_size_ki_b: 1,
  data_compression_type: "NONE", # accepts NONE, ZSTD, LZ4
  copy_tags_to_snapshots: false,
  origin_snapshot: {
    snapshot_arn: "ResourceARN", # required
    copy_strategy: "CLONE", # required, accepts CLONE, FULL_COPY
  },
  read_only: false,
  nfs_exports: [
    {
      client_configurations: [ # required
        {
          clients: "OpenZFSClients", # required
          options: ["OpenZFSNfsExportOption"], # required
        },
      ],
    },
  ],
  user_and_group_quotas: [
    {
      type: "USER", # required, accepts USER, GROUP
      id: 1, # required
      storage_capacity_quota_gi_b: 1, # required
    },
  ],
}

Specifies the configuration of the Amazon FSx for OpenZFS volume that you are creating.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#copy_tags_to_snapshotsBoolean

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.

Returns:

  • (Boolean)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#data_compression_typeString

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.

Returns:

  • (String)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#nfs_exportsArray<Types::OpenZFSNfsExport>

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

Returns:



2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#origin_snapshotTypes::CreateOpenZFSOriginSnapshotConfiguration

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



2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#parent_volume_idString

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

Returns:

  • (String)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#read_onlyBoolean

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

Returns:

  • (Boolean)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#record_size_ki_bInteger

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.

Returns:

  • (Integer)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#storage_capacity_quota_gi_bInteger

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.

Returns:

  • (Integer)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#storage_capacity_reservation_gi_bInteger

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.

Returns:

  • (Integer)


2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end

#user_and_group_quotasArray<Types::OpenZFSUserOrGroupQuota>

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

Returns:



2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
# File 'gems/aws-sdk-fsx/lib/aws-sdk-fsx/types.rb', line 2808

class CreateOpenZFSVolumeConfiguration < Struct.new(
  :parent_volume_id,
  :storage_capacity_reservation_gi_b,
  :storage_capacity_quota_gi_b,
  :record_size_ki_b,
  :data_compression_type,
  :copy_tags_to_snapshots,
  :origin_snapshot,
  :read_only,
  :nfs_exports,
  :user_and_group_quotas)
  SENSITIVE = []
  include Aws::Structure
end