使用Linux命令列管理DigitalOcean VPS水滴

來源:互聯網
上載者:User

使用Linux命令列管理DigitalOcean VPS水滴

DigitalOcean是雲VPS主機市場中最炙手可熱的新生兒。雖然沒有提供像Amazon之類一樣的綜合服務業務,但DigitalOcean定位於中小型企業和開發人員,已經成為基於Linux的最佳雲VPS服務的強有力競爭者,這都得歸功於它們具有競爭力的價格和方便使用的管理介面。

不管什麼時候,當你需要一個面向網路的伺服器用於你的個人項目,你都可以全速開動一個“水滴”DigitalOcean中VPS執行個體的暱稱),也可以在你不需要時殺掉它,沒必要為了讓你的VPS保持運作而燒光了你的錢袋。儘管DigitalOcean基於網路的管理介面已經十分高效,但對於那些命令列介面的死忠派,它還是提供了基於命令列介面的水滴管理工具,它叫tugboat。多虧了這個命令列工具,所有複雜的水滴管理工作都可以簡單地轉變成一個指令碼來完成。

在本文中,我打算講述怎樣使用tugboat來從命令列對DigitalOcean水滴進行管理

在Linux上安裝tugboat

在Debian,Ubuntu或者Linux Mint上安裝tugboat:

 
  1. $ sudo apt-get install ruby-dev
  2. $ sudo gem install tugboat

在Fedora上安裝tugboat:

 
  1. $ sudo yum install ruby-devel
  2. $ sudo gem install tugboat

要在CentOS上安裝tugboat,首先安裝或升級到最新的Ruby,因為在CentOS 6.5以及更早的版本上,預設的Ruby不滿足Tugboat所需的最小版本1.9及更高版本)。安裝Ruby 1.9及更高版本後,請按如下方式安裝tugboat。

 
  1. $ sudo gem install tugboat

tugboat首次使用配置

在安裝完後,就該進行一次配置,其中包括授權tugboat訪問DigitalOcean帳號。

轉到https://cloud.digitalocean.com/api_access,並建立新的API密鑰,記錄客戶ID和API密鑰。

通過運行以下命令來啟動授權過程:

 
  1. $ tugboat authorize

在提示你輸入客戶ID和API密鑰時,請輸入。它會詢問幾個其它問題,目前你可以接受預設的回答。我們將會在後面自訂預設設定。

現在,讓我們自訂預設水滴設定,以反映你典型的使用狀況。要做到這一點,首先檢查水滴提供的可用設定項如,可用的鏡像、地區、大小)。

運行以下命令,它會列出可用的水滴鏡像。選取使用一個預設鏡像,並記錄相關的ID。

 
  1. $ tugboat images --global

類似,從可用性區域域中選取一個預設的地理位置:

 
  1. $ tugboat regions

同時,從可用的RAM大小中選擇一個預設的水滴大小:

 
  1. $ tugboat sizes

現在,把你的預設選擇放到~/.tugboat中。例如,我在這裡自訂了預設設定:地區在紐約,系統是Ubuntu 14.04,記憶體512MB。如果你想要通過密鑰驗證啟用SSH,設定“ssh_user”為root,這個我很快會講到。

 
  1. $ vi ~/.tugboat
 
  1. ---
  2. authentication:
  3. client_key: XXXXXXXXXXXXXXXXXXX
  4. api_key: XXXXXXXXXXXXXXXXXXXX
  5. ssh:
  6. ssh_user: root
  7. ssh_key_path: /home/dev/.ssh/id_rsa
  8. ssh_port: '22'
  9. defaults:
  10. region: '4'
  11. image: '3240036'
  12. size: '66'
  13. ssh_key: ''
  14. private_networking: 'false'
  15. backups_enabled: 'false'

建立並添加SSH密鑰到DigitalOcean

要訪問水滴執行個體,一個安全的方式是通過密鑰驗證的SSH串連到該執行個體。

事實上,你可以通過使用DigitalOcean來註冊SSH公開金鑰,為你的水滴實現自動啟用密鑰驗證。下面告訴你怎麼做。

首先,產生一個公/私金鑰組如果你還沒有)。

 
  1. $ ssh-keygen -t rsa -C "your@emailaddress.com"

假設產生的金鑰組由~/.ssh/id_rsa私密金鑰)和~/.ssh/id_rsa.pub公開金鑰)構成,去將你的公開金鑰上傳吧,命令如下:

 
  1. $ tugboat add-key [name-of-your-key]

你可以任意給你的密鑰命名如,“my-default-key”)。當出現提示時,輸入公開金鑰路徑如,/home/user/.ssh/id_rsa.pub)。在密鑰上傳完成後,運行以下命令來驗證密鑰是否正確添加:

 
  1. $ tugboat keys

密鑰也應該出現在DigitalOcean的SSH密鑰頁。如果你想要密鑰自動使用到水滴中,添加密鑰ID到~/.tugboat中。

 
  1. ssh_key: '182710'

Tugboat的基本用法

這裡列出了tugboat命令列的一些基本使用方式。

  1.  使用預設設定建立新水滴。

       
    1. $ tugboat create
  2. 列出所有活動水滴。

       
    1. $ tugboat droplets
  3. 顯示水滴的資訊。

       
    1. $ tugboat info

  1. 關閉水滴,並移除鏡像。

       
    1. $ tugboat destroy
  2. 關閉水滴,但保持鏡像

       
    1. $ tugboat halt
  3. 為水滴建立快照,水滴必須先關閉。

       
    1. $ tugboat snapshot
  4. 調整水滴大小增加或減少RAM大小),水滴必須先關閉。

       
    1. $ tugboat resize -s

如果你想要瞭解特定命令的更多選項,運行:

 
  1. $ tugboat help <command>

排障

Tugboat要求Ruby 1.9及更高版本,你需要升級Ruby來解決該問題。對於CentOS,請參考此教程

  • 當我試著用gem來安裝Tugboat時,出現了下面的錯誤。

      
    1. /usr/local/share/ruby/site_ruby/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- json/pure (LoadError)
  • 安裝以下gem來修複該問題。

     
    1. $ sudo gem install json_pure

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.