簡易的CMDB服務端

来源:https://www.cnblogs.com/caesar-id/archive/2020/04/06/12640409.html
-Advertisement-
Play Games

前言 本文僅是對以前寫的小示例進行一次梳理,由於本人菜鳥一枚,後端代碼寫的很渣,前端頁面也不好看,還請大家多多海涵。 一、程式簡介 程式分為cmdb_server,cmdb_client兩部分,以運維為核心開發的簡易框架,cmdb_client主要負責資產信息採集,採集到數據後將數據進行清洗,彙總. ...


前言

本文僅是對以前寫的小示例進行一次梳理,由於本人菜鳥一枚,後端代碼寫的很渣,前端頁面也不好看,還請大家多多海涵。

一、程式簡介

程式分為cmdb_server,cmdb_client兩部分,以運維為核心開發的簡易框架,cmdb_client主要負責資產信息採集,採集到數據後將數據進行清洗,彙總.使用POST的方式將數據發給cmdb_server,cmdb_server將接收到的數據寫入資料庫。通過前端展現給用戶。

cmdb_server實現的主要功能如下(目前部分功能僅支持centos 7):

1、用戶登錄認證。’

2、將採集到的資產信息以前端頁面展示給用戶,並可以將資產信息以Excel的形式導出。

3、機房信息維護。

4、業務線信息維護。

5、記錄主機資產信息的變更記錄。

6、執行用戶任務(批量執行命令,執行腳本,文件下發。提取客戶端文件到本地)

7、實時監控主機硬體資源。

8、webssh。

9、docker伺服器管理。

cmdb_client主要實現了通過agent或者SSH的方式對windows7以上版本,centos7版本的資產信息採集。

程式目前主要針對centos 7進行的開發

二、程式目錄簡介

[root@localhost CMDB]# tree -L 1 cmdb_server/
cmdb_server/
├── asset_API          # 負責接送cmdb_client發來的資產信息,並將資產信息寫入資料庫
├── assetRepository    # 資料庫
├── cmdb_server        # 程式主目錄
├── data_dir           # 存放日誌,下載文件的目錄
├── db.sqlite3
├── manage.py
├── plugin             # 插件庫:處理SSH連接,發送報警郵件,日誌,主機存活掃描,分頁處理,Excel處理
├── __pycache__
├── requirements.txt
├── show_page          # 實現用戶功能的目錄
├── templates
├── test.py


[root@localhost cmdb_server]# tree -L 1 show_page/
show_page/
├── client_manage     # 用於展示資產信息
├── docker_manage     # docker伺服器管理 
├── host_monitor      # 主機監控
├── __init__.py
├── login_register    # 用戶登錄認證
├── __pycache__
├── user_task         # 執行用戶任務
├── web               # 功能APP
└── web_ssh           # webssh

三、程式開發平臺

操作系統:centos 7     

軟體版本:python 3.6   django 1.11.20   mariadb 5.5.64    

主要用到的技術:python,django,SSH,websocket,ajax,需要用到的運維命令。

四、功能演示

1、登錄認證

2、獲取資產信息

2.1資產信息的其它操作

3、機房信息和業務線

4、主機變更記錄

5、執行用戶任務

5.1 執行批量安裝命令

5.2 執行shell腳本

5.3 文件下發

5.4 文件提取

6、主機監控

7、webssh

8、docker管理

8.1 安裝docker

8.2 統一鏡像源

8.3 鏡像搜索和批量下載

8.4 批量創建容器

8.5 docker服務,容器,鏡像相關操作

8.6 使用dockerfile創建鏡像

 

 ----------------------------------------------------------    待續    -----------------------------------------------------------------

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文作者:位元組跳動數據平臺 早千 這是一張再熟悉不過的地圖,但右上角黑龍江與內蒙古之間的那片飛地是什麼呢? 查一下,摘自互聯網: 大興安嶺是黑龍江省下轄的一個非常特殊的地級行政單位,大興安嶺行政公署和大興安嶺林業集團公司實行政企合一的管理體制。行政公署為省政府派駐機構,所轄加格達奇和松嶺兩區,地權屬 ...
  • 課程目錄: 第一章/web基礎 課時1:常見瀏覽器 課時2:瀏覽器內核 課時3:web標準 第二章/html入門 課時4:html初識 課時5:html骨架 課時6:我的第一個頁面及其標簽簡介 課時7:豬八戒版骨架 課時8:什麼是標簽及其分類 課時9:標簽嵌套和併列關係 課時10:簡單小測試 課時1 ...
  • 1.非同步任務? 我的理解就是需要用戶觸發的事件,定、延時器,簡單理解就是未來才會發生的事件就是非同步事件, 原理:js是一個單線程的語言,中所有的代碼塊都可以按照任務分為兩種任務:一種是同步任務,一種是非同步任務。 js執行程式時遇到這兩種任務,會按照同步和非同步兩種類別進行識別對待。. 1.同步任務進入 ...
  • 文檔地址:https://terryz.gitee.io/selectpage/guide.html ...
  • 每天我們打開電腦,看到各種各樣的Web前端頁面。你知道他們是如何製作的嗎?為了讓頁面更具有規範性,讓使用者更加方便,在製作頁面過程中必須遵循一定的設計流程。在這裡就為大家詳細介紹一下製作一個Web前端頁面的設計流程及註意事項。 一:確定網站主題 每個網站都有自身以及對用戶的定位。針對網站定位確定網站 ...
  • 大學畢業一年收穫還是滿滿的!手動滑稽 今天呢,來記錄一個爬蟲項目,用的web-magic實現,不說Java和Python那個更強,只看那個代價更小,與現在我而言自然是Java嘍!同時呢magic也是參考了Scrapy框架的。 先把git地址掏出來:https://gitee.com/xxxx/mag ...
  • 導讀 模板模式在是Spring底層被廣泛的應用,比如事務管理器的實現,JDBC模板的實現。 文章首發於作者的微信公眾號【碼猿技術專欄】 今天就來談談「什麼是模板模式」、「模板模式的優缺點」、「模板模式的簡單演示」、「模板模式在Spring底層的實現」。 什麼是模板模式 模板模式首先要有一個抽象類,這 ...
  • 定義: 原型模式(Prototype):用原型實例指定創建對象的種類,並且通過 clone 這些原型創建新的對象。原型模式其實就是從一個對象再創建另外一個可定製的對象,而且不需要知道任何創建的細節。目的是使用 clone 對象來減少 new 對象的開銷。 原型 clone 有淺複製和深複製:淺複製: ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...