aws-sdk-fsx 1.59.0 → 1.60.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -345,12 +345,12 @@ module Aws::FSx
345
345
  # Describes a data repository association's automatic export policy.
346
346
  # The `AutoExportPolicy` defines the types of updated objects on the
347
347
  # file system that will be automatically exported to the data
348
- # repository. As you create, modify, or delete files, Amazon FSx
349
- # automatically exports the defined changes asynchronously once your
350
- # application finishes modifying the file.
348
+ # repository. As you create, modify, or delete files, Amazon FSx for
349
+ # Lustre automatically exports the defined changes asynchronously once
350
+ # your application finishes modifying the file.
351
351
  #
352
- # This `AutoExportPolicy` is supported only for file systems with the
353
- # `Persistent_2` deployment type.
352
+ # This `AutoExportPolicy` is supported only for Amazon FSx for Lustre
353
+ # file systems with the `Persistent_2` deployment type.
354
354
  #
355
355
  # @note When making an API call, you may pass AutoExportPolicy
356
356
  # data as a hash:
@@ -362,11 +362,11 @@ module Aws::FSx
362
362
  # @!attribute [rw] events
363
363
  # The `AutoExportPolicy` can have the following event values:
364
364
  #
365
- # * `NEW` - Amazon FSx automatically exports new files and directories
366
- # to the data repository as they are added to the file system.
365
+ # * `NEW` - New files and directories are automatically exported to
366
+ # the data repository as they are added to the file system.
367
367
  #
368
- # * `CHANGED` - Amazon FSx automatically exports changes to files and
369
- # directories on the file system to the data repository.
368
+ # * `CHANGED` - Changes to files and directories on the file system
369
+ # are automatically exported to the data repository.
370
370
  #
371
371
  # * `DELETED` - Files and directories are automatically deleted on the
372
372
  # data repository when they are deleted on the file system.
@@ -385,11 +385,12 @@ module Aws::FSx
385
385
 
386
386
  # Describes the data repository association's automatic import policy.
387
387
  # The AutoImportPolicy defines how Amazon FSx keeps your file metadata
388
- # and directory listings up to date by importing changes to your file
389
- # system as you modify objects in a linked S3 bucket.
388
+ # and directory listings up to date by importing changes to your Amazon
389
+ # FSx for Lustre file system as you modify objects in a linked S3
390
+ # bucket.
390
391
  #
391
- # This `AutoImportPolicy` is supported only for file systems with the
392
- # `Persistent_2` deployment type.
392
+ # The `AutoImportPolicy` is supported only for Amazon FSx for Lustre
393
+ # file systems with the `Persistent_2` deployment type.
393
394
  #
394
395
  # @note When making an API call, you may pass AutoImportPolicy
395
396
  # data as a hash:
@@ -936,7 +937,7 @@ module Aws::FSx
936
937
  #
937
938
  # {
938
939
  # file_system_id: "FileSystemId", # required
939
- # file_system_path: "Namespace", # required
940
+ # file_system_path: "Namespace",
940
941
  # data_repository_path: "ArchivePath", # required
941
942
  # batch_import_meta_data_on_create: false,
942
943
  # imported_file_chunk_size: 1,
@@ -977,9 +978,9 @@ module Aws::FSx
977
978
  # the directory.
978
979
  #
979
980
  # <note markdown="1"> If you specify only a forward slash (`/`) as the file system path,
980
- # you can link only 1 data repository to the file system. You can only
981
- # specify "/" as the file system path for the first data repository
982
- # associated with a file system.
981
+ # you can link only one data repository to the file system. You can
982
+ # only specify "/" as the file system path for the first data
983
+ # repository associated with a file system.
983
984
  #
984
985
  # </note>
985
986
  # @return [String]
@@ -1064,7 +1065,7 @@ module Aws::FSx
1064
1065
  # data as a hash:
1065
1066
  #
1066
1067
  # {
1067
- # type: "EXPORT_TO_REPOSITORY", # required, accepts EXPORT_TO_REPOSITORY, IMPORT_METADATA_FROM_REPOSITORY
1068
+ # type: "EXPORT_TO_REPOSITORY", # required, accepts EXPORT_TO_REPOSITORY, IMPORT_METADATA_FROM_REPOSITORY, RELEASE_DATA_FROM_FILESYSTEM, AUTO_RELEASE_DATA
1068
1069
  # paths: ["DataRepositoryTaskPath"],
1069
1070
  # file_system_id: "FileSystemId", # required
1070
1071
  # report: { # required
@@ -1080,6 +1081,7 @@ module Aws::FSx
1080
1081
  # value: "TagValue", # required
1081
1082
  # },
1082
1083
  # ],
1084
+ # capacity_to_release: 1,
1083
1085
  # }
1084
1086
  #
1085
1087
  # @!attribute [rw] type
@@ -1134,6 +1136,12 @@ module Aws::FSx
1134
1136
  # A list of `Tag` values, with a maximum of 50 elements.
1135
1137
  # @return [Array<Types::Tag>]
1136
1138
  #
1139
+ # @!attribute [rw] capacity_to_release
1140
+ # Specifies the amount of data to release, in GiB, by an Amazon File
1141
+ # Cache `AUTO_RELEASE_DATA` task that automatically releases files
1142
+ # from the cache.
1143
+ # @return [Integer]
1144
+ #
1137
1145
  # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateDataRepositoryTaskRequest AWS API Documentation
1138
1146
  #
1139
1147
  class CreateDataRepositoryTaskRequest < Struct.new(
@@ -1142,7 +1150,8 @@ module Aws::FSx
1142
1150
  :file_system_id,
1143
1151
  :report,
1144
1152
  :client_request_token,
1145
- :tags)
1153
+ :tags,
1154
+ :capacity_to_release)
1146
1155
  SENSITIVE = []
1147
1156
  include Aws::Structure
1148
1157
  end
@@ -1159,6 +1168,220 @@ module Aws::FSx
1159
1168
  include Aws::Structure
1160
1169
  end
1161
1170
 
