91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解AWS的自動部署工具codedeploy概述和主要組件

發布時間:2021-11-18 17:27:03 來源:億速云 閱讀:229 作者:柒染 欄目:云計算

這篇文章給大家介紹如何理解AWS的自動部署工具codedeploy概述和主要組件,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

codedeploy概述:

codedeploy是aws上面的一個自動部署服務,可以自動的將應用程序部署到EC2實例、本地實例(任意的線上或線下自己的一臺機器)、無實例的lamda函數、ECS上面。

可以部署的應用程序包括:代碼、無服務器的lamda函數、web和配置、可執行文件、包、腳本、多媒體文件。

可以部署到一個或數千個實例。

CodeDeploy提供了兩種部署類型選項:

1)就地部署:停止部署組中每個實例上的應用程序,安裝最新的應用程序修訂版,并啟動并驗證新版本的應用程序。您可以使用負載平衡器,以便在部署期間取消注冊每個實例,然后在部署完成后恢復為服務。只有使用EC2 / On-Premises計算平臺的部署才能使用就地部署。

工作原理:創建可部署的內容,添加應用程序規范文件 (AppSpec文件:定義了CodeDeploy執行的部署操作),將可部署內容和AppSpec文件捆綁到存檔文件中,然后上傳到s3或github中,此時的歸檔文件稱為應用程序修訂版  -->  告訴codedeploy新代碼或部署內容在哪,codedeploy調用一組EC2  -->  每臺EC2上面的EC2實例輪詢codedeploy,確定在哪獲得新的內容和時間  -->  每個實例上的CodeDeploy代理從S3或GitHub上提取新代碼,并使用AppSpec文件中的指令將內容部署到實例。

2)藍綠部署:藍/綠部署將應用程序原始環境中的流量重新路由到替換環境,環境取決于codedeploy應用程序的計算平臺

AWS Lambda:流量從 Lambda 函數的一個版本轉移到同一 Lambda 函數的新版本。

Amazon ECS:流量從 Amazon ECS 服務中的任務集轉移到同一 Amazon ECS 服務中更新的替換任務集。

EC2/本地:流量從原始環境中的一組實例轉移到一組替換實例。

所有 AWS Lambda 和 Amazon ECS 部署都是藍/綠部署。EC2/本地部署可以是就地部署或藍/綠部署。藍綠部署相比較就地部署的優勢:

1)可以在新的替換環境中安裝和測試應用程序,在部署的時候只需要重新路由流量就可以應用到生產環境中;

2)如果是EC2或本地實例,切換回最新的程序版本將更快,更可靠。這是因為只要原始實例沒有被終止,流量就可以路由回原始實例,而在就地部署中,必須重新部署上一個版本的應用程序來進行回滾;

3)如果生產環境使用的是EC2或本地實例,則會為藍綠部署預置新的實例,并且新實例是最新的服務器配置,可以避免生產實例長時間運行出現的問題;

4)如果使用的是lambda計算平臺,則需要控制流量如何從原始地lambda函數版本轉移到新的lambda函數版本。

例:在EC2或本地實例上做藍綠部署:

(使用藍綠部署必須使用AWS的EC2實例,不可是本地實例);如果使用EC2或本地計算平臺必須有一個或多個帶有標識的EC2標簽或EC2 Auto Scaling 組的 EC2 實例(這些實例必須滿足:每個EC2實例必須附加有正確的IAM實例配置文件,并且在每臺實例上安裝運行codedeploy代理);通常,您還會有一個在原始環境中的實例上運行的應用程序修訂,但這對藍/綠部署來說不是必需的。

當創建使用藍綠部署的部署組的時候,可以選擇如何指定替換環境:{

復制現有 Amazon EC2 Auto Scaling 組:在藍綠部署中,codedeploy將在部署期間為替換環境創建實例,CodeDeploy 將使用指定的 Amazon EC2 Auto Scaling 組作為替換環境的模板,其中包括相同數量的正在運行的實例和許多其他配置選項。

手動選擇實例:使用 Amazon EC2 實例標簽或 Amazon EC2 Auto Scaling 組名稱指定要計為替換項的實例,選擇了此項,在部署前無需指定替換環境的實例。

操作方式:

1)已有充當原始環境的一些實例或一個 Amazon EC2 Auto Scaling 組。首次運行藍/綠部署時,您通常使用已在就地部署中使用的實例;

