zabbix搭建教程

部署服务端

powershell 复制代码
1.安装源
    rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
2.修改源 修改为阿里云
    sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
3.清除旧的yum缓存
    yum clean all
4.安装zabbix服务端
    zabbix-server-mysql zabbix-agent -y
5.安装software collections  (scl)  可以让在同一个操作系统上安装和使用多个版本的软件,而不会影响整个系统的安装包   软件包会安装在   /opt/rh目录下
    yum install cntos-release-scl -y
6.修改zabbix-front前端源    修改/etc/yum.repos.d/zabbix.repo
    [zabbix-frontend]
    name=Zabbix Official Repository frontend - $basearch
    baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/frontend
    enabled=1                #将这个值修改为1 开启
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
7.安装zabbix前端环境,且是安装到scl环境下(安装后会安装到/opt/rh  目录)
    yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y
8.安装zabbix所需要的数据库
    yum install mariadb-server -y
9.配置数据库开机启动
    systemctl enable --now mariadb
10.初始化数据库,设置密码
    systemctl start mariadb            //启动mariadb数据库
    mysql_secure_installation
        Enter current password for root (enter for none):            //请输入当前用户密码,默认空所以回车
        Set root password? [Y/n]                             //设置root密码
        Remove anonymous users? [Y/n]                            //是否移除匿名用户    选择是
        Disallow root login remotely? [Y/n]                         //禁止root远程登录
        Remove test database and access to it? [Y/n]               //是否移除默认测试数据库
11.添加数据库,以及添加zabbix所需数据库
    create database zabbix character set utf8 collate utf8_bin;            //创建zabbix数据库,设置字符为utf8
    create user zabbix@localhost identified by 'zabbix';                //创建zabbix用户   密码也是zabbix
    grant all privileges on zabbix.* to zabbix@localhost;                //给zabbix用户授权
    flush privileges;                    //刷新授权表
12.使用zabbix-mysql命令,导入数据库信息
     zcat /usr/share/doc/zabbix-server-mysql-5.0.42/create.sql.gz | mysql -u zabbix -p zabbix        //将本地的zabbix创建sql 导入到mysql  zabbix库中
13.修改zabbix配置文件中的数据库密码
     vim /etc/zabbix/zabbix_server.conf
14.修改zabbix的php配置文件
    vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
    php_value[date.timezone] = Asia/Shanghai   //将时区修改为上海
15.启动zabbix相关服务
    systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
    systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
16.访问zabbix入口
    访问 ip/zabbix
17.安装成功后,默认账号密码
    账号:Admin    密码:zabbix

部署客户端

powershell 复制代码
1.确保服务器时间争取
    yum install ntpdate -y            //安装插件
    ntpdate -u ntp.aliyun.com                //更新时间
2.时区的统一配置
    mv /etc/localtime{,.bak}
    ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

具体的zabbix-agent2部署流程

powershell 复制代码
1.提前配置好zabbix的yum源
2.安装zabbix-agent2
    yum install zabbix-agent2 -y 
3.启动zabbix-agent客户端
    systemctl enable --now zabbix-agent2
4.修改agent2配置文件(/etc/zabbix/zabbix_agent2.conf)
    Server  修改为服务端地址
    ServerActive   修改为服务端地址
5.重启zabbix-agent2

验证zabbix-agenet2的连通性

powershell 复制代码
1.在服务端上用过命令主动获取数据
    yum install zabbix-get -y     //安装主动获取数据的插件
    zabbix_get -s '192.168.23.130' -p 10050 -k 'agent.ping'        //测试连通性
    zabbix_get -s '192.168.23.130' -p 10050 -k 'agent.hostname'        //获取客户端主机名

解决zabbix-server查看的乱码问题

powershell 复制代码
1.在服务端安装字体
    yum install wqy-microhei-fonts -y                //安装字体
    \cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf         //复制字体    

自定义监控内容

powershell 复制代码
1.在客户端手动创建zabbix配置文件,用于自定义key
    /etc/zabbix/zabbix_agent2.d/                //进入zabbix的扩展目录
    vim userParameter_login.conf                //创建一个配置文件
    UserParameter=login.user,who | wc -l            //编辑文件增加一个查看当前登录用户数的命令
    systemctl restart zabbix-agent2                //重启zabbix-agent
2.在服务端通过命令,来获取数据
    zabbix_get -s '192.168.**.**' -p 10050 -k 'login.user'

在页面添加zabbix-server的自定义监控项模板

powershell 复制代码
1.创建模板
2.创建应用集(好比是一个文件夹,里面放一堆监控项)
3.创建监控项,自定义item
4.创建触发器(当监控项获取到值得时候,进行和触发器比较、判断是否正常,决定是否报警)
5.创建图形
6.将具体的主机和该模板连接关联

