自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux 管理員福音:自動化生成巡檢報告,一鍵郵件分享!

系統(tǒng) Linux 服務(wù)器
采用自動化巡檢、自動生成報告并通過郵件發(fā)送給相關(guān)人員的方法更加高效。這不僅提升了工作效率,也保證了信息傳遞的準(zhǔn)確性和及時性。

作為一位Linux系統(tǒng)管理員,每天進(jìn)行例行巡檢是非常重要的工作環(huán)節(jié)。這包括檢查:

  • 服務(wù)器的 CPU、內(nèi)存和磁盤使用情況是否都在正常范圍內(nèi)?
  • 關(guān)鍵服務(wù)是否都處于良好運(yùn)行狀態(tài)?
  • 網(wǎng)絡(luò)連接是否有任何異常?
  • 是否出現(xiàn)了需要特別注意的日志記錄或警告信息?

對于小規(guī)模服務(wù)器集群,手動檢查尚可接受。但在處理數(shù)十或上百臺服務(wù)器時,這種方式既耗時又容易遺漏關(guān)鍵信息。因此,采用自動化巡檢、自動生成報告并通過郵件發(fā)送給相關(guān)人員的方法更加高效。這不僅提升了工作效率,也保證了信息傳遞的準(zhǔn)確性和及時性。

一、項目介紹

今天,我想向大家推薦一個非常實用的開源項目ansible-HealthCheck。這個項目主要用于對Linux系統(tǒng)進(jìn)行資源巡檢,并且能夠自動生成詳細(xì)的巡檢報告。更棒的是,它還支持將生成的報告通過電子郵件發(fā)送給指定的接收人,方便快捷。

生成的巡檢報表不僅信息詳盡,而且設(shè)計得非常美觀,如下圖所示。如果你有前端開發(fā)的經(jīng)驗,還可以根據(jù)自己的喜好來調(diào)整和優(yōu)化報表的樣式,讓它更加符合你的需求。

1. 項目目錄結(jié)構(gòu)

ansible-HealthCheck/
├── os-check
│   ├── README.md
│   ├── defaults
│   │   └── main.yml
│   ├── files
│   │   └── check_linux.sh
│   ├── tasks
│   │   └── main.yml
│   ├── templates
│   │   ├── report-cssinline.html
│   │   └── report.html
│   └── vars
│       └── main.yml
└── roles
    ├── filter_plugins
    │   └── os-check.py
    └── os-check.yam
  • vars目錄下定義了一些變量。
  • files目錄下獲取遠(yuǎn)端主機(jī)資源數(shù)據(jù)腳本。
  • task目錄是定義執(zhí)行的任務(wù)。
  • templates目錄下是定義渲染的模板文件。
  • filter_plugins目錄下是定義自定義的數(shù)據(jù)過濾插件。
  • os-check.yaml是ansible的角色執(zhí)行任務(wù)。

2. 執(zhí)行流程

(1) 使用腳本files\check_linux.sh在遠(yuǎn)端執(zhí)行獲取資源數(shù)據(jù),并以json結(jié)構(gòu)體返回。

(2) 使用jinja2模板將獲取的數(shù)據(jù)渲染到模板文件中templates\report-cssinline.html,生成的文件存放在指定的目錄中。

  • report-cssinline.html 是將css設(shè)置以inline的方式存儲的html文件,report.html才是源模板文件,修改完源模板文件后,使用Responsive Email CSS Inliner進(jìn)行轉(zhuǎn)換下,才能更好的兼容郵件顯示。
  • 其中模板中使用的get_check_data過濾器是從hostvars中獲取每臺主機(jī)的腳本執(zhí)行結(jié)果,進(jìn)行分析整理傳遞給模板,使用傳遞回來的數(shù)據(jù)進(jìn)行渲染。

(3) 獲取生成的模板文件內(nèi)容,并通過smtp發(fā)送給接收人。

3. 統(tǒng)計的系統(tǒng)資源

  • 主機(jī)名
  • IP地址
  • 操作系統(tǒng)
  • CPU使用率
  • CPU平均負(fù)載
  • 內(nèi)存使用率
  • Swap使用率
  • 磁盤使用率
  • 磁盤Inode使用率
  • Tcp連接
  • 時間

二、項目演示

(1) 演示環(huán)境中的ansible版本信息如下:

ansible [core 2.17.10]
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /root/.local/pipx/venvs/ansible-core/lib/python3.10/site-packages/ansible
  ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
  executable location = /root/.local/bin/ansible
  python version = 3.10.12 (main, Feb  4 2025, 14:57:36) [GCC 11.4.0] (/root/.local/pipx/venvs/ansible-core/bin/python)
  jinja version = 3.1.6
  libyaml = True

在項目的根目錄下執(zhí)行如下命令:

ansible-playbook roles/os-check.yaml

執(zhí)行完上述命令后,輸出如下結(jié)果。

(2) 查看報告

登錄其中一臺主機(jī),在tmp目錄下,執(zhí)行如下命令,啟動一個web服務(wù)。

root@node1:/tmp# python3 -m http.server 8000

打開網(wǎng)頁輸入該主機(jī)的IP加端口即可訪問巡檢報告。

責(zé)任編輯:趙寧寧 來源: 攻城獅成長日記
相關(guān)推薦

2024-03-15 14:34:12

Oracle數(shù)據(jù)庫一鍵巡檢

2023-12-19 15:45:07

Linux工具

2025-03-19 09:47:08

Shell服務(wù)器腳本

2025-04-02 09:10:00

LinuxShell腳本

2014-03-03 10:20:15

IPA分發(fā)iOS開發(fā)

2021-02-01 12:24:40

Python日志Expect

2013-09-29 09:50:21

系統(tǒng)管理員Ubuntu JujuJuju

2013-05-31 13:34:50

2024-08-07 08:08:42

2020-12-29 11:04:57

Linux安裝系統(tǒng)RedHat

2013-04-08 10:47:33

郵件服務(wù)器管理電子郵件

2015-12-21 14:59:33

CheungSSH開源Web界面

2012-05-21 10:13:12

Linux系統(tǒng)管理

2015-03-09 11:10:14

運(yùn)維

2017-02-17 09:00:00

Linux管理員工具

2019-12-10 09:42:58

開源自動化容器

2021-05-26 08:51:50

漏洞漏洞掃描符號執(zhí)行

2022-08-02 14:27:01

HDF驅(qū)動框架驅(qū)動開發(fā)

2019-10-11 11:00:53

Nginx神器前端

2012-07-25 13:03:39

Office 2013LinkedIn
點贊
收藏

51CTO技術(shù)棧公眾號