久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

AWS的負(fù)載均衡器工具如何部署codedeploy

共計(jì) 4695 個(gè)字符,預(yù)計(jì)需要花費(fèi) 12 分鐘才能閱讀完成。

AWS 的負(fù)載均衡器工具如何部署 codedeploy,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面丸趣 TV 小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

Elastic Load Balancing 提供了三種可用于 CodeDeploy 部署的負(fù)載均衡器:Classic Load Balancer、Application Load Balancer 和 Network Load Balancer。

傳統(tǒng)負(fù)載均衡器路由和負(fù)載均衡在傳輸層 (TCP/SSL) 或應(yīng)用程序?qū)?(HTTP/HTTPS) 進(jìn)行。它支持 EC2-Classic 或 VPC。應(yīng)用程序負(fù)載均衡器

路由和負(fù)載均衡在應(yīng)用程序?qū)?(HTTP/HTTPS) 進(jìn)行,并支持基于路徑的路由。它可以將請(qǐng)求路由到您的 Virtual Private Cloud (VPC) 中每個(gè) EC2 實(shí)例或容器實(shí)例上的端口。

注意

應(yīng)用程序負(fù)載均衡器 目標(biāo)組必須有一個(gè)目標(biāo)類(lèi)型  instance;

Network Load Balancer

路由和負(fù)載均衡在傳輸層(TCP/UDP 層,即第 4 層)進(jìn)行,依據(jù)是從 TCP 數(shù)據(jù)包標(biāo)頭中而非從數(shù)據(jù)包內(nèi)容中提取的地址信息。Network Load Balancer 可以處理突發(fā)流量、保留客戶端的源 IP 以及在負(fù)載均衡器的使用壽命內(nèi)使用固定 IP

負(fù)載均衡器在 CodeDeploy 部署中的作用

在 CodeDeploy 部署期間,負(fù)載均衡器會(huì)阻止 Internet 流量路由到未就緒的實(shí)例,目前正在部署的實(shí)例,或環(huán)境不再需要的實(shí)例。但是,負(fù)載均衡器的具體作用取決于它是用于藍(lán) / 綠部署還是就地部署。

注意

Elastic Load Balancing 負(fù)載均衡器的使用在藍(lán) / 綠部署中為必需,在就地部署中為可選。

藍(lán) / 綠部署

依托于 Elastic Load Balancing 負(fù)載均衡器來(lái)重新路由實(shí)例流量是 CodeDeploy 藍(lán) / 綠部署的基礎(chǔ)。

在藍(lán) / 綠部署期間,負(fù)載均衡器根據(jù)您指定的規(guī)則,允許將流量路由到已部署最新應(yīng)用程序修訂的部署組中的新實(shí)例 (替換環(huán)境),然后阻止運(yùn)行較早應(yīng)用程序修訂的舊實(shí)例的流量 (原始環(huán)境)。

替換環(huán)境中的實(shí)例注冊(cè)負(fù)載均衡器后,將取消注冊(cè)原始環(huán)境中的實(shí)例,并根據(jù)您的需要終止。

對(duì)于藍(lán) / 綠部署,您可以在部署組中指定 傳統(tǒng)負(fù)載均衡器、應(yīng)用程序負(fù)載均衡器 或 Network Load Balancer。您可以使用 CodeDeploy 控制臺(tái)或 AWS CLI 將負(fù)載均衡器添加到部署組。

就地部署

在就地部署的過(guò)程中,負(fù)載均衡器可以防止 Internet 流量路由到要部署的實(shí)例;實(shí)例部署完成后,可恢復(fù)對(duì)該實(shí)例的流量路由。

如果就地部署期間未使用負(fù)載均衡器,Internet 流量在部署過(guò)程中可能仍會(huì)引向該實(shí)例。因此,您的客戶可能會(huì)遇到中斷、不完整或過(guò)時(shí)的 Web 應(yīng)用程序。在將 Elastic Load Balancing 負(fù)載均衡器用于就地部署時(shí),部署組中的實(shí)例將從負(fù)載均衡器取消注冊(cè),更新為最新的應(yīng)用程序修訂,并在部署成功后向負(fù)載均衡器重新注冊(cè)同一部署組。