1171
+ # The Amazon File Cache configuration for the cache that you are
1172
+ # creating.
1173
+ #
1174
+ # @note When making an API call, you may pass CreateFileCacheLustreConfiguration
1175
+ # data as a hash:
1176
+ #
1177
+ # {
1178
+ # per_unit_storage_throughput: 1, # required
1179
+ # deployment_type: "CACHE_1", # required, accepts CACHE_1
1180
+ # weekly_maintenance_start_time: "WeeklyTime",
1181
+ # metadata_configuration: { # required
1182
+ # storage_capacity: 1, # required
1183
+ # },
1184
+ # }
1185
+ #
1186
+ # @!attribute [rw] per_unit_storage_throughput
1187
+ # Provisions the amount of read and write throughput for each 1
1188
+ # tebibyte (TiB) of cache storage capacity, in MB/s/TiB. The only
1189
+ # supported value is `1000`.
1190
+ # @return [Integer]
1191
+ #
1192
+ # @!attribute [rw] deployment_type
1193
+ # Specifies the cache deployment type, which must be `CACHE_1`.
1194
+ # @return [String]
1195
+ #
1196
+ # @!attribute [rw] weekly_maintenance_start_time
1197
+ # A recurring weekly time, in the format `D:HH:MM`.
1198
+ #
1199
+ # `D` is the day of the week, for which 1 represents Monday and 7
1200
+ # represents Sunday. For further details, see [the ISO-8601 spec as
1201
+ # described on Wikipedia][1].
1202
+ #
1203
+ # `HH` is the zero-padded hour of the day (0-23), and `MM` is the
1204
+ # zero-padded minute of the hour.
1205
+ #
1206
+ # For example, `1:05:00` specifies maintenance at 5 AM Monday.
1207
+ #
1208
+ #
1209
+ #
1210
+ # [1]: https://en.wikipedia.org/wiki/ISO_week_date
1211
+ # @return [String]
1212
+ #
1213
+ # @!attribute [rw] metadata_configuration
1214
+ # The configuration for a Lustre MDT (Metadata Target) storage volume.
1215
+ # @return [Types::FileCacheLustreMetadataConfiguration]
1216
+ #
1217
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateFileCacheLustreConfiguration AWS API Documentation
1218
+ #
1219
+ class CreateFileCacheLustreConfiguration < Struct.new(
1220
+ :per_unit_storage_throughput,
1221
+ :deployment_type,
1222
+ :weekly_maintenance_start_time,
1223
+ :metadata_configuration)
1224
+ SENSITIVE = []
1225
+ include Aws::Structure
1226
+ end
1227
+
1228
+ # @note When making an API call, you may pass CreateFileCacheRequest
1229
+ # data as a hash:
1230
+ #
1231
+ # {
1232
+ # client_request_token: "ClientRequestToken",
1233
+ # file_cache_type: "LUSTRE", # required, accepts LUSTRE
1234
+ # file_cache_type_version: "FileSystemTypeVersion", # required
1235
+ # storage_capacity: 1, # required
1236
+ # subnet_ids: ["SubnetId"], # required
1237
+ # security_group_ids: ["SecurityGroupId"],
1238
+ # tags: [
1239
+ # {
1240
+ # key: "TagKey", # required
1241
+ # value: "TagValue", # required
1242
+ # },
1243
+ # ],
1244
+ # copy_tags_to_data_repository_associations: false,
1245
+ # kms_key_id: "KmsKeyId",
1246
+ # lustre_configuration: {
1247
+ # per_unit_storage_throughput: 1, # required
1248
+ # deployment_type: "CACHE_1", # required, accepts CACHE_1
1249
+ # weekly_maintenance_start_time: "WeeklyTime",
1250
+ # metadata_configuration: { # required
1251
+ # storage_capacity: 1, # required
1252
+ # },
1253
+ # },
1254
+ # data_repository_associations: [
1255
+ # {
1256
+ # file_cache_path: "Namespace", # required
1257
+ # data_repository_path: "ArchivePath", # required
1258
+ # data_repository_subdirectories: ["Namespace"],
1259
+ # nfs: {
1260
+ # version: "NFS3", # required, accepts NFS3
1261
+ # dns_ips: ["IpAddress"],
1262
+ # },
1263
+ # },
1264
+ # ],
1265
+ # }
1266
+ #
1267
+ # @!attribute [rw] client_request_token
1268
+ # An idempotency token for resource creation, in a string of up to 64
1269
+ # ASCII characters. This token is automatically filled on your behalf
1270
+ # when you use the Command Line Interface (CLI) or an Amazon Web
1271
+ # Services SDK.
1272
+ #
1273
+ # By using the idempotent operation, you can retry a `CreateFileCache`
1274
+ # operation without the risk of creating an extra cache. This approach
1275
+ # can be useful when an initial call fails in a way that makes it
1276
+ # unclear whether a cache was created. Examples are if a transport
1277
+ # level timeout occurred, or your connection was reset. If you use the
1278
+ # same client request token and the initial call created a cache, the
1279
+ # client receives success as long as the parameters are the same.
1280
+ #
1281
+ # **A suitable default value is auto-generated.** You should normally
1282
+ # not need to pass this option.
1283
+ # @return [String]
1284
+ #
1285
+ # @!attribute [rw] file_cache_type
1286
+ # The type of cache that you're creating, which must be `LUSTRE`.
1287
+ # @return [String]
1288
+ #
1289
+ # @!attribute [rw] file_cache_type_version
1290
+ # Sets the Lustre version for the cache that you're creating, which
1291
+ # must be `2.12`.
1292
+ # @return [String]
1293
+ #
1294
+ # @!attribute [rw] storage_capacity
1295
+ # The storage capacity of the cache in gibibytes (GiB). Valid values
1296
+ # are 1200 GiB, 2400 GiB, and increments of 2400 GiB.
1297
+ # @return [Integer]
1298
+ #
1299
+ # @!attribute [rw] subnet_ids
1300
+ # A list of subnet IDs that the cache will be accessible from. You can
1301
+ # specify only one subnet ID in a call to the `CreateFileCache`
1302
+ # operation.
1303
+ # @return [Array<String>]
1304
+ #
1305
+ # @!attribute [rw] security_group_ids
1306
+ # A list of IDs specifying the security groups to apply to all network
1307
+ # interfaces created for Amazon File Cache access. This list isn't
1308
+ # returned in later requests to describe the cache.
1309
+ # @return [Array<String>]
1310
+ #
1311
+ # @!attribute [rw] tags
1312
+ # A list of `Tag` values, with a maximum of 50 elements.
1313
+ # @return [Array<Types::Tag>]
1314
+ #
1315
+ # @!attribute [rw] copy_tags_to_data_repository_associations
1316
+ # A boolean flag indicating whether tags for the cache should be
1317
+ # copied to data repository associations. This value defaults to
1318
+ # false.
1319
+ # @return [Boolean]
1320
+ #
1321
+ # @!attribute [rw] kms_key_id
1322
+ # Specifies the ID of the Key Management Service (KMS) key to use for
1323
+ # encrypting data on an Amazon File Cache. If a `KmsKeyId` isn't
1324
+ # specified, the Amazon FSx-managed KMS key for your account is used.
1325
+ # For more information, see [Encrypt][1] in the *Key Management
1326
+ # Service API Reference*.
1327
+ #
1328
+ #
1329
+ #
1330
+ # [1]: https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html
1331
+ # @return [String]
1332
+ #
1333
+ # @!attribute [rw] lustre_configuration
1334
+ # The configuration for the Amazon File Cache resource being created.
1335
+ # @return [Types::CreateFileCacheLustreConfiguration]
1336
+ #
1337
+ # @!attribute [rw] data_repository_associations
1338
+ # A list of up to 8 configurations for data repository associations
1339
+ # (DRAs) to be created during the cache creation. The DRAs link the
1340
+ # cache to either an Amazon S3 data repository or a Network File
1341
+ # System (NFS) data repository that supports the NFSv3 protocol.
1342
+ #
1343
+ # The DRA configurations must meet the following requirements:
1344
+ #
1345
+ # * All configurations on the list must be of the same data repository
1346
+ # type, either all S3 or all NFS. A cache can't link to different
1347
+ # data repository types at the same time.
1348
+ #
1349
+ # * An NFS DRA must link to an NFS file system that supports the NFSv3
1350
+ # protocol.
1351
+ #
1352
+ # DRA automatic import and automatic export is not supported.
1353
+ # @return [Array<Types::FileCacheDataRepositoryAssociation>]
1354
+ #
1355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateFileCacheRequest AWS API Documentation
1356
+ #
1357
+ class CreateFileCacheRequest < Struct.new(
1358
+ :client_request_token,
1359
+ :file_cache_type,
1360
+ :file_cache_type_version,
1361
+ :storage_capacity,
1362
+ :subnet_ids,
1363
+ :security_group_ids,
1364
+ :tags,
1365
+ :copy_tags_to_data_repository_associations,
1366
+ :kms_key_id,
1367
+ :lustre_configuration,
1368
+ :data_repository_associations)
1369
+ SENSITIVE = []
1370
+ include Aws::Structure
1371
+ end
1372
+
1373
+ # @!attribute [rw] file_cache
1374
+ # A description of the cache that was created.
1375
+ # @return [Types::FileCacheCreating]
1376
+ #
1377
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateFileCacheResponse AWS API Documentation
1378
+ #
1379
+ class CreateFileCacheResponse < Struct.new(
1380
+ :file_cache)
1381
+ SENSITIVE = []
1382
+ include Aws::Structure
1383
+ end
1384
+
1162
1385
  # The request object for the `CreateFileSystemFromBackup` operation.
1163
1386
  #
1164
1387
  # @note When making an API call, you may pass CreateFileSystemFromBackupRequest
@@ -1260,6 +1483,7 @@ module Aws::FSx
1260
1483
  # read_only: false,
1261
1484
  # },
1262
1485
  # },
1486
+ # storage_capacity: 1,
1263
1487
  # }
1264
1488
  #
1265
1489
  # @!attribute [rw] backup_id
@@ -1390,6 +1614,19 @@ module Aws::FSx
1390
1614
  # The OpenZFS configuration for the file system that's being created.
1391
1615
  # @return [Types::CreateFileSystemOpenZFSConfiguration]
1392
1616
  #
1617
+ # @!attribute [rw] storage_capacity
1618
+ # Sets the storage capacity of the OpenZFS file system that you're
1619
+ # creating from a backup, in gibibytes (GiB). Valid values are from 64
1620
+ # GiB up to 524,288 GiB (512 TiB). However, the value that you specify
1621
+ # must be equal to or greater than the backup's storage capacity
1622
+ # value. If you don't use the `StorageCapacity` parameter, the
1623
+ # default is the backup's `StorageCapacity` value.
1624
+ #
1625
+ # If used to create a file system other than OpenZFS, you must provide
1626
+ # a value that matches the backup's `StorageCapacity` value. If you
1627
+ # provide any other value, Amazon FSx responds with a 400 Bad Request.
1628
+ # @return [Integer]
1629
+ #
1393
1630
  # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/CreateFileSystemFromBackupRequest AWS API Documentation
1394
1631
  #
1395
1632
  class CreateFileSystemFromBackupRequest < Struct.new(
@@ -1403,7 +1640,8 @@ module Aws::FSx
1403
1640
  :storage_type,
1404
1641
  :kms_key_id,
1405
1642
  :file_system_type_version,
1406
- :open_zfs_configuration)
1643
+ :open_zfs_configuration,
1644
+ :storage_capacity)
1407
1645
  SENSITIVE = []
1408
1646
  include Aws::Structure
1409
1647
  end
@@ -3241,8 +3479,9 @@ module Aws::FSx
3241
3479
  end
3242
3480
 
3243
3481
  # The configuration of a data repository association that links an
3244
- # Amazon FSx for Lustre file system to an Amazon S3 bucket. The data
3245
- # repository association configuration object is returned in the
3482
+ # Amazon FSx for Lustre file system to an Amazon S3 bucket or an Amazon
3483
+ # File Cache resource to an Amazon S3 bucket or an NFS file system. The
3484
+ # data repository association configuration object is returned in the
3246
3485
  # response of the following operations:
3247
3486
  #
3248
3487
  # * `CreateDataRepositoryAssociation`
@@ -3251,8 +3490,9 @@ module Aws::FSx
3251
3490
  #
3252
3491
  # * `DescribeDataRepositoryAssociations`
3253
3492
  #
3254
- # Data repository associations are supported only for file systems with
3255
- # the `Persistent_2` deployment type.
3493
+ # Data repository associations are supported only for an Amazon FSx for
3494
+ # Lustre file system with the `Persistent_2` deployment type and for an
3495
+ # Amazon File Cache resource.
3256
3496
  #
3257
3497
  # @!attribute [rw] association_id
3258
3498
  # The system-generated, unique ID of the data repository association.
@@ -3278,17 +3518,17 @@ module Aws::FSx
3278
3518
  # Describes the state of a data repository association. The lifecycle
3279
3519
  # can have the following values:
3280
3520
  #
3281
- # * `CREATING` - The data repository association between the FSx file
3282
- # system and the S3 data repository is being created. The data
3521
+ # * `CREATING` - The data repository association between the file
3522
+ # system or cache and the data repository is being created. The data
3283
3523
  # repository is unavailable.
3284
3524
  #
3285
3525
  # * `AVAILABLE` - The data repository association is available for
3286
3526
  # use.
3287
3527
  #
3288
- # * `MISCONFIGURED` - Amazon FSx cannot automatically import updates
3289
- # from the S3 bucket or automatically export updates to the S3
3290
- # bucket until the data repository association configuration is
3291
- # corrected.
3528
+ # * `MISCONFIGURED` - The data repository association is
3529
+ # misconfigured. Until the configuration is corrected, automatic
3530
+ # import and automatic export will not work (only for Amazon FSx for
3531
+ # Lustre).
3292
3532
  #
