管理磁帶閘道的頻寬 - AWS Storage Gateway

Amazon S3 檔案閘道文件已移至什麼是 Amazon S3 檔案閘道?

Amazon FSx 檔案閘道文件已移至什麼是 Amazon FSx 檔案閘道?

磁碟區閘道文件已移至什麼是磁碟區閘道?

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

管理磁帶閘道的頻寬

您可以限制 (或限制) 從閘道到閘道的上傳輸量, AWS 或限制從 AWS 閘道下載輸送量。使用頻寬調節可協助您控制閘道所用的網路頻寬。根據預設,啟用的閘道在上傳或下載都沒有速率限制。

您可以使用 AWS Management Console,或以程式設計方式使用 Storage Gateway API (請參閱 UpdateBandwidthRateLimit) 或 AWS 軟體開發套件 (SDK) 來指定速率限制。透過編寫程式的方式調節頻寬,您可以全天候自動變更限制,例如,排程變更頻寬的任務。

您也可以為閘道定義以排程為基礎的頻寬節流。您可以透過定義一或多 bandwidth-rate-limit 個間隔來排程頻寬節流。如需詳細資訊,請參閱 使用 Storage Gateway 主控台進行排程的頻寬節流

設定頻寬節流的單一設定與定義排程的功能相當於定義排程,其中的 [開始時 bandwidth-rate-limit 間] 00:00 和 [結束時間] 為 [每天] 設定的單一間隔。23:59

注意

本節中的資訊僅適用於磁帶和磁碟區閘道。若要管理 Amazon S3 檔案閘道的頻寬,請參閱管理 Amazon S3 檔案閘道的頻寬。Amazon FSx 檔案閘道目前不支援頻寬速率限制。

使用 Storage Gateway 主控台變更頻寬調節

下列程序說明如何從 Storage Gateway 主控台變更閘道的頻寬調節。

使用主控台變更閘道的頻寬調節
  1. 前往 https://console.aws.amazon.com/storagegateway/home,開啟 Storage Gateway 閘道主控台。

  2. 在導覽窗格中,選擇閘道,然後選擇您要管理的閘道。

  3. 動作中,選擇編輯頻寬限制

  4. 編輯速率限制對話方塊中,輸入新的限制值,然後選擇儲存。您的變更會出現在閘道的 Details (詳細資訊) 標籤中。

使用 Storage Gateway 主控台進行排程的頻寬節流

下列程序說明如何從 Storage Gateway 主控台變更閘道的頻寬排程。

