配置部署中心纽匙,包含三大模塊:
1.配置管理:管理線上服務(wù)的參數(shù)配置(如:超時,路由拍谐,限流烛缔,負載均衡,以及服務(wù)白名單的管理)
2.持續(xù)集成:完成服務(wù)代碼打包轩拨,服務(wù)鏡像的構(gòu)建過程
3.發(fā)布部署:完成線上服務(wù)的環(huán)境變量變更践瓷,服務(wù)掛載文件內(nèi)容變更,線上服務(wù)的發(fā)布更新/啟動停止亡蓉,更有發(fā)布記錄以供查詢晕翠。
此篇文檔著重說明其中第三個模塊發(fā)布部署的大體流程:
使用菜單:
發(fā)布部署包含六個子菜單,每個菜單的功能如下:
文件管理:管理所有服務(wù)容器的配置文件砍濒,如:服務(wù)網(wǎng)關(guān)需要掛載于宿主機的服務(wù)白名單文件淋肾,可以通過此功能進行配置文件內(nèi)容,關(guān)聯(lián)某臺機器的服務(wù)容器進行掛載爸邢。
服務(wù)管理:管理服務(wù)基礎(chǔ)信息
環(huán)境管理:管理環(huán)境集信息樊卓,以及環(huán)境集下某個服務(wù)的環(huán)境變量信息
節(jié)點管理:管理節(jié)點信息(一個節(jié)點總是從屬于某一個環(huán)境集)
部署單元:管理部署的服務(wù)信息,確定服務(wù)最終部署的節(jié)點和使用的鏡像版本(簡而言之就是具體到某個服務(wù)容器)
上線部署:上線部署數(shù)據(jù)來自于部署單元進行篩選展示杠河,執(zhí)行具體的上線升級碌尔,重啟,停止操作券敌,可以預覽服務(wù)運行狀態(tài)和運行的基本信息(如:當前運行的鏡像tag號唾戚,服務(wù)的最后更新時間,是否需要更新等信息)
部署記錄:記錄每一次部署升級操作(包括重啟和停止)陪白,可預覽本次升級的yml配置文件并做出有效diff對比
一次完整的上線操作:
上線場景:上線一個新服務(wù)至生產(chǎn)某節(jié)點颈走,完成發(fā)布,驗證存在發(fā)布記錄咱士。
已知服務(wù)基礎(chǔ)信息:存在數(shù)據(jù)庫連接立由,存在生產(chǎn)環(huán)境必須的環(huán)境變量配置,存在文件需要掛載至宿主機序厉,需要將服務(wù)端口映射至宿主機
添加新服務(wù):
服務(wù)管理=>新增(可根據(jù)現(xiàn)有服務(wù)進行復制)
以上添加了一個基礎(chǔ)服務(wù)锐膜,配置了服務(wù)信息,服務(wù)鏡像字段不需要填寫tag號弛房,只需填寫基礎(chǔ)鏡像即可道盏。
服務(wù)中添加環(huán)境變量(ENV)的原則是:服務(wù)中不易變動的環(huán)境變量
為需要發(fā)布的新服務(wù)的環(huán)境添加公共環(huán)境變量配置:
環(huán)境集中添加環(huán)境變量(ENV)原則為:公共的環(huán)境變量,數(shù)據(jù)庫資源配置信息
如果新服務(wù)有額外的環(huán)境變量需要添加文捶,且環(huán)境變量只用于新加服務(wù)荷逞,對于其他服務(wù)完全不會需要這些環(huán)境變量,則需要添加SetSubEnv粹排,如下:
添加一個新節(jié)點用于部署新服務(wù):
節(jié)點管理=>新增
節(jié)點從屬某個環(huán)境集种远,所以在添加節(jié)點時需要選定所屬環(huán)境集:
是否是外部機器用于區(qū)分是否需要部署服務(wù),一般為否
節(jié)點上的環(huán)境變量(ENV)添加原則為:盡量不添加顽耳,如果添加坠敷,必將與節(jié)點關(guān)聯(lián)密切,或因節(jié)點而異的環(huán)境變量射富。
添加一個部署單元:
部署單元=>新增
一個部署單元確認了一個節(jié)點上的一個服務(wù)容器膝迎。
部署單元環(huán)境變量添加原則:只要沒有特殊情況不需要添加,一旦添加胰耗,只會在當前部署單元所在節(jié)點生效限次。
添加服務(wù)外部文件掛載:
文件描述了一個或多個容器的VOLUMES信息,當添加一個文件后,都需要與指定的部署單元(容器)進行關(guān)聯(lián),關(guān)聯(lián)的文件或文件夾最終將作為容器的VOLUMES,點擊關(guān)聯(lián)部署單元按鈕查看或關(guān)聯(lián)/取消關(guān)聯(lián)部署單元柴灯。
上線升級:
至此掂恕,所有新加的服務(wù)配置都已經(jīng)完成,以上配置在升級時最終都會綜合為一份配置文件進行下發(fā)如下:
差異對比
從上面操作可以看到弛槐,之前添加的環(huán)境變量懊亡,文件,都生效于配置文件乎串,確認無誤后升級即可啟動對應(yīng)節(jié)點上的服務(wù)店枣。