版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、容器服務(wù)用戶指南容器服務(wù)/用戶指南容器服務(wù)/用戶指南 PAGE 75 PAGE 75用戶指南用戶使用流程用戶使用流程完整的使用容器服務(wù)需要通過(guò)4個(gè)步驟完成:第一步:創(chuàng)建集群,選擇集群的網(wǎng)絡(luò)環(huán)境,設(shè)置集群的節(jié)點(diǎn)個(gè)數(shù)和配置信息第二步:選擇鏡像或編排模板(如果用戶的應(yīng)用由多個(gè)鏡像組成,可以選擇一個(gè)編排模板)第三步:創(chuàng)建應(yīng)用并部署第四步:查看部署后應(yīng)用的狀態(tài)和相應(yīng)的服務(wù)、容器信息基本概念和術(shù)語(yǔ)表集群:一個(gè)集群指容器運(yùn)行所需要的云資源組合,關(guān)聯(lián)了若干服務(wù)器節(jié)點(diǎn)、負(fù)載均衡、專有網(wǎng)絡(luò)等云資源.節(jié)點(diǎn):一臺(tái)服務(wù)器,需要安裝容器服務(wù)的Agent程序并注冊(cè)到一個(gè)集群上.容器:一個(gè)通過(guò)Docker鏡像部署的實(shí)例,一個(gè)
2、節(jié)點(diǎn)可運(yùn)行多個(gè)容器.鏡像Registry地址+鏡像Repo名稱+鏡像Tag名稱)唯一 確認(rèn).編排模板Docker Compose模板,描述了多個(gè)鏡像的連接關(guān)系,用于部署應(yīng)用.應(yīng)用:一個(gè)應(yīng)用可通過(guò)單個(gè)鏡像或一個(gè)編排模板創(chuàng)建.每個(gè)應(yīng)用可包含1個(gè)或多個(gè)服務(wù).服務(wù):一組運(yùn)行相同鏡像相同配置的容器,作為一個(gè)可伸縮的微服務(wù).關(guān)聯(lián)關(guān)系:集群管理集群介紹一個(gè)集群(Cluster)指容器運(yùn)行所需要的云資源組合,關(guān)聯(lián)了若干云服務(wù)器節(jié)點(diǎn)、負(fù)載均衡等云資源。集群創(chuàng)建有多種方式可以創(chuàng)建一個(gè)集群:1.創(chuàng)建一個(gè)的集群,并同時(shí)創(chuàng)建若干云服務(wù)器可以通過(guò)容器服務(wù)直接創(chuàng)建一個(gè)包含若干新云服務(wù)器的集群。詳見(jiàn):創(chuàng)建集群通過(guò)此方式創(chuàng)建的
3、云服務(wù)器皆為按量付費(fèi),如需要包年包月的云服務(wù)器,可以單獨(dú)購(gòu)買再通過(guò)接下來(lái)的方案2操作。2.創(chuàng)建一個(gè)零節(jié)點(diǎn)的集群,添加已有的云服務(wù)器創(chuàng)建一個(gè)零節(jié)點(diǎn)的集群如果已經(jīng)在云服務(wù)器ECS購(gòu)買了若干云服務(wù)器,可以在容器服務(wù)創(chuàng)建一個(gè)零節(jié)點(diǎn)的集群。操作方式同方式一,只需要設(shè)置實(shí)例數(shù)量為0。添加已有的云服務(wù)器重置云服務(wù)器的鏡像,自動(dòng)加入集群此種方式會(huì)重置云服務(wù)器的鏡像和系統(tǒng)盤(pán),需要謹(jǐn)慎。但是這種方式加入的服務(wù)器比較干凈。在云服務(wù)器上執(zhí)行腳本,手動(dòng)加入集群此種方式適合于不希望重置云服務(wù)器的鏡像。詳見(jiàn):添加已有云服務(wù)器集群管理支持集群擴(kuò)容、刪除、清理、連接等操作。創(chuàng)建集群限制說(shuō)明目前SLB只支持按流量付費(fèi)的方式,后續(xù)
4、將提供更多選擇目前可以選擇北京、杭州、深圳的地域,后續(xù)會(huì)支持更多的地域.用戶賬戶需有100元的余額并通過(guò)實(shí)名認(rèn)證,否則無(wú)法創(chuàng)建按量付費(fèi)的ECS與SLB可以在創(chuàng)建集群的時(shí)候同時(shí)指定云服務(wù)器的配置和個(gè)數(shù)。也可以創(chuàng)建一個(gè)零節(jié)點(diǎn)的集群,之后再綁定其他云服務(wù) 器。操作流程在左側(cè)導(dǎo)航的集群頁(yè),點(diǎn)擊右上角的創(chuàng)建集群后,跳轉(zhuǎn)到下面的頁(yè)面設(shè)置集群的名稱和地域可以設(shè)置一個(gè)名稱用于標(biāo)示集群.名稱要求在同一個(gè)用戶和同一個(gè)地域下唯一. 可以根據(jù)用戶的服務(wù)器分布情況,選擇不同的地域和可用區(qū).設(shè)置云服務(wù)器的重要信息目前支持的操作系統(tǒng)包括Ubuntu 14.04 64位和CentOS 7.0 64位。目前創(chuàng)建集群會(huì)默創(chuàng)建一個(gè)
5、負(fù)載均衡SLB,用戶可以通過(guò)這個(gè)SLB訪問(wèn)集群內(nèi)的容器應(yīng)用。 通過(guò)容器服務(wù)創(chuàng)建的云服務(wù)器為按量計(jì)費(fèi)。設(shè)置云服務(wù)器的網(wǎng)絡(luò)可以選擇集群歸屬的不同網(wǎng)絡(luò)類型:經(jīng)典網(wǎng)絡(luò)或?qū)S芯W(wǎng)絡(luò)VPC.相應(yīng)的云服務(wù)器等云資源會(huì)在相應(yīng)的網(wǎng)絡(luò)環(huán)境下管 理。選擇經(jīng)典網(wǎng)絡(luò)不需要額外配置經(jīng)典網(wǎng)絡(luò)是相對(duì)于專有網(wǎng)絡(luò)VPC的說(shuō)法,是由阿里云統(tǒng)一規(guī)劃的公共基礎(chǔ)網(wǎng)絡(luò),經(jīng)典網(wǎng)絡(luò)的網(wǎng)絡(luò)地址和網(wǎng)絡(luò)拓?fù)溆?阿里云分配,用戶無(wú)需特殊配置即可使用。也是阿里云的默認(rèn)網(wǎng)絡(luò)環(huán)境。選擇專有網(wǎng)絡(luò)需要配置相關(guān)信息專有網(wǎng)絡(luò)VPC支持用戶基于阿里云構(gòu)建一個(gè)隔離的網(wǎng)絡(luò)環(huán)境,用戶可以完全掌控自己的虛擬網(wǎng)絡(luò),包括自由IP地址 范圍、劃分網(wǎng)段、配置路由表和網(wǎng)關(guān)等。專有網(wǎng)絡(luò)需
6、要用戶指定一個(gè)VPC、一個(gè)VSwitchId和容器的起始網(wǎng)段(Docker容器所屬的子網(wǎng)網(wǎng)段,為了便于 IP管理,每個(gè)虛擬機(jī)的容器屬于不同網(wǎng)段,容器容器子網(wǎng)網(wǎng)段不能和虛擬機(jī)網(wǎng)段沖突)。建議:防止網(wǎng)絡(luò)沖突等問(wèn)題,最好為容器集群建立屬于自己的VPC/VSwitchId容器服務(wù)會(huì)默認(rèn)給每一個(gè)專有網(wǎng)絡(luò)下的云服務(wù)器配置一個(gè)EIP。如果不需要可以勾選復(fù)選框,但是需要額外配置SNAT網(wǎng)關(guān)。設(shè)置云服務(wù)器的實(shí)例規(guī)格用戶可選擇不同的實(shí)例規(guī)格和數(shù)量,并指定數(shù)據(jù)盤(pán)的容量(云服務(wù)器默認(rèn)帶有20G大小的系統(tǒng)盤(pán))和登錄密碼. 注:如果選擇了數(shù)據(jù)盤(pán),它會(huì)被掛載到/var/lib/docker目錄,用于Docker鏡像和容器的
7、存儲(chǔ)。從性能和管理考慮,通常我們建議用戶在宿主機(jī)掛載獨(dú)立的數(shù)據(jù)盤(pán),并利用Docker的volume對(duì)容器 的持久化數(shù)據(jù)進(jìn)行管理。點(diǎn)擊創(chuàng)建集群集群創(chuàng)建成功后.如果需要單獨(dú)配置云服務(wù)器或負(fù)載均衡,可以去相應(yīng)的控制臺(tái)操作.查看集群創(chuàng)建日志在集群列表頁(yè)點(diǎn)擊查看日志,查看集群創(chuàng)建的過(guò)程日志.添加已有云服務(wù)器可以將已購(gòu)買的云服務(wù)器添加到指定集群(需要云服務(wù)器和集群保持相同地域和網(wǎng)絡(luò)類型)。如果之前沒(méi)有創(chuàng) 建過(guò)集群,可以先創(chuàng)建一個(gè)零節(jié)點(diǎn)的集群。操作流程1.在集群列表頁(yè)面,選擇一個(gè)集群點(diǎn)擊更多操作下的添加已有實(shí)例2.進(jìn)入添加云服務(wù)器的管理頁(yè)面一種是自動(dòng)添加,即重置鏡像和系統(tǒng)盤(pán)的方式;一種是手動(dòng)添加,需要在云服
8、務(wù)器上執(zhí)行腳本;上圖列出的的實(shí)例列表,是根據(jù)集群所定義的區(qū)域和網(wǎng)絡(luò)類型,從用戶所有云服務(wù)器列表篩選后同步過(guò)來(lái)。3.自動(dòng)添加可以批量選取多臺(tái)實(shí)例,并點(diǎn)擊下一步.進(jìn)入填寫(xiě)實(shí)例信息填寫(xiě)完密碼,點(diǎn)擊下一步,會(huì)彈出確認(rèn)頁(yè)面確認(rèn)后,即顯示提交操作成功!點(diǎn)擊完成,即可查看集群的狀態(tài)可以點(diǎn)擊查看日志,直到集群狀態(tài)到運(yùn)行中。4.手動(dòng)添加選擇手動(dòng)添加的單選框,并挑選一臺(tái)云服務(wù)器,每次只可以選一臺(tái)。點(diǎn)擊下一步,進(jìn)入填寫(xiě)實(shí)例信息頁(yè)面點(diǎn)擊下一步,獲得專屬這臺(tái)云服務(wù)器的腳本命令。通過(guò)終端登錄,并復(fù)制上圖的命令并執(zhí)行:等待腳本執(zhí)行成功,顯示success。該云服務(wù)器即添加成功。刪除集群操作流程1)在集群列表頁(yè)面,選擇要?jiǎng)h除
9、的集群,點(diǎn)擊刪除按鈕.2)在彈出的對(duì)話框里,點(diǎn)擊確認(rèn)按鈕.刪除集群時(shí),會(huì)將關(guān)聯(lián)的云服務(wù)器和負(fù)載均衡等云資源一起刪除.請(qǐng)謹(jǐn)慎操作.搜索集群操作流程1) 在集群列表頁(yè)面,輸入要搜索的集群名稱,點(diǎn)擊搜索按鈕.搜索規(guī)則為:大小寫(xiě)不敏感,只要集群名稱包含搜索的內(nèi)容即可.集群擴(kuò)容操作流程1)在集群列表頁(yè)面,選擇一個(gè)集群,點(diǎn)擊更多操作下的添加節(jié)點(diǎn)鏈接.2)在彈出的對(duì)話框里,設(shè)置新節(jié)點(diǎn)的規(guī)格??梢赃x擇增加服務(wù)器節(jié)點(diǎn)的個(gè)數(shù)和相應(yīng)的規(guī)格:更新集群的Agent集群內(nèi)的每一臺(tái)服務(wù)器,都會(huì)安裝容器服務(wù)的Agent,用于接收容器服務(wù)控制系統(tǒng)的指令下放。 容器服務(wù)會(huì)定期的增加新的功能,如果用戶需要最新的功能,可以選擇更新集
10、群的Agent。操作流程1)在集群列表頁(yè)面,選擇要更新Agent的集群,點(diǎn)擊升級(jí)Agent按鈕。2)在彈出的對(duì)話框里,點(diǎn)擊確認(rèn)按鈕。更新集群的Docker Daemon集群內(nèi)的每一臺(tái)服務(wù)器,都會(huì)安裝標(biāo)準(zhǔn)的Docker Daemon,用于管理容器.操作流程在容器服務(wù)控制臺(tái)主界面選擇左側(cè)邊欄的集群,選擇你要升級(jí)共享服務(wù)的集群,在你選中的集群表項(xiàng) 右側(cè),選擇更多操作,點(diǎn)擊選擇下拉列表的升級(jí)Docker選項(xiàng),如下圖所示在新打開(kāi)的頁(yè)面,會(huì)列出升級(jí)Docker所要完成的一些前置條件,主要是升級(jí)Agent。如果目前系統(tǒng) 的Agent版本太舊的話,會(huì)有升級(jí)提示,根據(jù)提示進(jìn)行相應(yīng)的操作即可;若Agent已是最新
11、版本,則 可以直接升級(jí)Docker。升級(jí)Agent操作如下圖所示當(dāng)系統(tǒng)的Agent是最新版本的時(shí)候,我們能看到升級(jí)Docker的幾種操作方式。直接升級(jí)和備份快照 升級(jí)。建議使用通過(guò)備份快照升級(jí)(以便于在升級(jí)過(guò)程中出問(wèn)題后,可以通過(guò)快照恢復(fù)),如圖所示在升級(jí)頁(yè)面,點(diǎn)擊備份快照升級(jí),此時(shí)系統(tǒng)會(huì)調(diào)用ECS OpenApi對(duì)集群內(nèi)的節(jié)點(diǎn)打快照。如圖所示由于打快照需要一點(diǎn)時(shí)間,此時(shí),我們需要耐心等待一會(huì)打快照的進(jìn)度。待所有快照都成功以后,繼 續(xù)升級(jí)或者放棄升級(jí)按鈕會(huì)亮起。點(diǎn)擊繼續(xù)升級(jí),則進(jìn)入升級(jí)DockerEngine的流程6. 此時(shí)我們返回集群列表,可以看到剛才操作的進(jìn)群處于Docker-Engine
12、升級(jí)中的狀態(tài)。由于升級(jí)Docker Engine會(huì)進(jìn)行相應(yīng)的容器數(shù)據(jù)備份等工作,所以比較耗時(shí),耐心等待一會(huì)即可。升級(jí)集群的系統(tǒng)服務(wù)集群的系統(tǒng)服務(wù)用來(lái)解決應(yīng)用需要的通用服務(wù),例如路由服務(wù)acslogging,日志服務(wù)acsrouting,volume服 務(wù)acsvolumedriver。下面介紹這些服務(wù)的升級(jí)操作流程。請(qǐng)注意,集群的共享服務(wù)在升級(jí)的過(guò)程中會(huì)導(dǎo)致用 戶的應(yīng)用或者服務(wù)短暫不可訪問(wèn)或者不正常工作,請(qǐng)謹(jǐn)慎升級(jí),建議選擇訪問(wèn)低谷或者維護(hù)時(shí)間進(jìn)行升級(jí)操作流程在容器服務(wù)控制臺(tái)主界面選擇左側(cè)邊欄的集群,選擇你要升級(jí)共享服務(wù)的集群,在你選中的集群表項(xiàng) 右側(cè),選擇更多操作,點(diǎn)擊選擇下拉列表的升級(jí)系統(tǒng)
13、服務(wù)選項(xiàng),如下圖所示在彈出的窗口上,選擇要升級(jí)的系統(tǒng)服務(wù),例如此處選擇的是路由服務(wù)(對(duì)應(yīng)acsrouting,注意升級(jí) 會(huì)短暫影響用戶應(yīng)用的訪問(wèn)),volume服務(wù)(對(duì)應(yīng)acsvolumedriver,注意升級(jí)可能會(huì)短暫影響用戶 相關(guān)聯(lián)應(yīng)用的功能),點(diǎn)擊升級(jí)按鈕,如下圖所示。在容器服務(wù)控制臺(tái)主界面選擇左側(cè)邊欄的應(yīng)用,會(huì)發(fā)現(xiàn)系統(tǒng)服務(wù)正在更新中,如下圖所示。更新完成 后,被影響的服務(wù)會(huì)恢復(fù)正常。清理集群磁盤(pán)清理磁盤(pán)操作會(huì)清理用戶集群內(nèi)每臺(tái)服務(wù)器上的臟數(shù)據(jù).臟數(shù)據(jù)限于: 1.已下載到本地但未使用的Docker鏡像;2.曾經(jīng)掛載到容器,但容器銷毀后未清理的卷軸(volumn)目錄.操作流程1)在集群列
14、表頁(yè)面,選擇要清理的集群,點(diǎn)擊更多操作的鏈接.2)在彈出的對(duì)話框里,點(diǎn)擊清理磁盤(pán).連接集群用戶可通過(guò)下載的證書(shū)通過(guò)Docker Swarm API或Docker Client連接集群暴露出來(lái)的Endpoint.操作流程1)在集群列表頁(yè)面,選擇要連接的集群,點(diǎn)擊連接信息的鏈接.2)在彈出的對(duì)話框里,點(diǎn)擊下載證書(shū).下載的內(nèi)容為zip格式.如何解壓使用,請(qǐng)參見(jiàn)證書(shū)使用.集群的生命周期集群狀態(tài)說(shuō)明創(chuàng)建中(Initial):集群正在申請(qǐng)相應(yīng)的云資源。運(yùn)行中(Running):集群申請(qǐng)?jiān)瀑Y源成功。升級(jí)中(Updating):集群升級(jí)服務(wù)端版本。集群規(guī)模變更中(Scaling):變更集群的節(jié)點(diǎn)數(shù)量。創(chuàng)建失敗
15、(Failed):集群申請(qǐng)?jiān)瀑Y源失敗。刪除中(Deleting):集群刪除中。刪除失敗(DeleteFailed):集群刪除失敗。已刪除(Deleted,該狀態(tài)用戶不可見(jiàn)):集群刪除成功。集群狀態(tài)流轉(zhuǎn)跨可用區(qū)節(jié)點(diǎn)管理為了提供應(yīng)用的高可用性,在創(chuàng)建集群的時(shí)候,可以選擇將多個(gè)節(jié)點(diǎn)分布在不同的可用區(qū)。操作流程在創(chuàng)建集群的時(shí)候,可以先創(chuàng)建一個(gè)節(jié)點(diǎn)的集群(或者直接創(chuàng)建零節(jié)點(diǎn)的集群), 待集群創(chuàng)建完成后,通過(guò)集群擴(kuò)容或者添加已有ECS實(shí)例的方式來(lái)增加不同可用區(qū)的節(jié)點(diǎn)。在本示例文檔中,我們先創(chuàng)建一個(gè)零個(gè)節(jié)點(diǎn)的 集群,然后分別介紹如何通過(guò)擴(kuò)容或者添加已有ECS讓節(jié)點(diǎn)分布在不同的可用區(qū)上。2)創(chuàng)建一個(gè)零節(jié)點(diǎn)的集
16、群,集群創(chuàng)建完成后的運(yùn)行效果如下備注:10個(gè)節(jié)點(diǎn)3)通過(guò)擴(kuò)容方式添加不同可用區(qū)的節(jié)點(diǎn)在集群列表中,在某一集群上點(diǎn)擊更多操作,我們可以看到有集群擴(kuò)容和添加已有ECS兩個(gè)操作。備注:1) 集群擴(kuò)容(系統(tǒng)自動(dòng)購(gòu)買按量付費(fèi)的ECS)2) 添加已有的ECS(可以是包年包月的ECS)選擇集群擴(kuò)容操作后,可以看到如下界面?zhèn)渥ⅲ?ECS的可用區(qū)目前容器服務(wù)器支持的Region基本都會(huì)有至少2個(gè)可用區(qū)供選擇,此時(shí)我們可以選擇其中的一個(gè)可用區(qū),然后重復(fù)該動(dòng)作即可完成多個(gè)可用區(qū)節(jié)點(diǎn)的添加。通過(guò)添加已有ECS的方式添加多個(gè)可用區(qū)使用該種方式來(lái)添加節(jié)點(diǎn),首先需要通過(guò)ECS的售賣頁(yè)面自行購(gòu)買ECS。購(gòu)買的過(guò)程中可以將其選
17、擇在不同的可 用區(qū)內(nèi)。從步驟3)我們了解到,可以從集群的更多操作中選擇添加已有ECS操作。選擇以后,會(huì)進(jìn)入如下的界面?zhèn)渥ⅲ?)2)35)重復(fù)以上的步驟,即可完成集群支持多個(gè)可用區(qū)的節(jié)點(diǎn)設(shè)置集群根域名當(dāng)用戶在通過(guò)鏡像創(chuàng)建Nginx填寫(xiě)web路由規(guī)則時(shí),用戶只需要填寫(xiě)域名的前綴nginx,我們給用戶提供了以結(jié)尾的域名給用戶使用,用戶可以通過(guò)設(shè)置集群根域名(該示例我們 使用)來(lái)替換該域名。當(dāng)用戶重新部署服務(wù)nginx時(shí),域名就從變?yōu)榱?,方便用戶使用自己的根域名?duì)集群應(yīng)用進(jìn)行訪問(wèn)。下面用一個(gè)示例來(lái)介紹這個(gè)作法的 完整流程,為了保證下面的示例能夠工作,請(qǐng)先將agent升級(jí)到最新版本。綁定SLB登錄阿里云
18、容器服務(wù)控制臺(tái),選擇左側(cè)邊欄的集群,找到要配置的集群,本示例為test- SLB,請(qǐng)登錄阿 里云負(fù)載均衡控制臺(tái)創(chuàng)建一個(gè)SLB,回到該頁(yè)面進(jìn)行綁定,支持綁定內(nèi)網(wǎng)的SLB。設(shè)置域名在負(fù)載均衡管理頁(yè)面,點(diǎn)擊域名設(shè)置選項(xiàng)頁(yè),填寫(xiě)用戶自己購(gòu)買的根域名,本示例是,如下圖所示。點(diǎn)擊設(shè)置保存將域名解析到綁定的SLB實(shí)例在負(fù)載均衡管理頁(yè)面,點(diǎn)擊負(fù)載均衡設(shè)置,點(diǎn)擊前往SLB控制臺(tái),找到綁定的SLB實(shí)例IP,本例為49。 如下圖所示。登錄阿里云云解析產(chǎn)品頁(yè)面,添加A記錄,將*.解析到SLB的VIP地址49。如下圖所示。重新部署web服務(wù)重新部署應(yīng)用wor,應(yīng)用下的服務(wù)web訪問(wèn)端點(diǎn)發(fā)生了變化,如下圖所示。 HYPE
19、RLINK / 訪問(wèn)最新的訪問(wèn)端點(diǎn),如下圖所示。鏡像與模板管理查看鏡像列表操作流程1) 在左側(cè)tab鏡像和列表下鏡像列表頁(yè)面,查看分類或搜索操作說(shuō)明:常用鏡像:容器服務(wù)推薦的一些常用鏡像. Docker官方鏡像:Docker hub提供的官方鏡像.阿里云鏡像:阿里云容器Hub提供的鏡像,包含了公開(kāi)和私有鏡像。搜索鏡像:點(diǎn)擊右上角搜索按鈕,可按照鏡像的名稱前綴匹配搜索。創(chuàng)建鏡像1.點(diǎn)擊鏡像列表頁(yè)面的新建鏡像按鈕點(diǎn)擊完會(huì)跳轉(zhuǎn)到容器Hub服務(wù)的管理中心. 如果用戶是第一次訪問(wèn),需要先開(kāi)通容器Hub服務(wù). 申請(qǐng)一個(gè)倉(cāng)庫(kù)的命名空間,并設(shè)置用于push倉(cāng)庫(kù)鏡像的密碼.然后選擇右上角的創(chuàng)建鏡像倉(cāng)庫(kù),即可進(jìn)行
20、鏡像倉(cāng)庫(kù)的創(chuàng)建.用戶可以選擇通過(guò)命令行上傳自己的鏡像(本地倉(cāng)庫(kù)),也可以選擇第三方代碼倉(cāng)庫(kù)進(jìn)行自動(dòng)構(gòu)建(GithubBitbucket).查看編排模板列表操作流程1) 點(diǎn)擊編排模板列表頁(yè)面,查看分類或搜索操作說(shuō)明:常用編排:顯示容器服務(wù)推薦的常用編排模板我的編排:顯示用戶自己創(chuàng)建的編排模板搜索模板:在右上角輸入要搜索的編排名稱創(chuàng)建編排模板操作流程選擇左側(cè)列表鏡像與模板下的編排模板頁(yè)面,點(diǎn)擊右上角的創(chuàng)建按鈕在創(chuàng)建編排頁(yè)面填寫(xiě)配置名稱:模板的名稱,格式為:待補(bǔ)充內(nèi)容:Docker Compose的yml文件.點(diǎn)擊查看Compose File的詳細(xì)說(shuō)明.點(diǎn)擊創(chuàng)建編排按鈕更新編排模板操作流程在編排模板
21、頁(yè)面選擇我的編排下的一個(gè)模板,點(diǎn)擊詳情點(diǎn)擊右上角的的編輯編輯模板內(nèi)容保存模板內(nèi)容點(diǎn)擊右上角的保存按鈕下載編排模板操作流程在編排模板頁(yè)面選擇一個(gè)模板,點(diǎn)擊詳情點(diǎn)擊右上角的的下載會(huì)立即下載后綴為yml格式的模板文件.刪除編排模板操作流程在編排模板頁(yè)面選擇一個(gè)模板,點(diǎn)擊詳情點(diǎn)擊右上角的的刪除在彈出的確認(rèn)框中點(diǎn)擊確認(rèn)按鈕服務(wù)編排文檔容器編排用戶文檔概述容器服務(wù)支持Docker Compose 編排模板來(lái)描述多容器應(yīng)用。 編排模板允許用戶描述一個(gè)完整的應(yīng)用,該應(yīng)用可以由許多個(gè)服務(wù)組成。例如:一個(gè)門戶網(wǎng)站應(yīng)用,由一個(gè)Nginx服務(wù)、一個(gè)Web服務(wù)和一個(gè)數(shù)據(jù)庫(kù)服務(wù)組成。一個(gè)服務(wù)可能會(huì)有多個(gè)容器實(shí)例,所有容器
22、實(shí)例的配置保持一致 例如:上述應(yīng)用中的Web服務(wù),就可以根據(jù)訪問(wèn)量需要啟動(dòng)兩個(gè)甚至更多的容器。能力容器服務(wù)支持通過(guò)編排模板文件,自動(dòng)化地部署和管理一個(gè)容器應(yīng)用。 編排模板文件使用的標(biāo)簽兼容大部分Docker Compose 1.5.x 到 1.7.x 版本實(shí)現(xiàn)的標(biāo)簽。 標(biāo)簽說(shuō)明頁(yè)中,會(huì)描述具體兼容的標(biāo)簽。編排模板文件也支持Compose V1和V2兩種不同版本的模板格式,具體信息請(qǐng)參見(jiàn)文檔容器服務(wù)也在社區(qū)版本之上提供了很多擴(kuò)展能力:與社區(qū)的Docker Compose和Swarm不同,阿里云容器服務(wù)支持跨節(jié)點(diǎn)的容器連接(link),所以用戶可以直接的將Docker Compose模板描述的應(yīng)用
23、部署到分布式集群之上來(lái)提供高可用性和可伸縮性。容器服務(wù)也在社區(qū)Compose模板描述基礎(chǔ)之上提供了一系列擴(kuò)展來(lái)簡(jiǎn)化web、微服務(wù)應(yīng)用的部署和運(yùn) 維,具體請(qǐng)參見(jiàn)標(biāo)簽說(shuō)明頁(yè)示例下面是一個(gè)wordpress應(yīng)用,包含了由wordpress鏡像提供web服務(wù)和mysql鏡像提供的db服務(wù)web:web:image: wordpress:4.2 ports:- 80environment:WORDPRESS_AUTH_KEY=changemeWORDPRESS_SECURE_AUTH_KEY=changemeWORDPRESS_LOGGED_IN_KEY=changemeWORDPRESS_NONCE_
24、KEY=changemeWORDPRESS_AUTH_SALT=changemeWORDPRESS_SECURE_AUTH_SALT=changemeWORDPRESS_LOGGED_IN_SALT=changemeWORDPRESS_NONCE_SALT=changeme restart:alwayslinks:db:mysql labels:aliyun.logs: /var/be.url: HYPERLINK http:/container/license.txt http:/container/license.txt be.initial_delay_seconds: 10aliyun
25、.routing.port_80: HYPERLINK / wordpress; aliyun.scale: 3db:image: mysql:5.6 environment:MYSQL_ROOT_PASSWORD: password restart: alwayslabels:aliyun.logs: /var/log/mysql標(biāo)簽說(shuō)明不予支持的標(biāo)簽標(biāo)簽說(shuō)明buildbuild標(biāo)簽用于使用當(dāng)前目錄中的Dockerfile文件和其他文檔進(jìn)行容器鏡像構(gòu)建。目前容器服務(wù)暫不提供構(gòu)建鏡像功能,推薦用戶將構(gòu)建和部署的動(dòng)作分開(kāi)處理:用戶可以利用阿里云的鏡像倉(cāng)庫(kù),直接從代碼源構(gòu)建鏡像,或者將本地構(gòu)建的鏡
26、像推送到鏡像倉(cāng)庫(kù);用戶可以在編排模板中使用image標(biāo)簽引用鏡像倉(cāng)庫(kù)(包括私有倉(cāng)庫(kù))中的鏡像。dockerfile說(shuō)明同上env_file容器服務(wù)暫不支持以文件方式指定環(huán)境變量, 用戶可以通過(guò)environment標(biāo)簽添加環(huán)境變量mac_address暫時(shí)不支持Mac地址的設(shè)置detach容器服務(wù)的所有鏡像都是以detach模式啟動(dòng)的,不允許用戶指定attach方式執(zhí)行stdin_open說(shuō)明同上tty說(shuō)明同上擴(kuò)展能力的標(biāo)簽容器服務(wù)擴(kuò)展了編排模板的部署和生命周期管理能力,所有擴(kuò)展能力都被描述在labels標(biāo)簽下面,作為子標(biāo)簽 使用。probe設(shè)置服務(wù)的健康性檢查通過(guò)URL進(jìn)行檢查,支持HTTP
27、協(xié)議、TCP協(xié)議通過(guò)shell腳本檢查健康檢查會(huì)從容器宿主機(jī)上發(fā)起,每隔一定時(shí)間(默認(rèn)兩秒)向容器發(fā)起請(qǐng)求或在容器上執(zhí)行shell腳本命令。 檢查成功的判斷條件是,HTTP請(qǐng)求的返回碼為2XX/3XX;TCP端口可建立連接;shell腳本運(yùn)行返回值為0檢查的字段解釋:TCP請(qǐng)求的URL,請(qǐng)注意不需要用戶填寫(xiě)自己的域名或者IP地址,只需要 加上container這個(gè)單詞,最終會(huì)被解析成容器相應(yīng)的IP去進(jìn)行健康檢查,檢查結(jié)果返回2XX或者 3XX才認(rèn)為是健康例如容器通過(guò)8080端口提供HTTP服務(wù),并提供了/ping作為健康檢查的URL,則探測(cè)URL的格式為 http:/container:808
28、0/ping,容器服務(wù)會(huì)自動(dòng)通過(guò)HTTP GET請(qǐng)求檢查URL的返回結(jié)果,如果返回結(jié)果的返回碼為2XX或3XX,則說(shuō)明健康檢查成功例如MySQL容器偵聽(tīng)3306端口,探測(cè)URL的格式為 tcp:/container:3306,服務(wù)會(huì)檢查容器3306端口是否打開(kāi),如果打開(kāi)則說(shuō)明健康檢查成功be.cmd: 健康檢查執(zhí)行的檢查Shell命令,/check.sh; 容器服務(wù)會(huì)定期在容器內(nèi)執(zhí)行該命令,當(dāng)Shell腳本返回值為0時(shí)表明健康檢查成功be.timeout_seconds:健康檢查的超時(shí)時(shí)間be.initial_delay_seconds:在容器啟動(dòng)后延遲幾秒開(kāi)始健康檢查注意:一個(gè)服務(wù)中只能包含
29、be.url和be.cmd其中之一如果服務(wù)不包含be.url或be.cmd,則容器缺省為健康狀態(tài),且其他be.xxx標(biāo)簽會(huì)被忽略os:image: my_nginxos:image: my_nginxlabels:labels:be.url: HYPERLINK http:/container/ping http:/container/ping be.timeout_seconds: 10be.initial_delay_seconds: 3os:image: my_app labels:os:image: my_app labels:be.cmd: health_check.sh be.in
30、itial_delay_seconds: 3rolling_updates更新某個(gè)服務(wù)時(shí),如果該服務(wù)包括超過(guò)一個(gè)以上容器(通過(guò)使用scale標(biāo)簽),在第n個(gè)容器更新成功且(配合 使用probe標(biāo)簽做健康檢查)健康檢查顯示為健康后,再去做第n+1個(gè)容器的更新,以此來(lái)最小化停止服務(wù)時(shí) 間。如果健康檢查失敗,且超時(shí)30s,那么就停止等待健康檢查成功,接著去更新第n+1個(gè)容器。示例:部署wordpress服務(wù),通過(guò)scale標(biāo)簽指定部署2個(gè)容器,通過(guò)probe標(biāo)簽指定檢查的的url為web:image: wordpress ports:- 80restart: always links:- db:my
31、sql labels:aliyun.logs: /var/be.url: web:image: wordpress ports:- 80restart: always links:- db:mysql labels:aliyun.logs: /var/be.url: HYPERLINK http:/container/license.txt http:/container/license.txt be.initial_delay_seconds: 10 aliyun.routing.port_80: HYPERLINK http:/wordpress/ http:/wordpress aliy
32、un.rolling_updates: truealiyun.scale: 2 db:image: mariadb environment:MYSQL_ROOT_PASSWORD: example restart: alwayslabels:aliyun.logs: /var/log/mysqldepends設(shè)置服務(wù)的依賴關(guān)系目前Docker Compose只能控制容器的啟動(dòng)順序,一個(gè)接一個(gè)的啟動(dòng)容器。如果前一個(gè)容器啟動(dòng)之后,并不能立刻對(duì)外提供服務(wù),甚至啟動(dòng)失敗。那么可能導(dǎo)致后面的服務(wù)啟動(dòng)失敗,或是啟動(dòng)之后并不能正常對(duì)外服務(wù)。結(jié)合健康檢查的擴(kuò)展標(biāo)簽,我們可以標(biāo)記一個(gè)服務(wù)的依賴關(guān)系,這個(gè)服務(wù)會(huì)在
33、其他被依賴的服務(wù)的健康檢查通 過(guò)之后才開(kāi)始部署。如果被依賴的服務(wù)沒(méi)有健康性檢查的標(biāo)簽,則缺省認(rèn)為當(dāng)容器啟動(dòng)之后就可以對(duì)外提供服 務(wù)web:image: wordpress:4.2 ports:web:image: wordpress:4.2 ports:- 80links:labels:aliyun.depends: db db:image: mysql environment:MYSQL_ROOT_PASSWORD=passwordscale設(shè)置該服務(wù)的容器數(shù)量,橫向擴(kuò)展服務(wù)現(xiàn)在的Docker Compose只能在每一個(gè)服務(wù)中啟動(dòng)一個(gè)容器,如果需要擴(kuò)展容器數(shù)量,需要在啟動(dòng)后手動(dòng)進(jìn)行設(shè)置?,F(xiàn)在
34、通過(guò)scale的擴(kuò)展標(biāo)簽,支持用戶在容器啟動(dòng)的時(shí)候進(jìn)行擴(kuò)展。而且在容器被刪除之后,會(huì)自動(dòng)重啟 或新建容器恢復(fù)到指定數(shù)量。(公測(cè)期間暫不支持)web:image: wordpress:4.2 ports:web:image: wordpress:4.2 ports:- 80links:db:mysql labels: aliyun.scale:3 db:image: mysql environment:MYSQL_ROOT_PASSWORD=passwordrouting設(shè)置該服務(wù)的訪問(wèn)域名綁定域名的選擇:如果使用Http協(xié)議暴露服務(wù),可以使用容器服務(wù)提供內(nèi)部域名(頂級(jí)域?yàn)?,供用 戶測(cè)試使用,
35、也可以使用您提供的域名。 HYPERLINK / 如果使用Https協(xié)議,那么僅支持配置您提供的域名,例如。你需要修改DNS設(shè)置將域名指定到容器集群提供的負(fù)載均衡服務(wù)之上標(biāo)簽聲明的格式要求:容器服務(wù)為每一個(gè)集群分配了子域名,綁定內(nèi)部域名只需要給出域名的前綴,域名前綴僅表示域名的 一級(jí),不能使用.進(jìn)行分割。用戶不指定scheme的話,默認(rèn)使用Http協(xié)議。域名的長(zhǎng)度不能超過(guò)128個(gè)字符,contextroot的長(zhǎng)度不能超過(guò)128個(gè)字符。綁定多個(gè)域名到服務(wù)時(shí),域名之間用;隔開(kāi)。一個(gè)后端服務(wù)可以有多個(gè)端口,該端口指的是容器暴露的端口,一個(gè)端口只能使用一條label進(jìn)行聲 明,帶有多個(gè)端口的服務(wù)需要聲
36、明多個(gè)label。web:image: wordpress:4.2 links:labels:aliyun.routing.port_80: HYPERLINK /context wordpress;/context db:web:image: wordpress:4.2 links:labels:aliyun.routing.port_80: HYPERLINK /context wordpress;/context db:image: mysql environment:MYSQL_ROOT_PASSWORD=password最 終 用 戶 得 到 的 內(nèi) 部 域 名 示 例 :- web
37、服務(wù)起來(lái)之后,用戶可以通過(guò) HYPERLINK 或者/ URL或者 HYPERLINK /context%E8%AE%BF%E9%97%AE%E7%9B%B8%E5%BA%94%E7%9A%84web%E6%9C%8D%E5%8A%A1%E5%A6%82%E6%9E%9C%E7%94%A8%E6%88%B7%E9%9C%80%E8%A6%81%E6%94%AF%E6%8C%81https%E6%9C%8D%E5%8A%A1 訪問(wèn)相應(yīng)的web服務(wù)如果用戶需要支持https服務(wù),需要自行通過(guò)阿里云官網(wǎng) 負(fù)載均衡服務(wù)控制臺(tái)上傳https證書(shū),并綁定相應(yīng)的集群對(duì)外訪問(wèn)SLB端點(diǎn)lbaliyun.lb.
38、port_$container_port:$scheme:/$slb_name|slb_id:$front_port通過(guò)自定義阿里云負(fù)載均衡slb nat映射的方式來(lái)暴露服務(wù)端口到公網(wǎng)或者到內(nèi)網(wǎng)。需要升級(jí)到最新版本的agent方能支持該擴(kuò)展能力標(biāo)簽。標(biāo)簽格式如下,帶$的變量為占位符aliyun.lb.port_$container_port:$scheme:/$slb_name|slb_id:$front_port示例web:web:image: wordpress:4.2 ports:image: wordpress:4.2 ports:- 80:80- 9999:9999- 8080:80
39、80- 53:53/udp links:db:mysql labels:aliyun.lb.port_80: http:/slb_example_name:8080 aliyun.lb.port_9999: tcp:/slb_example_name:9999 aliyun.lb.port_8080: https:/14a7ba06d3b-cn-hangzhou-dg-a01:80 aliyun.lb.port_53: udp:/14a7ba06d3b-cn-hangzhou-dg-a01:53 db:image: mysql environment:MYSQL_ROOT_PASSWORD=p
40、assword要使用好自定義負(fù)載均衡的lb標(biāo)簽,需要理解請(qǐng)求路由過(guò)程中的3個(gè)端口,即slb的前端端口,slb的后端端口(也就是ECS vm的端口),最后就是容器的端口. 如上4個(gè)lb標(biāo)簽所示,以第一個(gè)lb標(biāo)簽aliyun.lb.port_80為例,從左往右看,在key中的80端口指的是容器要暴露的端口,后面的8080端口指的是slb要暴露的前端端口。slb的后端端 口是ECS vm的端口,可從標(biāo)簽ports的主機(jī):容器端口映射中獲取到,由此,我們可以查到容器端口80對(duì)應(yīng)的主機(jī)端口是80,因此我們確定了slb轉(zhuǎn)發(fā)的后端端口是80端口。因此第一個(gè)標(biāo)簽說(shuō)明了當(dāng)向服務(wù)web發(fā)起請(qǐng)求時(shí),首先通過(guò)slb前
41、端的8080端口進(jìn)入,轉(zhuǎn)發(fā)到后端主機(jī)vm的80端口,然后再根據(jù)端口映射ports的聲明,請(qǐng)求 最終從容器端口80進(jìn)入,交由容器內(nèi)的wordpress進(jìn)程提供服務(wù)。接下來(lái)的標(biāo)簽以此進(jìn)行相同的解釋。該標(biāo)簽 配置的負(fù)責(zé)均衡均不經(jīng)過(guò)集群內(nèi)置的routing服務(wù),請(qǐng)求的路由由用戶自己控制。標(biāo)簽聲明的格式要求:指明slb實(shí)例時(shí),可以使用slb實(shí)例的名稱或者slb實(shí)例的Id。slb實(shí)例名稱的限制為1-80個(gè)字符,允許包含字母、數(shù)字、-、/、.、_這些字符。容器端口限制為1-65535。slb前端端口的限制為1-65535。帶有自定義slb nat映射的服務(wù)部署限制:用戶需要自己創(chuàng)建slb實(shí)例,對(duì)slb實(shí)例命
42、名,并創(chuàng)建對(duì)應(yīng)監(jiān)聽(tīng)端口,然后以擴(kuò)展標(biāo)簽的方式提供以及要暴露的端口,使用的協(xié)議$scheme(可能的值有tcp,http,https,udp),映射的容器端口$container_port,指定slb實(shí)例的前端端口$front_port。用戶必須指定服務(wù)要暴露端口的主機(jī)和容器端口的映射,通過(guò)Dockerfile標(biāo)準(zhǔn)的標(biāo)簽ports指定,注 意必須指定主機(jī)端口,且與其他服務(wù)映射的主機(jī)端口不能沖突,需要主機(jī)的端口用于slb綁定后端的ECSvm機(jī)器。一個(gè)服務(wù)只能使用一個(gè)或者多個(gè)slb實(shí)例進(jìn)行服務(wù)端口的暴露,因多個(gè)服務(wù)會(huì)分布在不同的vm后端,多個(gè)服務(wù)不能共享使用同一個(gè)slb實(shí)例。部署了帶有slb nat
43、映射的服務(wù)的主機(jī)使用相同的主機(jī):容器端口映射,因此這些服務(wù)在每臺(tái)vm主機(jī)上只有一個(gè)實(shí)例。支持的slb協(xié)議$scheme包括tcp,http,https,udp協(xié)議。用戶需要自行在阿里云slb官方控制臺(tái)創(chuàng)建監(jiān)聽(tīng)的端口。請(qǐng)自行登錄slb官方控制臺(tái)對(duì)使用在容器服務(wù)中的slb實(shí)例進(jìn)行具體的配置修改,例如帶寬限制等配置。lb標(biāo)簽的價(jià)值在于用戶不需要自行綁定slb后端的ECS vm服務(wù)器, 只需要配置好相應(yīng)的標(biāo)簽, 就會(huì)幫助用戶完成綁定后端的操作. 因此, 除了綁定slb后端的操作,用戶對(duì)slb的設(shè)置,修改,用戶需要自行在阿里云slb控制臺(tái)上面完成。容器服務(wù)會(huì)幫助用戶生成一個(gè)RAM子賬戶(需要用戶開(kāi)通RA
44、M),使用這個(gè)具有部分slb權(quán)限(沒(méi)有創(chuàng) 建和刪除slb的權(quán)限)的賬號(hào)幫助用戶管理在容器服務(wù)中使用的slb,例如綁定集群中某些節(jié)點(diǎn)作為服 務(wù)的后端。日志mysql: image:mysql: image:mysql ports:- 80labels: aliyun.scale: 1 environment:- MYSQL_ROOT_PASSWORD=passwordwordpress:image: /jiangjizhong/wordpress ports:- 80labels:aliyun.routing.port_80: wordpress-with-log aliyun.log_stor
45、e_dbstdoutstdout- mysql具體可以參考 集成日志服務(wù).global設(shè)置該服務(wù)為全局服務(wù)有一些服務(wù)需要在每一個(gè)節(jié)點(diǎn)部署,例如監(jiān)控或是日志類的服務(wù)。并且在新的節(jié)點(diǎn)建立的時(shí)候就對(duì)這個(gè)節(jié)點(diǎn)進(jìn) 行服務(wù)的部署。monitor: image: sample labels:aliyun.global: true當(dāng)一個(gè)服務(wù)被設(shè)置為global時(shí),該服務(wù)會(huì)在集群中的每一個(gè)節(jié)點(diǎn)進(jìn)行部署。當(dāng)集群中有新增節(jié)點(diǎn)時(shí),也會(huì)自動(dòng) monitor: image: sample labels:aliyun.global: true功能增強(qiáng)的標(biāo)簽服務(wù)部署約束(affinity:service)設(shè)置該服務(wù)的部署約束
46、條件容器服務(wù)支持Docker Swarm兼容的容器部署約束條件,我們可以通過(guò) Docker Swarm Filter,控制一個(gè)容器的部署。但是在社區(qū)版的Docker Compose中,卻并沒(méi)有相關(guān)的能力來(lái)控制服務(wù)直接的部署約束。在容器服務(wù)中,我們?cè)试S用戶在environment中添加相關(guān)affinity:service,來(lái)約束服務(wù)之前的親和度(Affinity)來(lái),達(dá)到控制服務(wù)部署策略的功能。支持服務(wù)之間的Soft affinity和Hard affinitymaster:image: mysql:5.6 environment:MYSQL_USER=userMYSQL_PASS=testRE
47、PLICATION_MASTER=truemaster:image: mysql:5.6 environment:MYSQL_USER=userMYSQL_PASS=testREPLICATION_MASTER=trueREPLICATION_USER=replREPLICATION_PASS=replports:- 3306slave:image: mysql:5.6 environment:MYSQL_USER=userMYSQL_PASS=testREPLICATION_SLAVE=trueports:- 3306links:master:mysql額外支持的標(biāo)簽external設(shè)置該服
48、務(wù)直接鏈接到外部地址擴(kuò)展字段下有以下字段可以使用host : 設(shè)置鏈接的域名ports : 設(shè)置鏈接的端口示例:不使用external,直接啟動(dòng)一個(gè)mysql容器web:image: wordpress:4.2 ports:- 80web:image: wordpress:4.2 ports:- 80links:db:mysql db:image: 60:5000/mysql environment:MYSQL_ROOT_PASSWORD=passwordwordpress:image: wordpress:4.2 ports:wordpress:image: wordpress:4.2 po
49、rts:- 80links:db:mysql WORDPRESS_DB_USER=cloudWORDPRESS_DB_PASSWORD=MYPASSWORDdb:external:host: ports:- 3306變量替換容器服務(wù)支持參數(shù)化的Docker Compose模板。模板中可以包含環(huán)境變量作為參數(shù),當(dāng)模板部署時(shí)會(huì)提示輸入?yún)?shù)值,并在部署是對(duì)模板進(jìn)行變量替換。db:image: postgres:$POSTGRES_VERSIONdb:image: postgres:$POSTGRES_VERSION容器服務(wù)會(huì)提示用戶輸入 POSTGRES_VERSION 參數(shù)值,比如9.3。容器服務(wù)
50、會(huì)根據(jù)參數(shù)值對(duì)Compose模板進(jìn)行變量替換。在這個(gè)例子中會(huì)部署一個(gè)postgres:9.3的容器容器服務(wù)完全兼容Docker Compose的語(yǔ)法,可以在模板中使用$VARIABLE或者$VARIABLE格式的語(yǔ)法。在Compose模板中可以使用$來(lái)對(duì)需要包含$的字符串進(jìn)行轉(zhuǎn)義,這樣容器服務(wù)不會(huì)錯(cuò)誤地對(duì)其作為參數(shù)來(lái)進(jìn) 行處理。關(guān)于Compose模板支持變量替換的詳細(xì)信息,可以參考文檔容器重新調(diào)度容器服務(wù)支持對(duì)Docker容器的重新調(diào)度:當(dāng)一個(gè)節(jié)點(diǎn)失效時(shí),容器可以被自動(dòng)調(diào)度到其他可用節(jié)點(diǎn)自動(dòng)運(yùn)行。 缺省情況下,容器的重新調(diào)度策略是關(guān)閉的。根據(jù)需要可以用如下配置來(lái)讓重調(diào)度策略生效redis: i
51、mage:redisenvironment:redis: image:redisenvironment:- reschedule:on-node-failure或者label方式redis: image:redis: image:redis labels:- com.docker.swarm.reschedule-policy=on-node-failure注:如果重新調(diào)度容器之后,需要恢復(fù)Docker容器所需的持久化狀態(tài),需要配合支持?jǐn)?shù)據(jù)遷移或共享的Docker文件卷。高可用性調(diào)度為了使應(yīng)用有更高的可用性,我們支持將同一個(gè)服務(wù)的容器調(diào)度在不同的可用區(qū)(availability zone)里。
52、當(dāng)某個(gè)可用區(qū)故障時(shí),應(yīng)用依然能夠提供服務(wù)。您可以在編排文件中通過(guò)環(huán)境變量指定對(duì)可用區(qū)的選擇,有兩種格式。availability:az=3 服務(wù)至少分布在3個(gè)可用區(qū)中;如果當(dāng)前集群沒(méi)有三個(gè)可用區(qū),或機(jī)器資源不夠?qū)е聼o(wú)法分布在三個(gè)可用區(qū),容器創(chuàng)建會(huì)失敗availability:az=33個(gè)可用區(qū)中;無(wú)法滿足時(shí)依然可以成功創(chuàng)建。nnn: expose:nnn: expose:- 443/tcp80/tcpimage: nginx:latest environment:labels:aliyun.scale:8 restart: always volumes:/var/cache/nginx應(yīng)用管理
53、創(chuàng)建應(yīng)用操作流程點(diǎn)擊應(yīng)用列表頁(yè)面右上角的創(chuàng)建應(yīng)用按鈕跳轉(zhuǎn)到創(chuàng)建應(yīng)用表單頁(yè)面開(kāi)始填寫(xiě)應(yīng)用信息:填寫(xiě)應(yīng)用名稱和描述應(yīng)用名稱為1-64個(gè)字符,可包含數(shù)字、漢字、英文字符,或- 應(yīng)用描述可以不填,字?jǐn)?shù)要求小于1024.填寫(xiě)應(yīng)用的版本從集群下拉列表里選擇集群.點(diǎn)擊右下角的使用鏡像創(chuàng)建或使用編排模板創(chuàng)建選擇使用鏡像創(chuàng)建,進(jìn)入鏡像配置頁(yè)面填寫(xiě)鏡像的名稱和版本用戶可選擇容器服務(wù)提供的一些推薦鏡像,也可以直接填寫(xiě)自己的鏡像信息. 填寫(xiě)容器的個(gè)數(shù)填寫(xiě)端口映射、環(huán)境變量、數(shù)據(jù)卷、路由信息設(shè)置容器是否異常自動(dòng)重啟點(diǎn)擊高級(jí)配置設(shè)置設(shè)置容器的啟動(dòng)命令(CMDEntrypoint),如果設(shè)置了會(huì)覆蓋鏡像的配置.設(shè)置容器的L
54、abel.6. 設(shè)置完畢后點(diǎn)擊創(chuàng)建并部署.選擇使用編排模板,進(jìn)入編排模板配置頁(yè)面編排模板的內(nèi)容要求符合Docker Compose的格式. 設(shè)置完畢后點(diǎn)擊創(chuàng)建并部署。限制容器的資源,cpu、內(nèi)存、IO等都可以限制。因?yàn)檫@部分設(shè)置比較專業(yè),我們沒(méi) 有在界面上開(kāi)放,用戶可以在編排模板中使用。限制CPU一個(gè)cpu核等于100CPU資源。如果機(jī)器配置是4核,則總共可用CPU資源是400。在編排模板中,可以通過(guò)cpu_shares參數(shù)指定。cpu_shares: 50表示使用0.5個(gè)核。限制內(nèi)存通過(guò)mem_limit參數(shù)限制內(nèi)存,單位是byte,最小內(nèi)存是4M字節(jié)。如果設(shè)置了內(nèi)存限制,當(dāng)容器申請(qǐng)的內(nèi)存超
55、 過(guò)限制時(shí),容器會(huì)因?yàn)镺OM而停止運(yùn)行。為了減小容器因?yàn)榕紶杻?nèi)存超標(biāo)而被停止的風(fēng)險(xiǎn),可以配合memswap_limit參數(shù),給容器增加一些交換內(nèi)存。推薦將memswap_limit設(shè)置成mem_limit的兩倍。n1: expose:n1: expose:- 443/tcp- 80/tcpimage: nginx:latest cpu_shares: 50 #0.5核mem_limit: 500000000 #500MBmemswap_limit: 1000000000 #1GB labels:aliyun.scale:1 restart: always volumes:aliyun.scal
56、e:1 restart: always volumes:- /var/cache/nginx資源調(diào)度為了保證容器能獲得足量的指定資源,比如上述例子里的0.5核CPU和500MB內(nèi)存,我們會(huì)為容器預(yù)留資源。 比如,一臺(tái)4核的機(jī)器,最多會(huì)調(diào)度8個(gè)cpu_shares=50的容器。但是,如果創(chuàng)建容器是不指定cpu_shars和mem_limit,則默認(rèn)不占資源。限制其他資源其他資源限制請(qǐng)參考docker compose的說(shuō)明高可用性調(diào)度為了使應(yīng)用有更高的可用性,我們支持將同一個(gè)服務(wù)的容器調(diào)度在不同的可用區(qū)(availability zone)里。當(dāng)某個(gè)可用區(qū)故障時(shí),應(yīng)用依然能夠提供服務(wù)。您可以在編排
57、文件中通過(guò)環(huán)境變量指定對(duì)可用區(qū)的選擇,有兩種格式。availability:az=3 服務(wù)至少分布在3個(gè)可用區(qū)中;如果當(dāng)前集群沒(méi)有三個(gè)可用區(qū),或機(jī)器資源不夠?qū)е聼o(wú)法分布在三個(gè)可用區(qū),容器創(chuàng)建會(huì)失敗availability:az=33個(gè)可用區(qū)中;無(wú)法滿足時(shí)依然可以成功創(chuàng)建。nnn: expose:nnn: expose:- 443/tcp80/tcpimage: nginx:latest environment:labels:aliyun.scale: 8 restart: always volumes:/var/cache/nginx指定節(jié)點(diǎn)調(diào)度web:image: nginx:latest
58、restart: always environment:- constraint:aliyun.node_index=1 ports:- 80labels: aliyun.scale: 2web:image: nginx:latest restart: always environment:- constraint:aliyun.node_index=1 ports:- 80labels: aliyun.scale: 2我們支持如下表達(dá)式constraint:aliyun.node_index=1指定部署到node1constraint:aliyun.node_index!=1不部署到node
59、1constraint:aliyun.node_index=(1|2|3指定部署到node1或者node2或者node3constraint:aliyun.node_index!=(1|2|3部署到除node1,node2,node3的其他機(jī)器上affinity:image=redis盡量部署到有redis鏡像的機(jī)器上affinity:container!=redis盡量不部署到有redis容器的機(jī)器上查看應(yīng)用詳情操作流程在應(yīng)用列表頁(yè)面選擇集群篩選應(yīng)用,并點(diǎn)擊其中一個(gè)應(yīng)用的名稱鏈接跳轉(zhuǎn)到應(yīng)用的服務(wù)列表頁(yè)面切換tab,查看應(yīng)用下的所有容器切換tab,查看應(yīng)用下的日志應(yīng)用變更啟停應(yīng)用操作流程在應(yīng)用
60、列表頁(yè)面選擇集群篩選應(yīng)用,并點(diǎn)擊其中一個(gè)應(yīng)用的啟動(dòng)或停止鏈接在彈出的對(duì)話框里,點(diǎn)擊確認(rèn)按鈕.變更應(yīng)用配置操作流程在應(yīng)用列表頁(yè)面選擇集群篩選應(yīng)用,并點(diǎn)擊其中一個(gè)應(yīng)用的變更配置鏈接在彈出的對(duì)話框里,修改配置推薦修改模板的時(shí)候,更新版本信息.刪除應(yīng)用操作流程在應(yīng)用列表頁(yè)面選擇集群篩選應(yīng)用,并點(diǎn)擊其中一個(gè)應(yīng)用的刪除鏈接在彈出的對(duì)話框里,點(diǎn)擊確認(rèn)按鈕.服務(wù)管理使用說(shuō)明一個(gè)應(yīng)用由1個(gè)或多個(gè)服務(wù)組成,用戶可選擇變更應(yīng)用的配置來(lái)升級(jí)應(yīng)用,也可以選擇單獨(dú)變更某個(gè)服務(wù)的配置來(lái) 獨(dú)立升級(jí).查看服務(wù)詳情操作流程在服務(wù)列表頁(yè)面選擇集群篩選服務(wù),并點(diǎn)擊其中一個(gè)服務(wù)的名稱鏈接跳轉(zhuǎn)到服務(wù)的詳情頁(yè)面,查看服務(wù)下的所有容器切換t
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 人教版初中語(yǔ)文七下《駱駝祥子》基礎(chǔ)復(fù)習(xí)必刷題(附答案)
- 2026年靈臺(tái)縣人民法院招聘?jìng)淇碱}庫(kù)有答案詳解
- 2026年西安長(zhǎng)安大學(xué)工程設(shè)計(jì)研究院有限公司招聘?jìng)淇碱}庫(kù)含答案詳解
- 2026年欽州市交通運(yùn)輸局機(jī)關(guān)及局屬事業(yè)單位編外工作人員和“12328”熱線工作人員招聘8人備考題庫(kù)及參考答案詳解一套
- 2025年企業(yè)檔案管理與信息化手冊(cè)
- 2025年法律法規(guī)查詢與適用指南
- 2025年大學(xué)漢語(yǔ)言文學(xué)(現(xiàn)當(dāng)代文學(xué))試題及答案
- 2026年智慧物流倉(cāng)儲(chǔ)機(jī)器人報(bào)告及未來(lái)五至十年供應(yīng)鏈優(yōu)化報(bào)告
- 2026年建筑行業(yè):3D打印結(jié)構(gòu)技術(shù)創(chuàng)新與綠色建筑行業(yè)創(chuàng)新報(bào)告
- 2025年鄉(xiāng)村文化節(jié)五年活動(dòng)風(fēng)險(xiǎn)管理報(bào)告
- 宮內(nèi)節(jié)育器放置術(shù)
- 新制定《無(wú)障礙環(huán)境建設(shè)法》主題PPT
- 外墻涂料安全交底
- 期末復(fù)習(xí)主題班會(huì)
- 腫瘤病人的護(hù)理論文
- 道路交通基礎(chǔ)設(shè)施韌性提升
- 鋼結(jié)構(gòu)噴砂防腐施工方案
- 涪江上游水資源水環(huán)境調(diào)查評(píng)價(jià)
- 重慶市地圖ppt模板
- 室內(nèi)新增鋼樓梯施工方案
- TSG R7004-2013 壓力容器監(jiān)督檢驗(yàn)規(guī)則
評(píng)論
0/150
提交評(píng)論