邮件报警

通过管理 报警媒介类型 ----》 用户设置 添加报警媒介来触发

全网监控方案

powershell 复制代码
1.克隆监控模板
2.自动注册和自动发现
    自动发现:
        zabbix server主动去发现所有的客户端,然后将客户端的信息登记在服务端的机器上
        缺点:zabbix-server压力会比较大  耗时较久
    自动注册:
        zabbix agent2主动上报自己的信息,发给zabbix-server
        缺点:agent2可能找不到server(配置文件写错了,网络不通)
   自动发现配置:需要将客户端正确配置 ---》 zabbix页面 ---》 配置 ---》 自动发现 ---》 配置合适的发现规则 ---》动作 ---》 配置合适的动作
   自动注册配置:修改客户端配置文件 ---》 打开HostnameItem 配置  ---》 重启zabbix-agent2(systemctl restart zabbix-agent2)  ---> 服务端动作   自动注册
3.使用zabbix的api接口,利用curl语言或者开发自己的编程脚本

应用服务监控

powershell 复制代码
监控mysql数据库是否正常
    通过端口 net.tcp.port[,3306]

分布式监控

powershell 复制代码
作用
    分担server的集中压力
        agent > proxy > server
    多机房之间的网络延时问题
    
搭建
    proxy(代理)
        1.配置zabbix的yum源,修改源地址
        2.安装proxy,以及数据库
            yum install zabbix-proxy-mysql zabbix-get -y
            yum install mariadb-server mariadb -y
        3.启动数据库,配置数据库用户,存储zabbix-agent2信息数据
            systemctl start mariadb      //启动数据库
            create database zabbix_proxy character set utf8 collate utf8_bin;            //创建zabbix数据库,设置字符为utf8
            create user zabbix@localhost identified by 'zabbix';                //创建zabbix用户   密码也是zabbix
            grant all privileges on zabbix_proxy.* to zabbix@localhost;                //给zabbix用户授权
            flush privileges;                    //刷新授权表
            zcat /usr/share/doc/zabbix-proxy-mysql-5.0.2/schema.sql.gz | mysql -u zabbix -p zabbix        //将本地的zabbix创建sql 导入到mysql  zabbix库中
        4.修改zabbix-proxy配置文件,连接数据库的信息(可以vim修改文件  也可以使用命令更换)
            sed -i.ori '162a DBPassword=zabbix' /etc/zabbix/zabbix_proxy.conf
            sed -i 's#Server=127.0.0.1#Server=10.211.55.10#' /etc/zabbix/zabbix_proxy.conf            //10.211.55.10 替换为自己server的地址
            sed -i 's#Hostname=Zabbix proxy#Hostname=zabbix-agent05#'            //将主机名zabbix-agent05替换为自己的主机名
        5.启动代理服务
            systemctl restart zabbix-proxy
    agent2(客户端)
        将客户端server 和 serveractiv  指向代理服务器
    server(服务端)
        管理 ---> agent代理程序 ---> 添加 --->启用主机
        配置 ---> 主机 ---> 将客户端添加  选择agent proxy 代理
相关推荐
张_boss9 天前
Ubuntu Zabbix 钉钉报警
ubuntu·钉钉·zabbix
82782093710 天前
CentOS-stream-9 Zabbix的安装与配置
linux·centos·zabbix
QX_hao12 天前
【zabbix】--安装部署
zabbix
乐维_lwops18 天前
Zabbix开源监控的全面详解!
开源·zabbix·zabbix详细介绍
Johny_Zhao25 天前
CentOS Stream 10安装部署Zabbix 7.0网络监控平台和设备配置添加
linux·网络·网络安全·docker·信息安全·云计算·apache·zabbix·devops·yum源·huawei·系统运维·itsm·华三
Johny_Zhao1 个月前
Ubuntu安装部署Zabbix网络监控平台和设备配置添加
linux·网络·mysql·网络安全·信息安全·云计算·apache·zabbix·shell·yum源·系统运维·itsm
hnlucky1 个月前
《Zabbix Proxy分布式监控实战:从安装到配置全解析》
数据库·分布式·学习·adb·zabbix·集成学习·proxy模式
jay1 个月前
Zabbix监控 RabbitMQ 指定消息队列名称(pull_alarms )的消费者
rabbitmq·zabbix·ruby
柳如烟@2 个月前
从零开始配置 Zabbix 数据库监控:MySQL 实战指南
数据库·mysql·adb·zabbix
S1lent9o2 个月前
CentOS stream 中部署Zabbix RPM软件包公钥验证错误
linux·centos·zabbix