WGCLOUD 运维监控平台
一、简介
WGCLOUD是一个高性能高并发的分布式监控系统,server基于springboot架构开发,agent采用go开发,核心模块包括:主机监控,ES集群监控,CPU监控,CPU温度监控,大屏看板,docker监控,网络流量监控,内存监控,业务数据监控(mysql,oracle,pg等),服务心跳检测,应用进程管理,磁盘IO监控,端口监控,日志文件监控,系统负载监控,监控告警信息推送。
1.采用服务端和客户端协同工作方式,更轻量高效,默认可支持500+主机监控。
2.server端负责处理数据,生成图表展示,告警信息推送。agent端负责定时(1分钟)上报主机数据。
3.支持主流平台安装部署,如Linux, Windows, Solaris, AIX, HP-UX等。
4.支持邮件告警,也支持自定义告警脚本执行,在脚本中可集成微信,钉钉,短信等告警方式。
5.server支持水平扩容,在集群状态下,可支持5000+主机在线监控。
6.支持多数据源监控,自定义sql脚本执行,实时监控业务数据变化。
7.公众看板服务,支持游客浏览主机监控概要信息,无需登陆,可随时开启关闭看板服务。
官网
https://www.wgstart.com/
官方文档
https://www.wgstart.com/docs.html
oschina
https://www.oschina.net/p/wgcloud
git 源码下载
https://github.com/tianshiyeben/wgcloud
二、安装部署基本环境准备
1、基本工具安装
[root@localhost ~]# yum install -y vim wget
2、防火墙配置开启指定端口
[root@localhost ~]# firewall-cmd --list-all
[root@localhost ~]# firewall-cmd --permanent --add-port=3306/tcp
[root@localhost ~]# firewall-cmd --permanent --add-port=9999/tcp
[root@localhost ~]# firewall-cmd --permanent --add-port=9997/tcp
[root@localhost ~]# service firewalld restart
关闭防火墙(不推荐)
关闭防火墙 :[root@localhost ~]# systemctl stop firewalld
查看状态 : [root@localhost ~]# systemctl status firewalld
开机禁用 : [root@localhost ~]# systemctl disable firewalld
3、下载安装文件
[root@localhost ~]# wget -P /usr/local/ https://www.wgstart.com/download/3.2.9/wgcloud-v3.2.9.tar.gz
4、进入下载目录
[root@localhost ~]# cd /usr/local/
5、解压缩安装文件
[root@localhost local]# tar zxf wgcloud-v3.2.9.tar.gz
6、进入文件目录、查看
[root@localhost local]# cd wgcloud-v3.2.9
[root@localhost wgcloud-v3.2.9]# ll
7、文件目录
总用量 16
drwxr-xr-x. 4 root root 109 12月 16 2020 agent
drwxr-xr-x. 7 root root 183 12月 10 2020 server
-rw-r--r--. 1 root root 15229 11月 23 2020 wgcloud.sql
8、Centos7.x 安装OpenJDK1.8
https://blog.csdn.net/llwy1428/article/details/111144659
三、MariaDb(Mysql)数据库安装、数据库初始化
1、Centos 7 安装 MariaDb(Mysql)
https://blog.csdn.net/llwy1428/article/details/84965680
启动 MariaDb(Mysql)数据库服务
2、登录
[root@localhost ~]# mysql -uroot -p【密码】
3、创建数据库
MariaDB [(none)]> create database wgcloud;
4、选择新建的数据库 wgcloud
MariaDB [(none)]> use database wgcloud;
5、执行初始化脚本
MariaDB [(wgcloud)]> source /usr/local/wgcloud-v3.2.9/wgcloud.sql
四、server 配置
1、进入 wgcloud 的 server 目录并查看文件列表
[root@localhost wgcloud-v3.2.9]# cd server/
[root@localhost server]# ll
文件列表
总用量 70780
drwxr-xr-x. 2 root root 54 12月 10 2020 config
drwxr-xr-x. 2 root root 6 5月 31 19:56 lib
drwxr-xr-x. 2 root root 6 11月 1 2020 log
drwxr-xr-x. 2 root root 6 12月 10 2020 logo
-rw-r--r--. 1 root root 680 12月 10 2020 README.txt
-rwxr-xr-x. 1 root root 807 10月 31 2020 start.sh
-rwxr-xr-x. 1 root root 631 10月 31 2020 stop.sh
drwxr-xr-x. 2 root root 24 7月 26 12:30 template
-rwxr-xr-x. 1 root root 7403394 12月 10 2020 wgcloud-daemon-release
-rw-r--r--. 1 root root 65059761 12月 16 2020 wgcloud-server-release.jar
2、进入 server 配置文件目录
[root@localhost server]# cd config/
[root@localhost config]# ll
配置文件列表
总用量 8
-rw-r--r--. 1 root root 3513 12月 16 2020 application.yml
-rw-r--r--. 1 root root 91 12月 10 2020 daemon.properties
3、server配置文件说明
1.配置文件server/config/application.yml,除标红需要修改外,其他暂时默认即可,后续可根据实际场景再修改
将标红数据库连接信息,改为自己的mysql数据库连接信息
自定义登陆账号密码,如标红部分admin/111111,暂时默认即可
wgToken为server和agent通信密钥,server和agent配置要保持一致,暂时默认即可
如果想修改server访问端口,将9999改为自己的端口(不能和守护进程端口相同),同时访问时也用修改后的端口,暂时默认即可
server所在主机的9997端口(暂时默认即可)要开放给agent访问,否则agent日志里会出现防篡改校验失败的信息,agent会通过"http://server主机IP:9997"来获取防篡改校验信息,如何修改守护进程端口
server配置文件为yml格式,所有配置的地方冒号后必须紧跟一个空格,注意是空格。wgToken: wgcloud
如何实现微信告警和钉钉告警
4、编辑配置文件
[root@localhost config]# vim application.properties
5、配置信息详情
server: port: 9999 servlet: session: timeout: 120m context-path: /wgcloud #日志文件输出路径 logging: path: ./log # 数据库 相关设置 spring: application: name: wgcloud-server datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/wgcloud?characterEncoding=utf-8&characterSetResults=utf8&autoReconnect=true&useSSL=false&allowMultiQueries=true username: root password: 【Mysql 数据库密码,默认 111111】 hikari: validationTimeout: 3000 connectionTimeout: 60000 idleTimeout: 60000 minimumIdle: 10 maximumPoolSize: 10 maxLifeTime: 60000 connectionTestQuery: select 1 mvc: static-path-pattern: /static/** thymeleaf: cache: false mybatis: config-location: classpath:mybatis/mybatis-config.xml mapper-locations: classpath:mybatis/mapper/*.xml #自定义配置参数 base: #登陆账号 account: admin #登陆账号的密码 accountPwd: 111111 #通信token,agent端和此保持一致 wgToken: wgcloud #是否开启公众看板,yes开启,no关闭,公众看板页面无需登陆 dashView: yes #数据表监控间隔,单位秒,默认60分钟 dbTableTimes: 3600 #服务接口监控间隔,单位秒,默认10分钟 heathTimes: 600 #告警缓存时间间隔(此时间段内不再重复告警),单位秒,默认60分钟 warnCacheTimes: 7200 #监控数据保留天数,默认10天 historyDataOut: 10 #节点类型,master或slave,一个集群只能有一个master和N个slave nodeType: master #server/logo/下的ico图标名称,32*32,如favicon.png,此功能需升级到专业版 icoUrl: #server/logo/下的logo图标名称,120*120,如logo.png,此功能需升级到专业版 logoUrl: #软件名称,如wgcloud运维监控系统,此功能需升级到专业版 wgName: #简称,如wgcloud,此功能需升级到专业版 wgShortName: #告警配置 mail: #告警总开关,yes开启,no关闭 allWarnMail: yes #监控主机内存使用率%报警值,超过此值即发送邮件报警 memWarnVal: 99 #监控主机cpu使用率%报警值,超过此值即发送邮件报警 cpuWarnVal: 99 #cpu温度报警值℃,超过此值即发送邮件报警 cpuTemperatureWarnVal: 92 #磁盘使用率%报警值,超过此值即发送邮件报警 diskWarnVal: 99 #不需要告警磁盘在此屏蔽,多个盘符用,隔开,如/boot,/dev diskBlock: /dev #内存告警,yes开启,no关闭。总开关开启后,此处设置才会生效。以下开关均遵循此规则。 memWarnMail: yes #CPU告警,yes开启,no关闭 cpuWarnMail: yes #CPU温度告警邮件,yes开启,no关闭 cpuTemperatureWarnMail: yes #磁盘使用率告警,yes开启,no关闭 diskWarnMail: yes #主机下线告警,yes开启,no关闭 hostDownWarnMail: yes #进程下线告警,yes开启,no关闭 appDownWarnMail: yes #服务接口告警,yes开启,no关闭 heathWarnMail: yes #数据源连接失败,告警,yes开启,no关闭 dbDownWarnMail: yes #日志文件监控,告警,yes开启,no关闭 fileLogWarnMail: yes #端口telnet不通,告警,yes开启,no关闭 portWarnMail: yes #告警脚本绝对路径(若配置脚本,无论是否配置过邮件,都会执行该脚本),可以为空,参考模板:server/template/sendMsg.sh
6、进入 wgcloud 的 server 并启动 server 服务
[root@localhost ~]# cd /usr/local/wgcloud-v3.2.9/server/
7、启动服务
[root@localhost server]# ./start.sh
8、启动效果
./wgcloud-server-release.jar
wgcloud-server程序开始启动
./wgcloud-daemon-release
wgcloud-daemon程序开始启动
五、编辑 客户端(被监控服务器)的配置文件
1、进入客户的文件目录
[root@localhost ~]# cd /usr/local/wgcloud-v3.2.9/agent/config
2、编辑客户剬配置文件
[root@localhost config]# vim application.properties
3、agent配置文件说明
1.配置文件agent/config/application.properties,除标红需要修改外,其他暂时默认即可
#wgcloud-server端访问地址,端口一定要写,即使是80也要写哈
serverUrl=http://192.168.11.200:9999
#本机ip,可以为空,为空时候默认取计算机名称,计算机名称不要超过50个字符
bindIp=192.168.11.200
#通信token,请和server端配置的wgToken保持一致
wgToken=wgcloud
#给server端上报数据频率,单位秒,个人版值不能小于60,专业版值不能小于30
submitSeconds=120
#server主机的守护进程端口
daemonPort=9997
wgToken为agent和server通信的密钥,相当于密码,可以自定义为自己的配置密码,暂时保持默认即可
4、注意
agent配置文件为properties类型,因此等号后面不需要保留空格
若无批量上传工具,可以使用常用工具里的批量上传工具
进入客户端,启动客户端服务
[root@localhost ~]# cd /usr/local/wgcloud-v3.2.9/agent/
5、启动服务
[root@localhost agent]# ./start.sh
6、启动效果
./wgcloud-agent-release
wgcloud-agent程序开始启动
六、启动服务注意事项
1.server启动注意:linux检查文件是否有可执行权限,若无,则赋给可执行权限
start.sh启动服务,stop.sh停止服务
win下用start.bat启动,启动后不可关闭黑窗口,停止服务关掉黑窗口即可
启动后通过http://192.168.1.1:9999/wgcloud访问登陆页面,把192.168.1.1改为自己的实际IP和端口,默认登陆账号密码:admin/111111
2.agent启动
注意:linux检查文件是否有可执行权限,若无,则赋给可执行权限
start.sh启动服务,stop.sh停止服务
win下用管理员身份启动wgcloud-agent-release.exe,启动后不可关闭黑窗口,停止服务关掉黑窗口即可,若需要注册windows服务,请点击https://www.wgstart.com/help/docs8.html
七、浏览器配置、展示
地址栏录入登录地址
http://192.168.11.200:9999/wgcloud (192.168.11.200 是我虚拟机内网 IP)
账号、密码是上文配置的
默认
#登陆账号
account: admin
#登陆账号的密码
accountPwd: 111111
监控概况
主机管理
端口管理
端口管理列表
日志监控
日志监控列表
数据源管理
数据源监控列表
数据表管理
数据表监控列表
服务接口管理
主机监控信息
监控拓扑图
设备管理
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