無論大小公司,運維面對最多的工做就是發佈部署,近些年各類運維自動化工具也愈來愈多,運維自動化每一個人都有一套本身的理解,那麼中小公司通常都怎麼作運維自動化呢?前端
咱們先看一下中小企業面臨的問題:git
一、人員有限,小一點的公司專業運維可能沒有,開發本身上線,也有可能1-2個運維人員,基本不會投入專門的運維開發來開發運維自動化平臺。 二、服務器少,可能不超過50臺服務器。 三、版本更新迭代比較快,須要快速方便的發佈回滾。github
中小企業運維自動化常見作法:後端
一、Gitlab+Jenkins,建立Jenkins任務,使用Jenkins登陸服務器執行腳本實現發佈,配合服務器多個腳本實現對服務器管理。 二、Gitlab+Jenkins+Ansible,使用Jenkins調用Ansible登陸服務器執行腳本實現代碼的發佈,平時服務器管理使用Anaible進行服務器管理。 三、K8S平臺,使用K8s發佈平臺,打包應用Docker鏡像,經過K8s發佈到線上。 四、使用開源的運維自動化平臺發佈管理,Github上有不少優秀的開源項目,可使用。雖然能夠經過上面的幾種方法把發佈和常常操做的都實現自動化,可是避免不了登陸服務器操做命令、配置任務計劃,修改應用配置文件,配置服務器監控等。那麼有沒有開源平臺能夠很方便的實現上面說到的這些功能呢?下面就給給你們推薦一款面向中小企業的開源運維自動化平臺:Spug瀏覽器
平臺介紹:服務器
Spug,中文名稱:麻雀。寓意:麻雀雖小,五臟俱全,它是面向中小型企業設計的無 Agent的自動化運維平臺,整合了主機管理、主機批量執行、主機在線終端、應用發佈、任務計劃、配置中心、監控、報警等一系列功能。微信
開源地址: 倉庫:https://github.com/openspug/spug運維
官網:spug.dev工具
演示環境:demo.spug.dev(帳號密碼:admin/spug)設計
技術棧:
後端:Python + Django 前端:React + Ant Design
功能特性:
- 批量執行: 命令能夠在線批量執行
- 在線終端: 主機支持瀏覽器在線終端登陸
- 任務計劃: 靈活的任務計劃,支持間隔執行,一次性執行,Crontab風格執行
- 發佈部署: 支持自動建立應用,支持工單,自定義發佈流程
- 配置中心: 支持KV、文本、Json等格式的配置
- 監控中心: 支持站點、端口、進程、自定義等監控
- 報警中心: 支持短信、郵件、釘釘、微信等報警方式
- 優雅美觀: 基於 Ant Design 的UI界面
模塊介紹:
一、批量執行
批量執行能夠同時選擇多臺主機執行命令,也能夠將常常執行的命令保存到模版,選擇執行模板裏面的命令執行,執行結果實時在界面上返回。
二、在線終端
在線終端,能夠很方便的經過瀏覽器在線終端登陸到主機上操做命令。
三、應用發佈
應用發佈,支持應用自動建立、部署、發佈,建立應用只須要輸入要部署的應用Git地址,和部署的目標服務器目標目錄,定義好發佈前發佈中執行的命令就能夠配置好應用的自動化發佈部署。應用發佈支持提交工單,工單審覈,工單審批經過後自動發佈。
四、任務計劃
任務計劃,支持間隔執行,一次性執行,Crontab格式執行。
五、配置中心
配置中心,應用配置支持在線化配置,支持多環境配置,配置格式支持KV,Txt,Json格式的配置
六、監控中心
監控中心執行站點監控,進程監控,端口監控,以及自定義腳本監控,並支持微信,釘釘,郵件報警。
七、報警中心
報警支持報警聯繫人,報警組管理。能夠把報警發給指定的分組。
更多新功能,關注公衆號
若是你感受咱們的項目不錯。順手在Github上點個Star,感謝感謝。