2015-02-11 71 views
0

我在我的Amazon EC2實例上有一個生產Rails應用程序,並設置了一個負載平衡器和自動擴展(我手動完成了這一切,而不是使用Elastic Beanstalk,我還使用Dokku來簡化部署)。我很困惑。當需要新實例並使用自動縮放進行構建時,看起來好像我需要構建AMI,然後將新實例(通過自動縮放構建)設置爲使用此AMI。Amazon EC2,Auto-Scaling,AMI,有沒有更簡單的方法?

但是必須有一個更簡單的方法。我錯過了什麼嗎?用Heroku,你只需添加一個測功機和BAM,就完成了。我是否真的需要複製AMI並將其設置爲每次部署到生產時的自動縮放圖像?是否有我應該使用的命令,工作流程或部署後腳本?

回答

0

您需要指定一個AMI,其中包含生產節點的基本設置。通常的最佳做法是使用用戶數據腳本配置自動比例。所以當新的AMI在自動擴展期間啓動時,它會讀取用戶數據(雲初始化/啓動)。用戶數據腳本可以從git中獲取代碼,也可以從任何源代碼控制中運行必要的預部署命令。每次部署代碼時,您都無法將新的AMI配置複製到自動擴展配置中。

我希望擁有一個主AMI以及某種類似自動化的用戶數據腳本,它在引導生產節點並隨後連接到ELB時立即運行特定命令。

0

有一篇關於使用Opsworks的基於dokku的部署的博客文章here。其他Dokku維護者之一(Michael Hobbs)在生產中使用這種設置。

注:我是Dokku維護者之一,josegonzalez

相關問題