/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The configuration for the Amazon FSx for Lustre file system.See
* Also:
AWS
* API Reference
The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline const Aws::String& GetWeeklyMaintenanceStartTime() const{ return m_weeklyMaintenanceStartTime; } /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline bool WeeklyMaintenanceStartTimeHasBeenSet() const { return m_weeklyMaintenanceStartTimeHasBeenSet; } /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline void SetWeeklyMaintenanceStartTime(const Aws::String& value) { m_weeklyMaintenanceStartTimeHasBeenSet = true; m_weeklyMaintenanceStartTime = value; } /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline void SetWeeklyMaintenanceStartTime(Aws::String&& value) { m_weeklyMaintenanceStartTimeHasBeenSet = true; m_weeklyMaintenanceStartTime = std::move(value); } /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline void SetWeeklyMaintenanceStartTime(const char* value) { m_weeklyMaintenanceStartTimeHasBeenSet = true; m_weeklyMaintenanceStartTime.assign(value); } /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline LustreFileSystemConfiguration& WithWeeklyMaintenanceStartTime(const Aws::String& value) { SetWeeklyMaintenanceStartTime(value); return *this;} /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline LustreFileSystemConfiguration& WithWeeklyMaintenanceStartTime(Aws::String&& value) { SetWeeklyMaintenanceStartTime(std::move(value)); return *this;} /** *The preferred start time to perform weekly maintenance, formatted d:HH:MM in * the UTC time zone. d is the weekday number, from 1 through 7, beginning with * Monday and ending with Sunday.
*/ inline LustreFileSystemConfiguration& WithWeeklyMaintenanceStartTime(const char* value) { SetWeeklyMaintenanceStartTime(value); return *this;} inline const DataRepositoryConfiguration& GetDataRepositoryConfiguration() const{ return m_dataRepositoryConfiguration; } inline bool DataRepositoryConfigurationHasBeenSet() const { return m_dataRepositoryConfigurationHasBeenSet; } inline void SetDataRepositoryConfiguration(const DataRepositoryConfiguration& value) { m_dataRepositoryConfigurationHasBeenSet = true; m_dataRepositoryConfiguration = value; } inline void SetDataRepositoryConfiguration(DataRepositoryConfiguration&& value) { m_dataRepositoryConfigurationHasBeenSet = true; m_dataRepositoryConfiguration = std::move(value); } inline LustreFileSystemConfiguration& WithDataRepositoryConfiguration(const DataRepositoryConfiguration& value) { SetDataRepositoryConfiguration(value); return *this;} inline LustreFileSystemConfiguration& WithDataRepositoryConfiguration(DataRepositoryConfiguration&& value) { SetDataRepositoryConfiguration(std::move(value)); return *this;} /** *The deployment type of the FSX for Lustre file system. Scratch deployment * type is designed for temporary storage and shorter-term processing of * data.
SCRATCH_1 and SCRATCH_2 deployment types
* are best suited for when you need temporary storage and shorter-term processing
* of data. The SCRATCH_2 deployment type provides in-transit
* encryption of data and higher burst throughput capacity than
* SCRATCH_1.
The PERSISTENT_1 deployment type is
* used for longer-term storage and workloads and encryption of data in transit. To
* learn more about deployment types, see
* FSx for Lustre Deployment Options. (Default = SCRATCH_1)
The deployment type of the FSX for Lustre file system. Scratch deployment * type is designed for temporary storage and shorter-term processing of * data.
SCRATCH_1 and SCRATCH_2 deployment types
* are best suited for when you need temporary storage and shorter-term processing
* of data. The SCRATCH_2 deployment type provides in-transit
* encryption of data and higher burst throughput capacity than
* SCRATCH_1.
The PERSISTENT_1 deployment type is
* used for longer-term storage and workloads and encryption of data in transit. To
* learn more about deployment types, see
* FSx for Lustre Deployment Options. (Default = SCRATCH_1)
The deployment type of the FSX for Lustre file system. Scratch deployment * type is designed for temporary storage and shorter-term processing of * data.
SCRATCH_1 and SCRATCH_2 deployment types
* are best suited for when you need temporary storage and shorter-term processing
* of data. The SCRATCH_2 deployment type provides in-transit
* encryption of data and higher burst throughput capacity than
* SCRATCH_1.
The PERSISTENT_1 deployment type is
* used for longer-term storage and workloads and encryption of data in transit. To
* learn more about deployment types, see
* FSx for Lustre Deployment Options. (Default = SCRATCH_1)
The deployment type of the FSX for Lustre file system. Scratch deployment * type is designed for temporary storage and shorter-term processing of * data.
SCRATCH_1 and SCRATCH_2 deployment types
* are best suited for when you need temporary storage and shorter-term processing
* of data. The SCRATCH_2 deployment type provides in-transit
* encryption of data and higher burst throughput capacity than
* SCRATCH_1.
The PERSISTENT_1 deployment type is
* used for longer-term storage and workloads and encryption of data in transit. To
* learn more about deployment types, see
* FSx for Lustre Deployment Options. (Default = SCRATCH_1)
The deployment type of the FSX for Lustre file system. Scratch deployment * type is designed for temporary storage and shorter-term processing of * data.
SCRATCH_1 and SCRATCH_2 deployment types
* are best suited for when you need temporary storage and shorter-term processing
* of data. The SCRATCH_2 deployment type provides in-transit
* encryption of data and higher burst throughput capacity than
* SCRATCH_1.
The PERSISTENT_1 deployment type is
* used for longer-term storage and workloads and encryption of data in transit. To
* learn more about deployment types, see
* FSx for Lustre Deployment Options. (Default = SCRATCH_1)
The deployment type of the FSX for Lustre file system. Scratch deployment * type is designed for temporary storage and shorter-term processing of * data.
SCRATCH_1 and SCRATCH_2 deployment types
* are best suited for when you need temporary storage and shorter-term processing
* of data. The SCRATCH_2 deployment type provides in-transit
* encryption of data and higher burst throughput capacity than
* SCRATCH_1.
The PERSISTENT_1 deployment type is
* used for longer-term storage and workloads and encryption of data in transit. To
* learn more about deployment types, see
* FSx for Lustre Deployment Options. (Default = SCRATCH_1)
Per unit storage throughput represents the megabytes per second of read or
* write throughput per 1 tebibyte of storage provisioned. File system throughput
* capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput
* (MB/s/TiB). This option is only valid for PERSISTENT_1 deployment
* types.
Valid values for SSD storage: 50, 100, 200. Valid values for HDD * storage: 12, 40.
*/ inline int GetPerUnitStorageThroughput() const{ return m_perUnitStorageThroughput; } /** * Per unit storage throughput represents the megabytes per second of read or
* write throughput per 1 tebibyte of storage provisioned. File system throughput
* capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput
* (MB/s/TiB). This option is only valid for PERSISTENT_1 deployment
* types.
Valid values for SSD storage: 50, 100, 200. Valid values for HDD * storage: 12, 40.
*/ inline bool PerUnitStorageThroughputHasBeenSet() const { return m_perUnitStorageThroughputHasBeenSet; } /** * Per unit storage throughput represents the megabytes per second of read or
* write throughput per 1 tebibyte of storage provisioned. File system throughput
* capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput
* (MB/s/TiB). This option is only valid for PERSISTENT_1 deployment
* types.
Valid values for SSD storage: 50, 100, 200. Valid values for HDD * storage: 12, 40.
*/ inline void SetPerUnitStorageThroughput(int value) { m_perUnitStorageThroughputHasBeenSet = true; m_perUnitStorageThroughput = value; } /** * Per unit storage throughput represents the megabytes per second of read or
* write throughput per 1 tebibyte of storage provisioned. File system throughput
* capacity is equal to Storage capacity (TiB) * PerUnitStorageThroughput
* (MB/s/TiB). This option is only valid for PERSISTENT_1 deployment
* types.
Valid values for SSD storage: 50, 100, 200. Valid values for HDD * storage: 12, 40.
*/ inline LustreFileSystemConfiguration& WithPerUnitStorageThroughput(int value) { SetPerUnitStorageThroughput(value); return *this;} /** *You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
You use the MountName value when mounting the file system.
For the SCRATCH_1 deployment type, this value is always
* "fsx". For SCRATCH_2 and PERSISTENT_1
* deployment types, this value is a string that is unique within an AWS Region.
*
A boolean flag indicating whether tags on the file system should be copied to * backups. If it's set to true, all tags on the file system are copied to all * automatic backups and any user-initiated backups where the user doesn't specify * any 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 file system, * regardless of this value. (Default = false)
*/ inline bool GetCopyTagsToBackups() const{ return m_copyTagsToBackups; } /** *A boolean flag indicating whether tags on the file system should be copied to * backups. If it's set to true, all tags on the file system are copied to all * automatic backups and any user-initiated backups where the user doesn't specify * any 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 file system, * regardless of this value. (Default = false)
*/ inline bool CopyTagsToBackupsHasBeenSet() const { return m_copyTagsToBackupsHasBeenSet; } /** *A boolean flag indicating whether tags on the file system should be copied to * backups. If it's set to true, all tags on the file system are copied to all * automatic backups and any user-initiated backups where the user doesn't specify * any 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 file system, * regardless of this value. (Default = false)
*/ inline void SetCopyTagsToBackups(bool value) { m_copyTagsToBackupsHasBeenSet = true; m_copyTagsToBackups = value; } /** *A boolean flag indicating whether tags on the file system should be copied to * backups. If it's set to true, all tags on the file system are copied to all * automatic backups and any user-initiated backups where the user doesn't specify * any 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 file system, * regardless of this value. (Default = false)
*/ inline LustreFileSystemConfiguration& WithCopyTagsToBackups(bool value) { SetCopyTagsToBackups(value); return *this;} /** *The type of drive cache used by PERSISTENT_1 file systems that are
* provisioned with HDD storage devices. This parameter is required when storage
* type is HDD. Set to READ, improve the performance for frequently
* accessed files and allows 20% of the total storage capacity of the file system
* to be cached.
This parameter is required when StorageType
* is set to HDD.
The type of drive cache used by PERSISTENT_1 file systems that are
* provisioned with HDD storage devices. This parameter is required when storage
* type is HDD. Set to READ, improve the performance for frequently
* accessed files and allows 20% of the total storage capacity of the file system
* to be cached.
This parameter is required when StorageType
* is set to HDD.
The type of drive cache used by PERSISTENT_1 file systems that are
* provisioned with HDD storage devices. This parameter is required when storage
* type is HDD. Set to READ, improve the performance for frequently
* accessed files and allows 20% of the total storage capacity of the file system
* to be cached.
This parameter is required when StorageType
* is set to HDD.
The type of drive cache used by PERSISTENT_1 file systems that are
* provisioned with HDD storage devices. This parameter is required when storage
* type is HDD. Set to READ, improve the performance for frequently
* accessed files and allows 20% of the total storage capacity of the file system
* to be cached.
This parameter is required when StorageType
* is set to HDD.
The type of drive cache used by PERSISTENT_1 file systems that are
* provisioned with HDD storage devices. This parameter is required when storage
* type is HDD. Set to READ, improve the performance for frequently
* accessed files and allows 20% of the total storage capacity of the file system
* to be cached.
This parameter is required when StorageType
* is set to HDD.
The type of drive cache used by PERSISTENT_1 file systems that are
* provisioned with HDD storage devices. This parameter is required when storage
* type is HDD. Set to READ, improve the performance for frequently
* accessed files and allows 20% of the total storage capacity of the file system
* to be cached.
This parameter is required when StorageType
* is set to HDD.