CfnVolume

class aws_cdk.aws_fsx.CfnVolume(scope, id, *, name, backup_id=None, ontap_configuration=None, open_zfs_configuration=None, tags=None, volume_type=None)

Bases: CfnResource

Creates an FSx for ONTAP or Amazon FSx for OpenZFS storage volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-volume.html

CloudformationResource:

AWS::FSx::Volume

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

cfn_volume = fsx.CfnVolume(self, "MyCfnVolume",
    name="name",

    # the properties below are optional
    backup_id="backupId",
    ontap_configuration=fsx.CfnVolume.OntapConfigurationProperty(
        storage_virtual_machine_id="storageVirtualMachineId",

        # the properties below are optional
        aggregate_configuration=fsx.CfnVolume.AggregateConfigurationProperty(
            aggregates=["aggregates"],
            constituents_per_aggregate=123
        ),
        copy_tags_to_backups="copyTagsToBackups",
        junction_path="junctionPath",
        ontap_volume_type="ontapVolumeType",
        security_style="securityStyle",
        size_in_bytes="sizeInBytes",
        size_in_megabytes="sizeInMegabytes",
        snaplock_configuration=fsx.CfnVolume.SnaplockConfigurationProperty(
            snaplock_type="snaplockType",

            # the properties below are optional
            audit_log_volume="auditLogVolume",
            autocommit_period=fsx.CfnVolume.AutocommitPeriodProperty(
                type="type",

                # the properties below are optional
                value=123
            ),
            privileged_delete="privilegedDelete",
            retention_period=fsx.CfnVolume.SnaplockRetentionPeriodProperty(
                default_retention=fsx.CfnVolume.RetentionPeriodProperty(
                    type="type",

                    # the properties below are optional
                    value=123
                ),
                maximum_retention=fsx.CfnVolume.RetentionPeriodProperty(
                    type="type",

                    # the properties below are optional
                    value=123
                ),
                minimum_retention=fsx.CfnVolume.RetentionPeriodProperty(
                    type="type",

                    # the properties below are optional
                    value=123
                )
            ),
            volume_append_mode_enabled="volumeAppendModeEnabled"
        ),
        snapshot_policy="snapshotPolicy",
        storage_efficiency_enabled="storageEfficiencyEnabled",
        tiering_policy=fsx.CfnVolume.TieringPolicyProperty(
            cooling_period=123,
            name="name"
        ),
        volume_style="volumeStyle"
    ),
    open_zfs_configuration=fsx.CfnVolume.OpenZFSConfigurationProperty(
        parent_volume_id="parentVolumeId",

        # the properties below are optional
        copy_tags_to_snapshots=False,
        data_compression_type="dataCompressionType",
        nfs_exports=[fsx.CfnVolume.NfsExportsProperty(
            client_configurations=[fsx.CfnVolume.ClientConfigurationsProperty(
                clients="clients",
                options=["options"]
            )]
        )],
        options=["options"],
        origin_snapshot=fsx.CfnVolume.OriginSnapshotProperty(
            copy_strategy="copyStrategy",
            snapshot_arn="snapshotArn"
        ),
        read_only=False,
        record_size_ki_b=123,
        storage_capacity_quota_gi_b=123,
        storage_capacity_reservation_gi_b=123,
        user_and_group_quotas=[fsx.CfnVolume.UserAndGroupQuotasProperty(
            id=123,
            storage_capacity_quota_gi_b=123,
            type="type"
        )]
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    volume_type="volumeType"
)
Parameters:
  • scope (Construct) – Scope in which this resource is defined.

  • id (str) – Construct identifier for this resource (unique in its scope).

  • name (str) – The name of the volume.

  • backup_id (Optional[str]) – Specifies the ID of the volume backup to use to create a new volume.

  • ontap_configuration (Union[IResolvable, OntapConfigurationProperty, Dict[str, Any], None]) – The configuration of an Amazon FSx for NetApp ONTAP volume.

  • open_zfs_configuration (Union[IResolvable, OpenZFSConfigurationProperty, Dict[str, Any], None]) – The configuration of an Amazon FSx for OpenZFS volume.

  • tags (Optional[Sequence[Union[CfnTag, Dict[str, Any]]]]) – An array of key-value pairs to apply to this resource. For more information, see Tag .

  • volume_type (Optional[str]) – The type of the volume.

Methods

add_deletion_override(path)

Syntactic sugar for addOverride(path, undefined).

Parameters:

path (str) – The path of the value to delete.

Return type:

None

add_dependency(target)

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

Parameters:

target (CfnResource) –

Return type:

None

add_depends_on(target)

(deprecated) Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

Parameters:

target (CfnResource) –

Deprecated:

use addDependency

Stability:

deprecated

Return type:

None

add_metadata(key, value)

Add a value to the CloudFormation Resource Metadata.

Parameters:
  • key (str) –

  • value (Any) –

See:

Return type:

None

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

add_override(path, value)

Adds an override to the synthesized CloudFormation resource.

To add a property override, either use addPropertyOverride or prefix path with “Properties.” (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

To include a literal . in the property name, prefix with a \. In most programming languages you will need to write this as "\\." because the \ itself will need to be escaped.

For example:

cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")

would add the overrides Example:

"Properties": {
  "GlobalSecondaryIndexes": [
    {
      "Projection": {
        "NonKeyAttributes": [ "myattribute" ]
        ...
      }
      ...
    },
    {
      "ProjectionType": "INCLUDE"
      ...
    },
  ]
  ...
}

The value argument to addOverride will not be processed or translated in any way. Pass raw JSON values in here with the correct capitalization for CloudFormation. If you pass CDK classes or structs, they will be rendered with lowercased key names, and CloudFormation will reject the template.

Parameters:
  • path (str) –

    • The path of the property, you can use dot notation to override values in complex types. Any intermediate keys will be created as needed.

  • value (Any) –

    • The value. Could be primitive or complex.

Return type:

None

add_property_deletion_override(property_path)

Adds an override that deletes the value of a property from the resource definition.

Parameters:

property_path (str) – The path to the property.

Return type:

None

add_property_override(property_path, value)

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

Parameters:
  • property_path (str) – The path of the property.

  • value (Any) – The value.

Return type:

None

apply_removal_policy(policy=None, *, apply_to_update_replace_policy=None, default=None)

Sets the deletion policy of the resource based on the removal policy specified.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you’ve removed it from the CDK application or because you’ve made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN). In some cases, a snapshot can be taken of the resource prior to deletion (RemovalPolicy.SNAPSHOT). A list of resources that support this policy can be found in the following link:

Parameters:
  • policy (Optional[RemovalPolicy]) –

  • apply_to_update_replace_policy (Optional[bool]) – Apply the same deletion policy to the resource’s “UpdateReplacePolicy”. Default: true

  • default (Optional[RemovalPolicy]) – The default policy to apply in case the removal policy is not defined. Default: - Default value is resource specific. To determine the default value for a resource, please consult that specific resource’s documentation.

See:

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html#aws-attribute-deletionpolicy-options

Return type:

None

get_att(attribute_name, type_hint=None)

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

Parameters:
  • attribute_name (str) – The name of the attribute.

  • type_hint (Optional[ResolutionTypeHint]) –

Return type:

Reference

get_metadata(key)

Retrieve a value value from the CloudFormation Resource Metadata.

Parameters:

key (str) –

See:

Return type:

Any

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html

Note that this is a different set of metadata from CDK node metadata; this metadata ends up in the stack template under the resource, whereas CDK node metadata ends up in the Cloud Assembly.

inspect(inspector)

Examines the CloudFormation resource and discloses attributes.

Parameters:

inspector (TreeInspector) – tree inspector to collect and process attributes.

Return type:

None

obtain_dependencies()

Retrieves an array of resources this resource depends on.

This assembles dependencies on resources across stacks (including nested stacks) automatically.

Return type:

List[Union[Stack, CfnResource]]

obtain_resource_dependencies()

Get a shallow copy of dependencies between this resource and other resources in the same stack.

Return type:

List[CfnResource]

override_logical_id(new_logical_id)

Overrides the auto-generated logical ID with a specific ID.

Parameters:

new_logical_id (str) – The new logical ID to use for this stack element.

Return type:

None

remove_dependency(target)

Indicates that this resource no longer depends on another resource.

This can be used for resources across stacks (including nested stacks) and the dependency will automatically be removed from the relevant scope.

Parameters:

target (CfnResource) –

Return type:

None

replace_dependency(target, new_target)

Replaces one dependency with another.

Parameters:
Return type:

None

to_string()

Returns a string representation of this construct.

Return type:

str

Returns:

a string representation of this resource

Attributes

CFN_RESOURCE_TYPE_NAME = 'AWS::FSx::Volume'
attr_resource_arn

Returns the volume’s Amazon Resource Name (ARN).

Example: arn:aws:fsx:us-east-2:111122223333:volume/fs-0123456789abcdef9/fsvol-01234567891112223

CloudformationAttribute:

ResourceARN

attr_uuid

Returns the volume’s universally unique identifier (UUID).

Example: abcd0123-cd45-ef67-11aa-1111aaaa23bc

CloudformationAttribute:

UUID

attr_volume_id

Returns the volume’s ID.

Example: fsvol-0123456789abcdefa

CloudformationAttribute:

VolumeId

backup_id

Specifies the ID of the volume backup to use to create a new volume.

cfn_options

Options for this resource, such as condition, update policy etc.

cfn_resource_type

AWS resource type.

creation_stack

return:

the stack trace of the point where this Resource was created from, sourced from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most node +internal+ entries filtered.

logical_id

The logical ID for this CloudFormation stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use overrideLogicalId(newLogicalId).

Returns:

the logical ID as a stringified token. This value will only get resolved during synthesis.

name

The name of the volume.

node

The tree node.

ontap_configuration

The configuration of an Amazon FSx for NetApp ONTAP volume.

open_zfs_configuration

The configuration of an Amazon FSx for OpenZFS volume.

ref

Return a string that will be resolved to a CloudFormation { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).

stack

The stack in which this element is defined.

CfnElements must be defined within a stack scope (directly or indirectly).

tags

Tag Manager which manages the tags for this resource.

tags_raw

An array of key-value pairs to apply to this resource.

volume_type

The type of the volume.

Static Methods

classmethod is_cfn_element(x)

Returns true if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of instanceof to allow stack elements from different versions of this library to be included in the same stack.

Parameters:

x (Any) –

Return type:

bool

Returns:

The construct as a stack element or undefined if it is not a stack element.

classmethod is_cfn_resource(x)

Check whether the given object is a CfnResource.

Parameters:

x (Any) –

Return type:

bool

classmethod is_construct(x)

Checks if x is a construct.

Use this method instead of instanceof to properly detect Construct instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the constructs library on disk are seen as independent, completely different libraries. As a consequence, the class Construct in each copy of the constructs library is seen as a different class, and an instance of one class will not test as instanceof the other class. npm install will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the constructs library can be accidentally installed, and instanceof will behave unpredictably. It is safest to avoid using instanceof, and using this type-testing method instead.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Construct.

AggregateConfigurationProperty

class CfnVolume.AggregateConfigurationProperty(*, aggregates=None, constituents_per_aggregate=None)

Bases: object

Use to specify configuration options for a volume’s storage aggregate or aggregates.

Parameters:
  • aggregates (Optional[Sequence[str]]) – The list of aggregates that this volume resides on. Aggregates are storage pools which make up your primary storage tier. Each high-availability (HA) pair has one aggregate. The names of the aggregates map to the names of the aggregates in the ONTAP CLI and REST API. For FlexVols, there will always be a single entry. Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions: - The strings in the value of Aggregates are not are not formatted as aggrX , where X is a number between 1 and 12. - The value of Aggregates contains aggregates that are not present. - One or more of the aggregates supplied are too close to the volume limit to support adding more volumes.

  • constituents_per_aggregate (Union[int, float, None]) – Used to explicitly set the number of constituents within the FlexGroup per storage aggregate. This field is optional when creating a FlexGroup volume. If unspecified, the default value will be 8. This field cannot be provided when creating a FlexVol volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-aggregateconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

aggregate_configuration_property = fsx.CfnVolume.AggregateConfigurationProperty(
    aggregates=["aggregates"],
    constituents_per_aggregate=123
)

Attributes

aggregates

The list of aggregates that this volume resides on.

Aggregates are storage pools which make up your primary storage tier. Each high-availability (HA) pair has one aggregate. The names of the aggregates map to the names of the aggregates in the ONTAP CLI and REST API. For FlexVols, there will always be a single entry.

Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions:

  • The strings in the value of Aggregates are not are not formatted as aggrX , where X is a number between 1 and 12.

  • The value of Aggregates contains aggregates that are not present.

  • One or more of the aggregates supplied are too close to the volume limit to support adding more volumes.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-aggregateconfiguration.html#cfn-fsx-volume-aggregateconfiguration-aggregates

constituents_per_aggregate

Used to explicitly set the number of constituents within the FlexGroup per storage aggregate.

This field is optional when creating a FlexGroup volume. If unspecified, the default value will be 8. This field cannot be provided when creating a FlexVol volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-aggregateconfiguration.html#cfn-fsx-volume-aggregateconfiguration-constituentsperaggregate

AutocommitPeriodProperty

class CfnVolume.AutocommitPeriodProperty(*, type, value=None)

Bases: object

Sets the autocommit period of files in an FSx for ONTAP SnapLock volume, which determines how long the files must remain unmodified before they’re automatically transitioned to the write once, read many (WORM) state.

For more information, see Autocommit .

Parameters:
  • type (str) – Defines the type of time for the autocommit period of a file in an FSx for ONTAP SnapLock volume. Setting this value to NONE disables autocommit. The default value is NONE .

  • value (Union[int, float, None]) – Defines the amount of time for the autocommit period of a file in an FSx for ONTAP SnapLock volume. The following ranges are valid: - Minutes : 5 - 65,535 - Hours : 1 - 65,535 - Days : 1 - 3,650 - Months : 1 - 120 - Years : 1 - 10

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-autocommitperiod.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

autocommit_period_property = fsx.CfnVolume.AutocommitPeriodProperty(
    type="type",

    # the properties below are optional
    value=123
)

Attributes

type

Defines the type of time for the autocommit period of a file in an FSx for ONTAP SnapLock volume.

Setting this value to NONE disables autocommit. The default value is NONE .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-autocommitperiod.html#cfn-fsx-volume-autocommitperiod-type

value

Defines the amount of time for the autocommit period of a file in an FSx for ONTAP SnapLock volume.

The following ranges are valid:

  • Minutes : 5 - 65,535

  • Hours : 1 - 65,535

  • Days : 1 - 3,650

  • Months : 1 - 120

  • Years : 1 - 10

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-autocommitperiod.html#cfn-fsx-volume-autocommitperiod-value

ClientConfigurationsProperty

class CfnVolume.ClientConfigurationsProperty(*, clients, options)

Bases: object

Specifies who can mount an OpenZFS file system and the options available while mounting the file system.

Parameters:
  • clients (str) – A value that specifies who can mount the file system. You can provide a wildcard character ( * ), an IP address ( 0.0.0.0 ), or a CIDR address ( 192.0.2.0/24 ). By default, Amazon FSx uses the wildcard character when specifying the client.

  • options (Sequence[str]) – The options to use when mounting the file system. For a list of options that you can use with Network File System (NFS), see the exports(5) - Linux man page . When choosing your options, consider the following: - crossmnt is used by default. If you don’t specify crossmnt when changing the client configuration, you won’t be able to see or access snapshots in your file system’s snapshot directory. - sync is used by default. If you instead specify async , the system acknowledges writes before writing to disk. If the system crashes before the writes are finished, you lose the unwritten data.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-clientconfigurations.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

client_configurations_property = fsx.CfnVolume.ClientConfigurationsProperty(
    clients="clients",
    options=["options"]
)

Attributes

clients

A value that specifies who can mount the file system.

You can provide a wildcard character ( * ), an IP address ( 0.0.0.0 ), or a CIDR address ( 192.0.2.0/24 ). By default, Amazon FSx uses the wildcard character when specifying the client.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-clientconfigurations.html#cfn-fsx-volume-clientconfigurations-clients

options

The options to use when mounting the file system.

For a list of options that you can use with Network File System (NFS), see the exports(5) - Linux man page . When choosing your options, consider the following:

  • crossmnt is used by default. If you don’t specify crossmnt when changing the client configuration, you won’t be able to see or access snapshots in your file system’s snapshot directory.

  • sync is used by default. If you instead specify async , the system acknowledges writes before writing to disk. If the system crashes before the writes are finished, you lose the unwritten data.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-clientconfigurations.html#cfn-fsx-volume-clientconfigurations-options

NfsExportsProperty

class CfnVolume.NfsExportsProperty(*, client_configurations)

Bases: object

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

Parameters:

client_configurations (Union[IResolvable, Sequence[Union[IResolvable, ClientConfigurationsProperty, Dict[str, Any]]]]) – A list of configuration objects that contain the client and options for mounting the OpenZFS file system.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-nfsexports.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

nfs_exports_property = fsx.CfnVolume.NfsExportsProperty(
    client_configurations=[fsx.CfnVolume.ClientConfigurationsProperty(
        clients="clients",
        options=["options"]
    )]
)

Attributes

client_configurations

A list of configuration objects that contain the client and options for mounting the OpenZFS file system.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-nfsexports.html#cfn-fsx-volume-nfsexports-clientconfigurations

OntapConfigurationProperty

class CfnVolume.OntapConfigurationProperty(*, storage_virtual_machine_id, aggregate_configuration=None, copy_tags_to_backups=None, junction_path=None, ontap_volume_type=None, security_style=None, size_in_bytes=None, size_in_megabytes=None, snaplock_configuration=None, snapshot_policy=None, storage_efficiency_enabled=None, tiering_policy=None, volume_style=None)

Bases: object

Specifies the configuration of the ONTAP volume that you are creating.

Parameters:
  • storage_virtual_machine_id (str) – Specifies the ONTAP SVM in which to create the volume.

  • aggregate_configuration (Union[IResolvable, AggregateConfigurationProperty, Dict[str, Any], None]) – Used to specify the configuration options for an FSx for ONTAP volume’s storage aggregate or aggregates.

  • copy_tags_to_backups (Optional[str]) – A boolean flag indicating whether tags for the volume should be copied to backups. This value defaults to false. If it’s set to true, all tags for the volume are copied to all automatic and user-initiated backups 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 backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the volume, regardless of this value.

  • junction_path (Optional[str]) – Specifies the location in the SVM’s namespace where the volume is mounted. This parameter is required. The JunctionPath must have a leading forward slash, such as /vol3 .

  • ontap_volume_type (Optional[str]) – Specifies the type of volume you are creating. Valid values are the following:. - RW specifies a read/write volume. RW is the default. - DP specifies a data-protection volume. A DP volume is read-only and can be used as the destination of a NetApp SnapMirror relationship. For more information, see Volume types in the Amazon FSx for NetApp ONTAP User Guide.

  • security_style (Optional[str]) – Specifies the security style for the volume. If a volume’s security style is not specified, it is automatically set to the root volume’s security style. The security style determines the type of permissions that FSx for ONTAP uses to control data access. Specify one of the following values: - UNIX if the file system is managed by a UNIX administrator, the majority of users are NFS clients, and an application accessing the data uses a UNIX user as the service account. - NTFS if the file system is managed by a Windows administrator, the majority of users are SMB clients, and an application accessing the data uses a Windows user as the service account. - MIXED This is an advanced setting. For more information, see the topic What the security styles and their effects are in the NetApp Documentation Center. For more information, see Volume security style in the FSx for ONTAP User Guide.

  • size_in_bytes (Optional[str]) – Specifies the configured size of the volume, in bytes.

  • size_in_megabytes (Optional[str]) – Use SizeInBytes instead. Specifies the size of the volume, in megabytes (MB), that you are creating.

  • snaplock_configuration (Union[IResolvable, SnaplockConfigurationProperty, Dict[str, Any], None]) – The SnapLock configuration object for an FSx for ONTAP SnapLock volume.

  • snapshot_policy (Optional[str]) – Specifies the snapshot policy for the volume. There are three built-in snapshot policies:. - default : This is the default policy. A maximum of six hourly snapshots taken five minutes past the hour. A maximum of two daily snapshots taken Monday through Saturday at 10 minutes after midnight. A maximum of two weekly snapshots taken every Sunday at 15 minutes after midnight. - default-1weekly : This policy is the same as the default policy except that it only retains one snapshot from the weekly schedule. - none : This policy does not take any snapshots. This policy can be assigned to volumes to prevent automatic snapshots from being taken. You can also provide the name of a custom policy that you created with the ONTAP CLI or REST API. For more information, see Snapshot policies in the Amazon FSx for NetApp ONTAP User Guide.

  • storage_efficiency_enabled (Optional[str]) – Set to true to enable deduplication, compression, and compaction storage efficiency features on the volume, or set to false to disable them. StorageEfficiencyEnabled is required when creating a RW volume ( OntapVolumeType set to RW ).

  • tiering_policy (Union[IResolvable, TieringPolicyProperty, Dict[str, Any], None]) – Describes the data tiering policy for an ONTAP volume. When enabled, Amazon FSx for ONTAP’s intelligent tiering automatically transitions a volume’s data between the file system’s primary storage and capacity pool storage based on your access patterns. Valid tiering policies are the following: - SNAPSHOT_ONLY - (Default value) moves cold snapshots to the capacity pool storage tier. - AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns. - ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier. - NONE - keeps a volume’s data in the primary storage tier, preventing it from being moved to the capacity pool tier.

  • volume_style (Optional[str]) – Use to specify the style of an ONTAP volume. FSx for ONTAP offers two styles of volumes that you can use for different purposes, FlexVol and FlexGroup volumes. For more information, see Volume styles in the Amazon FSx for NetApp ONTAP User Guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

ontap_configuration_property = fsx.CfnVolume.OntapConfigurationProperty(
    storage_virtual_machine_id="storageVirtualMachineId",

    # the properties below are optional
    aggregate_configuration=fsx.CfnVolume.AggregateConfigurationProperty(
        aggregates=["aggregates"],
        constituents_per_aggregate=123
    ),
    copy_tags_to_backups="copyTagsToBackups",
    junction_path="junctionPath",
    ontap_volume_type="ontapVolumeType",
    security_style="securityStyle",
    size_in_bytes="sizeInBytes",
    size_in_megabytes="sizeInMegabytes",
    snaplock_configuration=fsx.CfnVolume.SnaplockConfigurationProperty(
        snaplock_type="snaplockType",

        # the properties below are optional
        audit_log_volume="auditLogVolume",
        autocommit_period=fsx.CfnVolume.AutocommitPeriodProperty(
            type="type",

            # the properties below are optional
            value=123
        ),
        privileged_delete="privilegedDelete",
        retention_period=fsx.CfnVolume.SnaplockRetentionPeriodProperty(
            default_retention=fsx.CfnVolume.RetentionPeriodProperty(
                type="type",

                # the properties below are optional
                value=123
            ),
            maximum_retention=fsx.CfnVolume.RetentionPeriodProperty(
                type="type",

                # the properties below are optional
                value=123
            ),
            minimum_retention=fsx.CfnVolume.RetentionPeriodProperty(
                type="type",

                # the properties below are optional
                value=123
            )
        ),
        volume_append_mode_enabled="volumeAppendModeEnabled"
    ),
    snapshot_policy="snapshotPolicy",
    storage_efficiency_enabled="storageEfficiencyEnabled",
    tiering_policy=fsx.CfnVolume.TieringPolicyProperty(
        cooling_period=123,
        name="name"
    ),
    volume_style="volumeStyle"
)

Attributes

aggregate_configuration

Used to specify the configuration options for an FSx for ONTAP volume’s storage aggregate or aggregates.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-aggregateconfiguration

copy_tags_to_backups

A boolean flag indicating whether tags for the volume should be copied to backups.

This value defaults to false. If it’s set to true, all tags for the volume are copied to all automatic and user-initiated backups 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 backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the volume, regardless of this value.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-copytagstobackups

junction_path

Specifies the location in the SVM’s namespace where the volume is mounted.

This parameter is required. The JunctionPath must have a leading forward slash, such as /vol3 .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-junctionpath

ontap_volume_type

.

  • RW specifies a read/write volume. RW is the default.

  • DP specifies a data-protection volume. A DP volume is read-only and can be used as the destination of a NetApp SnapMirror relationship.

For more information, see Volume types in the Amazon FSx for NetApp ONTAP User Guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-ontapvolumetype

Type:

Specifies the type of volume you are creating. Valid values are the following

security_style

Specifies the security style for the volume.

If a volume’s security style is not specified, it is automatically set to the root volume’s security style. The security style determines the type of permissions that FSx for ONTAP uses to control data access. Specify one of the following values:

  • UNIX if the file system is managed by a UNIX administrator, the majority of users are NFS clients, and an application accessing the data uses a UNIX user as the service account.

  • NTFS if the file system is managed by a Windows administrator, the majority of users are SMB clients, and an application accessing the data uses a Windows user as the service account.

  • MIXED This is an advanced setting. For more information, see the topic What the security styles and their effects are in the NetApp Documentation Center.

For more information, see Volume security style in the FSx for ONTAP User Guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-securitystyle

size_in_bytes

Specifies the configured size of the volume, in bytes.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-sizeinbytes

size_in_megabytes

Use SizeInBytes instead.

Specifies the size of the volume, in megabytes (MB), that you are creating.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-sizeinmegabytes

snaplock_configuration

The SnapLock configuration object for an FSx for ONTAP SnapLock volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-snaplockconfiguration

snapshot_policy

.

  • default : This is the default policy. A maximum of six hourly snapshots taken five minutes past the hour. A maximum of two daily snapshots taken Monday through Saturday at 10 minutes after midnight. A maximum of two weekly snapshots taken every Sunday at 15 minutes after midnight.

  • default-1weekly : This policy is the same as the default policy except that it only retains one snapshot from the weekly schedule.

  • none : This policy does not take any snapshots. This policy can be assigned to volumes to prevent automatic snapshots from being taken.

You can also provide the name of a custom policy that you created with the ONTAP CLI or REST API.

For more information, see Snapshot policies in the Amazon FSx for NetApp ONTAP User Guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-snapshotpolicy

Type:

Specifies the snapshot policy for the volume. There are three built-in snapshot policies

storage_efficiency_enabled

Set to true to enable deduplication, compression, and compaction storage efficiency features on the volume, or set to false to disable them.

StorageEfficiencyEnabled is required when creating a RW volume ( OntapVolumeType set to RW ).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-storageefficiencyenabled

storage_virtual_machine_id

Specifies the ONTAP SVM in which to create the volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-storagevirtualmachineid

tiering_policy

Describes the data tiering policy for an ONTAP volume.

When enabled, Amazon FSx for ONTAP’s intelligent tiering automatically transitions a volume’s data between the file system’s primary storage and capacity pool storage based on your access patterns.

Valid tiering policies are the following:

  • SNAPSHOT_ONLY - (Default value) moves cold snapshots to the capacity pool storage tier.

  • AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns.

  • ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier.

  • NONE - keeps a volume’s data in the primary storage tier, preventing it from being moved to the capacity pool tier.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-tieringpolicy

volume_style

Use to specify the style of an ONTAP volume.

FSx for ONTAP offers two styles of volumes that you can use for different purposes, FlexVol and FlexGroup volumes. For more information, see Volume styles in the Amazon FSx for NetApp ONTAP User Guide.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-ontapconfiguration.html#cfn-fsx-volume-ontapconfiguration-volumestyle

OpenZFSConfigurationProperty

class CfnVolume.OpenZFSConfigurationProperty(*, parent_volume_id, copy_tags_to_snapshots=None, data_compression_type=None, nfs_exports=None, options=None, origin_snapshot=None, read_only=None, record_size_kib=None, storage_capacity_quota_gib=None, storage_capacity_reservation_gib=None, user_and_group_quotas=None)

Bases: object

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

Parameters:
  • parent_volume_id (str) – The ID of the volume to use as the parent volume of the volume that you are creating.

  • copy_tags_to_snapshots (Union[bool, IResolvable, None]) – 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.

  • data_compression_type (Optional[str]) – 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 (Union[IResolvable, Sequence[Union[IResolvable, NfsExportsProperty, Dict[str, Any]]], None]) – The configuration object for mounting a Network File System (NFS) file system.

  • options (Optional[Sequence[str]]) – To delete the volume’s child volumes, snapshots, and clones, use the string DELETE_CHILD_VOLUMES_AND_SNAPSHOTS .

  • origin_snapshot (Union[IResolvable, OriginSnapshotProperty, Dict[str, Any], None]) – The configuration object that specifies the snapshot to use as the origin of the data for the volume.

  • read_only (Union[bool, IResolvable, None]) – A Boolean value indicating whether the volume is read-only.

  • record_size_kib (Union[int, float, None]) – Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB). 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 .

  • storage_capacity_quota_gib (Union[int, float, None]) – 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 .

  • storage_capacity_reservation_gib (Union[int, float, None]) –

    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 .

  • user_and_group_quotas (Union[IResolvable, Sequence[Union[IResolvable, UserAndGroupQuotasProperty, Dict[str, Any]]], None]) – Configures how much storage users and groups can use on the volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