3293
3533
  # * `UPDATING` - The data repository association is undergoing a
3294
3534
  # customer initiated update that might affect its availability.
@@ -3306,14 +3546,14 @@ module Aws::FSx
3306
3546
  # @return [Types::DataRepositoryFailureDetails]
3307
3547
  #
3308
3548
  # @!attribute [rw] file_system_path
3309
- # A path on the file system that points to a high-level directory
3310
- # (such as `/ns1/`) or subdirectory (such as `/ns1/subdir/`) that will
3311
- # be mapped 1-1 with `DataRepositoryPath`. The leading forward slash
3312
- # in the name is required. Two data repository associations cannot
3313
- # have overlapping file system paths. For example, if a data
3314
- # repository is associated with file system path `/ns1/`, then you
3315
- # cannot link another data repository with file system path
3316
- # `/ns1/ns2`.
3549
+ # A path on the Amazon FSx for Lustre file system that points to a
3550
+ # high-level directory (such as `/ns1/`) or subdirectory (such as
3551
+ # `/ns1/subdir/`) that will be mapped 1-1 with `DataRepositoryPath`.
3552
+ # The leading forward slash in the name is required. Two data
3553
+ # repository associations cannot have overlapping file system paths.
3554
+ # For example, if a data repository is associated with file system
3555
+ # path `/ns1/`, then you cannot link another data repository with file
3556
+ # system path `/ns1/ns2`.
3317
3557
  #
3318
3558
  # This path specifies where in your file system files will be exported
3319
3559
  # from or imported to. This file system directory can be linked to
@@ -3321,24 +3561,49 @@ module Aws::FSx
3321
3561
  # the directory.
3322
3562
  #
3323
3563
  # <note markdown="1"> If you specify only a forward slash (`/`) as the file system path,
3324
- # you can link only 1 data repository to the file system. You can only
3325
- # specify "/" as the file system path for the first data repository
3326
- # associated with a file system.
3564
+ # you can link only one data repository to the file system. You can
3565
+ # only specify "/" as the file system path for the first data
3566
+ # repository associated with a file system.
3327
3567
  #
3328
3568
  # </note>
3329
3569
  # @return [String]
3330
3570
  #
3331
3571
  # @!attribute [rw] data_repository_path
3332
- # The path to the Amazon S3 data repository that will be linked to the
3333
- # file system. The path can be an S3 bucket or prefix in the format
3334
- # `s3://myBucket/myPrefix/`. This path specifies where in the S3 data
3335
- # repository files will be imported from or exported to.
3572
+ # The path to the data repository that will be linked to the cache or
3573
+ # file system.
3574
+ #
3575
+ # * For Amazon File Cache, the path can be an NFS data repository that
3576
+ # will be linked to the cache. The path can be in one of two
3577
+ # formats:
3578
+ #
3579
+ # * If you are not using the `DataRepositorySubdirectories`
3580
+ # parameter, the path is to an NFS Export directory (or one of its
3581
+ # subdirectories) in the format
3582
+ # `nsf://nfs-domain-name/exportpath`. You can therefore link a
3583
+ # single NFS Export to a single data repository association.
3584
+ #
3585
+ # * If you are using the `DataRepositorySubdirectories` parameter,
3586
+ # the path is the domain name of the NFS file system in the format
3587
+ # `nfs://filer-domain-name`, which indicates the root of the
3588
+ # subdirectories specified with the `DataRepositorySubdirectories`
3589
+ # parameter.
3590
+ #
3591
+ # * For Amazon File Cache, the path can be an S3 bucket or prefix in
3592
+ # the format `s3://myBucket/myPrefix/`.
3593
+ #
3594
+ # * For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
3595
+ # in the format `s3://myBucket/myPrefix/`.
3336
3596
  # @return [String]
3337
3597
  #
3338
3598
  # @!attribute [rw] batch_import_meta_data_on_create
3339
3599
  # A boolean flag indicating whether an import data repository task to
3340
3600
  # import metadata should run after the data repository association is
3341
3601
  # created. The task runs if this flag is set to `true`.
3602
+ #
3603
+ # <note markdown="1"> `BatchImportMetaDataOnCreate` is not supported for data repositories
3604
+ # linked to an Amazon File Cache resource.
3605
+ #
3606
+ # </note>
3342
3607
  # @return [Boolean]
3343
3608
  #
3344
3609
  # @!attribute [rw] imported_file_chunk_size
@@ -3346,7 +3611,7 @@ module Aws::FSx
3346
3611
  # stripe count and maximum amount of data per file (in MiB) stored on
3347
3612
  # a single physical disk. The maximum number of disks that a single
3348
3613
  # file can be striped across is limited by the total number of disks
3349
- # that make up the file system.
3614
+ # that make up the file system or cache.
3350
3615
  #
3351
3616
  # The default chunk size is 1,024 MiB (1 GiB) and can go as high as
3352
3617
  # 512,000 MiB (500 GiB). Amazon S3 objects have a maximum size of 5
@@ -3355,11 +3620,8 @@ module Aws::FSx
3355
3620
  #
3356
3621
  # @!attribute [rw] s3
3357
3622
  # The configuration for an Amazon S3 data repository linked to an
3358
- # Amazon FSx Lustre file system with a data repository association.
3359
- # The configuration defines which file events (new, changed, or
3360
- # deleted files or directories) are automatically imported from the
3361
- # linked data repository to the file system or automatically exported
3362
- # from the file system to the data repository.
3623
+ # Amazon FSx for Lustre file system with a data repository
3624
+ # association.
3363
3625
  # @return [Types::S3DataRepositoryConfiguration]
3364
3626
  #
3365
3627
  # @!attribute [rw] tags
@@ -3371,6 +3633,49 @@ module Aws::FSx
3371
3633
  # 1970-01-01T00:00:00Z), also known as Unix time.
3372
3634
  # @return [Time]
3373
3635
  #
3636
+ # @!attribute [rw] file_cache_id
3637
+ # The globally unique ID of the Amazon File Cache resource.
3638
+ # @return [String]
3639
+ #
3640
+ # @!attribute [rw] file_cache_path
3641
+ # A path on the Amazon File Cache that points to a high-level
3642
+ # directory (such as `/ns1/`) or subdirectory (such as `/ns1/subdir/`)
3643
+ # that will be mapped 1-1 with `DataRepositoryPath`. The leading
3644
+ # forward slash in the path is required. Two data repository
3645
+ # associations cannot have overlapping cache paths. For example, if a
3646
+ # data repository is associated with cache path `/ns1/`, then you
3647
+ # cannot link another data repository with cache path `/ns1/ns2`.
3648
+ #
3649
+ # This path specifies the directory in your cache where files will be
3650
+ # exported from. This cache directory can be linked to only one data
3651
+ # repository (S3 or NFS) and no other data repository can be linked to
3652
+ # the directory.
3653
+ #
3654
+ # <note markdown="1"> The cache path can only be set to root (/) on an NFS DRA when
3655
+ # `DataRepositorySubdirectories` is specified. If you specify root (/)
3656
+ # as the cache path, you can create only one DRA on the cache.
3657
+ #
3658
+ # The cache path cannot be set to root (/) for an S3 DRA.
3659
+ #
3660
+ # </note>
3661
+ # @return [String]
3662
+ #
3663
+ # @!attribute [rw] data_repository_subdirectories
3664
+ # For Amazon File Cache, a list of NFS Exports that will be linked
3665
+ # with an NFS data repository association. All the subdirectories must
3666
+ # be on a single NFS file system. The Export paths are in the format
3667
+ # `/exportpath1`. To use this parameter, you must configure
3668
+ # `DataRepositoryPath` as the domain name of the NFS file system. The
3669
+ # NFS file system domain name in effect is the root of the
3670
+ # subdirectories. Note that `DataRepositorySubdirectories` is not
3671
+ # supported for S3 data repositories.
3672
+ # @return [Array<String>]
3673
+ #
3674
+ # @!attribute [rw] nfs
3675
+ # The configuration for an NFS data repository linked to an Amazon
3676
+ # File Cache resource with a data repository association.
3677
+ # @return [Types::NFSDataRepositoryConfiguration]
3678
+ #
3374
3679
  # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DataRepositoryAssociation AWS API Documentation
3375
3680
  #
3376
3681
  class DataRepositoryAssociation < Struct.new(
@@ -3385,7 +3690,11 @@ module Aws::FSx
3385
3690
  :imported_file_chunk_size,
3386
3691
  :s3,
3387
3692
  :tags,
3388
- :creation_time)
3693
+ :creation_time,
3694
+ :file_cache_id,
3695
+ :file_cache_path,
3696
+ :data_repository_subdirectories,
3697
+ :nfs)
3389
3698
  SENSITIVE = []
3390
3699
  include Aws::Structure
3391
3700
  end
@@ -3524,8 +3833,9 @@ module Aws::FSx
3524
3833
  end
3525
3834
 
3526
3835
  # A description of the data repository task. You use data repository
3527
- # tasks to perform bulk transfer operations between your Amazon FSx file
3528
- # system and a linked data repository.
3836
+ # tasks to perform bulk transfer operations between an Amazon FSx for
3837
+ # Lustre file system and a linked data repository. An Amazon File Cache
3838
+ # resource uses a task to automatically release files from the cache.
3529
3839
  #
3530
3840
  # @!attribute [rw] task_id
3531
3841
  # The system-generated, unique 17-digit ID of the data repository
@@ -3535,20 +3845,20 @@ module Aws::FSx
3535
3845
  # @!attribute [rw] lifecycle
3536
3846
  # The lifecycle status of the data repository task, as follows:
3537
3847
  #
3538
- # * `PENDING` - Amazon FSx has not started the task.
3848
+ # * `PENDING` - The task has not started.
3539
3849
  #
