部署物概述
計(jì)算巢服務(wù)提供了多種部署物類型及其應(yīng)用場(chǎng)景,包括ECS鏡像、文件、容器鏡像和HelmChart,幫助您高效和快速的部署。
什么是部署物?
部署物是對(duì)部署過程中運(yùn)用部署載體的統(tǒng)稱,包括ECS鏡像、Helm鏡像、文件、容器鏡像等,用戶可根據(jù)具體部署場(chǎng)景,按需選擇部署物完成部署。
計(jì)算巢部署物提供以下能力:
復(fù)制能力:部署物提供多地域復(fù)制能力,服務(wù)商只需選擇目標(biāo)地域即可完成部署物自動(dòng)復(fù)制。
映射能力:計(jì)算巢將依據(jù)服務(wù)實(shí)例部署地域,自動(dòng)映射對(duì)應(yīng)地域的部署物完成部署。
權(quán)限能力:部署物提供嚴(yán)格的權(quán)限管理能力,其權(quán)限跟隨服務(wù),若服務(wù)為公開服務(wù),則部署物公開,若服務(wù)權(quán)限為受限的,則部署物權(quán)限為私有。
ECS鏡像部署物
對(duì)于使用ECS部署的場(chǎng)景,推薦使用ECS鏡像部署物,將軟件包和環(huán)境打包到ECS鏡像中部署。此方式啟動(dòng)速度較快,同時(shí)不依賴公網(wǎng)。原理上,計(jì)算巢相當(dāng)于提供了把單地域鏡像復(fù)制到所需地域,并且將鏡像變成public使全網(wǎng)用戶都可以使用該鏡像。
具體介紹,請(qǐng)參見ECS鏡像部署物。
容器鏡像部署物
對(duì)于使用Docker容器鏡像部署的場(chǎng)景,推薦使用容器鏡像部署物。計(jì)算巢提供了公共的ACR容器鏡像實(shí)例用來托管保存,一個(gè)服務(wù)商對(duì)應(yīng)一個(gè)命名空間,進(jìn)行多租戶隔離。創(chuàng)建容器鏡像部署物時(shí),服務(wù)商通過臨時(shí)密鑰將鏡像上傳到對(duì)應(yīng)的命名空間中,部署時(shí)通過臨時(shí)密鑰進(jìn)行拉取。
目前計(jì)算巢容器鏡像部署物只能通過公網(wǎng)方式拉取,對(duì)應(yīng)的ECS節(jié)點(diǎn)或ACK集群需要有公網(wǎng)訪問能力。由于部署時(shí)通過臨時(shí)密鑰拉取,目前只能解決一次性下發(fā)的場(chǎng)景,無法解決后續(xù)的擴(kuò)容或程序里動(dòng)態(tài)開鏡像的場(chǎng)景。
具體介紹,請(qǐng)參見容器鏡像部署物。
文件部署物
對(duì)于采用腳本部署(如RunCommand)的場(chǎng)景,部署過程中可能需要下載一些軟件資源。此過程可能遇到軟件過大導(dǎo)致下載超時(shí)、軟件下載需要依賴公網(wǎng)等問題。為解決以上問題,推薦使用文件部署物下載文件。
原理上,計(jì)算巢為每個(gè)地域提供一個(gè)OSS Bucket,服務(wù)商將文件上傳到計(jì)算巢后,計(jì)算巢會(huì)將文件復(fù)制到每個(gè)地域的Bucket中。當(dāng)腳本需要下載時(shí),計(jì)算巢會(huì)生成一個(gè)OSS生成的內(nèi)網(wǎng)HTTP地址做標(biāo)識(shí)位替換。由于使用內(nèi)網(wǎng)傳輸,速度較公網(wǎng)快,且穩(wěn)定安全。
具體介紹,請(qǐng)參見文件部署物。
HelmChart 部署物
在服務(wù)整體結(jié)構(gòu)比較復(fù)雜,需要使用Helm Chart包進(jìn)行部署YAML管理的場(chǎng)景下, 推薦使用HelmChart部署物。HelmChart部署物和容器鏡像部署物類似,都是托管到計(jì)算巢公共的ACR容器鏡像實(shí)例中。Helm Chart上傳時(shí),通過臨時(shí)密鑰將本地Chart包上傳到計(jì)算巢ACR容器鏡像倉庫中,拉取時(shí)通過臨時(shí)密鑰走公網(wǎng)進(jìn)行拉取。
具體介紹,請(qǐng)參見Helm Chart部署物。