新增或修改閘道頻寬節流的排程
  1. 前往 https://console.aws.amazon.com/storagegateway/home,開啟 Storage Gateway 閘道主控台。

  2. 在導覽窗格中,選擇閘道,然後選擇您要管理的閘道。

  3. 動作中,選擇編輯頻寬速率限制排程

    設備的 bandwidth-rate-limit 排程會顯示在 [編輯頻寬速率限制排程] 對話方塊中。根據預設,新的閘道 bandwidth-rate-limit 排程為空白。

  4. 在 [編輯頻寬速率限制排程] 對話方塊中,選擇 [新增項目] 以新增 bandwidth-rate-limit間隔。為每個 bandwidth-rate-limit間隔輸入下列資訊:

    • 星期幾 — 您可以為工作日 (星期一至星期五)、週末 (星期六和星期日)、一週中的每一天或一週中的一或多個特定日期建立 bandwidth-rate-limit 間隔。

    • 開始時間:輸入閘道本機時區中頻寬間隔的開始時間 (使用 HH: MM 格式)。

      注意

      您的 bandwidth-rate-limit 間隔從您在此處指定的分鐘開始開始。

    • 結束時間 — 以 HH: MM 格式輸入閘道本地時區 bandwidth-rate-limit 間隔的結束時間。

      重要

      間 bandwidth-rate-limit 隔在此處指定的分鐘結束時結束。若要排定在小時結束時結束的間隔,請輸入 59

      若要排定連續的連續間隔,請在小時開始時進行轉換,且間隔之間不會中斷,請輸入 59 第一個間隔的結束分鐘。針對後續間隔的開始分鐘,輸入 00

    • 下載速率:輸入下載速率限制 (以每秒 KB (Kbps) 為單位,或選取無限制停用下載的頻寬限制。下载速率的最小值為 100 Kbps。

    • 上傳速率:輸入上傳速率限制 (以 Kbps 為單位),或選取無限制停用上傳的頻寬限制。上傳速率為 50 Kbps。

    若要修改間 bandwidth-rate-limit 隔,您可以輸入間隔參數的修訂值。

    要刪除間 bandwidth-rate-limit 隔,您可以選擇要刪的間隔右側的「刪除」。

    完成變更後,選擇儲存

  5. 選擇 [新增項目],然後輸入日 bandwidth-rate-limit 期、開始和結束時間以及下載和上傳速率限制,以繼續新增間隔。

    重要

    B andwidth-rate-limit 間隔不能重疊。間隔的開始時間必須在前一個間隔的結束時間之後,以及在下列間隔的開始時間之前發生。

  6. 輸入所有 bandwidth-rate-limit 間隔後,選擇 [儲存變更] 以儲存 bandwidth-rate-limit 排程。

成功更新 bandwidth-rate-limit 排程後,您可以在閘道的「詳細資料」面板中查看目前的下載和上傳速率限制。

使用更新閘道頻寬速率限制 AWS SDK for Java

透過編寫程式的方式更新頻寬速率限制,您可以自動調整一段時間內的限制,例如使用排程的任務。下列範例示範如何使用 AWS SDK for Java更新閘道的頻寬速率限制。若要使用範例程式碼,您應該熟悉如何執行 Java 主控台應用程式。詳情請參閱《AWS SDK for Java 開發人員指南》中的開始使用

範例 :使用更新閘道頻寬速率限制 AWS SDK for Java

下列 Java 程式碼範例會更新閘道的頻寬速率限制。如需使用此範例程式碼,您需要提供服務端點、閘道 Amazon Resource Name (ARN),以及上傳及下載限制。如需可與 Storage Gateway 搭配使用的 AWS 服務AWS Storage Gateway 端點清單,請參閱 AWS 一般參考.

import java.io.IOException; import com.amazonaws.AmazonClientException; import com.amazonaws.auth.PropertiesCredentials; import com.amazonaws.services.storagegateway.AWSStorageGatewayClient; import com.amazonaws.services.storagegateway.model.UpdateBandwidthRateLimitRequest; import com.amazonaws.services.storagegateway.model.UpdateBandwidthRateLimitResult; public class UpdateBandwidthExample { public static AWSStorageGatewayClient sgClient; // The gatewayARN public static String gatewayARN = "*** provide gateway ARN ***"; // The endpoint static String serviceURL = "https://storagegateway.us-east-1.amazonaws.com"; // Rates static long uploadRate = 51200; // Bits per second, minimum 51200 static long downloadRate = 102400; // Bits per second, minimum 102400 public static void main(String[] args) throws IOException { // Create a Storage Gateway client sgClient = new AWSStorageGatewayClient(new PropertiesCredentials( UpdateBandwidthExample.class.getResourceAsStream("AwsCredentials.properties"))); sgClient.setEndpoint(serviceURL); UpdateBandwidth(gatewayARN, uploadRate, downloadRate); } private static void UpdateBandwidth(String gatewayARN2, long uploadRate2, long downloadRate2) { try { UpdateBandwidthRateLimitRequest updateBandwidthRateLimitRequest = new UpdateBandwidthRateLimitRequest() .withGatewayARN(gatewayARN) .withAverageDownloadRateLimitInBitsPerSec(downloadRate) .withAverageUploadRateLimitInBitsPerSec(uploadRate); UpdateBandwidthRateLimitResult updateBandwidthRateLimitResult = sgClient.updateBandwidthRateLimit(updateBandwidthRateLimitRequest); String returnGatewayARN = updateBandwidthRateLimitResult.getGatewayARN(); System.out.println("Updated the bandwidth rate limits of " + returnGatewayARN); System.out.println("Upload bandwidth limit = " + uploadRate + " bits per second"); System.out.println("Download bandwidth limit = " + downloadRate + " bits per second"); } catch (AmazonClientException ex) { System.err.println("Error updating gateway bandwith.\n" + ex.toString()); } } }

使用更新閘道頻寬速率限制 AWS SDK for .NET

透過編寫程式的方式更新頻寬速率限制,您可以自動調整一段時間內的限制,例如使用排程的任務。下列範例示範如何使用 AWS SDK for .NET更新閘道的頻寬速率限制。若要使用範例程式碼,您應該熟悉如何執行 .NET 主控台應用程式。詳情請參閱《AWS SDK for .NET 開發人員指南》中的開始使用

範例 :使用更新閘道頻寬速率限制 AWS SDK for .NET

下列 C# 程式碼範例會更新閘道的頻寬速率限制。如需使用此範例程式碼,您需要提供服務端點、閘道 Amazon Resource Name (ARN),以及上傳及下載限制。如需可與 Storage Gateway 搭配使用的 AWS 服務AWS Storage Gateway 端點清單,請參閱 AWS 一般參考.

using System; using System.Collections.Generic; using System.Linq; using System.Text; using Amazon.StorageGateway; using Amazon.StorageGateway.Model; namespace AWSStorageGateway { class UpdateBandwidthExample { static AmazonStorageGatewayClient sgClient; static AmazonStorageGatewayConfig sgConfig; // The gatewayARN public static String gatewayARN = "*** provide gateway ARN ***"; // The endpoint static String serviceURL = "https://storagegateway.us-east-1.amazonaws.com"; // Rates static long uploadRate = 51200; // Bits per second, minimum 51200 static long downloadRate = 102400; // Bits per second, minimum 102400 public static void Main(string[] args) { // Create a Storage Gateway client sgConfig = new AmazonStorageGatewayConfig(); sgConfig.ServiceURL = serviceURL; sgClient = new AmazonStorageGatewayClient(sgConfig); UpdateBandwidth(gatewayARN, uploadRate, downloadRate); Console.WriteLine("\nTo continue, press Enter."); Console.Read(); } public static void UpdateBandwidth(string gatewayARN, long uploadRate, long downloadRate) { try { UpdateBandwidthRateLimitRequest updateBandwidthRateLimitRequest = new UpdateBandwidthRateLimitRequest() .WithGatewayARN(gatewayARN) .WithAverageDownloadRateLimitInBitsPerSec(downloadRate) .WithAverageUploadRateLimitInBitsPerSec(uploadRate); UpdateBandwidthRateLimitResponse updateBandwidthRateLimitResponse = sgClient.UpdateBandwidthRateLimit(updateBandwidthRateLimitRequest); String returnGatewayARN = updateBandwidthRateLimitResponse.UpdateBandwidthRateLimitResult.GatewayARN; Console.WriteLine("Updated the bandwidth rate limits of " + returnGatewayARN); Console.WriteLine("Upload bandwidth limit = " + uploadRate + " bits per second"); Console.WriteLine("Download bandwidth limit = " + downloadRate + " bits per second"); } catch (AmazonStorageGatewayException ex) { Console.WriteLine("Error updating gateway bandwith.\n" + ex.ToString()); } } } }

使用更新閘道頻寬速率限制 AWS Tools for Windows PowerShell

透過編寫程式的方式更新頻寬速率限制,您可以自動調整一段時間內的限制,例如使用排程的任務。下列範例示範如何使用 AWS Tools for Windows PowerShell更新閘道的頻寬速率限制。若要使用範例程式碼,您應該熟悉執行指 PowerShell令碼。如需詳細資訊,請參閱 AWS Tools for Windows PowerShell 使用者指南中的入門

範例 :使用更新閘道頻寬速率限制 AWS Tools for Windows PowerShell

下列 PowerShell 指令碼範例會更新閘道的頻寬速率限制。如需使用此範例指令碼,您需要提供服務端點、閘道 Amazon Resource Name (ARN),以及上傳及下載限制。

<# .DESCRIPTION Update Gateway bandwidth limits. .NOTES PREREQUISITES: 1) AWS Tools for PowerShell from https://aws.amazon.com/powershell/ 2) Credentials and region stored in session using Initialize-AWSDefault. For more info, see https://docs.aws.amazon.com/powershell/latest/userguide/specifying-your-aws-credentials.html .EXAMPLE powershell.exe .\SG_UpdateBandwidth.ps1 #> $UploadBandwidthRate = 51200 $DownloadBandwidthRate = 102400 $gatewayARN = "*** provide gateway ARN ***" #Update Bandwidth Rate Limits Update-SGBandwidthRateLimit -GatewayARN $gatewayARN ` -AverageUploadRateLimitInBitsPerSec $UploadBandwidthRate ` -AverageDownloadRateLimitInBitsPerSec $DownloadBandwidthRate $limits = Get-SGBandwidthRateLimit -GatewayARN $gatewayARN Write-Output("`nGateway: " + $gatewayARN); Write-Output("`nNew Upload Rate: " + $limits.AverageUploadRateLimitInBitsPerSec) Write-Output("`nNew Download Rate: " + $limits.AverageDownloadRateLimitInBitsPerSec)