DevOps on AWS之Elastic BeanStalk

Elastic BeanStalk相關概念

童話世界中存在着一種魔力beanstalk(豆莢),種在花盆裏能夠無限的向上生長,越長越高直達雲端。AWS Elastic Beanstalk也採用相似概念,用戶只需部署代碼便可自動處理包括容量預置、負載均衡、自動擴展和應用程序運行情況監控在內的部署工做。同時可以徹底控制爲應用程序提供支持的 AWS 資源,並可隨時訪問基礎資源。Elastic Beanstalk服務自己不收取任何費用,客戶只需支付業務所需的服務器和存儲資源所需的基礎費用。php

 

引用AWS官網https://docs.aws.amazon.comElastic BeanStalk服務的優點總結:web

1.入門迅速,使用簡單後端

2.提高開發人員生產效率安全

3.無限擴展服務器

4.完善的資源控制網絡

 

Elastic BeanStalk的傳統部署業務流程以下:

以簡單web服務+ELB負載均衡的典型應用舉例,須要運維和開發完成如下步驟:架構

  1. OPS部署一臺服務器用於web服務。
  2. OPS在這臺服務器內安裝web服務器和其餘應用軟件好比phpjdk等。
  3. OPS修改配置文件,調試後將服務器徹底啓動。
  4. OPS創建個ELB負載均衡器,與後端web服務器聯調好。
  5. OPS把業務服務器交付給DEV
  6. DEV開始在服務器上部署代碼。

 

採用Elastic BeanStalkDevOps環境部署業務流程以下:

以簡單web服務+ELB負載均衡的典型應用舉例,須要運維和開發完成如下步驟:app

  1. DevOpsElastic BeanStalk服務種選擇須要部署的服務架構後建立服務。
  2. DevOps在服務器上部署代碼。

 

 能夠看出,基於Elastic BeanStalk服務的DevOps部署方式比傳統部署方式方便靈活不少,擺脫了傳統環境下開發和運維循序漸進涇渭分明的生產關係,Elastic Beanstack能夠作到開發運維一體化,one shot for everything且業務無限彈性擴張。負載均衡

 

 

 Elastic BeanStalk入門使用介紹運維

 

上圖:點擊Elastic BeanStalk界面。而後點擊Create one now

 

 

上圖:選擇創建個web server的開發使用環境。

 

上圖:輸入環境名稱。

 

上圖:應用code平臺這裏根據客戶需求進行選擇,本例這裏選擇PHP平臺。

 

上圖:本實例中上傳的代碼選擇sample application,用戶也能夠選擇下方的upload your code選擇上傳本身已經有的代碼(zip包或者war)。最後點擊Create environment建立。

 

 

上圖:基於PHPweb服務正在啓動中,一步到位的部署方式免去了傳統環境中啓動服務器,下載相關應用,配置應用等繁瑣工做。

 

上圖:Dashboard上能夠看到應用已經部署成功。點擊URL便可訪問。

 

 

上圖:web服務已經能夠訪問了,未來業務更新升級只需上傳更新代碼便可。

 

 

總結一下剛纔的實驗中,AWS Elastic BeanStalk替用戶作了哪些工做:

  1. 建立SecurityGroup
  2. 建立EIP
  3. 建立EC2虛擬機
  4. EC2虛擬機部署PHPweb服務等應用
  5. 上傳PHP代碼到EC2虛擬機中
  6. 啓動EC2並提供公網訪問地址

 

 補充: 基於AWS ElasticBeanStalk的業務的升級

 

 

上圖:點擊Dashboard頁面running version處的Upload and Deploy按鈕便可上傳新版本的代碼對服務進行升級改版。

 

上圖:Action按鈕下的選項中,clone Environment選項能對本環境進行克隆移植,保存配置或者是環境重構等操做,很是的方便。

 

總結:AWS ElasticBeanStalk對比傳統環境下應用服務平臺部署最大的優點即是簡單無腦,方便靈活。一鍵部署的方式比傳統環境下運維從建立服務器開始一步步的配置完成再交付給開發部署代碼流程省時省力,擴展和移植也便捷,是一種頗受歡迎的雲上DevOps工具。

 

 

by:白刃霜飛

 

多年海內外系統,網絡,信息安全從業經驗。參與並主導多個世界500強企業大型IT項目,現任職於Simba Innvation的雲計算專家。

相關文章
相關標籤/搜索