3540
- # * `EXECUTING` - Amazon FSx is processing the task.
3850
+ # * `EXECUTING` - The task is in process.
3541
3851
  #
3542
- # * `FAILED` - Amazon FSx was not able to complete the task. For
3543
- # example, there may be files the task failed to process. The
3852
+ # * `FAILED` - The task was not able to be completed. For example,
3853
+ # there may be files the task failed to process. The
3544
3854
  # DataRepositoryTaskFailureDetails property provides more
3545
3855
  # information about task failures.
3546
3856
  #
3547
- # * `SUCCEEDED` - FSx completed the task successfully.
3857
+ # * `SUCCEEDED` - The task has completed successfully.
3548
3858
  #
3549
- # * `CANCELED` - Amazon FSx canceled the task and it did not complete.
3859
+ # * `CANCELED` - The task was canceled and it did not complete.
3550
3860
  #
3551
- # * `CANCELING` - FSx is in process of canceling the task.
3861
+ # * `CANCELING` - The task is in process of being canceled.
3552
3862
  #
3553
3863
  # <note markdown="1"> You cannot delete an FSx for Lustre file system if there are data
3554
3864
  # repository tasks for the file system in the `PENDING` or `EXECUTING`
@@ -3564,12 +3874,14 @@ module Aws::FSx
3564
3874
  # @!attribute [rw] type
3565
3875
  # The type of data repository task.
3566
3876
  #
3567
- # * The `EXPORT_TO_REPOSITORY` data repository task exports from your
3568
- # Lustre file system from to a linked S3 bucket.
3877
+ # * `EXPORT_TO_REPOSITORY` tasks export from your Amazon FSx for
3878
+ # Lustre file system to a linked data repository.
3569
3879
  #
3570
- # * The `IMPORT_METADATA_FROM_REPOSITORY` data repository task imports
3571
- # metadata changes from a linked S3 bucket to your Lustre file
3572
- # system.
3880
+ # * `IMPORT_METADATA_FROM_REPOSITORY` tasks import metadata changes
3881
+ # from a linked S3 bucket to your Amazon FSx for Lustre file system.
3882
+ #
3883
+ # * `AUTO_RELEASE_DATA` tasks automatically release files from an
3884
+ # Amazon File Cache resource.
3573
3885
  # @return [String]
3574
3886
  #
3575
3887
  # @!attribute [rw] creation_time
@@ -3578,12 +3890,12 @@ module Aws::FSx
3578
3890
  # @return [Time]
3579
3891
  #
3580
3892
  # @!attribute [rw] start_time
3581
- # The time that Amazon FSx began processing the task.
3893
+ # The time the system began processing the task.
3582
3894
  # @return [Time]
3583
3895
  #
3584
3896
  # @!attribute [rw] end_time
3585
- # The time that Amazon FSx completed processing the task, populated
3586
- # after the task is complete.
3897
+ # The time the system completed processing the task, populated after
3898
+ # the task is complete.
3587
3899
  # @return [Time]
3588
3900
  #
3589
3901
  # @!attribute [rw] resource_arn
@@ -3603,14 +3915,13 @@ module Aws::FSx
3603
3915
  # @return [Array<Types::Tag>]
3604
3916
  #
3605
3917
  # @!attribute [rw] file_system_id
3606
- # The globally unique ID of the file system, assigned by Amazon FSx.
3918
+ # The globally unique ID of the file system.
3607
3919
  # @return [String]
3608
3920
  #
3609
3921
  # @!attribute [rw] paths
3610
- # An array of paths on the Amazon FSx for Lustre file system that
3611
- # specify the data for the data repository task to process. For
3612
- # example, in an EXPORT\_TO\_REPOSITORY task, the paths specify which
3613
- # data to export to the linked data repository.
3922
+ # An array of paths that specify the data for the data repository task
3923
+ # to process. For example, in an EXPORT\_TO\_REPOSITORY task, the
3924
+ # paths specify which data to export to the linked data repository.
3614
3925
  #
3615
3926
  # (Default) If `Paths` is not specified, Amazon FSx uses the file
3616
3927
  # system root directory.
@@ -3635,6 +3946,16 @@ module Aws::FSx
3635
3946
  # gets generated for a task using the `Enabled` parameter.
3636
3947
  # @return [Types::CompletionReport]
3637
3948
  #
3949
+ # @!attribute [rw] capacity_to_release
3950
+ # Specifies the amount of data to release, in GiB, by an Amazon File
3951
+ # Cache AUTO\_RELEASE\_DATA task that automatically releases files
3952
+ # from the cache.
3953
+ # @return [Integer]
3954
+ #
3955
+ # @!attribute [rw] file_cache_id
3956
+ # The system-generated, unique ID of the cache.
3957
+ # @return [String]
3958
+ #
3638
3959
  # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DataRepositoryTask AWS API Documentation
3639
3960
  #
3640
3961
  class DataRepositoryTask < Struct.new(
@@ -3650,7 +3971,9 @@ module Aws::FSx
3650
3971
  :paths,
3651
3972
  :failure_details,
3652
3973
  :status,
3653
- :report)
3974
+ :report,
3975
+ :capacity_to_release,
3976
+ :file_cache_id)
3654
3977
  SENSITIVE = []
3655
3978
  include Aws::Structure
3656
3979
  end
@@ -3711,7 +4034,7 @@ module Aws::FSx
3711
4034
  # data as a hash:
3712
4035
  #
3713
4036
  # {
3714
- # name: "file-system-id", # accepts file-system-id, task-lifecycle, data-repository-association-id
4037
+ # name: "file-system-id", # accepts file-system-id, task-lifecycle, data-repository-association-id, file-cache-id
3715
4038
  # values: ["DataRepositoryTaskFilterValue"],
3716
4039
  # }
3717
4040
  #
@@ -3780,13 +4103,20 @@ module Aws::FSx
3780
4103
  # The time at which the task status was last updated.
3781
4104
  # @return [Time]
3782
4105
  #
4106
+ # @!attribute [rw] released_capacity
4107
+ # The total amount of data, in GiB, released by an Amazon File Cache
4108
+ # AUTO\_RELEASE\_DATA task that automatically releases files from the
4109
+ # cache.
4110
+ # @return [Integer]
4111
+ #
3783
4112
  # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DataRepositoryTaskStatus AWS API Documentation
3784
4113
  #
3785
4114
  class DataRepositoryTaskStatus < Struct.new(
3786
4115
  :total_count,
3787
4116
  :succeeded_count,
3788
4117
  :failed_count,
3789
- :last_updated_time)
4118
+ :last_updated_time,
4119
+ :released_capacity)
3790
4120
  SENSITIVE = []
3791
4121
  include Aws::Structure
3792
4122
  end
@@ -3849,7 +4179,7 @@ module Aws::FSx
3849
4179
  # {
3850
4180
  # association_id: "DataRepositoryAssociationId", # required
3851
4181
  # client_request_token: "ClientRequestToken",
3852
- # delete_data_in_file_system: false, # required
4182
+ # delete_data_in_file_system: false,
3853
4183
  # }
3854
4184
  #
3855
4185
  # @!attribute [rw] association_id
@@ -3905,6 +4235,56 @@ module Aws::FSx
3905
4235
  include Aws::Structure
3906
4236
  end
3907
4237
 
4238
+ # @note When making an API call, you may pass DeleteFileCacheRequest
4239
+ # data as a hash:
4240
+ #
4241
+ # {
4242
+ # file_cache_id: "FileCacheId", # required
4243
+ # client_request_token: "ClientRequestToken",
4244
+ # }
4245
+ #
4246
+ # @!attribute [rw] file_cache_id
4247
+ # The ID of the cache that's being deleted.
4248
+ # @return [String]
4249
+ #
4250
+ # @!attribute [rw] client_request_token
4251
+ # (Optional) An idempotency token for resource creation, in a string
4252
+ # of up to 64 ASCII characters. This token is automatically filled on
4253
+ # your behalf when you use the Command Line Interface (CLI) or an
4254
+ # Amazon Web Services SDK.
4255
+ #
4256
+ # **A suitable default value is auto-generated.** You should normally
4257
+ # not need to pass this option.
4258
+ # @return [String]
4259
+ #
4260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DeleteFileCacheRequest AWS API Documentation
4261
+ #
4262
+ class DeleteFileCacheRequest < Struct.new(
4263
+ :file_cache_id,
4264
+ :client_request_token)
4265
+ SENSITIVE = []
4266
+ include Aws::Structure
4267
+ end
4268
+
4269
+ # @!attribute [rw] file_cache_id
4270
+ # The ID of the cache that's being deleted.
4271
+ # @return [String]
4272
+ #
4273
+ # @!attribute [rw] lifecycle
4274
+ # The cache lifecycle for the deletion request. If the
4275
+ # `DeleteFileCache` operation is successful, this status is
4276
+ # `DELETING`.
4277
+ # @return [String]
4278
+ #
4279
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DeleteFileCacheResponse AWS API Documentation
4280
+ #
4281
+ class DeleteFileCacheResponse < Struct.new(
4282
+ :file_cache_id,
4283
+ :lifecycle)
4284
+ SENSITIVE = []
4285
+ include Aws::Structure
4286
+ end
4287
+
3908
4288
  # The configuration object for the Amazon FSx for Lustre file system
3909
4289
  # being deleted in the `DeleteFileSystem` operation.
3910
4290
  #
@@ -4477,7 +4857,7 @@ module Aws::FSx
4477
4857
  # backup_ids: ["BackupId"],
4478
4858
  # filters: [
4479
4859
  # {
4480
- # name: "file-system-id", # accepts file-system-id, backup-type, file-system-type, volume-id, data-repository-type
4860
+ # name: "file-system-id", # accepts file-system-id, backup-type, file-system-type, volume-id, data-repository-type, file-cache-id, file-cache-type
4481
4861
  # values: ["FilterValue"],
4482
4862
  # },
4483
4863
  # ],
