2015-06-03 133 views
7

我正在AWS CLI中運行備份腳本,以便每天晚上在MediaTemple服務器上執行S3同步命令。這幾個月來一直運行,但我更新了我的Plesk安裝,現在每天晚上,當備份腳本運行時,由於過度使用MediaTemple會禁用我的服務器。是我似乎穿越的限制如下:使用aws cli限制S3命令

RESOURCE INFO: 
Packets per second limit: 35000 
Packets per second detected: 42229.11667000000306870788 
Bytes per second limit: 50000000 
Bytes per second detected: 61801446.10000000149011611938 

,還包括他們的服務器下線,其中包括(在快照時間9)許多打開連接到Amazon IP地址,走的時候一個網絡快照。

我能做些什麼來限制與AWS的連接?最好我在AWS API中尋找一個選項(儘管我沒有在文檔中看到任何有用的東西),但是除了這個之外,我能做些什麼來管理網絡級別的連接嗎?

回答

2

我結束了使用Trickle和封蓋下載&上傳速度在20000 KB /秒。這讓我用我現有的腳本沒有太多的修改(我所要做的只是添加涓流調用到命令的開頭)。

此外,它似乎已將帶寬限制添加爲AWS CLI的一個問題,因此希望這對於人員來說都是非問題(如果實現的話)。

5

的AWS CLI S3傳送命令(其中包括同步)具有下列相關configuration options

  • max_concurrent_requests -
    • 默認值:10
    • 的併發請求的最大數目。
  • multipart_threshold -
    • 默認值:8MB
    • 的CLI使用單個文件的多 轉移的大小閾值。
  • multipart_chunksize -
    • 默認值:8MB
    • 當使用 多轉移,這是命令行使用單個文件的 多傳輸塊大小。

事實並非如此粒狀每秒節流數據包,但它似乎是設置較低的併發請求值並降低兩者多閾值和CHUNKSIZE會有所幫助。如果粘貼的值接近平均水平,我將開始與這些價值觀和調整,直到你可靠不超過極限了:

$ aws configure set default.s3.max_concurrent_requests 8 
$ aws configure set default.s3.multipart_threshold 6MB 
$ aws configure set default.s3.multipart_chunksize 6MB 
+0

升級呢?這確實似乎是我最好的選擇,但我還是一直打我主機的限制。回到繪圖板。謝謝! – binaryorganic

1

如果你不能讓像我這樣的AWS S3命令涓涓細流工作,你可以使用:

sudo apt-get install pv (or yum install pv) pv -L 1M local_filename 2>/dev/null | aws s3 cp - s3://bucket_name/remote_filename

這裏的-L 1M限制帶寬爲1M /秒 和cp後儀表顯示標準輸入

注:從易於得到的awscli太舊,支持標準輸入的輸入,你需要通過PIP