對(duì)于就地部署,您可以指定 傳統(tǒng)負(fù)載均衡器、應(yīng)用程序負(fù)載均衡器 或 Network Load Balancer。您可以在配置部署組的過(guò)程中指定負(fù)載均衡器,或使用 CodeDeploy 提供的腳本實(shí)施負(fù)載均衡器。

可以使用 CodeDeploy 控制臺(tái)或 AWS CLI 將負(fù)載均衡器添加到部署組;

使用腳本為就地部署設(shè)置負(fù)載均衡器

通過(guò)執(zhí)行以下過(guò)程中的步驟,使用部署聲明周期腳本為就地部署設(shè)置負(fù)載均衡。

注意

您應(yīng)該僅在使用腳本為就地部署設(shè)置負(fù)載均衡器時(shí)使用 CodeDeployDefault.OneAtATime 部署配置。不支持并發(fā)運(yùn)行,并且 CodeDeployDefault.OneAtATime 設(shè)置可確保腳本的順序執(zhí)行;

在 GitHub 上的 CodeDeploy 示例存儲(chǔ)庫(kù)中,我們提供了說(shuō)明和示例,您可進(jìn)行調(diào)整以使用 CodeDeploy Elastic Load Balancing 負(fù)載均衡器。這些存儲(chǔ)庫(kù)包含三個(gè)示例腳本 — register_with_elb.sh、deregister_from_elb.sh  和  common_functions.sh — 這些腳本提供了開(kāi)始操作所需的全部代碼。只需編輯這 3 個(gè)腳本中的占位符,然后從  appspec.yml  文件中引用這些腳本。

要使用已注冊(cè)到 Elastic Load Balancing 負(fù)載均衡器的 Amazon EC2 實(shí)例設(shè)置 CodeDeploy 中的就地部署,請(qǐng)執(zhí)行以下操作:

下載要用于就地部署的負(fù)載均衡器的類(lèi)型的示例:

傳統(tǒng)負(fù)載均衡器

應(yīng)用程序負(fù)載均衡器   或 Network Load Balancer(同一腳本可用于任一類(lèi)型)

確保每個(gè)目標(biāo) Amazon EC2 實(shí)例均已安裝 AWS CLI。

確保每個(gè)目標(biāo) Amazon EC2 實(shí)例均已附加至少一個(gè) IAM 實(shí)例配置文件,并且具有 elasticloadbalancing:* 和 autoscaling:* 權(quán)限。

將部署生命周期事件腳本 (register_with_elb.sh、deregister_from_elb.sh  和  common_functions.sh) 包含在應(yīng)用程序的源代碼目錄中。

在應(yīng)用程序修訂的  appspec.yml  中,提供有關(guān) CodeDeploy 在  ApplicationStart  事件期間運(yùn)行  register_with_elb.sh  腳本以及在  ApplicationStop  事件期間運(yùn)行  deregister_from_elb.sh  腳本的說(shuō)明。

如果實(shí)例屬于某個(gè) Amazon EC2 Auto Scaling 組,則可跳過(guò)此步驟。

在  common_functions.sh  腳本中:

如果您使用的是   傳統(tǒng)負(fù)載均衡器,請(qǐng)?jiān)? ELB_LIST=   中指定 Elastic Load Balancing 負(fù)載均衡器的名稱(chēng),并對(duì)文件中的其他部署設(shè)置進(jìn)行所需的任何更改。

如果您使用的是   應(yīng)用程序負(fù)載均衡器   或 Network Load Balancer,請(qǐng)?jiān)? TARGET_GROUP_LIST=   中指定 Elastic Load Balancing 目標(biāo)組的名稱(chēng),并對(duì)文件中的其他部署設(shè)置進(jìn)行所需的任何更改。

將應(yīng)用程序的源代碼、appspec.yml  和部署生命周期事件腳本綁定到一個(gè)應(yīng)用程序修訂中,然后上傳該修訂。將該修訂部署到 Amazon EC2 實(shí)例。在部署期間,部署生命周期事件腳本將向負(fù)載均衡器取消注冊(cè) Amazon EC2 實(shí)例,等待連接耗盡,然后在部署完成后向負(fù)載均衡器重新注冊(cè) Amazon EC2 實(shí)例。