@@ -4549,7 +4929,7 @@ module Aws::FSx
4549
4929
  # association_ids: ["DataRepositoryAssociationId"],
4550
4930
  # filters: [
4551
4931
  # {
4552
- # name: "file-system-id", # accepts file-system-id, backup-type, file-system-type, volume-id, data-repository-type
4932
+ # name: "file-system-id", # accepts file-system-id, backup-type, file-system-type, volume-id, data-repository-type, file-cache-id, file-cache-type
4553
4933
  # values: ["FilterValue"],
4554
4934
  # },
4555
4935
  # ],
@@ -4590,7 +4970,7 @@ module Aws::FSx
4590
4970
  end
4591
4971
 
4592
4972
  # @!attribute [rw] associations
4593
- # An array of one ore more data repository association descriptions.
4973
+ # An array of one or more data repository association descriptions.
4594
4974
  # @return [Array<Types::DataRepositoryAssociation>]
4595
4975
  #
4596
4976
  # @!attribute [rw] next_token
@@ -4616,7 +4996,7 @@ module Aws::FSx
4616
4996
  # task_ids: ["TaskId"],
4617
4997
  # filters: [
4618
4998
  # {
4619
- # name: "file-system-id", # accepts file-system-id, task-lifecycle, data-repository-association-id
4999
+ # name: "file-system-id", # accepts file-system-id, task-lifecycle, data-repository-association-id, file-cache-id
4620
5000
  # values: ["DataRepositoryTaskFilterValue"],
4621
5001
  # },
4622
5002
  # ],
@@ -4678,31 +5058,86 @@ module Aws::FSx
4678
5058
  include Aws::Structure
4679
5059
  end
4680
5060
 
4681
- # The request object for `DescribeFileSystemAliases` operation.
4682
- #
4683
- # @note When making an API call, you may pass DescribeFileSystemAliasesRequest
5061
+ # @note When making an API call, you may pass DescribeFileCachesRequest
4684
5062
  # data as a hash:
4685
5063
  #
4686
5064
  # {
4687
- # client_request_token: "ClientRequestToken",
4688
- # file_system_id: "FileSystemId", # required
5065
+ # file_cache_ids: ["FileCacheId"],
4689
5066
  # max_results: 1,
4690
5067
  # next_token: "NextToken",
4691
5068
  # }
4692
5069
  #
4693
- # @!attribute [rw] client_request_token
4694
- # (Optional) An idempotency token for resource creation, in a string
4695
- # of up to 64 ASCII characters. This token is automatically filled on
4696
- # your behalf when you use the Command Line Interface (CLI) or an
4697
- # Amazon Web Services SDK.
5070
+ # @!attribute [rw] file_cache_ids
5071
+ # IDs of the caches whose descriptions you want to retrieve (String).
5072
+ # @return [Array<String>]
4698
5073
  #
4699
- # **A suitable default value is auto-generated.** You should normally
4700
- # not need to pass this option.
4701
- # @return [String]
5074
+ # @!attribute [rw] max_results
5075
+ # The maximum number of resources to return in the response. This
5076
+ # value must be an integer greater than zero.
5077
+ # @return [Integer]
4702
5078
  #
4703
- # @!attribute [rw] file_system_id
4704
- # The ID of the file system to return the associated DNS aliases for
4705
- # (String).
5079
+ # @!attribute [rw] next_token
5080
+ # (Optional) Opaque pagination token returned from a previous
5081
+ # operation (String). If present, this token indicates from what point
5082
+ # you can continue processing the request, where the previous
5083
+ # `NextToken` value left off.
5084
+ # @return [String]
5085
+ #
5086
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeFileCachesRequest AWS API Documentation
5087
+ #
5088
+ class DescribeFileCachesRequest < Struct.new(
5089
+ :file_cache_ids,
5090
+ :max_results,
5091
+ :next_token)
5092
+ SENSITIVE = []
5093
+ include Aws::Structure
5094
+ end
5095
+
5096
+ # @!attribute [rw] file_caches
5097
+ # The response object for the `DescribeFileCaches` operation.
5098
+ # @return [Array<Types::FileCache>]
5099
+ #
5100
+ # @!attribute [rw] next_token
5101
+ # (Optional) Opaque pagination token returned from a previous
5102
+ # operation (String). If present, this token indicates from what point
5103
+ # you can continue processing the request, where the previous
5104
+ # `NextToken` value left off.
5105
+ # @return [String]
5106
+ #
5107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/DescribeFileCachesResponse AWS API Documentation
5108
+ #
5109
+ class DescribeFileCachesResponse < Struct.new(
5110
+ :file_caches,
5111
+ :next_token)
5112
+ SENSITIVE = []
5113
+ include Aws::Structure
5114
+ end
5115
+
5116
+ # The request object for `DescribeFileSystemAliases` operation.
5117
+ #
5118
+ # @note When making an API call, you may pass DescribeFileSystemAliasesRequest
5119
+ # data as a hash:
5120
+ #
5121
+ # {
5122
+ # client_request_token: "ClientRequestToken",
5123
+ # file_system_id: "FileSystemId", # required
5124
+ # max_results: 1,
5125
+ # next_token: "NextToken",
5126
+ # }
5127
+ #
5128
+ # @!attribute [rw] client_request_token
5129
+ # (Optional) An idempotency token for resource creation, in a string
5130
+ # of up to 64 ASCII characters. This token is automatically filled on
5131
+ # your behalf when you use the Command Line Interface (CLI) or an
5132
+ # Amazon Web Services SDK.
5133
+ #
5134
+ # **A suitable default value is auto-generated.** You should normally
5135
+ # not need to pass this option.
5136
+ # @return [String]
5137
+ #
5138
+ # @!attribute [rw] file_system_id
5139
+ # The ID of the file system to return the associated DNS aliases for
5140
+ # (String).
4706
5141
  # @return [String]
4707
5142
  #
4708
5143
  # @!attribute [rw] max_results
@@ -5112,6 +5547,515 @@ module Aws::FSx
5112
5547
  include Aws::Structure
5113
5548
  end
5114
5549
 