open_zFSConfiguration_property = fsx.CfnVolume.OpenZFSConfigurationProperty(
    parent_volume_id="parentVolumeId",

    # the properties below are optional
    copy_tags_to_snapshots=False,
    data_compression_type="dataCompressionType",
    nfs_exports=[fsx.CfnVolume.NfsExportsProperty(
        client_configurations=[fsx.CfnVolume.ClientConfigurationsProperty(
            clients="clients",
            options=["options"]
        )]
    )],
    options=["options"],
    origin_snapshot=fsx.CfnVolume.OriginSnapshotProperty(
        copy_strategy="copyStrategy",
        snapshot_arn="snapshotArn"
    ),
    read_only=False,
    record_size_ki_b=123,
    storage_capacity_quota_gi_b=123,
    storage_capacity_reservation_gi_b=123,
    user_and_group_quotas=[fsx.CfnVolume.UserAndGroupQuotasProperty(
        id=123,
        storage_capacity_quota_gi_b=123,
        type="type"
    )]
)

Attributes

copy_tags_to_snapshots

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-copytagstosnapshots

data_compression_type

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-datacompressiontype

nfs_exports

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-nfsexports

options

To delete the volume’s child volumes, snapshots, and clones, use the string DELETE_CHILD_VOLUMES_AND_SNAPSHOTS .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-options

