Omad群組部署 依賴部署一鍵解決

2021-08-26 08:27:15 字數 2412 閱讀 2857

基於omad部署平台實現一鍵部署的實踐已有很多成功的經驗,杭研qa的技術先鋒們也在ks圈裡有很多不同的文章去闡述關於這類需求的實現和思路,當然包括我們金融事業部qa這邊之前也有利用jenkins+omad實現一鍵部署的場景應用,但本次我想體現的基於omad實現一鍵群組部署、依賴部署功能,這個有別於之前的「一鍵部署」功能,一鍵群組部署、依賴部署工具在我們這邊已經上線乙個月了,目前功能已比較穩定,因此本文主要圍繞該工具的實現進行簡要的闡述分享。

基於以上情況的需求點如下:

1、一鍵批量部署

2、依賴部署

為平台化的實現以上需求功能,同時結合omad平台現有的功能,需要做如下需求拓展:

a、提供配置化的頁面,引入分組的概念,實現一鍵批量部署功能

b、許可權體系維持與omad一致(個人維度),避免水平和垂直許可權紊亂問題

c、應用環境健康狀態自動檢查,頁面實時檢查由工具平台觸發的部署進度

d、產品、應用、環境、例項的關聯關係保持與omad一致

工具使用以下omad的api介面來獲取環境列表資訊、一鍵部署、健康檢查、使用者資訊獲取等:

1、/api/cli/ls:獲取個人所有的產品、應用、環境及例項的詳情資訊

2、/api/cli/estatus:獲取某個環境狀態詳情

4、/api/cli/deploy:一鍵部署

5、/api/cli/login:獲取個人token介面

由於omad平台設計的產品體系是以產品為維度劃分,應用、環境及例項均掛靠下不同的產品下,通過產品、應用及環境的組合形式來控制許可權訪問,一鍵群組部署和依賴部署工具作為部署的頁面化入口,其設計理念和原有平台的方式保持一致,工具平台上也是根據產品、應用、環境、例項,層層掛靠遞進的模型設計,如下圖

對應的資料傳輸模型設計,如下圖

omad的介面/api/cli/ls返回的是乙個大的json陣列串,因此資料流解析時直接將返回的資料進行jsonarray物件化,利用json陣列物件去迴圈遍歷出jsonobject物件,以此類推層層遞進,直到將最後裡層的instance給解析出來,而後根據資料傳輸模型組裝成前端需要的json串。

1、工具平台通過api與omad互動,實現環境資料、部署、健康檢查等功能

2、工具平台根據api返回的資料進行不同型別的處理和組裝,返回前端頁面處理展示

3、群組資料落地至本地的mysql庫,為持久化部署提供支援

4、由於環境列表乙個非常大的json陣列串,每次呼叫需要處理耗時較久,且個人的環境列表資訊變化週期較長,因此該資料做localstorage快取處理,同時提供介面支援手動重新整理

5、許可權控制維持omad體系,第一次使用需使用者錄入accesskey和accesssecret,使用者唯一的token標識資訊快取至redis,避免多次互動

許可權控制直接按照omad原有許可權體系來控制,按照個人許可權維度做區分,實現從工具平台頁面入口的個人產品、應用、環境許可權與直接從omad平台入口保持一致,避免一鍵群組部署和依賴部署的許可權紊亂,引起許可權滲透的情況發生。在工具平台這邊維護乙個使用者表,記錄錄入的accesskey和accesssecret資訊,以獲取使用者的唯一標識token資訊,從而達到每個使用者的許可權隔離。

1、第一次訪問工具需要錄入omad-key,或錄入的omad-key資訊不正確也需要重新錄入

2、選擇產品、選擇組,新增部署的應用環境資訊,其中倉庫位址、分支、版本可以為空,為空則表示維持現有的omad配置而不做修改。

3、組狀態下的應用環境部署狀態是可持續化的,離開頁面後重新進去組還是會進行健康檢查,若無組化部署,離開後則不再檢查應用環境的健康狀態。

4、部署失敗的應用需要「前往」omad平台檢視詳細的日誌,若omad在登入情況則直接跳轉至對應的應用環境,若未登入則去omad登入頁面。

5、應用部署過程中,狀態會自動重新整理。

1、組資料的複製功能

2、個人許可權隔離後引起的資料不能共用的問題

3、部署進度重新整理功能存在侷限性,無法完全的實時同步

4、......

oamd一鍵群組部署、依賴部署工具是基於omad平台而開發的乙個測試效率工具,理論上所有接入到omad上進行部署的應用,若有群組部署和依賴部署的需求均可以使用本工具作為部署入口,邀請大家一起來嚐嚐鮮,同時也給出一些寶貴的意見。

網易雲新使用者大禮包:

Omad群組部署 依賴部署一鍵解決

基於omad部署平台實現一鍵部署的實踐已有很多成功的經驗,杭研qa的技術先鋒們也在ks圈裡有很多不同的文章去闡述關於這類需求的實現和思路,當然包括我們金融事業部qa這邊之前也有利用jenkins omad實現一鍵部署的場景應用,但本次我想體現的基於omad實現一鍵群組部署 依賴部署功能,這個有別於之...

Omad群組部署 依賴部署一鍵解決

基於omad部署平台實現一鍵部署的實踐已有很多成功的經驗,杭研qa的技術先鋒們也在ks圈裡有很多不同的文章去闡述關於這類需求的實現和思路,當然包括我們金融事業部qa這邊之前也有利用jenkins omad實現一鍵部署的場景應用,但本次我想體現的基於omad實現一鍵群組部署 依賴部署功能,這個有別於之...

ceph 一鍵部署

首先先讚乙個,ceph很強大。部署很方便。寫了乙個半自動化部署指令碼,第一次寫高手飄過。過些時間來做成完全一鍵部署。我的測試環境 mon msd 我是安裝到一台伺服器上面,資料節點安裝了4臺伺服器 使用說明 1 mon msd osd 都需要執行 config ceph.sh install hos...