天天看點

Elastic Beanstalk部署政策

關注公衆号:AWS愛好者(iloveaws)
文 | 沉默惡魔(禁止轉載,轉載請先經過作者同意)
網站:www.iloveaws.cn
           

Hello大家好,歡迎來到《AWS解決方案架構師認證 Professional(SAP)中文視訊教育訓練課程》,我們今天繼續Elastic Beanstalk的内容,介紹Elastic Beanstalk部署政策。

我們開始今天的課程内容。

Elastic Beanstalk部署政策

上節課我們實操示範了使用EB部署了一個示例應用程式,那如果之後需要更新EB上的應用程式時,就需要在EB對新版本的應用程式進行部署。

我們先來看下EB支援的部署政策,EB支援4種部署政策,分别為:

一次性部署全部,滾動部署,附加批次的滾動部署,以及不可變的部署。

我們需要了解每一種部署政策具體是什麼,以及使用每種部署政策具體的場景。

Elastic Beanstalk部署政策

一次部署全部政策

首先,一次部署全部政策,All at once。

假設我們現在有一個新版本的應用程式需要部署,“一次部署全部政策”表示将新版本同時部署到所有執行個體,比如我們現在EB的環境一共有兩個執行個體,那麼一次部署全部表示将新版本同時部署到這兩個執行個體。

在執行部署時,環境中的所有執行個體将短時間禁用。是以一次部署全部政策,對于業務是有停機時間的。

當因為某些原因更新新版本應用程式失敗時,隻能通過手動重新部署之前的舊版本完成版本的復原過程。

一次性部署,因為是一次性部署全部執行個體,是以所需的部署時間應該是4種政策中最短的;但是缺點是在部署的過程中,所有的執行個體會短時間内禁用,也就是說部署過程中您的WEB應用程式是無法對外提供服務的。

以上,是一次部署全部政策。

Elastic Beanstalk部署政策

滾動部署

我們來看下第二種部署政策,滾動部署。

滾動部署,是将新版本的應用程式按批次、分批進行部署,批量部署新版本程式。

前面的“一次部署全部政策”,是将新版本同時部署到所有執行個體;而“滾動部署”,是在部署階段對執行個體分批次進行部署,分批次禁用服務,然後部署新版本,在恢複禁用提供服務。

在滾動部署期間,一些執行個體通過舊版本的應用程式處理請求,而已完成批次中的執行個體通過新版本處理其他請求,就是說會有同時存在新老版本應用程式提供服務的情況。滾動部署不是将新版本同時部署到所有執行個體的,如果新版本的應用程式有問題,采用滾動部署政策并不會一下同時影響所有使用者。

滾動部署有一個特點是,因為采用的是分批次進行部署,是以在部署過程中,您配置的執行個體總體容量将會減少。

什麼意思呢?假設我們現在有3個執行個體對外提供服務,當采用滾動部署時,會将其中一個執行個體禁用服務,然後進行部署新版本應用程式,這樣的話在部署過程中您提供服務的執行個體數量就由之前一共3個執行個體變為2個,提供服務的 總的容量減少了。

是以采用滾動部署政策,就需要關注應用程式的負載對于容量的需求,如果需要3個執行個體保障正常服務,采用了滾動部署政策,就可能會造成在部署過程中容量減少給應用程式造成性能問題,這一點要注意。

Elastic Beanstalk部署政策

附加批次滾動部署

上述的問題,就有了第三種部署政策“附加批次滾動部署”,滾動部署的另一個版本。

“附加批次滾動部署” 同樣也是批量部署新版本應用程式,但不同的是它會先啟動新的額外的執行個體批次進行部署,以確定部署過程中應用程式能夠使用完整容量。

比如我們現在在EB有3個執行個體,采用附加批次滾動部署新版本應用程式時,EB會額外啟動新執行個體進行部署,應用程式始終保持在部署過程中有完整的容量可用。

在部署完成後,Elastic Beanstalk 将終止附加的執行個體批次。

Elastic Beanstalk部署政策

不可變部署

第四個部署政策是不可變部署,Elastic Beanstalk 在您環境的負載均衡器後面建立臨時 Auto Scaling 組以及新執行個體,然後将新版本的應用程式先部署到這個新的auto-scaling組的新的一組執行個體上。此執行個體和在之前配置中運作的原始 Auto Scaling 組中的所有執行個體一起,為流量提供服務。然後當部署完成後,當新的執行個體完成健康狀況檢查後,會将這些新的執行個體移動到舊的auto-scaling組,并終止臨時的 Auto Scaling 組以及舊的執行個體。

執行不可變部署時,部署失敗帶來的影響是最低的,如果部署新版本的新的執行個體未通過運作狀況檢查,則 Elastic Beanstalk 将終止這些執行個體,删除新的auto-scaling組,并使原始執行個體保持不變提供服務。

是以,基于這些特性,采用不可變部署政策,是生産環境的核心業務的首選之一。

Elastic Beanstalk部署政策

好,以上就是Elastic Beanstalk部署政策,這些内容對于考試非常的重要,會有涉及的一些考點,希望大家重點關注。

以上就是我們今天的内容,希望能夠給大家帶來幫助。

希望此系列教程能為您通過 AWS解決方案架構師認證 Professional 認證考試帶來幫助,如您有任何疑問

關注公衆号:AWS愛好者(iloveaws)
文 | 沉默惡魔(禁止轉載,轉載請先經過作者同意)
網站:www.iloveaws.cn
           
上一篇: Tomcat Server

繼續閱讀