0


Zabbix+Grafana(一)-安装配置从入门到可用的可视化运维案例

1 Zabbix+Grafana案例概述

由于最近发生了几次服务器系统盘满,导致业务受影响的事件,打算研究一下运维管理系统,把各种服务器整体做个监控,安装过程中遇到不少问题,参考了很多文档,最终安装成功,所以写篇文章记录一下我的安装过程。

我更倾向于做一些案例类文章,从头到尾跟着操作就能出效果,同时弄清楚整个过程,放到生产环境中使用也比较放心,如果大家在操作过程中发现有地方写的不清楚,请私信我,我会及时完善。

文章打算分三个阶段,本篇是第一阶段:

  • 第一阶段:本篇文章,Zabbix+Grafana安装、对接,监控Windows和Linux。
  • 第二阶段:Grafana面板分享、创建面板、数据展现。
  • 第三阶段:Zabbix实现告警到邮件、钉钉和微信。

1.1 环境介绍

本案例全部软件都采用官网安装包或安装流程进行安装,由于7不支持yum安装zabbix,为了方便安装,所以选择了CentOS9。

Grafana服务器采用了Windows Server系统,这台同时作为运维机使用,Grafana在CentOS9中安装也很方便,可以按需选择。

软件也可以按需选择版本、编译安装,请自行选择。

1.2 软件版本

名称软件版本链接操作系统CentOS 9 Stream自行安装(安装时选择中文,如果安装的英文版,可以参考2.2修改,不然zabbix配置时,不能选择中文)操作系统Windows Server自行安装,尽量新版中间件Nginx 1.22.1Zabbix安装过程中附带安装,不需要自行安装PHPPHP 8.0.30Zabbix安装过程中附带安装,不需要自行安装数据库mysql 8.0.36 RHEL9 x86_64https://repo.mysql.com//mysql80-community-release-el9-5.noarch.rpmZabbix6.0 LTS 6.0.28https://www.zabbix.com/cn/download?zabbix=6.0&os_distribution=centos&os_version=9&components=server_frontend_agent&db=mysql&ws=nginxGrafana10.4.1 Enterprisehttps://grafana.com/grafana/download/10.4.1?pg=get&platform=windows&plcmt=selfmanaged-box1-cta1

1.3 服务器配置

前三台服务器可以合并为一台,只是在安装zabbix导入数据库时有些差异,如果不会操作可以评论区留言。
角色IP数量安装软件vCPU内存磁盘Zabbix应用服务器192.168.1.11zabbix-server、Nginx、PHP416100数据库服务器192.168.1.21Mysql48100Grafana应用服务器192.168.1.31Grafana48100被监控客户端/按需zabbix-agent///

2 服务端安装

2.1 Mysql安装及配置

在数据库服务器中操作

  1. 配置防火墙#开放3306端口firewall-cmd --zone=public --add-port=3306/tcp --permanentfirewall-cmd --reload
  2. 安装Mysql官方源rpm-Uvh https://repo.mysql.com//mysql80-community-release-el9-5.noarch.rpm
  3. 安装mysql-community-serveryum install mysql-community-server在这里插入图片描述
  4. 启动Mysql服务#启动服务systemctl start mysqldsystemctl enable mysqld#查看服务状态systemctl status mysqld在这里插入图片描述
  5. 获取root初始密码,保存备用grep password /var/log/mysqld.log在这里插入图片描述
  6. 修改root初始密码#使用初始密码登录mysql -uroot-pEnter password:输入初始密码#以下是在mysql命令行中操作#修改初始密码为Zabbix@123,这里自行替换成你自己的密码,建议设置的复杂一些ALTER USER'root'@'localhost' IDENTIFIED BY 'Zabbix@123';
  7. (按需)设置允许root远程连接zabbix通过独立的账户连接数据库,所以root是否允许远程登录都可以,默认只允许本机登录,可以配置允许全部或允许指定IP:1. 允许全部IP远程登录#以下是在mysql命令行中操作use mysql;UPDATE user SET host='%' WHERE user='root';#刷新权限FLUSH PRIVILEGES;#检查结果use mysql;SELECT user,host FROM user;在这里插入图片描述1. 允许指定IP远程登录#以下是在mysql命令行中操作#例如:允许root用户通过192.168.1.1远程登录,并设置密码为Zabbix@123CREATE USER [email protected] IDENTIFIED BY 'Zabbix@123';#给远程账户添加权限GRANT ALL PRIVILEGES ON *.* TO [email protected];#刷新权限FLUSH PRIVILEGES;#检查结果SELECT user,host FROM user;在这里插入图片描述
  8. 创建zabbix数据库#以下是在mysql命令行中操作#创建zabbix的数据库create database zabbix character set utf8mb4 collate utf8mb4_bin;#创建zabbix账户,允许zabbix服务器的IP访问数据库create user zabbix@localhost identified by 'Zabbix@123';create user [email protected] identified by 'Zabbix@123';#授权zabbix账户访问数据库grant all privileges on zabbix.* to zabbix@localhost;grant all privileges on zabbix.* to [email protected];#开启权限,为后续导入初始数据做准备set global log_bin_trust_function_creators =1;quit;
  9. Mysql配置完成