5550
+ # A description of a specific Amazon File Cache resource, which is a
5551
+ # response object from the `DescribeFileCaches` operation.
5552
+ #
5553
+ # @!attribute [rw] owner_id
5554
+ # An Amazon Web Services account ID. This ID is a 12-digit number that
5555
+ # you use to construct Amazon Resource Names (ARNs) for resources.
5556
+ # @return [String]
5557
+ #
5558
+ # @!attribute [rw] creation_time
5559
+ # The time that the resource was created, in seconds (since
5560
+ # 1970-01-01T00:00:00Z), also known as Unix time.
5561
+ # @return [Time]
5562
+ #
5563
+ # @!attribute [rw] file_cache_id
5564
+ # The system-generated, unique ID of the cache.
5565
+ # @return [String]
5566
+ #
5567
+ # @!attribute [rw] file_cache_type
5568
+ # The type of cache, which must be `LUSTRE`.
5569
+ # @return [String]
5570
+ #
5571
+ # @!attribute [rw] file_cache_type_version
5572
+ # The Lustre version of the cache, which must be `2.12`.
5573
+ # @return [String]
5574
+ #
5575
+ # @!attribute [rw] lifecycle
5576
+ # The lifecycle status of the cache. The following are the possible
5577
+ # values and what they mean:
5578
+ #
5579
+ # * `AVAILABLE` - The cache is in a healthy state, and is reachable
5580
+ # and available for use.
5581
+ #
5582
+ # * `CREATING` - The new cache is being created.
5583
+ #
5584
+ # * `DELETING` - An existing cache is being deleted.
5585
+ #
5586
+ # * `UPDATING` - The cache is undergoing a customer-initiated update.
5587
+ #
5588
+ # * `FAILED` - An existing cache has experienced an unrecoverable
5589
+ # failure. When creating a new cache, the cache was unable to be
5590
+ # created.
5591
+ # @return [String]
5592
+ #
5593
+ # @!attribute [rw] failure_details
5594
+ # A structure providing details of any failures that occurred.
5595
+ # @return [Types::FileCacheFailureDetails]
5596
+ #
5597
+ # @!attribute [rw] storage_capacity
5598
+ # The storage capacity of the cache in gibibytes (GiB).
5599
+ # @return [Integer]
5600
+ #
5601
+ # @!attribute [rw] vpc_id
5602
+ # The ID of your virtual private cloud (VPC). For more information,
5603
+ # see [VPC and subnets][1] in the *Amazon VPC User Guide*.
5604
+ #
5605
+ #
5606
+ #
5607
+ # [1]: https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html
5608
+ # @return [String]
5609
+ #
5610
+ # @!attribute [rw] subnet_ids
5611
+ # A list of subnet IDs that the cache will be accessible from. You can
5612
+ # specify only one subnet ID in a call to the `CreateFileCache`
5613
+ # operation.
5614
+ # @return [Array<String>]
5615
+ #
5616
+ # @!attribute [rw] network_interface_ids
5617
+ # A list of network interface IDs.
5618
+ # @return [Array<String>]
5619
+ #
5620
+ # @!attribute [rw] dns_name
5621
+ # The Domain Name System (DNS) name for the cache.
5622
+ # @return [String]
5623
+ #
5624
+ # @!attribute [rw] kms_key_id
5625
+ # Specifies the ID of the Key Management Service (KMS) key to use for
5626
+ # encrypting data on an Amazon File Cache. If a `KmsKeyId` isn't
5627
+ # specified, the Amazon FSx-managed KMS key for your account is used.
5628
+ # For more information, see [Encrypt][1] in the *Key Management
5629
+ # Service API Reference*.
5630
+ #
5631
+ #
5632
+ #
5633
+ # [1]: https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html
5634
+ # @return [String]
5635
+ #
5636
+ # @!attribute [rw] resource_arn
5637
+ # The Amazon Resource Name (ARN) for a given resource. ARNs uniquely
5638
+ # identify Amazon Web Services resources. We require an ARN when you
5639
+ # need to specify a resource unambiguously across all of Amazon Web
5640
+ # Services. For more information, see [Amazon Resource Names
5641
+ # (ARNs)][1] in the *Amazon Web Services General Reference*.
5642
+ #
5643
+ #
5644
+ #
5645
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
5646
+ # @return [String]
5647
+ #
5648
+ # @!attribute [rw] lustre_configuration
5649
+ # The configuration for the Amazon File Cache resource.
5650
+ # @return [Types::FileCacheLustreConfiguration]
5651
+ #
5652
+ # @!attribute [rw] data_repository_association_ids
5653
+ # A list of IDs of data repository associations that are associated
5654
+ # with this cache.
5655
+ # @return [Array<String>]
5656
+ #
5657
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCache AWS API Documentation
5658
+ #
5659
+ class FileCache < Struct.new(
5660
+ :owner_id,
5661
+ :creation_time,
5662
+ :file_cache_id,
5663
+ :file_cache_type,
5664
+ :file_cache_type_version,
5665
+ :lifecycle,
5666
+ :failure_details,
5667
+ :storage_capacity,
5668
+ :vpc_id,
5669
+ :subnet_ids,
5670
+ :network_interface_ids,
5671
+ :dns_name,
5672
+ :kms_key_id,
5673
+ :resource_arn,
5674
+ :lustre_configuration,
5675
+ :data_repository_association_ids)
5676
+ SENSITIVE = []
5677
+ include Aws::Structure
5678
+ end
5679
+
5680
+ # The response object for the Amazon File Cache resource being created
5681
+ # in the `CreateFileCache` operation.
5682
+ #
5683
+ # @!attribute [rw] owner_id
5684
+ # An Amazon Web Services account ID. This ID is a 12-digit number that
5685
+ # you use to construct Amazon Resource Names (ARNs) for resources.
5686
+ # @return [String]
5687
+ #
5688
+ # @!attribute [rw] creation_time
5689
+ # The time that the resource was created, in seconds (since
5690
+ # 1970-01-01T00:00:00Z), also known as Unix time.
5691
+ # @return [Time]
5692
+ #
5693
+ # @!attribute [rw] file_cache_id
5694
+ # The system-generated, unique ID of the cache.
5695
+ # @return [String]
5696
+ #
5697
+ # @!attribute [rw] file_cache_type
5698
+ # The type of cache, which must be `LUSTRE`.
5699
+ # @return [String]
5700
+ #
5701
+ # @!attribute [rw] file_cache_type_version
5702
+ # The Lustre version of the cache, which must be `2.12`.
5703
+ # @return [String]
5704
+ #
5705
+ # @!attribute [rw] lifecycle
5706
+ # The lifecycle status of the cache. The following are the possible
5707
+ # values and what they mean:
5708
+ #
5709
+ # * `AVAILABLE` - The cache is in a healthy state, and is reachable
5710
+ # and available for use.
5711
+ #
5712
+ # * `CREATING` - The new cache is being created.
5713
+ #
5714
+ # * `DELETING` - An existing cache is being deleted.
5715
+ #
5716
+ # * `UPDATING` - The cache is undergoing a customer-initiated update.
5717
+ #
5718
+ # * `FAILED` - An existing cache has experienced an unrecoverable
5719
+ # failure. When creating a new cache, the cache was unable to be
5720
+ # created.
5721
+ # @return [String]
5722
+ #
5723
+ # @!attribute [rw] failure_details
5724
+ # A structure providing details of any failures that occurred.
5725
+ # @return [Types::FileCacheFailureDetails]
5726
+ #
5727
+ # @!attribute [rw] storage_capacity
5728
+ # The storage capacity of the cache in gibibytes (GiB).
5729
+ # @return [Integer]
5730
+ #
5731
+ # @!attribute [rw] vpc_id
5732
+ # The ID of your virtual private cloud (VPC). For more information,
5733
+ # see [VPC and subnets][1] in the *Amazon VPC User Guide*.
5734
+ #
5735
+ #
5736
+ #
5737
+ # [1]: https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html
5738
+ # @return [String]
5739
+ #
5740
+ # @!attribute [rw] subnet_ids
5741
+ # A list of subnet IDs that the cache will be accessible from. You can
5742
+ # specify only one subnet ID in a call to the `CreateFileCache`
5743
+ # operation.
5744
+ # @return [Array<String>]
5745
+ #
5746
+ # @!attribute [rw] network_interface_ids
5747
+ # A list of network interface IDs.
5748
+ # @return [Array<String>]
5749
+ #
5750
+ # @!attribute [rw] dns_name
5751
+ # The Domain Name System (DNS) name for the cache.
5752
+ # @return [String]
5753
+ #
5754
+ # @!attribute [rw] kms_key_id
5755
+ # Specifies the ID of the Key Management Service (KMS) key to use for
5756
+ # encrypting data on an Amazon File Cache. If a `KmsKeyId` isn't
5757
+ # specified, the Amazon FSx-managed KMS key for your account is used.
5758
+ # For more information, see [Encrypt][1] in the *Key Management
5759
+ # Service API Reference*.
5760
+ #
5761
+ #
5762
+ #
5763
+ # [1]: https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html
5764
+ # @return [String]
5765
+ #
5766
+ # @!attribute [rw] resource_arn
5767
+ # The Amazon Resource Name (ARN) for a given resource. ARNs uniquely
5768
+ # identify Amazon Web Services resources. We require an ARN when you
5769
+ # need to specify a resource unambiguously across all of Amazon Web
5770
+ # Services. For more information, see [Amazon Resource Names
5771
+ # (ARNs)][1] in the *Amazon Web Services General Reference*.
5772
+ #
5773
+ #
5774
+ #
5775
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
5776
+ # @return [String]
5777
+ #
5778
+ # @!attribute [rw] tags
5779
+ # A list of `Tag` values, with a maximum of 50 elements.
5780
+ # @return [Array<Types::Tag>]
5781
+ #
5782
+ # @!attribute [rw] copy_tags_to_data_repository_associations
5783
+ # A boolean flag indicating whether tags for the cache should be
5784
+ # copied to data repository associations.
5785
+ # @return [Boolean]
5786
+ #
5787
+ # @!attribute [rw] lustre_configuration
5788
+ # The configuration for the Amazon File Cache resource.
5789
+ # @return [Types::FileCacheLustreConfiguration]
5790
+ #
5791
+ # @!attribute [rw] data_repository_association_ids
5792
+ # A list of IDs of data repository associations that are associated
5793
+ # with this cache.
5794
+ # @return [Array<String>]
5795
+ #
5796
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheCreating AWS API Documentation
5797
+ #
5798
+ class FileCacheCreating < Struct.new(
5799
+ :owner_id,
5800
+ :creation_time,
5801
+ :file_cache_id,
5802
+ :file_cache_type,
5803
+ :file_cache_type_version,
5804
+ :lifecycle,
5805
+ :failure_details,
5806
+ :storage_capacity,
5807
+ :vpc_id,
5808
+ :subnet_ids,
5809
+ :network_interface_ids,
5810
+ :dns_name,
5811
+ :kms_key_id,
5812
+ :resource_arn,
5813
+ :tags,
5814
+ :copy_tags_to_data_repository_associations,
5815
+ :lustre_configuration,
5816
+ :data_repository_association_ids)
5817
+ SENSITIVE = []
5818
+ include Aws::Structure
5819
+ end
5820
+
5821
+ # The configuration for a data repository association (DRA) to be
5822
+ # created during the Amazon File Cache resource creation. The DRA links
5823
+ # the cache to either an Amazon S3 bucket or prefix, or a Network File
5824
+ # System (NFS) data repository that supports the NFSv3 protocol.
5825
+ #
5826
+ # The DRA does not support automatic import or automatic export.
5827
+ #
5828
+ # @note When making an API call, you may pass FileCacheDataRepositoryAssociation
5829
+ # data as a hash:
5830
+ #
5831
+ # {
5832
+ # file_cache_path: "Namespace", # required
5833
+ # data_repository_path: "ArchivePath", # required
5834
+ # data_repository_subdirectories: ["Namespace"],
5835
+ # nfs: {
5836
+ # version: "NFS3", # required, accepts NFS3
5837
+ # dns_ips: ["IpAddress"],
5838
+ # },
5839
+ # }
5840
+ #
5841
+ # @!attribute [rw] file_cache_path
5842
+ # A path on the cache that points to a high-level directory (such as
5843
+ # `/ns1/`) or subdirectory (such as `/ns1/subdir/`) that will be
5844
+ # mapped 1-1 with `DataRepositoryPath`. The leading forward slash in
5845
+ # the name is required. Two data repository associations cannot have
5846
+ # overlapping cache paths. For example, if a data repository is
5847
+ # associated with cache path `/ns1/`, then you cannot link another
5848
+ # data repository with cache path `/ns1/ns2`.
5849
+ #
5850
+ # This path specifies where in your cache files will be exported from.
5851
+ # This cache directory can be linked to only one data repository, and
5852
+ # no data repository other can be linked to the directory.
5853
+ #
5854
+ # <note markdown="1"> The cache path can only be set to root (/) on an NFS DRA when
5855
+ # `DataRepositorySubdirectories` is specified. If you specify root (/)
5856
+ # as the cache path, you can create only one DRA on the cache.
5857
+ #
5858
+ # The cache path cannot be set to root (/) for an S3 DRA.
5859
+ #
5860
+ # </note>
5861
+ # @return [String]
5862
+ #
5863
+ # @!attribute [rw] data_repository_path
5864
+ # The path to the S3 or NFS data repository that links to the cache.
5865
+ # You must provide one of the following paths:
5866
+ #
5867
+ # * The path can be an NFS data repository that links to the cache.
5868
+ # The path can be in one of two formats:
5869
+ #
5870
+ # * If you are not using the `DataRepositorySubdirectories`
5871
+ # parameter, the path is to an NFS Export directory (or one of its
5872
+ # subdirectories) in the format
5873
+ # `nsf://nfs-domain-name/exportpath`. You can therefore link a
5874
+ # single NFS Export to a single data repository association.
5875
+ #
5876
+ # * If you are using the `DataRepositorySubdirectories` parameter,
5877
+ # the path is the domain name of the NFS file system in the format
5878
+ # `nfs://filer-domain-name`, which indicates the root of the
5879
+ # subdirectories specified with the `DataRepositorySubdirectories`
5880
+ # parameter.
5881
+ #
5882
+ # * The path can be an S3 bucket or prefix in the format
5883
+ # `s3://myBucket/myPrefix/`.
5884
+ # @return [String]
5885
+ #
5886
+ # @!attribute [rw] data_repository_subdirectories
5887
+ # A list of NFS Exports that will be linked with this data repository
5888
+ # association. The Export paths are in the format `/exportpath1`. To
5889
+ # use this parameter, you must configure `DataRepositoryPath` as the
5890
+ # domain name of the NFS file system. The NFS file system domain name
5891
+ # in effect is the root of the subdirectories. Note that
5892
+ # `DataRepositorySubdirectories` is not supported for S3 data
5893
+ # repositories.
5894
+ # @return [Array<String>]
5895
+ #
5896
+ # @!attribute [rw] nfs
5897
+ # The configuration for a data repository association that links an
5898
+ # Amazon File Cache resource to an NFS data repository.
5899
+ # @return [Types::FileCacheNFSConfiguration]
5900
+ #
5901
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheDataRepositoryAssociation AWS API Documentation
5902
+ #
5903
+ class FileCacheDataRepositoryAssociation < Struct.new(
5904
+ :file_cache_path,
5905
+ :data_repository_path,
5906
+ :data_repository_subdirectories,
5907
+ :nfs)
5908
+ SENSITIVE = []
5909
+ include Aws::Structure
5910
+ end
5911
+
5912
+ # A structure providing details of any failures that occurred.
5913
+ #
5914
+ # @!attribute [rw] message
5915
+ # A message describing any failures that occurred.
5916
+ # @return [String]
5917
+ #
5918
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheFailureDetails AWS API Documentation
5919
+ #
5920
+ class FileCacheFailureDetails < Struct.new(
5921
+ :message)
5922
+ SENSITIVE = []
5923
+ include Aws::Structure
5924
+ end
5925
+
5926
+ # The configuration for the Amazon File Cache resource.
5927
+ #
5928
+ # @!attribute [rw] per_unit_storage_throughput
5929
+ # Per unit storage throughput represents the megabytes per second of
5930
+ # read or write throughput per 1 tebibyte of storage provisioned.
5931
+ # Cache throughput capacity is equal to Storage capacity (TiB) *
5932
+ # PerUnitStorageThroughput (MB/s/TiB). The only supported value is
5933
+ # `1000`.
5934
+ # @return [Integer]
5935
+ #
5936
+ # @!attribute [rw] deployment_type
5937
+ # The deployment type of the Amazon File Cache resource, which must be
5938
+ # `CACHE_1`.
5939
+ # @return [String]
5940
+ #
5941
+ # @!attribute [rw] mount_name
5942
+ # You use the `MountName` value when mounting the cache. If you pass a
5943
+ # cache ID to the `DescribeFileCaches` operation, it returns the the
5944
+ # `MountName` value as part of the cache's description.
5945
+ # @return [String]
5946
+ #
5947
+ # @!attribute [rw] weekly_maintenance_start_time
5948
+ # A recurring weekly time, in the format `D:HH:MM`.
5949
+ #
5950
+ # `D` is the day of the week, for which 1 represents Monday and 7
5951
+ # represents Sunday. For further details, see [the ISO-8601 spec as
5952
+ # described on Wikipedia][1].
5953
+ #
5954
+ # `HH` is the zero-padded hour of the day (0-23), and `MM` is the
5955
+ # zero-padded minute of the hour.
5956
+ #
5957
+ # For example, `1:05:00` specifies maintenance at 5 AM Monday.
5958
+ #
5959
+ #
5960
+ #
5961
+ # [1]: https://en.wikipedia.org/wiki/ISO_week_date
5962
+ # @return [String]
5963
+ #
5964
+ # @!attribute [rw] metadata_configuration
5965
+ # The configuration for a Lustre MDT (Metadata Target) storage volume.
5966
+ # @return [Types::FileCacheLustreMetadataConfiguration]
5967
+ #
5968
+ # @!attribute [rw] log_configuration
5969
+ # The configuration for Lustre logging used to write the enabled
5970
+ # logging events for your Amazon File Cache resource to Amazon
5971
+ # CloudWatch Logs.
5972
+ # @return [Types::LustreLogConfiguration]
5973
+ #
5974
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheLustreConfiguration AWS API Documentation
5975
+ #
5976
+ class FileCacheLustreConfiguration < Struct.new(
5977
+ :per_unit_storage_throughput,
5978
+ :deployment_type,
5979
+ :mount_name,
5980
+ :weekly_maintenance_start_time,
5981
+ :metadata_configuration,
5982
+ :log_configuration)
5983
+ SENSITIVE = []
5984
+ include Aws::Structure
5985
+ end
5986
+
5987
+ # The configuration for a Lustre MDT (Metadata Target) storage volume.
5988
+ # The metadata on Amazon File Cache is managed by a Lustre Metadata
5989
+ # Server (MDS) while the actual metadata is persisted on an MDT.
5990
+ #
5991
+ # @note When making an API call, you may pass FileCacheLustreMetadataConfiguration
5992
+ # data as a hash:
5993
+ #
5994
+ # {
5995
+ # storage_capacity: 1, # required
5996
+ # }
5997
+ #
5998
+ # @!attribute [rw] storage_capacity
5999
+ # The storage capacity of the Lustre MDT (Metadata Target) storage
6000
+ # volume in gibibytes (GiB). The only supported value is `2400` GiB.
6001
+ # @return [Integer]
6002
+ #
6003
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheLustreMetadataConfiguration AWS API Documentation
6004
+ #
6005
+ class FileCacheLustreMetadataConfiguration < Struct.new(
6006
+ :storage_capacity)
6007
+ SENSITIVE = []
6008
+ include Aws::Structure
6009
+ end
6010
+
6011
+ # The configuration for an NFS data repository association (DRA) created
6012
+ # during the creation of the Amazon File Cache resource.
6013
+ #
6014
+ # @note When making an API call, you may pass FileCacheNFSConfiguration
6015
+ # data as a hash:
6016
+ #
6017
+ # {
6018
+ # version: "NFS3", # required, accepts NFS3
6019
+ # dns_ips: ["IpAddress"],
6020
+ # }
6021
+ #
6022
+ # @!attribute [rw] version
6023
+ # The version of the NFS (Network File System) protocol of the NFS
6024
+ # data repository. The only supported value is `NFS3`, which indicates
6025
+ # that the data repository must support the NFSv3 protocol.
6026
+ # @return [String]
6027
+ #
6028
+ # @!attribute [rw] dns_ips
6029
+ # A list of up to 2 IP addresses of DNS servers used to resolve the
6030
+ # NFS file system domain name. The provided IP addresses can either be
6031
+ # the IP addresses of a DNS forwarder or resolver that the customer
6032
+ # manages and runs inside the customer VPC, or the IP addresses of the
6033
+ # on-premises DNS servers.
6034
+ # @return [Array<String>]
6035
+ #
6036
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheNFSConfiguration AWS API Documentation
6037
+ #
6038
+ class FileCacheNFSConfiguration < Struct.new(
6039
+ :version,
6040
+ :dns_ips)
6041
+ SENSITIVE = []
6042
+ include Aws::Structure
6043
+ end
6044
+
6045
+ # No caches were found based upon supplied parameters.
6046
+ #
6047
+ # @!attribute [rw] message
6048
+ # A detailed error message.
6049
+ # @return [String]
6050
+ #
6051
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/FileCacheNotFound AWS API Documentation
6052
+ #
6053
+ class FileCacheNotFound < Struct.new(
6054
+ :message)
6055
+ SENSITIVE = []
6056
+ include Aws::Structure
6057
+ end
6058
+
5115
6059
  # A description of a specific Amazon FSx file system.
