Class: AWSCDK::FSX::CfnFileSystem::LustreConfigurationProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::FSX::CfnFileSystem::LustreConfigurationProperty
- Defined in:
- fsx/cfn_file_system.rb
Overview
The configuration for the Amazon FSx for Lustre file system.
Instance Attribute Summary collapse
-
#auto_import_policy ⇒ String?
readonly
(Optional) When you create your file system, your existing S3 objects appear as file and directory listings.
-
#automatic_backup_retention_days ⇒ Numeric?
readonly
The number of days to retain automatic backups.
-
#copy_tags_to_backups ⇒ Boolean, ...
readonly
(Optional) Not available for use with file systems that are linked to a data repository.
-
#daily_automatic_backup_start_time ⇒ String?
readonly
A recurring daily time, in the format
HH:MM. -
#data_compression_type ⇒ String?
readonly
Sets the data compression configuration for the file system.
-
#data_read_cache_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Specifies the optional provisioned SSD read cache on FSx for Lustre file systems that use the Intelligent-Tiering storage class.
-
#deployment_type ⇒ String?
readonly
(Optional) Choose
SCRATCH_1andSCRATCH_2deployment types when you need temporary storage and shorter-term processing of data. -
#drive_cache_type ⇒ String?
readonly
The type of drive cache used by
PERSISTENT_1file systems that are provisioned with HDD storage devices. -
#efa_enabled ⇒ Boolean, ...
readonly
(Optional) Specifies whether Elastic Fabric Adapter (EFA) and GPUDirect Storage (GDS) support is enabled for the Amazon FSx for Lustre file system.
-
#export_path ⇒ String?
readonly
(Optional) Specifies the path in the Amazon S3 bucket where the root of your Amazon FSx file system is exported.
-
#import_path ⇒ String?
readonly
(Optional) The path to the Amazon S3 bucket (including the optional prefix) that you're using as the data repository for your Amazon FSx for Lustre file system.
-
#imported_file_chunk_size ⇒ Numeric?
readonly
(Optional) For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk.
-
#metadata_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The Lustre metadata performance configuration for the creation of an FSx for Lustre file system using a
PERSISTENT_2deployment type. -
#per_unit_storage_throughput ⇒ Numeric?
readonly
Required with
PERSISTENT_1andPERSISTENT_2deployment types, provisions the amount of read and write throughput for each 1 tebibyte (TiB) of file system storage capacity, in MB/s/TiB. -
#throughput_capacity ⇒ Numeric?
readonly
Specifies the throughput of an FSx for Lustre file system using the Intelligent-Tiering storage class, measured in megabytes per second (MBps).
-
#weekly_maintenance_start_time ⇒ String?
readonly
The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(auto_import_policy: nil, automatic_backup_retention_days: nil, copy_tags_to_backups: nil, daily_automatic_backup_start_time: nil, data_compression_type: nil, data_read_cache_configuration: nil, deployment_type: nil, drive_cache_type: nil, efa_enabled: nil, export_path: nil, imported_file_chunk_size: nil, import_path: nil, metadata_configuration: nil, per_unit_storage_throughput: nil, throughput_capacity: nil, weekly_maintenance_start_time: nil) ⇒ LustreConfigurationProperty
constructor
A new instance of LustreConfigurationProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(auto_import_policy: nil, automatic_backup_retention_days: nil, copy_tags_to_backups: nil, daily_automatic_backup_start_time: nil, data_compression_type: nil, data_read_cache_configuration: nil, deployment_type: nil, drive_cache_type: nil, efa_enabled: nil, export_path: nil, imported_file_chunk_size: nil, import_path: nil, metadata_configuration: nil, per_unit_storage_throughput: nil, throughput_capacity: nil, weekly_maintenance_start_time: nil) ⇒ LustreConfigurationProperty
Returns a new instance of LustreConfigurationProperty.
999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 |
# File 'fsx/cfn_file_system.rb', line 999 def initialize(auto_import_policy: nil, automatic_backup_retention_days: nil, copy_tags_to_backups: nil, daily_automatic_backup_start_time: nil, data_compression_type: nil, data_read_cache_configuration: nil, deployment_type: nil, drive_cache_type: nil, efa_enabled: nil, export_path: nil, imported_file_chunk_size: nil, import_path: nil, metadata_configuration: nil, per_unit_storage_throughput: nil, throughput_capacity: nil, weekly_maintenance_start_time: nil) @auto_import_policy = auto_import_policy Jsii::Type.check_type(@auto_import_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "autoImportPolicy") unless @auto_import_policy.nil? @automatic_backup_retention_days = automatic_backup_retention_days Jsii::Type.check_type(@automatic_backup_retention_days, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "automaticBackupRetentionDays") unless @automatic_backup_retention_days.nil? @copy_tags_to_backups = Jsii::Type.check_type(@copy_tags_to_backups, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "copyTagsToBackups") unless @copy_tags_to_backups.nil? @daily_automatic_backup_start_time = daily_automatic_backup_start_time Jsii::Type.check_type(@daily_automatic_backup_start_time, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dailyAutomaticBackupStartTime") unless @daily_automatic_backup_start_time.nil? @data_compression_type = data_compression_type Jsii::Type.check_type(@data_compression_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "dataCompressionType") unless @data_compression_type.nil? @data_read_cache_configuration = data_read_cache_configuration.is_a?(Hash) ? ::AWSCDK::FSX::CfnFileSystem::DataReadCacheConfigurationProperty.new(**data_read_cache_configuration.transform_keys(&:to_sym)) : data_read_cache_configuration Jsii::Type.check_type(@data_read_cache_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19mc3guQ2ZuRmlsZVN5c3RlbS5EYXRhUmVhZENhY2hlQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "dataReadCacheConfiguration") unless @data_read_cache_configuration.nil? @deployment_type = deployment_type Jsii::Type.check_type(@deployment_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "deploymentType") unless @deployment_type.nil? @drive_cache_type = drive_cache_type Jsii::Type.check_type(@drive_cache_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "driveCacheType") unless @drive_cache_type.nil? @efa_enabled = efa_enabled Jsii::Type.check_type(@efa_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "efaEnabled") unless @efa_enabled.nil? @export_path = export_path Jsii::Type.check_type(@export_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "exportPath") unless @export_path.nil? @imported_file_chunk_size = imported_file_chunk_size Jsii::Type.check_type(@imported_file_chunk_size, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "importedFileChunkSize") unless @imported_file_chunk_size.nil? @import_path = import_path Jsii::Type.check_type(@import_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "importPath") unless @import_path.nil? @metadata_configuration = .is_a?(Hash) ? ::AWSCDK::FSX::CfnFileSystem::MetadataConfigurationProperty.new(**.transform_keys(&:to_sym)) : Jsii::Type.check_type(@metadata_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19mc3guQ2ZuRmlsZVN5c3RlbS5NZXRhZGF0YUNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "metadataConfiguration") unless @metadata_configuration.nil? @per_unit_storage_throughput = per_unit_storage_throughput Jsii::Type.check_type(@per_unit_storage_throughput, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "perUnitStorageThroughput") unless @per_unit_storage_throughput.nil? @throughput_capacity = throughput_capacity Jsii::Type.check_type(@throughput_capacity, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "throughputCapacity") unless @throughput_capacity.nil? @weekly_maintenance_start_time = weekly_maintenance_start_time Jsii::Type.check_type(@weekly_maintenance_start_time, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "weeklyMaintenanceStartTime") unless @weekly_maintenance_start_time.nil? end |
Instance Attribute Details
#auto_import_policy ⇒ String? (readonly)
(Optional) When you create your file system, your existing S3 objects appear as file and directory listings.
Use this property to choose how Amazon FSx keeps your file and directory listings up to date as you add or modify objects in your linked S3 bucket. AutoImportPolicy can have the following values:
NONE- (Default) AutoImport is off. Amazon FSx only updates file and directory listings from the linked S3 bucket when the file system is created. FSx does not update file and directory listings for any new or changed objects after choosing this option.NEW- AutoImport is on. Amazon FSx automatically imports directory listings of any new objects added to the linked S3 bucket that do not currently exist in the FSx file system.NEW_CHANGED- AutoImport is on. Amazon FSx automatically imports file and directory listings of any new objects added to the S3 bucket and any existing objects that are changed in the S3 bucket after you choose this option.NEW_CHANGED_DELETED- AutoImport is on. Amazon FSx automatically imports file and directory listings of any new objects added to the S3 bucket, any existing objects that are changed in the S3 bucket, and any objects that were deleted in the S3 bucket.
For more information, see Automatically import updates from your S3 bucket .
This parameter is not supported for Lustre file systems with a data repository association.
1049 1050 1051 |
# File 'fsx/cfn_file_system.rb', line 1049 def auto_import_policy @auto_import_policy end |
#automatic_backup_retention_days ⇒ Numeric? (readonly)
The number of days to retain automatic backups.
Setting this property to 0 disables automatic backups. You can retain automatic backups for a maximum of 90 days. The default is 0 .
1056 1057 1058 |
# File 'fsx/cfn_file_system.rb', line 1056 def automatic_backup_retention_days @automatic_backup_retention_days end |
#copy_tags_to_backups ⇒ Boolean, ... (readonly)
(Optional) Not available for use with file systems that are linked to a data repository.
A boolean flag indicating whether tags for the file system should be copied to backups. The default value is false. If CopyTagsToBackups is set to true, all file system tags are copied to all automatic and user-initiated backups when the user doesn't specify any backup-specific tags. If CopyTagsToBackups is set to true and you specify one or more backup 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 )
For more information, see Working with backups in the Amazon FSx for Lustre User Guide .
1067 1068 1069 |
# File 'fsx/cfn_file_system.rb', line 1067 def @copy_tags_to_backups end |
#daily_automatic_backup_start_time ⇒ String? (readonly)
A recurring daily time, in the format HH:MM .
HH is the zero-padded hour of the day (0-23), and MM is the zero-padded minute of the hour. For example, 05:00 specifies 5 AM daily.
1074 1075 1076 |
# File 'fsx/cfn_file_system.rb', line 1074 def daily_automatic_backup_start_time @daily_automatic_backup_start_time end |
#data_compression_type ⇒ String? (readonly)
Sets the data compression configuration for the file system. DataCompressionType can have the following values:.
NONE- (Default) Data compression is turned off when the file system is created.LZ4- Data compression is turned on with the LZ4 algorithm.
For more information, see Lustre data compression in the Amazon FSx for Lustre User Guide .
1084 1085 1086 |
# File 'fsx/cfn_file_system.rb', line 1084 def data_compression_type @data_compression_type end |
#data_read_cache_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies the optional provisioned SSD read cache on FSx for Lustre file systems that use the Intelligent-Tiering storage class.
Required when StorageType is set to INTELLIGENT_TIERING .
1091 1092 1093 |
# File 'fsx/cfn_file_system.rb', line 1091 def data_read_cache_configuration @data_read_cache_configuration end |
#deployment_type ⇒ String? (readonly)
(Optional) Choose SCRATCH_1 and SCRATCH_2 deployment types 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 .
Choose PERSISTENT_1 for longer-term storage and for throughput-focused workloads that aren’t latency-sensitive. PERSISTENT_1 supports encryption of data in transit, and is available in all AWS Regions in which FSx for Lustre is available.
Choose PERSISTENT_2 for longer-term storage and for latency-sensitive workloads that require the highest levels of IOPS/throughput. PERSISTENT_2 supports the SSD and Intelligent-Tiering storage classes. You can optionally specify a metadata configuration mode for PERSISTENT_2 which supports increasing metadata performance. PERSISTENT_2 is available in a limited number of AWS Regions . For more information, and an up-to-date list of AWS Regions in which PERSISTENT_2 is available, see Deployment and storage class options for FSx for Lustre file systems in the Amazon FSx for Lustre User Guide .
If you choose
PERSISTENT_2, and you setFileSystemTypeVersionto2.10, theCreateFileSystemoperation fails.
Encryption of data in transit is automatically turned on when you access SCRATCH_2 , PERSISTENT_1 , and PERSISTENT_2 file systems from Amazon EC2 instances that support automatic encryption in the AWS Regions where they are available. For more information about encryption in transit for FSx for Lustre file systems, see Encrypting data in transit in the Amazon FSx for Lustre User Guide .
(Default = SCRATCH_1 )
1108 1109 1110 |
# File 'fsx/cfn_file_system.rb', line 1108 def deployment_type @deployment_type end |
#drive_cache_type ⇒ String? (readonly)
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 this property to READ to improve the performance for frequently accessed files by caching up to 20% of the total storage capacity of the file system.
This parameter is required when StorageType is set to HDD and DeploymentType is PERSISTENT_1 .
1117 1118 1119 |
# File 'fsx/cfn_file_system.rb', line 1117 def drive_cache_type @drive_cache_type end |
#efa_enabled ⇒ Boolean, ... (readonly)
(Optional) Specifies whether Elastic Fabric Adapter (EFA) and GPUDirect Storage (GDS) support is enabled for the Amazon FSx for Lustre file system.
(Default = false )
1124 1125 1126 |
# File 'fsx/cfn_file_system.rb', line 1124 def efa_enabled @efa_enabled end |
#export_path ⇒ String? (readonly)
(Optional) Specifies the path in the Amazon S3 bucket where the root of your Amazon FSx file system is exported.
The path must use the same Amazon S3 bucket as specified in ImportPath. You can provide an optional prefix to which new and changed data is to be exported from your Amazon FSx for Lustre file system. If an ExportPath value is not provided, Amazon FSx sets a default export path, s3://import-bucket/FSxLustre[creation-timestamp] . The timestamp is in UTC format, for example s3://import-bucket/FSxLustre20181105T222312Z .
The Amazon S3 export bucket must be the same as the import bucket specified by ImportPath . If you specify only a bucket name, such as s3://import-bucket , you get a 1:1 mapping of file system objects to S3 bucket objects. This mapping means that the input data in S3 is overwritten on export. If you provide a custom prefix in the export path, such as s3://import-bucket/[custom-optional-prefix] , Amazon FSx exports the contents of your file system to that export prefix in the Amazon S3 bucket.
This parameter is not supported for file systems with a data repository association.
1135 1136 1137 |
# File 'fsx/cfn_file_system.rb', line 1135 def export_path @export_path end |
#import_path ⇒ String? (readonly)
(Optional) The path to the Amazon S3 bucket (including the optional prefix) that you're using as the data repository for your Amazon FSx for Lustre file system.
The root of your FSx for Lustre file system will be mapped to the root of the Amazon S3 bucket you select. An example is s3://import-bucket/optional-prefix . If you specify a prefix after the Amazon S3 bucket name, only object keys with that prefix are loaded into the file system.
This parameter is not supported for Lustre file systems with a data repository association.
1155 1156 1157 |
# File 'fsx/cfn_file_system.rb', line 1155 def import_path @import_path end |
#imported_file_chunk_size ⇒ Numeric? (readonly)
(Optional) For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk.
The maximum number of disks that a single file can be striped across is limited by the total number of disks that make up the file system.
The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB (500 GiB). Amazon S3 objects have a maximum size of 5 TB.
This parameter is not supported for Lustre file systems with a data repository association.
1146 1147 1148 |
# File 'fsx/cfn_file_system.rb', line 1146 def imported_file_chunk_size @imported_file_chunk_size end |
#metadata_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The Lustre metadata performance configuration for the creation of an FSx for Lustre file system using a PERSISTENT_2 deployment type.
1160 1161 1162 |
# File 'fsx/cfn_file_system.rb', line 1160 def @metadata_configuration end |
#per_unit_storage_throughput ⇒ Numeric? (readonly)
Required with PERSISTENT_1 and PERSISTENT_2 deployment types, provisions the amount of read and write throughput for each 1 tebibyte (TiB) of file system storage capacity, in MB/s/TiB.
File system throughput capacity is calculated by multiplying file system storage capacity (TiB) by the PerUnitStorageThroughput (MB/s/TiB). For a 2.4-TiB file system, provisioning 50 MB/s/TiB of PerUnitStorageThroughput yields 120 MB/s of file system throughput. You pay for the amount of throughput that you provision.
Valid values:
- For
PERSISTENT_1SSD storage: 50, 100, 200 MB/s/TiB. - For
PERSISTENT_1HDD storage: 12, 40 MB/s/TiB. - For
PERSISTENT_2SSD storage: 125, 250, 500, 1000 MB/s/TiB.
1173 1174 1175 |
# File 'fsx/cfn_file_system.rb', line 1173 def per_unit_storage_throughput @per_unit_storage_throughput end |
#throughput_capacity ⇒ Numeric? (readonly)
Specifies the throughput of an FSx for Lustre file system using the Intelligent-Tiering storage class, measured in megabytes per second (MBps).
Valid values are 4000 MBps or multiples of 4000 MBps. You pay for the amount of throughput that you provision.
1180 1181 1182 |
# File 'fsx/cfn_file_system.rb', line 1180 def throughput_capacity @throughput_capacity end |
#weekly_maintenance_start_time ⇒ String? (readonly)
The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
For example, 1:05:00 specifies maintenance at 5 AM Monday.
1187 1188 1189 |
# File 'fsx/cfn_file_system.rb', line 1187 def weekly_maintenance_start_time @weekly_maintenance_start_time end |
Class Method Details
.jsii_properties ⇒ Object
1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 |
# File 'fsx/cfn_file_system.rb', line 1189 def self.jsii_properties { :auto_import_policy => "autoImportPolicy", :automatic_backup_retention_days => "automaticBackupRetentionDays", :copy_tags_to_backups => "copyTagsToBackups", :daily_automatic_backup_start_time => "dailyAutomaticBackupStartTime", :data_compression_type => "dataCompressionType", :data_read_cache_configuration => "dataReadCacheConfiguration", :deployment_type => "deploymentType", :drive_cache_type => "driveCacheType", :efa_enabled => "efaEnabled", :export_path => "exportPath", :imported_file_chunk_size => "importedFileChunkSize", :import_path => "importPath", :metadata_configuration => "metadataConfiguration", :per_unit_storage_throughput => "perUnitStorageThroughput", :throughput_capacity => "throughputCapacity", :weekly_maintenance_start_time => "weeklyMaintenanceStartTime", } end |
Instance Method Details
#to_jsii ⇒ Object
1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 |
# File 'fsx/cfn_file_system.rb', line 1210 def to_jsii result = {} result.merge!({ "autoImportPolicy" => @auto_import_policy, "automaticBackupRetentionDays" => @automatic_backup_retention_days, "copyTagsToBackups" => @copy_tags_to_backups, "dailyAutomaticBackupStartTime" => @daily_automatic_backup_start_time, "dataCompressionType" => @data_compression_type, "dataReadCacheConfiguration" => @data_read_cache_configuration, "deploymentType" => @deployment_type, "driveCacheType" => @drive_cache_type, "efaEnabled" => @efa_enabled, "exportPath" => @export_path, "importedFileChunkSize" => @imported_file_chunk_size, "importPath" => @import_path, "metadataConfiguration" => @metadata_configuration, "perUnitStorageThroughput" => @per_unit_storage_throughput, "throughputCapacity" => @throughput_capacity, "weeklyMaintenanceStartTime" => @weekly_maintenance_start_time, }) result.compact end |