origin_snapshot

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-originsnapshot

parent_volume_id

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-parentvolumeid

read_only

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-readonly

record_size_kib

Specifies the suggested block size for a volume in a ZFS dataset, in kibibytes (KiB).

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 .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-recordsizekib

storage_capacity_quota_gib

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 .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-storagecapacityquotagib

storage_capacity_reservation_gib

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 .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-storagecapacityreservationgib

user_and_group_quotas

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

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-openzfsconfiguration.html#cfn-fsx-volume-openzfsconfiguration-userandgroupquotas

OriginSnapshotProperty

class CfnVolume.OriginSnapshotProperty(*, copy_strategy, snapshot_arn)

Bases: object

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

Parameters:
  • copy_strategy (str) – Specifies the strategy used when copying data from the snapshot to the new volume. - CLONE - The new volume references the data in the origin snapshot. Cloning a snapshot is faster than copying data from the snapshot to a new volume and doesn’t consume disk throughput. However, the origin snapshot can’t be deleted if there is a volume using its copied data. - FULL_COPY - Copies all data from the snapshot to the new volume. Specify this option to create the volume from a snapshot on another FSx for OpenZFS file system. .. epigraph:: The INCREMENTAL_COPY option is only for updating an existing volume by using a snapshot from another FSx for OpenZFS file system. For more information, see CopySnapshotAndUpdateVolume .

  • snapshot_arn (str) – Specifies the snapshot to use when creating an OpenZFS volume from a snapshot.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-originsnapshot.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