從 GitHub 部署 CodeDeploy 修訂

要將應(yīng)用程序修訂從 GitHub 存儲(chǔ)庫(kù)部署到實(shí)例,請(qǐng)執(zhí)行以下步驟:

創(chuàng)建與 CodeDeploy 和將部署到的 Amazon EC2 實(shí)例類(lèi)型兼容的修訂。

要?jiǎng)?chuàng)建兼容版本,請(qǐng)按照計(jì)劃 CodeDeploy 的修訂和將應(yīng)用程序規(guī)范文件添加到 CodeDeploy 的修訂中的說(shuō)明執(zhí)行操作。

使用 GitHub 賬戶將您的修訂添加到 GitHub 存儲(chǔ)庫(kù)。

使用 CodeDeploy 控制臺(tái)中的創(chuàng)建部署頁(yè)或使用 AWS CLI create-deployment  命令將修訂從 GitHub 存儲(chǔ)庫(kù)部署到已配置為在 CodeDeploy 部署中使用的目標(biāo)實(shí)例。

如果您需要調(diào)用  create-deployment  命令,則必須先使用此控制臺(tái)的創(chuàng)建部署頁(yè),針對(duì)指定應(yīng)用程序?yàn)?CodeDeploy 授予代表您的首選 GitHub 賬戶與 GitHub 交互的權(quán)限。每個(gè)應(yīng)用程序只需進(jìn)行一次這樣的操作。

github 和 codedeploy 之間的交互:

GitHub 對(duì) CodeDeploy 中的應(yīng)用程序進(jìn)行的身份驗(yàn)證

在向 CodeDeploy 提供與 GitHub 交互的權(quán)限后,GitHub 賬戶和應(yīng)用程序之間的關(guān)聯(lián)將存儲(chǔ)在 CodeDeploy 中。您可以將應(yīng)用程序鏈接到其他 GitHub 賬戶。也可以撤消 CodeDeploy 與 GitHub 交互的權(quán)限。

將 GitHub 賬戶鏈接到 CodeDeploy 中的應(yīng)用程序

Sign in to the AWS 管理控制臺(tái) and open the CodeDeploy console at https://console.aws.amazon.com/codedeploy.

注意

使用您在  CodeDeploy 入門(mén)中使用的相同賬戶或 IAM 用戶信息登錄。

在導(dǎo)航窗格中,展開(kāi)  Deploy (部署),然后選擇  Applications (應(yīng)用程序)。

選擇要鏈接到其他 GitHub 賬戶的應(yīng)用程序。

如果應(yīng)用程序沒(méi)有部署組,請(qǐng)選擇創(chuàng)建部署組來(lái)創(chuàng)建一個(gè)部署組

從部署中,選擇創(chuàng)建部署。

注意

無(wú)需創(chuàng)建新的部署。這是目前將其他 GitHub 賬戶鏈接到應(yīng)用程序的唯一方式。

在部署設(shè)置中,對(duì)于修訂類(lèi)型,選擇我的應(yīng)用程序?qū)⒋鎯?chǔ)在 GitHub 中。

執(zhí)行以下操作之一:

要為 CodeDeploy 應(yīng)用程序創(chuàng)建與 GitHub 賬戶的連接,在單獨(dú)的 Web 瀏覽器選項(xiàng)卡中注銷(xiāo) GitHub。在  GitHub 令牌名稱(chēng)中,鍵入一個(gè)名稱(chēng)來(lái)標(biāo)識(shí)此連接,然后選擇連接到 GitHub。該網(wǎng)頁(yè)將提示授權(quán) CodeDeploy 與應(yīng)用程序的 GitHub 進(jìn)行交互。繼續(xù)執(zhí)行步驟 10。

要使用已創(chuàng)建的連接,請(qǐng)?jiān)? GitHub 令牌名稱(chēng)中,選擇其名稱(chēng),然后選擇連接到 GitHub。繼續(xù)執(zhí)行步驟 8。

