當前位置: 妍妍網 > 碼農

推薦一款高顏值的一站式自動化運維及自動化部署平台

2024-06-08碼農

一、計畫介紹

一站式自動化運維及自動化部署平台, 使用多環境的概念, 提供了機器管理、機器監控報警、Web終端、WebSftp、機器批次執行、機器批次上傳、線上檢視日誌、定時排程任務、套用環境維護、套用構建及釋出任務、操作流水線等功能, 幫助企業實作一站式輕量化運維治理, 致力於企業級套用的智慧運維。

二、計畫特點

  • 易用方便: 極簡配置, 開箱即用, 支持 docker 部署

  • 線上終端: 支持線上 Web 終端, 記錄操作日誌, 管理員可強制下線, 錄屏回放, 終端監視等

  • 檔管理: 支持遠端機器檔批次上傳、批次下載、暫停斷點續傳、即時傳輸速率、即時進度、打包傳輸等功能

  • 機器監控: 支持維護機器的監控以及報警, 支持采集 agent 的一鍵安裝以及升級

  • 批次操作: 支持遠端機器批次執行命令 以及 批次執行上傳檔

  • 排程任務: 維護 cron 運算式, 定時執行機器命令

  • 環境隔離: 不同套用環境的配置及環境變量是相互隔離的

  • 環境變量: 命令執行時使用占位符自動替換, 支持 properties, json, yml, xml多種格式維護

  • 高相容性: 自訂構建釋出操作, 不論是什麽計畫都是配置 SSH 執行命令, 靈活操作

  • 功能強大: 命令批次執行, 任務定時排程, 遠端日誌檢視, 操作日誌全記錄等

  • 高擴充套件性: 前後端程式碼規範統一, 程式碼健壯品質高, 寫法優雅, 易讀好拓展

  • 免費開源: 前後端程式碼完全開源, 方便二次開發

  • 三、系統功能

    機器管理 :機器列表、機器金鑰、機器監控、環境變量、機器代理、終端日 誌、終端會話;

    執行管理 :批次執行、批次上傳、日誌面板;

    排程任務 :任務列表 、執行記錄、執行統計

    套用管理 :環境管理、套用列表、流水線配置、環境變量、版本倉庫;

    構建釋出 :套用構建、套用釋出、流水線任務、構建統計、釋出統計、流水線 統計;

    使用者中心 :使用者列表、報警聯系組、個人資訊、操作日誌;

    資訊管理 :樣版配置、webhook 配置;

    系統管理 :系統變量、系統設定;

    四、架構設計

    架構圖

    SFTP 檔下載

    套用構建&釋出

    4.1 技術選型

  • SpringBoot 2.4.4

  • MybatisPlus 3.4.0

  • Mysql 8.0

  • Redis 5.0.5

  • Vue 2.6.11

  • Ant Design 1.7.8

  • 五、功能預覽

    控制台

    機器列表

    管理和維護可操作的機器, 計畫初始化後會生成一台預設機器 (本機) 可以稱為 宿主機, 需要手動設定 ssh 密碼或添加金鑰。

    Terminal

    新建機器

    機器監控

    配置已啟動的機器監控, 具有視覺化圖形以及數據粒度和時間區間的選擇

    統計的指標有 CPU監控 記憶體監控 網路頻寬監控 硬碟使用監控

    環境變量

    配置機器環境變量, 這個環境變量並不會設定到遠端機器內, 而是執行命令時動態替換命令內容。

    批次執行 排程任務 套用釋出 套用構建 都可以用到, 設計的初衷是每台機器的配置不一樣, 不同的機器執行相同的命令時設定不同的參數。

    環境變量

    批次執行機器命令, 常用於批次執行某些指令碼, 如: 批次同步機器時間、批次刪除檔等。

    相當於一個無界面的偽終端, 可以執行 cd 這種終端命令, 同樣的 排程任務 套用構建 套用釋出 命令執行操作都是偽終端。

    批次執行的命令可以使用機器環境變量。

    執行記錄

    可以檢視當前使用者執行的所有命令記錄, 管理員 可以檢視所有使用者的執行記錄。

    任務列表

    配置一個 cron 定時任務, 常用於定時執行某些指令碼, 如: 定時清理日誌、定時備份數據等。

    設計理念與批次執行相同, 只不過是不用人為去觸發任務執行。

    新建任務時滑鼠懸停到執行時間上可以得到最近的執行時間。

    套用列表

    管理和維護套用, 每個套用在不同的環境都可以有不同的配置。

    配置: 配置套用的基本資訊, 構建操作, 釋出操作

    構建: 執行套用構建操作

    釋出: 建立套用釋出任務 CI/CD > 套用釋出

    同步: 同步構建釋出配置到其他環境

    復制: 復制當前套用, 會復制套用的環境變量, 構建配置, 釋出配置

    套用構建

    選擇 已配置 的套用進行構建操作。

    重新構建: 基於選擇的 branch 和 commit 再次執行構建操作, 如果修改了套用構建配置, 則會是新的配置

    停止: 停止本次構建操作

    套用釋出

    選擇 已配置 的套用進行釋出操作。

    稽核: 管理員按鈕, 如果該環境配置了釋出稽核, 則需要管理員進行稽核, 稽核透過後才可以進行釋出操作

    釋出: 執行套用釋出任務

    定時: 將未釋出的任務設定定時釋出時間

    復制: 復制釋出套用, 如果修改了套用構建配置, 釋出任務仍然是當前釋出任務的釋出操作

    回滾: 回滾釋出套用, 再次執行當前釋出任務, 如果構建產物不存在則無法回滾

    取消: 取消套用定時釋出

    停止: 停止本次釋出任務

    流水線任務

    選擇 流水線 進行執行操作。

    稽核: 管理員按鈕, 如果該環境配置了釋出稽核, 則需要管理員進行稽核, 稽核透過後才可以進行執行操作

    執行: 執行流水線任務

    定時: 將未執行的任務設定定時執行時間

    復制: 復制當前選擇的流水線任務

    取消: 取消定時執行流水線任務

    停止: 停止本次流水線任務

    六、演示地址

    http://101.43.254.243:1080/#/

    帳號密碼: orionadmin/orionadmin

    原始碼下載地址:

    https://gitee.com/lijiahangmax/orion-ops.git

    看到最後,如果這個計畫對你有用,一定要給我點個「 在看和贊 」。