origin_snapshot_property = fsx.CfnVolume.OriginSnapshotProperty(
    copy_strategy="copyStrategy",
    snapshot_arn="snapshotArn"
)

Attributes

copy_strategy

Specifies the strategy used when copying data from the snapshot to the new volume.

  • CLONE - The new volume references the data in the origin snapshot. Cloning a snapshot is faster than copying data from the snapshot to a new volume and doesn’t consume disk throughput. However, the origin snapshot can’t be deleted if there is a volume using its copied data.

  • FULL_COPY - Copies all data from the snapshot to the new volume.

Specify this option to create the volume from a snapshot on another FSx for OpenZFS file system. .. epigraph:

The ``INCREMENTAL_COPY`` option is only for updating an existing volume by using a snapshot from another FSx for OpenZFS file system. For more information, see `CopySnapshotAndUpdateVolume <https://docs.aws.amazon.com/fsx/latest/APIReference/API_CopySnapshotAndUpdateVolume.html>`_ .
See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-originsnapshot.html#cfn-fsx-volume-originsnapshot-copystrategy

snapshot_arn

Specifies the snapshot to use when creating an OpenZFS volume from a snapshot.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-originsnapshot.html#cfn-fsx-volume-originsnapshot-snapshotarn

RetentionPeriodProperty

