一、项目概述
Vigilix 是一个具备多组件、多功能的系统,主要用于自动巡检、系统监控、数据推送以及告警处理等。该项目集成了 Zabbix 告警、巡检表格生成等特色功能,为运维人员提供全面的系统监控解决方案。
二、项目功能
多模块协同工作
客户端(Client):负责与用户进行交互,实现用户登录和命令执行等功能。客户端支持执行各种命令,并将命令执行结果返回给用户。
推送端(Push):根据配置将信息推送给不同的接收方,如邮件、钉钉、短信、企业微信等。支持通过 POST 方式对接 Server 服务端,实现告警及数据推送,具备轻量级架构、高并发处理能力和优异性能。
代理端(Agent):部署在被监控的主机上,负责采集主机的系统指标数据,如 CPU、内存、磁盘等信息,并将数据发送给服务端。
服务端(Server):接收代理端发送的数据,进行处理和存储,同时处理系统信号和告警信息。可对接 Zabbix 接口收集触发器情况,如有异常,触发告警。
特色功能
Zabbix 告警集成功能:能够从 Zabbix 获取告警信息,并通过自身的推送机制将告警信息发送给相关人员。
自动化巡检:巡检表格生成功能:服务端通知 Agent 进行推送数据,收集 Agent 发送的系统指标数据后开始生成巡检表格,将收集到的数据按预设格式整理,并写入 Excel 文件,保存到配置指定的路径,可供运维人员下载和查看。
前置和后置命令功能(不常用):推送端接收到需要处理的消息后,检查前置命令状态,若启用则执行前置命令;执行主要任务(如发送邮件、钉钉消息等);检查后置命令状态,若启用则执行后置命令;将整个过程的执行结果记录到日志中。
三、本人在项目中的角色
在 Vigilix 项目中,我主要负责项目的核心开发工作。具体包括:
项目架构设计,确定各模块的功能和交互方式,确保项目的整体架构具备高可扩展性和稳定性。
所有模块代码开发,实现系统指标数据的采集、传输和处理,以及 Zabbix 告警集成功能。
对推送端的功能进行优化,提高其并发处理能力和性能,确保告警信息能够及时、准确地推送给相关人员。
项目的测试和调试工作,及时解决发现的问题,保证项目的质量和稳定性。
我在 Vigilix 项目中发挥了重要作用,为项目的成功实施做出了积极贡献。