2.2 Zabbix安装及配置

在zabbix应用服务器中操作

  1. 配置防火墙#开放8080、10050、10051端口firewall-cmd --zone=public --add-port=8080/tcp --permanentfirewall-cmd --zone=public --add-port=10050/tcp --permanentfirewall-cmd --zone=public --add-port=10051/tcp --permanentfirewall-cmd --reload
  2. (按需)服务器安装中文环境,不然配置zabbix时不能选中文#确认当前语言,如果是en_US.UTF-8说明是英文,按照此方法安装echo$LANGen_US.UTF-8#安装中文环境yum install glibc-commonyum install langpacks-zh_CN.noarch#编辑配置文件vim /etc/locale.conf修改为LANG="zh_CN.UTF-8"source /etc/locale.conf#重启系统reboot
  3. (按需)如果之前安装了epel源,需要在epel源中排除zabbix,确保使用Zabbix源安装#编辑epel源配置文件vim /etc/yum.repos.d/epel.repo#在[epel]下添加如下语句excludepkgs=zabbix*在这里插入图片描述
  4. 安装Zabbix源#安装Zabbix官方源rpm-Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-6.0-4.el9.noarch.rpm#清理缓存yum clean all
  5. 安装Zabbix server,Web前端,agentyum install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent在这里插入图片描述
  6. 在zabbix应用服务器中操作,导入初始架构和数据,系统将提示您输入新创建的密码。#在zabbix应用服务器中执行,将IP换成自己数据库服务器的IP#本案例中数据库服务器IP为192.168.1.2zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -h192.168.1.2 --default-character-set=utf8mb4 -uzabbix-p zabbixEnter password:输入数据库zabbix用户的密码
  7. 导入完成,关闭权限mysql -h192.168.1.2 -uroot-pEnter password:输入root用户密码#关闭权限set global log_bin_trust_function_creators =0;quit;
  8. 修改zabbix配置文件vim /etc/zabbix/zabbix_server.conf#填写数据库服务器IPDBHost=192.168.1.2#填写数据库zabbix账户的密码DBPassword=Zabbix@123#填写端口号DBPort=3306#修改缓存大小ValueCacheSize=256M
  9. 修改nginx配置文件vim /etc/nginx/conf.d/zabbix.conf#取消listen注释,默认端口8080在这里插入图片描述
  10. 启动zabbix、nginx、php服务systemctl restart zabbix-server zabbix-agent nginx php-fpmsystemctl enable zabbix-server zabbix-agent nginx php-fpm
  11. 浏览器访问http://192.168.1.1:8080,选择中文![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/93f9c20c6d741d39b185d83b808d7a1f.png#pic_center)
  12. 确认全部项目都是OK在这里插入图片描述
  13. 配置连接数据库填写数据库服务器的IP、端口、数据库密码在这里插入图片描述
  14. 配置主机名,此名称将显示在浏览器标题处在这里插入图片描述
  15. 出现此页面表示安装成功在这里插入图片描述
  16. Zabbix配置完成默认用户名:Admin默认密码:zabbix在这里插入图片描述
  17. 解决zabbix中文显示为□□方块的问题处理前:在这里插入图片描述在windows系统中找一个字体,上传到zabbix应用服务器,替换zabbix的默认字体
#默认字体位置/usr/share/zabbix/assets/fonts/graphfont.ttf#我这里选择黑体,直接覆盖mv simhei.ttf /usr/share/zabbix/assets/fonts/graphfont.ttf

​ 处理后:

在这里插入图片描述

2.3 Grafana安装及配置

在grafana应用服务器中操作

  1. 配置防火墙,开放80端口在这里插入图片描述
  2. 下载、解压安装包,我这里用的二进制包https://grafana.com/grafana/download/10.4.1?pg=get&platform=windows&plcmt=selfmanaged-box1-cta1![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/5c00a5e89c44d0ae671104a7947a2d4c.png#pic_center)
  3. nssm可以把grafana注册成服务https://nssm.cc/download![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/89e8f5a721274a9c3f02aa98f1bcd938.png#pic_center)
  4. 进入nssm目录,安装服务cd C:\Users\Administrator\Desktop\grafana-v10.4.0\bin\nssm-2.24\win64nssm.exe install GrafanaService弹出窗口,path选择grafana-v10.4.0\bin\grafana-server.exe,其他保持默认,点击install service在这里插入图片描述
  5. 修改配置文件复制grafana-v10.4.0\conf\sample.ini,重命名为custom.ini修改端口为80在这里插入图片描述
  6. 启动服务在这里插入图片描述
  7. 浏览器访问http://192.168.1.3默认用户名:admin默认密码:admin![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/a7c225a4b680a6227a66393885737c47.png#pic_center)
  8. 设置中文在这里插入图片描述在这里插入图片描述