class CfnVolume.RetentionPeriodProperty(*, type, value=None)

Bases: object

Specifies the retention period of an FSx for ONTAP SnapLock volume.

After it is set, it can’t be changed. Files can’t be deleted or modified during the retention period.

For more information, see Working with the retention period in SnapLock .

Parameters:
  • type (str) – Defines the type of time for the retention period of an FSx for ONTAP SnapLock volume. Set it to one of the valid types. If you set it to INFINITE , the files are retained forever. If you set it to UNSPECIFIED , the files are retained until you set an explicit retention period.

  • value (Union[int, float, None]) – Defines the amount of time for the retention period of an FSx for ONTAP SnapLock volume. You can’t set a value for INFINITE or UNSPECIFIED . For all other options, the following ranges are valid: - Seconds : 0 - 65,535 - Minutes : 0 - 65,535 - Hours : 0 - 24 - Days : 0 - 365 - Months : 0 - 12 - Years : 0 - 100

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-retentionperiod.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

retention_period_property = fsx.CfnVolume.RetentionPeriodProperty(
    type="type",

    # the properties below are optional
    value=123
)

Attributes

type

Defines the type of time for the retention period of an FSx for ONTAP SnapLock volume.

Set it to one of the valid types. If you set it to INFINITE , the files are retained forever. If you set it to UNSPECIFIED , the files are retained until you set an explicit retention period.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-retentionperiod.html#cfn-fsx-volume-retentionperiod-type