5116
6060
  #
5117
6061
  # @!attribute [rw] owner_id
@@ -5385,7 +6329,7 @@ module Aws::FSx
5385
6329
  # data as a hash:
5386
6330
  #
5387
6331
  # {
5388
- # name: "file-system-id", # accepts file-system-id, backup-type, file-system-type, volume-id, data-repository-type
6332
+ # name: "file-system-id", # accepts file-system-id, backup-type, file-system-type, volume-id, data-repository-type, file-cache-id, file-cache-type
5389
6333
  # values: ["FilterValue"],
5390
6334
  # }
5391
6335
  #
@@ -5812,16 +6756,8 @@ module Aws::FSx
5812
6756
  end
5813
6757
 
5814
6758
  # The configuration for Lustre logging used to write the enabled logging
5815
- # events for your file system to Amazon CloudWatch Logs.
5816
- #
5817
- # When logging is enabled, Lustre logs error and warning events from
5818
- # data repository operations such as automatic export and data
5819
- # repository tasks. To learn more about Lustre logging, see [Logging
5820
- # with Amazon CloudWatch Logs][1].
5821
- #
5822
- #
5823
- #
5824
- # [1]: https://docs.aws.amazon.com/fsx/latest/LustreGuide/cw-event-logging.html
6759
+ # events for your Amazon FSx for Lustre file system or Amazon File Cache
6760
+ # resource to Amazon CloudWatch Logs.
5825
6761
  #
5826
6762
  # @!attribute [rw] level
5827
6763
  # The data repository events that are logged by Amazon FSx.
@@ -5833,6 +6769,9 @@ module Aws::FSx
5833
6769
  # * `WARN_ERROR` - both warning events and error events are logged.
5834
6770
  #
