国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

Ansible for openGauss自動化部署 openGauss

發布時間:2023-11-28 15:56    發布者:工程新聞



前言

大家好,今天我們為大家推薦一套基于 Ansible 開發的,自動化部署及擴容 openGauss 的腳本工具:Ansible for openGauss(以下簡稱 AFO)。


通過AFO,我們只需簡單修改一些配置文件,即可快速部署多種架構模式的 openGauss,以及對已有架構進行自動化擴容。下面我們就請這套工具的貢獻者,上海聯空網絡科技有限公司(以下簡稱“聯空網絡”)的李海濱,給大家講解它的設計理念和優點。


開發背景

Hi,大家好,我是來自聯空網絡安全品質中心的運維工程師,李海濱。我是一名 Ansible 愛好者,致力于將運維工作自動化。曾獲得 FISCO BCOS 區塊鏈開源社區 2021 年度 MVP 稱號。

聯空網絡成立于 2015 年 8 月,專注于提供醫療+互聯網一站式技術和運營解決方案,幫助醫療用戶更加輕松的擁抱互聯網。目前,公司已經與 800+ 醫療機構用戶形成合作關系,其中,百強醫院合作 25+,三級醫院 300+,上海地區客戶覆蓋率超 70%,覆蓋全國 23 個省市。

當前自主創新、信息技術應用創新等需求日益增長,醫療行業用戶十分關注軟硬件產品解決方案的自主創新情況,為此聯空網絡積極響應,投入專業團隊,對國內相關軟硬件產品適配做可行性研判。

經過對國內數據庫的深入了解,我們接觸到了海量數據庫,并獲悉其是基于openGauss開源的商業發行版產品。openGauss 作為一款開源的關系型數據庫管理系統,具有高性能、高可用性以及卓越的擴展能力。于是我們開始構想可以為研發團隊提供 openGauss 環境,讓其可以基于 openGauss 做代碼適配。當客戶選擇使用海量數據庫時,我們的軟件就可以直接匹配。

為了方便反復部署測試,我拿出了擅長的 Ansible,為 openGauss 寫一套自動化部署工具,以簡化其安裝、配置和管理過程。

完成初版開發后,我與 openGauss 社區取得了聯系,表達了希望可以把這套工具貢獻給社區,以開源回饋開源的想法。

感謝社區運營梅相如同學的大力支持,很快為我開設了代碼倉庫。又找來 openGauss 的開發工程師“行塵”同學,解答我在開發過程中遇到的一些問題。在此也很感謝“行塵”同學不厭其煩地回答,你們給予了我很大的幫助!

解決部署痛點

如果你有按照官方文檔部署一套 openGauss 的經歷,你會發現不論是單點還是集群,均需做不少的前期工作。例如要根據 CPU 和操作系統,下載對應版本的安裝包。又需要根據不同的 Linux 操作系統,做一些額外配置。手工部署在這里不僅低效,而且容易有錯漏。如果是多節點的部署,手工部署的弱勢會被進一步放大。

我開發這套 Ansible 腳本的目標,就是盡可能地覆蓋部署前、部署中和部署后的場景,并且把手工部署過程中遇到的一些坑,也通過自動化來解決掉。降低 openGauss 的部署門檻,推動 openGauss 的普及。

例如在 openEuler 20.03 系統里部署 openGauss 5.0,你會遇到 readline-devel 這個依賴包的版本是 8,而 openGauss 5.0 需要的是 libreadline.so.7,導致安裝過程失敗。我查找到解決方法后,加入到部署流程中,自動幫大家把這個坑給填了。

在給未部署 CM 的架構做擴容時,需要在主備之間做一次 switchover 后才能安裝 CM。這些我們也加入到自動化流程中,免除了大家遇到這些問題還要花時間查找解決方法的麻煩。

部署過程中,有需要在 root 和 omm 賬號之間多次切換的操作,Ansible 里用 become_user 就可以輕松自動切換。這些都是手工部署過程中的痛點。

已實現的功能

總結下來,目前我們這個工具能實現以下功能:

提供一個專屬的 ansible-docker 子項目,只要控制機可運行 docker,即可運行一個 Ansible 容器,適配 AFO 的執行。對于不熟悉 Ansible 的同學非常友好。

自動適配 CPU 架構(條件受限,目前僅測試了 X86 架構)和操作系統(已支持 CentOS 和 openEuler 20.03),自動下載對應的 openGauss 安裝包,自動對操作系統做適配修改。

實現從單節點到多節點的多種架構模式的一次性部署。

使用本工具部署的單點或集群,還能通過添加服務器,再次運行腳本,實現平滑擴容。實測可直接從單主擴容到 1 主 2 備 2 級聯。