value

Defines the amount of time for the retention period of an FSx for ONTAP SnapLock volume.

You can’t set a value for INFINITE or UNSPECIFIED . For all other options, the following ranges are valid:

  • Seconds : 0 - 65,535

  • Minutes : 0 - 65,535

  • Hours : 0 - 24

  • Days : 0 - 365

  • Months : 0 - 12

  • Years : 0 - 100

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-retentionperiod.html#cfn-fsx-volume-retentionperiod-value

SnaplockConfigurationProperty

class CfnVolume.SnaplockConfigurationProperty(*, snaplock_type, audit_log_volume=None, autocommit_period=None, privileged_delete=None, retention_period=None, volume_append_mode_enabled=None)

Bases: object

Specifies the SnapLock configuration for an FSx for ONTAP SnapLock volume.

Parameters:
  • snaplock_type (str) – Specifies the retention mode of an FSx for ONTAP SnapLock volume. After it is set, it can’t be changed. You can choose one of the following retention modes: - COMPLIANCE : Files transitioned to write once, read many (WORM) on a Compliance volume can’t be deleted until their retention periods expire. This retention mode is used to address government or industry-specific mandates or to protect against ransomware attacks. For more information, see SnapLock Compliance . - ENTERPRISE : Files transitioned to WORM on an Enterprise volume can be deleted by authorized users before their retention periods expire using privileged delete. This retention mode is used to advance an organization’s data integrity and internal compliance or to test retention settings before using SnapLock Compliance. For more information, see SnapLock Enterprise .

  • audit_log_volume (Optional[str]) – Enables or disables the audit log volume for an FSx for ONTAP SnapLock volume. The default value is false . If you set AuditLogVolume to true , the SnapLock volume is created as an audit log volume. The minimum retention period for an audit log volume is six months. For more information, see SnapLock audit log volumes .

  • autocommit_period (Union[IResolvable, AutocommitPeriodProperty, Dict[str, Any], None]) – The configuration object for setting the autocommit period of files in an FSx for ONTAP SnapLock volume.

  • privileged_delete (Optional[str]) – Enables, disables, or permanently disables privileged delete on an FSx for ONTAP SnapLock Enterprise volume. Enabling privileged delete allows SnapLock administrators to delete write once, read many (WORM) files even if they have active retention periods. PERMANENTLY_DISABLED is a terminal state. If privileged delete is permanently disabled on a SnapLock volume, you can’t re-enable it. The default value is DISABLED . For more information, see Privileged delete .

  • retention_period (Union[IResolvable, SnaplockRetentionPeriodProperty, Dict[str, Any], None]) – Specifies the retention period of an FSx for ONTAP SnapLock volume.

  • volume_append_mode_enabled (Optional[str]) – Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume. Volume-append mode allows you to create WORM-appendable files and write data to them incrementally. The default value is false . For more information, see Volume-append mode .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