3 grafana对接zabbix数据

3.1 安装grafana对接zabbix插件

  • 命令安装:
#在grafana-v10.4.0\bin\目录下执行
grafana-cli.exe plugins install alexanderzobnin-zabbix-app
C:\Users\Administrator\Desktop\grafana-v10.4.0\bin;C:\Users\Administrator\Desktop\grafana-v10.4.0\data\plugins\alexanderzobnin-zabbix-app

在这里插入图片描述

3.2 重启grafana服务

在这里插入图片描述

3.3 启用插件

管理-插件和数据-插件-zabbix,点击enable

在这里插入图片描述

在这里插入图片描述

3.4 回到zabbix中创建api token

  1. 管理-一般-API token在这里插入图片描述
  2. 点击创建在这里插入图片描述
  • 名称随意
  • 用户选择admin
  • 取消到期时间选项
  • 点击添加在这里插入图片描述
  1. 复制认证令牌,保存好在这里插入图片描述

3.5 到grafana中添加数据源

  1. 连接-数据源-Add data source在这里插入图片描述
  2. 划到最后,找到zabbix在这里插入图片描述
  3. 对接参数

在这里插入图片描述

在这里插入图片描述

  1. 勾选此选项,点击save & test

在这里插入图片描述

3.6 出现这个代表对接成功,至此服务端安装工作全部完成

在这里插入图片描述

4 被监控客户端安装

被监控客户端安装相对简单,Windows直接下载MSI安装包,CentOS 9按照官网的流程yum安装即可,还有客户端需要在防火墙开放10050端口。

在官网下载对应安装包:https://www.zabbix.com/cn/download_agents

本文的环境是6.0 LTS 6.0.28,你可以根据实际情况选择,版本建议选择agent2,功能、性能都好一些。

在这里插入图片描述

在这里插入图片描述

4.1 Windows

  1. 防火墙开放10050端口,安装时会自动添加在这里插入图片描述
  2. 下载安装包https://cdn.zabbix.com/zabbix/binaries/stable/6.0/6.0.28/zabbix_agent2-6.0.28-windows-amd64-openssl.msi
  3. 安装agent2在这里插入图片描述- hostname自动生成,不需要修改,填写zabbix服务器IP,勾选添加agent路径到PATH即可在这里插入图片描述
  4. 安装完成在这里插入图片描述

4.2 CentOS

  1. 防火墙开放10050端口firewall-cmd --zone=public --add-port=10050/tcp --permanentfirewall-cmd --reload
  2. 安装zabbix源- (按需)如果之前安装了epel源,需要在epel源中排除zabbix,确保使用Zabbix源安装#编辑epel源配置文件vim /etc/yum.repos.d/epel.repo#在[epel]下添加如下语句excludepkgs=zabbix*- 安装zabbix官方源#安装Zabbix官方源rpm-Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-6.0-4.el9.noarch.rpm#清理缓存yum clean all
  3. 安装agent2yum install zabbix-agent2 zabbix-agent2-plugin-*
  4. 配置agent2(被动模式,适用内网环境:服务器/客户端在同一网络中)vim /etc/zabbix/zabbix_agent2.conf#被动模式,仅需要配置Server:填写zabbix服务器IPServer=192.168.1.1
  5. 启动服务systemctl restart zabbix-agent2systemctl enable zabbix-agent2

5 Zabbix中添加客户端

5.1 登录zabbix,找到监测-主机

在这里插入图片描述

5.2 创建主机(被动模式)

在这里插入图片描述

  • 主机名:填写IP地址或主机名
  • 模板根据系统类型选择:- Windows选择:Windows by Zabbix agent- Liunx选择:Linux by Zabbix agent- 群组:自行选择,可以用自带的,也可以新建- Interfaces:点击“添加”,选择“客户端”,填写客户端IP地址在这里插入图片描述

5.3 添加完成

ZBX图标变为绿色,表示添加成功

在这里插入图片描述

5.4 查看数据

点击最新数据,能看到数据表示监控成功

在这里插入图片描述
在这里插入图片描述

标签: zabbix grafana 运维

本文转载自: https://blog.csdn.net/hanziqing0630/article/details/137070951
版权归原作者 hanziqing 所有, 如有侵权,请联系我们删除。

“Zabbix+Grafana(一)-安装配置从入门到可用的可视化运维案例”的评论:

还没有评论