2)在codedeploy中創建一個藍綠部署,在其中除了就地部署所需的選項之外,還要指定以下內容:

在藍/綠部署過程期間,將流量從您原始環境路由到替換環境的負載均衡器。

立即將流量重新路由到替換環境還是等待您手動路由。

流量路由到替換實例的速率。

被替換的實例是終止還是繼續運行。

3)為此部署創建了一個部署將會發生以下情況:

如果選擇復制 Amazon EC2 Auto Scaling 組,則將為您的替換環境預置實例;

指定部署的應用程序將安裝在替換環境上;

如果在部署組中設置了等待時間,部署將暫停,這是是對替換環境測試和驗證的時間,如果未在等待之前進行手動路由流量,部署將停止;

替換環境中的實例向 Elastic Load Balancing 負載均衡器注冊,流量開始路由到這些實例;

原始環境中的實例將取消注冊,并根據部署組中的規范進行處理,要么終止,要么繼續運行。

codedeploy的主要組件:

應用:唯一標識要部署的應用程序的名稱。代碼部署使用此名稱 (用作容器), 以確保在部署過程中引用修訂、部署配置和部署組的正確組合。

計算平臺:codedeploy部署應用程序的平臺。EC2/本地:可以作為 Amazon EC2 云實例或本地服務器的物理服務器實例。使用 EC2或本地計算平臺創建的應用程序可以包括可執行文件、配置文件和映像等。使用 EC2/本地 計算平臺的部署通過使用就地部署或藍/綠部署類型,管理流量定向到實例的方式。

部署配置:codedeploy在部署期間使用的一組部署規則、部署成功條件、失敗條件。如果部署采用的是EC2或本地實例,可以為部署指定最少數量的運行正常實例。

部署組:一組單獨的實例。部署組包含單獨標記的實例或 Amazon EC2 Auto Scaling 組中的 Amazon EC2 實例

部署類型:用于在部署組中的實例上,提供最新的的應用程序修訂的方法。

IAM實例配置文件:一種附加到EC2實例的IAM角色。此配置文件包含了訪問S3和github的訪問權限。

修訂:lambda部署修訂是一種yaml格式或json格式的文件,指定有關要部署的lambda函數的信息。EC2本地部署修訂是一個存檔文件,包含源內容(源代碼、網頁、可執行文件和部署腳本)以及 application specification file (AppSpec file)。AWS Lambda 修訂可存儲在 Amazon S3 中。EC2/本地 修訂存儲在 Amazon S3 或 GitHub 中。

服務角色:一組用于向aws服務授予權限便可以訪問aws服務資源的IAM角色,在codedeploy中,服務角色用于:

讀取應用于實例的標記與實例關聯的EC2 auto scaling 組名,這使codedeploy能夠標識它,可將應用程序部署到實例;(使codedeploy對實例有部署的權限,)

對實例、EC2 auto scaling 組和elastic load balancing負載均衡器執行操作;(有執行操作的權利)

將信息發布到aws SNS主題,以便在發生指定的部署或實例事件時發送通知;(使codedeploy有發送信息到SNS的權利)

檢索cloudwatch警報信息,設置部署的警報監視。

關于如何理解AWS的自動部署工具codedeploy概述和主要組件就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

二连浩特市| 额济纳旗| 壤塘县| 罗城| 宁陵县| 密山市| 鹿泉市| 合肥市| 南阳市| 辽阳县| 鄂尔多斯市| 绍兴县| 黄山市| 舒兰市| 贵德县| 聂拉木县| 赞皇县| 昭通市| 梓潼县| 舒兰市| 湘西| 兖州市| 青田县| 双峰县| 镇坪县| 绩溪县| 枝江市| 噶尔县| 绥德县| 镇沅| 黑河市| 鹤峰县| 吉水县| 恩平市| 东乡县| 浏阳市| 上高县| 寿光市| 屏南县| 扎鲁特旗| 永清县|