snaplock_configuration_property = fsx.CfnVolume.SnaplockConfigurationProperty(
    snaplock_type="snaplockType",

    # the properties below are optional
    audit_log_volume="auditLogVolume",
    autocommit_period=fsx.CfnVolume.AutocommitPeriodProperty(
        type="type",

        # the properties below are optional
        value=123
    ),
    privileged_delete="privilegedDelete",
    retention_period=fsx.CfnVolume.SnaplockRetentionPeriodProperty(
        default_retention=fsx.CfnVolume.RetentionPeriodProperty(
            type="type",

            # the properties below are optional
            value=123
        ),
        maximum_retention=fsx.CfnVolume.RetentionPeriodProperty(
            type="type",

            # the properties below are optional
            value=123
        ),
        minimum_retention=fsx.CfnVolume.RetentionPeriodProperty(
            type="type",

            # the properties below are optional
            value=123
        )
    ),
    volume_append_mode_enabled="volumeAppendModeEnabled"
)

Attributes

audit_log_volume

Enables or disables the audit log volume for an FSx for ONTAP SnapLock volume.

The default value is false . If you set AuditLogVolume to true , the SnapLock volume is created as an audit log volume. The minimum retention period for an audit log volume is six months.

For more information, see SnapLock audit log volumes .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html#cfn-fsx-volume-snaplockconfiguration-auditlogvolume

autocommit_period

The configuration object for setting the autocommit period of files in an FSx for ONTAP SnapLock volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html#cfn-fsx-volume-snaplockconfiguration-autocommitperiod

privileged_delete

Enables, disables, or permanently disables privileged delete on an FSx for ONTAP SnapLock Enterprise volume.

Enabling privileged delete allows SnapLock administrators to delete write once, read many (WORM) files even if they have active retention periods. PERMANENTLY_DISABLED is a terminal state. If privileged delete is permanently disabled on a SnapLock volume, you can’t re-enable it. The default value is DISABLED .

For more information, see Privileged delete .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html#cfn-fsx-volume-snaplockconfiguration-privilegeddelete

retention_period

Specifies the retention period of an FSx for ONTAP SnapLock volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html#cfn-fsx-volume-snaplockconfiguration-retentionperiod

snaplock_type

Specifies the retention mode of an FSx for ONTAP SnapLock volume.

After it is set, it can’t be changed. You can choose one of the following retention modes:

  • COMPLIANCE : Files transitioned to write once, read many (WORM) on a Compliance volume can’t be deleted until their retention periods expire. This retention mode is used to address government or industry-specific mandates or to protect against ransomware attacks. For more information, see SnapLock Compliance .

  • ENTERPRISE : Files transitioned to WORM on an Enterprise volume can be deleted by authorized users before their retention periods expire using privileged delete. This retention mode is used to advance an organization’s data integrity and internal compliance or to test retention settings before using SnapLock Compliance. For more information, see SnapLock Enterprise .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html#cfn-fsx-volume-snaplockconfiguration-snaplocktype

volume_append_mode_enabled

Enables or disables volume-append mode on an FSx for ONTAP SnapLock volume.

Volume-append mode allows you to create WORM-appendable files and write data to them incrementally. The default value is false .

For more information, see Volume-append mode .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockconfiguration.html#cfn-fsx-volume-snaplockconfiguration-volumeappendmodeenabled

SnaplockRetentionPeriodProperty