允許用戶自定義一些變量,例如指定部署目錄,指定 openGauss 版本(5.0 或以上),指定 sysctl 的參數配置。

免除手工部署中的問答環節,自動生成相關密碼,自動填寫。最后生成部署報告。

效率是如何提升的?

以配置網卡 MTU 為例,3 臺服務器的執行時間如下:

Ansible 在 0.517 秒的時間內,完成了 3 臺服務器的網卡 MTU 修改。因為,它是并行操作的。

以生成 cluster_config.xml 為例

3 臺服務器的節點,手工寫 cluster_config.xml,需要花費多少時間,各位可以自己計時看看。

而我們利用 Ansible 的模板功能,可以在 1 秒內生成該文件,編排非常清晰,一目了然。


我們甚至考慮到了在機房里使用小尺寸顯示器查看 cluster_config.xml 的場景,對 xml 做了換行處理,避免出現單行過長的問題。

自動化思路

AFO 主要的工作流如下:

對部署環境的信息進行采集。

將用戶自定義的變量和腳本默認變量合并,優先使用自定義變量。

檢查是否已部署 openGauss,如無,進入初次部署流程。

如果已部署 openGauss,則檢查用戶是否有添加新節點,進入節點擴容流程。

節點擴容流程里又分 2 步,先擴容備機節點,再擴容級聯節點。因為級聯節點只連接備機。

如果集群節點數量為 3 或以上,且未部署 CM,則進入 CM 部署流程。

最后,檢查確認集群已正常運行,生成部署報告。

結果展示

以 3 臺 VirtualBox 虛擬機為例,統一 8U+16GB 配置,都在 1 塊物理 SATA 盤上讀寫。

另外,虛擬機都已經提前安裝好相關依賴包,openGauss 安裝包也已經下載到本地。排除網絡下載速度的不確定因素。

單節點,4 40 秒(下圖右下角)完成部署。

1 1 備,7 48 秒(下圖右下角)完成部署。

從單點數據庫,擴容為 1 1 1 級聯,耗時 23 分(下圖右下角)完成部署。

擴容模式需要額外的流程,因此耗時比直接部署 3 節點的要多。

最后生成部署報告

項目代碼

這套工具已經收錄在 openGauss 社區的官方代碼庫,歡迎大家前往下載試用,并向我們多多提出寶貴意見。

代碼地址:https://gitee.com/opengauss/ansible-for-opengauss


參與貢獻

歡迎對 Ansible 熟悉的同學,加入我們,改進完善我們的項目。

更歡迎大家提交 issue,提出寶貴的意見和建議。

也歡迎可以提供測試資源的同學,與我聯系。目前我們需要 ARM 平臺的測試環境。

TODO

增加 openGauss 相關生態軟件的自動化部署,例如圖形化管理,監控管理。

增加 ARM 平臺的適配。

增加數據庫定時備份的配置流程。

增加對 1 主 1 備架構的主備自動切換配置。

有限度地提供 gs_guc 自動化配置,方便運維人員對數據庫參數做修改更新。

更多的想法,由你們來補充。


本文地址:http://m.qingdxww.cn/thread-847194-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉USB橋接器以及基于CAN的主機和自舉程序應用程序
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产日韩欧美一区二区三区综合 | 一区二区三区高清 | 国产91极品福利手机观看 | 国产一区二区免费不卡在线播放 | 啦啦啦资源在线观看视频4 啦啦啦资源视频在线观看4 | 九九色网 | 亚洲国产三级在线观看 | 欧美高清在线精品一区二区不卡 | 日韩a级片在线观看 | 黄片毛片免费看 | 国产资源精品一区二区免费 | 狠狠色丁香婷婷综合橹不卡 | 日韩毛片久久91 | 日本欧美一区二区三区视频 | 亚洲男女免费视频 | 国产在线观看一区精品 | 久久精品国产清高在天天线 | 韩国理论片妈妈的朋友 | 成人欧美一区二区三区视频xxx | 久久思| 一区精品麻豆经典 | 韩国福利一区二区三区高清视频 | 色噜噜国产精品视频一区二区 | 日本高清视频一区二区三区 | 午夜亚洲一区二区福利 | 国产亚洲区 | 蜜柚视频网在线观看免费版 | 日韩在线视频中文字幕 | 国产免费久久精品久久久 | 日本一区二区三区不卡在线视频 | 国产无限资源在线观看 | 亚洲日日干 | 视频一区在线播放 | 青久在线| 国产成人综合久久精品尤物 | 欧美日韩在线一本卡 | 激情欧美一区二区三区 | 色婷婷导航| 精品伊人久久久99热这里只 | 精品久久久久久久久久久 | 国产三级精品三级国产 |