Managing throughput capacity - Amazon FSx for Windows File Server
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Managing throughput capacity

Every FSx for Windows File Server file system has a throughput capacity that is configured when you create the file system. You can modify your file system's throughput capacity at any time, as needed. Throughput capacity is one factor that determines the speed at which the file server hosting the file system can serve file data. Higher levels of throughput capacity also come with higher levels of I/O operations per second (IOPS) and more memory for caching of data on the file server. For more information, see FSx for Windows File Server performance.

When you modify your file system's throughput capacity, Amazon FSx switches out the file system's file server behind the scenes. For Multi-AZ file systems, it results in an automatic failover and failback while Amazon FSx switches out the preferred and secondary file servers. For Single-AZ systems, your file system will be unavailable for a few minutes during throughput capacity scaling. You are billed for the new amount of throughput capacity once it is available to your file system.

Note

During a maintenance operation on the back end, system modifications (such as a modification to your throughput capacity) may be delayed. Maintenance can cause these changes to queue up until they are next to be processed.

When to modify throughput capacity

Amazon FSx integrates with Amazon CloudWatch, enabling you to monitor your file system's ongoing throughput usage levels. The performance (throughput and IOPS) that you can drive through your file system depends on your specific workload’s characteristics, in addition to your file system’s throughput capacity, storage capacity, and storage type. You can use CloudWatch metrics to determine which of these dimensions to change to improve performance. For more information, see Monitoring metrics with Amazon CloudWatch.

For Multi-AZ file systems, throughput capacity scaling results in an automatic failover and failback while Amazon FSx switches out the preferred and secondary file servers. During file server replacements, which happen during throughput capacity scaling as well as file system maintenance and unplanned service disruption, any ongoing traffic to the file system will be served by the remaining file server. When the replaced file server is back online, FSx for Windows will run a resynchronization job to ensure that data is synced back to the newly replaced file server.

FSx for Windows is designed to minimize the impact of this resynchronization activity on application and users. However, the resynchronization process involves synchronizing data in large blocks. This means that a large block of data can require synchronization even if only a small portion is updated. Consequently, the amount of resynchronization depends not only on the amount of data churn, but also the nature of the data churn on the file system. If your workload is write-heavy and IOPS-heavy, the data synchronization process may take longer and require additional performance resources.

Your file system will continue to be available during this time, but in order to reduce the duration of data synchronization, we recommend modifying throughput capacity during idle periods when there is minimal load on your file system. We also recommend ensuring that your file system has sufficient throughput capacity to run the synchronization job in addition to your workload, in order to reduce the duration of data synchronization. Lastly, we recommend testing the impact of failovers while your file system has a lighter load.

How to modify throughput capacity

You can modify a file system's throughput capacity using the Amazon FSx console, the Amazon Command Line Interface (Amazon CLI), or the Amazon FSx API.

  1. Open the Amazon FSx console at https://console.amazonaws.cn/fsx/.

  2. Navigate to File systems, and choose the Windows file system that you want to increase the throughput capacity for.

  3. For Actions, choose Update throughput. Or, in the Summary panel, choose Update next to the file system's Throughput capacity.

    The Update throughput capacity window appears.

  4. Choose the new value for Throughput capacity from the list.

    
        Console screen shot showing the Update throughput capacity window
  5. Choose Update to initiate the throughput capacity update.

    Note

    Multi-AZ file systems fail over and fail back when updating throughput scaling, and are fully available. Single-AZ file systems experience a very brief period of unavailability during the update.

  6. You can monitor the update progress on the File systems detail page, in the Updates tab.

    You can monitor the progress of the update by using the Amazon FSx console, the Amazon CLI, and the API. For more information, see Monitoring throughput capacity changes.

To modify a file system's throughput capacity, use the Amazon CLI command update-file-system. Set the following parameters:

  • --file-system-id to the ID of the file system that you are updating.

  • ThroughputCapacity to the desired value to update the file system to.

You can monitor the progress of the update by using the Amazon FSx console, the Amazon CLI, and the API. For more information, see Monitoring throughput capacity changes.

Monitoring throughput capacity changes

You can monitor the progress of a throughput capacity modification using the Amazon FSx console, the API, and the Amazon CLI.

Monitoring throughput capacity changes in the console

In the Updates tab in the File system details window, you can view the 10 most recent update actions for each update action type.


     Console screen shot showing the file system updates window.

For throughput capacity update actions, you can view the following information.

Update type

Possible value is Throughput capacity.

Target value

The desired value to change the file system's throughput capacity to.

Status

The current status of the update. For throughput capacity updates, the possible values are as follows:

  • Pending – Amazon FSx has received the update request, but has not started processing it.

  • In progress – Amazon FSx is processing the update request.

  • Updated optimizing – Amazon FSx has updated the file system's network I/O, CPU, and memory resources. The new disk I/O performance level is available for write operations. Your read operations will see disk I/O performance between the previous level and the new level until your file system is no longer in the this state.

  • Completed – The throughput capacity update completed successfully.

  • Failed – The throughput capacity update failed. Choose the question mark (?) to see details on why the throughput update failed.

Request time

The time that Amazon FSx received the update request.

Monitoring changes with the Amazon CLI and API

You can view and monitor file system throughput capacity modification requests using the describe-file-systems CLI command and the DescribeFileSystems API action. The AdministrativeActions array lists the 10 most recent update actions for each administrative action type. When you modify a file system's throughput capacity, a FILE_SYSTEM_UPDATE administrative action is generated.

The following example shows the response excerpt of a describe-file-systems CLI command. The file system has a throughput capacity of 8 MB/s, and the target throughput capacity of 256 MB/s.

. . . "ThroughputCapacity": 8, "AdministrativeActions": [ { "AdministrativeActionType": "FILE_SYSTEM_UPDATE", "RequestTime": 1581694764.757, "Status": "PENDING", "TargetFileSystemValues": { "WindowsConfiguration": { "ThroughputCapacity": 256 } } } ]

When Amazon FSx completes processing the action successfully, the status changes to COMPLETED. The new throughput capacity is then available to the file system, and shows in the ThroughputCapacity property. This is shown in the following response excerpt of a describe-file-systems CLI command.

. . . "ThroughputCapacity": 256, "AdministrativeActions": [ { "AdministrativeActionType": "FILE_SYSTEM_UPDATE", "RequestTime": 1581694764.757, "Status": "COMPLETED", "TargetFileSystemValues": { "WindowsConfiguration": { "ThroughputCapacity": 256 } } } ]

If the throughput capacity modification fails, the status changes to FAILED, and the FailureDetails property provides information about the failure. For information about troubleshooting failed actions, see Storage or throughput capacity updates fail.