5835
6771
  # * `DISABLED` - logging of data repository events is turned off.
6772
+ #
6773
+ # Note that Amazon File Cache uses a default setting of `WARN_ERROR`,
6774
+ # which can't be changed.
5836
6775
  # @return [String]
5837
6776
  #
5838
6777
  # @!attribute [rw] destination
@@ -5853,22 +6792,12 @@ module Aws::FSx
5853
6792
  end
5854
6793
 
5855
6794
  # The Lustre logging configuration used when creating or updating an
5856
- # Amazon FSx for Lustre file system. Lustre logging writes the enabled
5857
- # logging events for your file system to Amazon CloudWatch Logs.
6795
+ # Amazon FSx for Lustre file system. An Amazon File Cache is created
6796
+ # with Lustre logging enabled by default, with a setting of `WARN_ERROR`
6797
+ # for the logging events. which can't be changed.
5858
6798
  #
5859
- # Error and warning events can be logged from the following data
5860
- # repository operations:
5861
- #
5862
- # * Automatic export
5863
- #
5864
- # * Data repository tasks
5865
- #
5866
- # To learn more about Lustre logging, see [Logging to Amazon CloudWatch
5867
- # Logs][1].
5868
- #
5869
- #
5870
- #
5871
- # [1]: https://docs.aws.amazon.com/fsx/latest/LustreGuide/cw-event-logging.html
6799
+ # Lustre logging writes the enabled logging events for your file system
6800
+ # or cache to Amazon CloudWatch Logs.
5872
6801
  #
5873
6802
  # @note When making an API call, you may pass LustreLogCreateConfiguration
5874
6803
  # data as a hash:
@@ -5906,7 +6835,8 @@ module Aws::FSx
5906
6835
  #
5907
6836
  # * If you do not provide a destination, Amazon FSx will create and
5908
6837
  # use a log stream in the CloudWatch Logs `/aws/fsx/lustre` log
5909
- # group.
6838
+ # group (for Amazon FSx for Lustre) or `/aws/fsx/filecache` (for
6839
+ # Amazon File Cache).
5910
6840
  #
5911
6841
  # * If `Destination` is provided and the resource does not exist, the
5912
6842
  # request will fail with a `BadRequest` error.
@@ -5986,6 +6916,20 @@ module Aws::FSx
5986
6916
  include Aws::Structure
5987
6917
  end
5988
6918
 
6919
+ # A cache configuration is required for this operation.
6920
+ #
6921
+ # @!attribute [rw] message
6922
+ # A detailed error message.
6923
+ # @return [String]
6924
+ #
6925
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/MissingFileCacheConfiguration AWS API Documentation
6926
+ #
6927
+ class MissingFileCacheConfiguration < Struct.new(
6928
+ :message)
6929
+ SENSITIVE = []
6930
+ include Aws::Structure
6931
+ end
6932
+
5989
6933
  # A file system configuration is required for this operation.
5990
6934
  #
5991
6935
  # @!attribute [rw] message
@@ -6014,6 +6958,38 @@ module Aws::FSx
6014
6958
  include Aws::Structure
6015
6959
  end
6016
6960
 
6961
+ # The configuration for a data repository association that links an
6962
+ # Amazon File Cache resource to an NFS data repository.
6963
+ #
6964
+ # @!attribute [rw] version
6965
+ # The version of the NFS (Network File System) protocol of the NFS
6966
+ # data repository. Currently, the only supported value is `NFS3`,
6967
+ # which indicates that the data repository must support the NFSv3
6968
+ # protocol.
6969
+ # @return [String]
6970
+ #
6971
+ # @!attribute [rw] dns_ips
6972
+ # A list of up to 2 IP addresses of DNS servers used to resolve the
6973
+ # NFS file system domain name. The provided IP addresses can either be
6974
+ # the IP addresses of a DNS forwarder or resolver that the customer
6975
+ # manages and runs inside the customer VPC, or the IP addresses of the
6976
+ # on-premises DNS servers.
6977
+ # @return [Array<String>]
6978
+ #
6979
+ # @!attribute [rw] auto_export_policy
6980
+ # This parameter is not supported for Amazon File Cache.
6981
+ # @return [Types::AutoExportPolicy]
6982
+ #
6983
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/NFSDataRepositoryConfiguration AWS API Documentation
6984
+ #
6985
+ class NFSDataRepositoryConfiguration < Struct.new(
6986
+ :version,
6987
+ :dns_ips,
6988
+ :auto_export_policy)
6989
+ SENSITIVE = []
6990
+ include Aws::Structure
6991
+ end
6992
+
6017
6993
  # The resource specified for the tagging operation is not a resource
6018
6994
  # type owned by Amazon FSx. Use the API of the relevant service to
6019
6995
  # perform the operation.
@@ -6827,13 +7803,19 @@ module Aws::FSx
6827
7803
  end
6828
7804
 
6829
7805
  # The configuration for an Amazon S3 data repository linked to an Amazon
6830
- # FSx Lustre file system with a data repository association. The
6831
- # configuration consists of an `AutoImportPolicy` that defines file
6832
- # events on the data repository are automatically imported to the file
6833
- # system and an `AutoExportPolicy` that defines which file events on the
6834
- # file system are automatically exported to the data repository. File
6835
- # events are when files or directories are added, changed, or deleted on
6836
- # the file system or the data repository.
7806
+ # FSx for Lustre file system with a data repository association. The
7807
+ # configuration consists of an `AutoImportPolicy` that defines which
7808
+ # file events on the data repository are automatically imported to the
7809
+ # file system and an `AutoExportPolicy` that defines which file events
7810
+ # on the file system are automatically exported to the data repository.
7811
+ # File events are when files or directories are added, changed, or
7812
+ # deleted on the file system or the data repository.
7813
+ #
7814
+ # <note markdown="1"> Data repository associations on Amazon File Cache don't use
7815
+ # `S3DataRepositoryConfiguration` because they don't support automatic
7816
+ # import or automatic export.
7817
+ #
7818
+ # </note>
6837
7819
  #
6838
7820
  # @note When making an API call, you may pass S3DataRepositoryConfiguration
6839
7821
  # data as a hash:
@@ -7688,6 +8670,91 @@ module Aws::FSx
7688
8670
  include Aws::Structure
7689
8671
  end
7690
8672
 
8673
+ # The configuration update for an Amazon File Cache resource.
8674
+ #
8675
+ # @note When making an API call, you may pass UpdateFileCacheLustreConfiguration
8676
+ # data as a hash:
8677
+ #
8678
+ # {
8679
+ # weekly_maintenance_start_time: "WeeklyTime",
8680
+ # }
8681
+ #
8682
+ # @!attribute [rw] weekly_maintenance_start_time
8683
+ # A recurring weekly time, in the format `D:HH:MM`.
8684
+ #
8685
+ # `D` is the day of the week, for which 1 represents Monday and 7
8686
+ # represents Sunday. For further details, see [the ISO-8601 spec as
8687
+ # described on Wikipedia][1].
8688
+ #
8689
+ # `HH` is the zero-padded hour of the day (0-23), and `MM` is the
8690
+ # zero-padded minute of the hour.
8691
+ #
8692
+ # For example, `1:05:00` specifies maintenance at 5 AM Monday.
8693
+ #
8694
+ #
8695
+ #
8696
+ # [1]: https://en.wikipedia.org/wiki/ISO_week_date
8697
+ # @return [String]
8698
+ #
8699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateFileCacheLustreConfiguration AWS API Documentation
8700
+ #
8701
+ class UpdateFileCacheLustreConfiguration < Struct.new(
8702
+ :weekly_maintenance_start_time)
8703
+ SENSITIVE = []
8704
+ include Aws::Structure
8705
+ end
8706
+
8707
+ # @note When making an API call, you may pass UpdateFileCacheRequest
8708
+ # data as a hash:
8709
+ #
8710
+ # {
8711
+ # file_cache_id: "FileCacheId", # required
8712
+ # client_request_token: "ClientRequestToken",
8713
+ # lustre_configuration: {
8714
+ # weekly_maintenance_start_time: "WeeklyTime",
8715
+ # },
8716
+ # }
8717
+ #
8718
+ # @!attribute [rw] file_cache_id
8719
+ # The ID of the cache that you are updating.
8720
+ # @return [String]
8721
+ #
8722
+ # @!attribute [rw] client_request_token
8723
+ # (Optional) An idempotency token for resource creation, in a string
8724
+ # of up to 64 ASCII characters. This token is automatically filled on
8725
+ # your behalf when you use the Command Line Interface (CLI) or an
8726
+ # Amazon Web Services SDK.
8727
+ #
8728
+ # **A suitable default value is auto-generated.** You should normally
8729
+ # not need to pass this option.
8730
+ # @return [String]
8731
+ #
8732
+ # @!attribute [rw] lustre_configuration
8733
+ # The configuration updates for an Amazon File Cache resource.
8734
+ # @return [Types::UpdateFileCacheLustreConfiguration]
8735
+ #
8736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateFileCacheRequest AWS API Documentation
8737
+ #
8738
+ class UpdateFileCacheRequest < Struct.new(
8739
+ :file_cache_id,
8740
+ :client_request_token,
8741
+ :lustre_configuration)
8742
+ SENSITIVE = []
8743
+ include Aws::Structure
8744
+ end
8745
+
8746
+ # @!attribute [rw] file_cache
8747
+ # A description of the cache that was updated.
8748
+ # @return [Types::FileCache]
8749
+ #
8750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/fsx-2018-03-01/UpdateFileCacheResponse AWS API Documentation
8751
+ #
8752
+ class UpdateFileCacheResponse < Struct.new(
8753
+ :file_cache)
8754
+ SENSITIVE = []
8755
+ include Aws::Structure
8756
+ end
8757
+
7691
8758
  # The configuration object for Amazon FSx for Lustre file systems used
7692
8759
  # in the `UpdateFileSystem` operation.
7693
8760
  #