要?jiǎng)?chuàng)建與其他 GitHub 賬戶的連接,在單獨(dú)的 Web 瀏覽器選項(xiàng)卡中注銷(xiāo) GitHub。在  GitHub 令牌名稱(chēng)中,鍵入一個(gè)名稱(chēng)來(lái)標(biāo)識(shí)此連接,然后選擇連接到 GitHub。該網(wǎng)頁(yè)將提示授權(quán) CodeDeploy 與應(yīng)用程序的 GitHub 進(jìn)行交互。繼續(xù)執(zhí)行步驟 10。

如果尚未登錄 GitHub,請(qǐng)按照  Sign in  頁(yè)上的說(shuō)明執(zhí)行操作以使用要將應(yīng)用程序鏈接到的 GitHub 賬戶進(jìn)行登錄。

選擇  Authorize application。GitHub 向 CodeDeploy 提供代表所選應(yīng)用程序的已登錄 GitHub 賬戶與 GitHub 交互的權(quán)限。

如果您需要?jiǎng)?chuàng)建部署,請(qǐng)選擇  Cancel

撤消 CodeDeploy 的與 GitHub 交互的權(quán)限

使用要撤消 CodeDeploy 權(quán)限的 GitHub 賬戶的憑證登錄到  GitHub。

打開(kāi) GitHub  應(yīng)用程序頁(yè),在已授權(quán)應(yīng)用程序列表中找到  CodeDeploy,然后按照用于撤消應(yīng)用程序授權(quán)的 GitHub 過(guò)程執(zhí)行操作。

CodeDeploy 與私有和公有 GitHub 存儲(chǔ)庫(kù)進(jìn)行交互

CodeDeploy 支持從私有和公有 GitHub 存儲(chǔ)庫(kù)部署應(yīng)用程序。當(dāng)您向 CodeDeploy 授予代表您訪問(wèn) GitHub 的權(quán)限后,CodeDeploy 針對(duì)您的 GitHub 賬戶有權(quán)訪問(wèn)的所有私有 GitHub 存儲(chǔ)庫(kù)都將擁有讀寫(xiě)訪問(wèn)權(quán)。不過(guò),CodeDeploy 只能從 GitHub 存儲(chǔ)庫(kù)進(jìn)行讀取。它將不會(huì)對(duì)任何私有 GitHub 存儲(chǔ)庫(kù)進(jìn)行寫(xiě)入。

CodeDeploy 與組織托管的 GitHub 存儲(chǔ)庫(kù)進(jìn)行交互

默認(rèn)情況下,組織托管的 GitHub 存儲(chǔ)庫(kù)(與賬戶自己的私有或公有存儲(chǔ)庫(kù)相對(duì))未授予對(duì)第三方應(yīng)用程序(包括 CodeDeploy)的訪問(wèn)權(quán)。如果在 GitHub 中啟用組織的第三方應(yīng)用程序限制,并且您嘗試從其 GitHub 存儲(chǔ)庫(kù)中部署代碼,則部署將失敗。可通過(guò)兩種方式解決此問(wèn)題。

作為組織成員,您可以要求組織所有者批準(zhǔn)對(duì) CodeDeploy 的訪問(wèn)權(quán)。請(qǐng)求此訪問(wèn)權(quán)的步驟取決于您是否已授權(quán)單個(gè)賬戶訪問(wèn) CodeDeploy

使用 CodeDeploy 自動(dòng)從 CodePipeline 進(jìn)行部署

當(dāng)源代碼發(fā)生更改時(shí),您可以觸發(fā)從 CodePipeline 進(jìn)行的部署

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注丸趣 TV 行業(yè)資訊頻道,感謝您對(duì)丸趣 TV 的支持。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-25發(fā)表,共計(jì)4695字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 临潭县| 赤峰市| 商洛市| 大名县| 建瓯市| 会宁县| 邢台市| 嵩明县| 青河县| 佛冈县| 九台市| 乳源| 长葛市| 岑溪市| 化德县| 株洲县| 灵丘县| 成武县| 丹棱县| 新干县| 铜川市| 宁陕县| 洛川县| 喜德县| 阿拉尔市| 民勤县| 特克斯县| 西城区| 和顺县| 奇台县| 苏尼特左旗| 师宗县| 临湘市| 汉寿县| 建平县| 剑川县| 田阳县| 镇沅| 祁东县| 民丰县| 诸暨市|