一個幫你自動建立阿里雲搶佔式實例並開啓網絡加速的腳本

支持做者,從這裏購買阿里雲!

參考

概述

目前阿里雲海外節點的搶佔式實例性價比至關高,服務器使用費用平均在0.01~0.02元/小時,外加流量費0.5~1.0元/G,特別適合上班族尤爲是程序員平常使用。
上班來了啓動腳本,下班了自動釋放,一點不浪費,不看太多視頻的話,一天的成本能夠控制在2毛錢之內
經過啓動GoogleBBR加速,經speedtest.net實測,上下行速度都可以跑滿建立實例時設定的帶寬上限。
測速html

本腳本實現的功能:node

  1. 在指定的阿里雲地域上自動建立阿里雲搶佔式實例
  2. 啓用GoogleBBR網絡加速,這須要升級操做系統內核而後重啓

注意,本人僅在Windows10 x64上測試過,其它平臺未測試。linux

前提

  • 在阿里雲有個帳號
  • 在阿里雲充值至少120元人民幣。這是由於阿里雲要求帳戶餘額必須在100以上才能建立搶佔式實例。剩下20用來平常消費,只要不常常看視頻應該夠用挺長時間了。不要擔憂100元打水漂,經過支付寶/網銀的充值,可在支付後的3個月內申請原路提現。
  • 在阿里雲控制檯"訪問控制"裏面,添加一個RAM子用戶,此帳戶專門用來支持API調用。
  • 給該RAM用戶添加AliyunECSFullAccess和AliyunVPCFullAccess權限。由於腳本須要建立虛擬專網和ECS服務器。
  • 給該RAM用戶建立一個AccessKey,而後把AccessKey ID和AccessKey Secret記住。注意:爲了安全起見,阿里雲不會保存Secret,所以Secret只會顯示一次,必定立刻複製保存好!!不然就得建立個新的AccessKey。
  • 本地安裝了node.js。我只在node12上測試過,但估計node8以上都應該沒問題。

訪問控制
<center>訪問控制</center>git

RAM用戶1
<center>建立RAM用戶1</center>程序員

RAM用戶2
<center>建立RAM用戶2</center>github

RAM權限1
<center>添加RAM權限1</center>shell

RAM權限2
<center>添加RAM權限1</center>npm

RAM用戶3
<center>獲取AccessKeyID和AccessKeySecret</center>json

阿里雲搶佔式實例和流量計費規則

  • 搶佔式實例有原價和市場價,你還能夠設定出價,出價比市場價高才能建立成功,可是計費老是按照市場價的。
  • 目前這個腳本使用自動出價,這樣理論是能夠100%建立成功的。
  • 若是不設定自動釋放時間,一般是1小時後實例會被自動釋放。
  • 不滿1小時按實際使用分鐘數計費,不到1分錢則免費,不用擔憂阿里雲蠶食你的費用。
  • 本腳本建立的實例按實際使用流量計費,這個費用不一樣區域不一樣,目前大部分海外區域是1元/G之內。
  • 阿里雲僅對流出流量計費,所以不用擔憂被收兩份錢。
  • 流量是每小時結算一次,不到1分錢則免費,所以要是一小時內瀏覽網頁僅產生幾M流量的話,就免單了。

腳本說明

  • 腳本會SSH連上服務器,並下載執行本項目中的bbr.sh腳原本啓用GoogleBBR。關於BBR的原理和腳本介紹,請見參考。
  • GoogleBBR會升級CentOS操做系統內核,並重啓服務器。
  • 有時由於網絡緣由腳本會執行中斷或失敗,能夠再次運行。但別忘了自行登陸阿里雲後臺釋放掉未成功的實例,省1毛是一毛。

安裝

配置

  • 以下修改配置文件 config.json
  • 在RAM配置段,把前面保存的AccessKeyID和AccessKeySecret填入。
  • 在ECS配置段,在地域即RegionId中填入目標地域ID。這個取決於從你本地鏈接的速度和價格,我的推薦新加坡,從我這裏Ping值大約80ms,性價比最高。
  • 推薦設置一個自動釋放時間AutoReleaseTime,不然1小時後服務器可能會被自動回收。
  • 帶寬上限InternetMaxBandwidthOut預設值是10(M),你能夠根據需求調整。
  • ECS的其它配置保持默認便可。
  • 阿里雲海外節點地域對應表:
RegionId 地域名稱
cn-hongkong 香港
ap-northeast-1 亞太東北 1 (東京)
ap-southeast-1 亞太東南 1 (新加坡)
ap-southeast-2 亞太東南 2 (悉尼)
ap-southeast-3 亞太東南 3 (吉隆坡)
ap-southeast-5 亞太東南 5 (雅加達)
ap-south-1 亞太南部 1 (孟買)
us-east-1 美國東部 1 (弗吉尼亞)
us-west-1 美國西部 1 (硅谷)
eu-west-1 英國 (倫敦)
me-east-1 中東東部 1 (迪拜)
eu-central-1 歐洲中部 1 (法蘭克福)

ECS配置項詳解

配置項 說明
RegionId 服務器目標地域ID,見上表
AutoReleaseTime 自動釋放時間,HH:mm:ss格式
ImageId 操做系統鏡像ID,這裏使用CentOS 7.6,不要修改
InstanceType 實例類型,這是最便宜的1核1G
InternetMaxBandwidthOut 出網流量帶寬上限,單位M;默認10,想要嗨起來的能夠增長
InternetChargeType 流量計費類型,默認按實際使用流量,不要改
SystemDisk.Size 系統盤大小,單位G;默認最小值20G,足夠用了
SystemDisk.Category 系統盤類型,不要改
SpotStrategy 搶佔式實例出價類型,默認按市場價,建議不要改

啓動

  • 執行 npm start,而後等待便可。
  • 命令是按照windows配置的,linux/mac上能夠這樣手動執行腳本:<br/>
    node index.js | ./node_modules/.bin/bunyan<br/>
    bunyan是日誌過濾工具,不用也能夠
  • 整個腳本運行大概須要3 ~ 5分鐘,最後會打印出SSH鏈接信息,能夠遠程管理服務器。
相關文章
相關標籤/搜索