class CfnVolume.SnaplockRetentionPeriodProperty(*, default_retention, maximum_retention, minimum_retention)

Bases: object

The configuration to set the retention period of an FSx for ONTAP SnapLock volume.

The retention period includes default, maximum, and minimum settings. For more information, see Working with the retention period in SnapLock .

Parameters:
  • default_retention (Union[IResolvable, RetentionPeriodProperty, Dict[str, Any]]) – The retention period assigned to a write once, read many (WORM) file by default if an explicit retention period is not set for an FSx for ONTAP SnapLock volume. The default retention period must be greater than or equal to the minimum retention period and less than or equal to the maximum retention period.

  • maximum_retention (Union[IResolvable, RetentionPeriodProperty, Dict[str, Any]]) – The longest retention period that can be assigned to a WORM file on an FSx for ONTAP SnapLock volume.

  • minimum_retention (Union[IResolvable, RetentionPeriodProperty, Dict[str, Any]]) – The shortest retention period that can be assigned to a WORM file on an FSx for ONTAP SnapLock volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockretentionperiod.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

snaplock_retention_period_property = fsx.CfnVolume.SnaplockRetentionPeriodProperty(
    default_retention=fsx.CfnVolume.RetentionPeriodProperty(
        type="type",

        # the properties below are optional
        value=123
    ),
    maximum_retention=fsx.CfnVolume.RetentionPeriodProperty(
        type="type",

        # the properties below are optional
        value=123
    ),
    minimum_retention=fsx.CfnVolume.RetentionPeriodProperty(
        type="type",

        # the properties below are optional
        value=123
    )
)

Attributes

default_retention

The retention period assigned to a write once, read many (WORM) file by default if an explicit retention period is not set for an FSx for ONTAP SnapLock volume.

The default retention period must be greater than or equal to the minimum retention period and less than or equal to the maximum retention period.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockretentionperiod.html#cfn-fsx-volume-snaplockretentionperiod-defaultretention

maximum_retention

The longest retention period that can be assigned to a WORM file on an FSx for ONTAP SnapLock volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockretentionperiod.html#cfn-fsx-volume-snaplockretentionperiod-maximumretention

minimum_retention

The shortest retention period that can be assigned to a WORM file on an FSx for ONTAP SnapLock volume.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-snaplockretentionperiod.html#cfn-fsx-volume-snaplockretentionperiod-minimumretention

TieringPolicyProperty

class CfnVolume.TieringPolicyProperty(*, cooling_period=None, name=None)

Bases: object

Describes the data tiering policy for an ONTAP volume.

When enabled, Amazon FSx for ONTAP’s intelligent tiering automatically transitions a volume’s data between the file system’s primary storage and capacity pool storage based on your access patterns.

Valid tiering policies are the following:

  • SNAPSHOT_ONLY - (Default value) moves cold snapshots to the capacity pool storage tier.

  • AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns.

  • ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier.

  • NONE - keeps a volume’s data in the primary storage tier, preventing it from being moved to the capacity pool tier.

Parameters:
  • cooling_period (Union[int, float, None]) – Specifies the number of days that user data in a volume must remain inactive before it is considered “cold” and moved to the capacity pool. Used with the AUTO and SNAPSHOT_ONLY tiering policies. Enter a whole number between 2 and 183. Default values are 31 days for AUTO and 2 days for SNAPSHOT_ONLY .

  • name (Optional[str]) – Specifies the tiering policy used to transition data. Default value is SNAPSHOT_ONLY . - SNAPSHOT_ONLY - moves cold snapshots to the capacity pool storage tier. - AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns. - ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier. - NONE - keeps a volume’s data in the primary storage tier, preventing it from being moved to the capacity pool tier.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-tieringpolicy.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

tiering_policy_property = fsx.CfnVolume.TieringPolicyProperty(
    cooling_period=123,
    name="name"
)

Attributes

cooling_period

Specifies the number of days that user data in a volume must remain inactive before it is considered “cold” and moved to the capacity pool.

Used with the AUTO and SNAPSHOT_ONLY tiering policies. Enter a whole number between 2 and 183. Default values are 31 days for AUTO and 2 days for SNAPSHOT_ONLY .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-tieringpolicy.html#cfn-fsx-volume-tieringpolicy-coolingperiod

name

Specifies the tiering policy used to transition data. Default value is SNAPSHOT_ONLY .

  • SNAPSHOT_ONLY - moves cold snapshots to the capacity pool storage tier.

  • AUTO - moves cold user data and snapshots to the capacity pool storage tier based on your access patterns.

  • ALL - moves all user data blocks in both the active file system and Snapshot copies to the storage pool tier.

  • NONE - keeps a volume’s data in the primary storage tier, preventing it from being moved to the capacity pool tier.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-tieringpolicy.html#cfn-fsx-volume-tieringpolicy-name

UserAndGroupQuotasProperty

class CfnVolume.UserAndGroupQuotasProperty(*, id, storage_capacity_quota_gib, type)

Bases: object

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

Parameters:
  • id (Union[int, float]) – The ID of the user or group that the quota applies to.

  • storage_capacity_quota_gib (Union[int, float]) – The user or group’s storage quota, in gibibytes (GiB).

  • type (str) – Specifies whether the quota applies to a user or group.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-userandgroupquotas.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk import aws_fsx as fsx

user_and_group_quotas_property = fsx.CfnVolume.UserAndGroupQuotasProperty(
    id=123,
    storage_capacity_quota_gi_b=123,
    type="type"
)

Attributes

id

The ID of the user or group that the quota applies to.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-userandgroupquotas.html#cfn-fsx-volume-userandgroupquotas-id

storage_capacity_quota_gib

The user or group’s storage quota, in gibibytes (GiB).

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-userandgroupquotas.html#cfn-fsx-volume-userandgroupquotas-storagecapacityquotagib

type

Specifies whether the quota applies to a user or group.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-volume-userandgroupquotas.html#cfn-fsx-volume-userandgroupquotas-type