AWS Storage Gateway
User Guide (API Version 2013-06-30)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

管理网关的带宽

您可以限制 (或限定) 从网关到 AWS 的上传吞吐量或者从 AWS 到网关的下载吞吐量。使用带宽限制可以帮助您控制网关所用的网络带宽量。默认情况下,已激活的网关不对上传或下载进行速率限制。

您可以通过使用 AWS 管理控制台或者通过以编程方式使用 AWS Storage Gateway API (参阅 UpdateBandwidthRateLimit) 或 AWS 开发工具包 (SDK) 指定速率限制。通过以编程方式限制带宽,您可以自动更改一天中的限制 例如安排任务时间来更改宽带宽。如下文中直接描述,您可以使用 AWS Storage Gateway 控制台更改这些限制。或者,有关以编程方式更改带宽速率限制的信息,请参阅下列主题。

注意

文件网关类型目前不支持配置带宽速率限制。

如需使用控制台更改网关的带宽限制

  1. 通过以下网址打开 AWS Storage Gateway 控制台:https://console.amazonaws.cn/storagegateway/home

  2. 在导航窗格中,选择 Gateways,然后选择要管理的网关。

  3. Action 菜单上,选择 Edit Bandwidth Rate Limit

  4. Edit Rate Limits 对话框中,键入新的限制值,然后选择 Save。您的更改将显示在网关的 Details 选项卡中。

使用 AWS SDK for Java 更新网关带宽速率限制

通过以编程方式更新带宽速率限制,您可以在一段时间内自动调整限制 — 例如,使用计划任务进行调整。以下示例展示了如何使用 AWS SDK for Java 更新网关的带宽速率限制。如需使用示例代码,您应该熟悉 Java 控制台应用程序的运行方式。更多信息,请参阅 AWS SDK for Java Developer Guide 中的入门

例 :使用 AWS SDK for Java 更新网关带宽限制

以下 Java 代码示例更新网关的带宽速率限制。您需要更新代码并提供服务终端节点、网关的Amazon 资源名称 (ARN) 以及上传和下载限制。可用于 AWS Storage Gateway 的 AWS 服务终端节点的列表,请参阅 AWS General Reference 中的区域和终端节点

Copy
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( ListDeleteVolumeSnapshotsExample.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()); } } }

使用 适用于 .NET 的 AWS 开发工具包 更新网关带宽速率限制

通过以编程方式更新带宽速率限制,您可以在一段时间内自动调整限制 - 例如,使用计划任务进行调整。下面的示例介绍了如何通过使用适用于 .NET 的 AWS 开发工具包 (SDK) 更新网关的带宽速率限制。如需使用示例代码,您应该熟悉 .NET 控制台应用程序的运行方式。有关更多信息,请参阅 适用于 .NET 的 AWS 开发工具包 开发人员指南 中的入门

例 :使用适用于 .NET 的 AWS 开发工具包更新网关带宽限制

以下 C# 代码示例更新网关的带宽速率限制。您需要更新代码并提供服务终端节点、网关的Amazon 资源名称 (ARN) 以及上传和下载限制。可用于 AWS Storage Gateway 的 AWS 服务终端节点的列表,请参阅 AWS General Reference 中的区域和终端节点

Copy
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()); } } } }

使用 适用于 Windows PowerShell 的 AWS 工具 更新网关带宽速率限制

通过以编程方式更新带宽速率限制,您可以在一段时间内自动调整限制 - 例如,使用计划任务进行调整。以下示例展示了如何使用 适用于 Windows PowerShell 的 AWS 工具 更新网关的带宽速率限制。如需使用示例代码,您应该熟悉 PowerShell脚本 控制台应用程序的运行方式。有关更多信息,请参阅 适用于 Windows PowerShell 的 AWS 工具 用户指南 中的入门

例 :使用适用于 Windows PowerShell 的 AWS 工具更新网关带宽限制

以下 PowerShell 脚本示例更新网关的带宽速率限制。您需要更新脚本并提供服务终端节点、网关的Amazon 资源名称 (ARN) 以及上传和下载限制。

Copy
<# .DESCRIPTION Update Gateway bandwidth limits. .NOTES PREREQUISITES: 1) AWS Tools for PowerShell from http://aws.amazon.com/powershell/ 2) Credentials and region stored in session using Initialize-AWSDefault. For more info see, http://docs.amazonaws.cn/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)