Zabbix安装部署

文章目录

环境

  • 操作系统:CentOS 7.6
  • zabbix监控服务端:zabbix-server-mysql-4.4.8-1.el7.x86_64.rpm
  • zabbix监控数据库:MariaDB-server-5.5.65-1.el7.centos.x86_64.rpm
  • zabbix监控java网关服务: zabbix-java-gateway-4.4.9-1.el7.x86_64.rpm
  • zabbix前端并使用 MySQL 数据库:zabbix-web-mysql-4.4.8-1.el7.noarch.rpm
    zabbix-web-4.4.8-1.el7.noarch.rpm
  • zabbix客户端:zabbix-agent-4.4.8-1.el7.x86_64.rpm
  • zabbix-get工具:zabbix-get-4.4.8-1.el8.x86_64.rpm

功能

  • zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据

  • 数据存储 存放数据,比如mysql

  • web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因

  • zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力

  • zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报

  • zabbix-server-mysql 提供zabbix-server服务

  • zabbix-proxy-mysql 提供zabbix的代理服务,可以实现分布式监控,减轻zabbix-server的压力

  • zabbix-web-mysql 提供httpd服务

  • zabbix-get 提供检查是否能正确获取到zabbix的监控脚本key的监控值

  • zabbix-agent 提供zabbix-agent服务

局域网安装软件下载地址

  • 下载链接:https://pan.baidu.com/s/1x-P3JIWTFqB8Xyy0dNfXnw
  • 密码:prrc

准备工作

查看SELinux状态

[root@VM-0-17-centos ~]# /usr/sbin/sestatus -v
SELinux status:                 disabled
[root@VM-0-17-centos ~]# getenforce
Disabled

关闭selinux和iptables

systemctl stop firewalld.service 
setenforce 0

一、安装zabbix服务端

1.局域网安装

注:局域网安装,本例首先配置CentOS-7-x86_64-DVD-2003.iso镜像为yum源

1.1 安装依赖

yum install fping-3.10-4.el7.x86_64.rpm php-common-5.4.16-48.el7.x86_64.rpm php-bcmath-5.4.16-48.el7.x86_64.rpm php-mbstring-5.4.16-48.el7.x86_64.rpm php-pdo-5.4.16-48.el7.x86_64.rpm php-mysql-5.4.16-48.el7.x86_64.rpm openssl11-libs-1.1.1c-2.el7.x86_64.rpm -y

1.2 安装zabbix-server-mysql

yum install zabbix-server-mysql-4.4.8-1.el7.x86_64.rpm -y

1.3.安装 Zabbix 前端并使用 MySQL 数据库

yum install zabbix-web-mysql-4.4.8-1.el7.noarch.rpm zabbix-web-4.4.8-1.el7.noarch.rpm zabbix-web-4.4.8-1.el7.noarch.rpm -y

1.4.安装Zzabbix-java-gateway

#安装这个前先安装配置java环境
yum install zabbix-java-gateway-4.4.9-1.el7.x86_64.rpm -y

2. 互联网安装

2.1 下载centos7源解决依赖问题

阿里或网易yum源二选一

#阿里源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  
#163源
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

2.2 下载zabbix4.4源

rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
 #查看源多出zabbix.repo文件
 ls /etc/yum.repos.d/
 yum clean all

2.3 安安装Zabbix server,Web前端,agent(客户端)

yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y

互联网装agent(客户端)无需配置CentOS-7-x86_64-DVD-2003.iso镜像为yum源,只需配置阿里源或网易yum源

二、安装配置数据库

1.安装启动数据库

yum install mariadb-server -y

启动数据库&加入开机自启动

systemctl start mariadb
systemctl enable mariadb

2.创建Zabbix相应的数据库和用户

#创建Zabbix的数据库名为zabbix,注意字符集的选择
mysql -uroot -e "CREATE DATABASE zabbix CHARSET utf8 COLLATE utf8_bin"

#创建Zabbix的用户名为zabbixadmin,密码为123456
mysql -uroot -e "GRANT ALL ON zabbix.* TO zabbixadmin@localhost IDENTIFIED BY '123456'"
#查看新建都数据库
[root@VM-0-17-centos ~]# mysql -uroot -e "show databases"
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
| zabbix             |
+--------------------+

3.查看sql语句目录

#查看到数据目录/usr/share/doc/zabbix-server-mysql-4.4.8/create.sql.gz
rpm -ql zabbix-server-mysql

4.导入SQL语句到刚才创建的zabbix数据库中

zcat /usr/share/doc/zabbix-server-mysql-4.4.8/create.sql.gz | mysql -uzabbixadmin -p123456 zabbix

注:数据目录以上一步查看的数据目录为准

三、配置Zabbix服务器端

1. 修改Zabbix服务器端的配置文件 /etc/zabbix/zabbix_server.conf的相关参数

vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbixadmin
DBPassword=123456
DBPort=3306
ListenIP=192.168.1.100   

注:ListenIP不要写为localhost,写数据库所在ip

2.启动Zabbix服务&加入开机自启动

systemctl start zabbix-server
systemctl enable zabbix-server

3.修改httpd的配置文件/etc/httpd/conf.d/zabbix.conf

vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai

4.启动httpd服务&加入开机自启动

systemctl start httpd
systemctl enable httpd

四、安装Zabbix agent客户端

1. linux安装配置Zabbix agent客户端

1.1 安装Zabbix agent客户端

rpm -vhi zabbix-agent-4.4.8-1.el7.x86_64.rpm

1.2 配置启动客户端

#备份
sudo cp -a /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf_init
#修改zabbix服务端ip
sudo sed -i "s/^ServerActive=127.0.0.1/ServerActive=192.168.1.100/" /etc/zabbix/zabbix_agentd.conf
# Hostname=zhbaspmj-101改为对应的客户端IP
sudo sed -i "s/Hostname=Zabbix server/Hostname=zhbaspmj-101/" /etc/zabbix/zabbix_agentd.conf
#重启客户端并设置开启自启动
sudo systemctl restart zabbix-agent && sudo systemctl enable zabbix-agent
#查看开机自启动服务
systemctl list-unit-files

2. Windows安装Zabbix agent客户端

2.1 下载客户端工具:

zabbix_agent-4.4.5-windows-amd64-openssl.msi

2.2 安装客户端

双击“zabbix_agent-4.4.5-windows-amd64-openssl.msi”,下一步

在这里插入图片描述

2.3 勾选同意复选框,点击下一步

在这里插入图片描述

2.4. 配置客户端

host name:zabbix客户端机器名 zabbix server ip/server or proxy…都填zabbix服务器ip,一直下一步直到完成

在这里插入图片描述

五、Web端基本配置

1、浏览器登录Zabbix
http://192.168.1.100/zabbix

在这里插入图片描述

2、检查基本设置

在这里插入图片描述

3、配置连接数据库

在这里插入图片描述

4、输入服务器名称

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5、登录Zabbix

系统默认的用户名:Admin
系统默认密码:zabbix

在这里插入图片描述

6、修改语言为中文

在这里插入图片描述

7、修改乱码现象

服务器端安装字体
# yum install wqy-microhei-fonts -y

修改字体链接,链接到新安装的字体
# rm /usr/share/zabbix/assets/fonts/graphfont.ttf 
# ln -sv /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf

六、Zabbix监控部署

1、添加监控主机

配置-主机-创建主机

在这里插入图片描述

输入主机名称:自定义,群组:自定义,agent代理程序的接口ip地址:客户端ip

在这里插入图片描述

添加之后,10分钟左右变绿则表示成功添加

在这里插入图片描述

添加默认的监控项模板

linux 选择Template OS Linux by Zabbix agent active Windows系统选择: Template OS Windows by Zabbix agent active ,选择这个active被动模型客户端往服务端推数据

在这里插入图片描述

2、自定义监控项

配置监控项

#自定义监控项的目录是/etc/zabbix/zabbix_agentd.d,在里面创建以.conf结尾的文件即可
vim /etc/zabbix/zabbix_agentd.d/tomcat8080.conf
#tomcat.port8080:监控自定义名称,监控8080端口是否启用:ss -tnl | awk '{print $4}' | grep -o '8080'
UserParameter=tomcat.port8080,  ss -tnl | awk '{print $4}' | grep -o '8080'
 
重启服务
# systemctl restart zabbix-agent

#WEB界面添加该监控项

1.配置-主机-监控项

在这里插入图片描述

2.创建监控项

在这里插入图片描述
3.输入名称、键值(配置监控项文件的UserParameter值),信息类型(此处监控8080为数字),新的应用集,勾选已启用,点击添加

在这里插入图片描述

添加成功入下图

在这里插入图片描述

配置触发器

1.配置-主机-选择要创建触发器的主机,点击触发器-创建触发器
2.设置名称,点击表达式右侧的添加按钮选择自定义监控项,选择功能,输入最后一个时间,输入结果,点击插入,选择严重级别,点击页面底部的添加按钮,完成触发器的配置。
下图为添加表达式

在这里插入图片描述

下图为创建触发器

在这里插入图片描述

服务器关闭tomcat( systemctl stop tomcat),查看结果

在这里插入图片描述

七、邮件报警

1、定义发件人

管理-报警媒介类型-选择邮件-输入邮件信息

在这里插入图片描述

2、定义收件人

选择右侧小人像-报警媒介-添加-选择emall,输入收件人信息-点击添加

在这里插入图片描述

3、配置动作

配置动作

在这里插入图片描述

配置操作

在这里插入图片描述

八、问题

8.1. zabbix server is not running错误

在这里插入图片描述

  • 问题描述: 登录zabbix,弹出如上图zabbix server is not running的警告

  • 解决方案:
    关闭selinux
    修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。
    如果不想重启系统,使用命令setenforce 0 或 selinux=0,也可以关闭selinux

  • 解决后的正确截图

在这里插入图片描述

8.2.查看日志:cat /var/log/zabbix/zabbix_server.log Z3001错误

  • 问题描述:日志错误报错如下
[Z3001] connection to database 'zabbix' failed: [1045] Access denied for user 'zabbixadmin'@'localhost' (using password: NO)
 25222:20200820:100845.180 database is down: reconnecting in 10 seconds
  • 解决方案:
    测试密码是否正确:mysql -u zabbixadmin -p(Enter,输入密码)
    正确配置zabbix_server.conf文件,vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbixadmin
DBPassword=123456
DBPort=3306
#ListenIP=192.168.1.100    --注意不要写为localhost,写数据库所在ip,# 开启的话,只监听IPV4,不开启,IPV4/IPV6都监听。

8.3 问题:添加自定义端口,重启(systemctl restart zabbix-agent)报错

  • **问题描述:**重启报错如下
    Job for zabbix-agent.service failed because the control process exited with error code. See “systemctl status zabbix-agent.service” and “journalctl -xe” for details.

  • 解决方法:

根据提示执行:systemctl status zabbix-agent.service
[root@VM-0-17-centos zabbix_agentd.d]# systemctl status zabbix-agent.service
zabbix-agent.service - Zabbix Agent
   Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; enabled; vendor preset: disabled)
   Active: activating (auto-restart) (Result: exit-code) since 五 2020-08-21 10:37:16 CST; 464ms ago
  Process: 27067 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
  Process: 13325 ExecStart=/usr/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=1/FAILURE)
 Main PID: 26247 (code=exited, status=0/SUCCESS)

8月 21 10:37:16 VM-0-17-centos systemd[1]: zabbix-agent.service: control process exited, code=exited status=1
8月 21 10:37:16 VM-0-17-centos systemd[1]: Failed to start Zabbix Agent.
8月 21 10:37:16 VM-0-17-centos systemd[1]: Unit zabbix-agent.service entered failed state.
8月 21 10:37:16 VM-0-17-centos systemd[1]: zabbix-agent.service failed.

再次执行:journalctl -xe

在这里插入图片描述
可以从结果看出是因为参数错误把vim /etc/zabbix/zabbix_server.conf
erParameter=httpd.port80, ss -tnl | awk ‘{print $4}’ | grep -o ‘80’
改为
UserParameter=httpd.port80, ss -tnl | awk ‘{print $4}’ | grep -o ‘80’

8.4 访问错误

  • 问题描述:
    浏览器输入,http://92.168.1.100/zabbix报错如下
Not Found
The requested URL /zabbix was not found on this server.
  • 问题原因:
    因为httpd版本问题造成的
  • 解决方法
  • 查看版本:httpd -version,在/etc/httpd/conf.d/ 根据版本编辑zabbix.conf内容 (适用于httpd2.2版本)
  • httpd 2.2版本的zabbix.conf内容:
#
# Zabbix monitoring system php web frontend
#
 
Alias /zabbix /usr/share/zabbix
 
<Directory "/usr/share/zabbix">
    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
 
    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value max_input_vars 10000
        php_value always_populate_raw_post_data -1
        # php_value date.timezone Europe/Riga
        php_value date.timezone Asia/ShangHai
    </IfModule>
</Directory>
 
<Directory "/usr/share/zabbix/conf">
    Order deny,allow
    Deny from all
    <files *.php>
        Order deny,allow
        Deny from all
    </files>
</Directory>
 
<Directory "/usr/share/zabbix/app">
    Order deny,allow
    Deny from all
    <files *.php>
        Order deny,allow
        Deny from all
    </files>
</Directory>
 
<Directory "/usr/share/zabbix/include">
    Order deny,allow
    Deny from all
    <files *.php>
        Order deny,allow
        Deny from all
    </files>
</Directory>
 
<Directory "/usr/share/zabbix/local">
    Order deny,allow
    Deny from all
    <files *.php>
        Order deny,allow
        Deny from all
    </files>
</Directory>
  • httpd 2.4版本的zabbix.conf内容:
#
# Zabbix monitoring system php web frontend
#
 
Alias /zabbix /usr/share/zabbix
 
<Directory "/usr/share/zabbix">
    Options FollowSymLinks
    AllowOverride None
    Require all granted
 
    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value max_input_vars 10000
        php_value always_populate_raw_post_data -1
        # php_value date.timezone Europe/Riga
        php_value date.timezone Asia/ShangHai
    </IfModule>
</Directory>
 
<Directory "/usr/share/zabbix/conf">
    Require all denied
</Directory>
 
<Directory "/usr/share/zabbix/app">
    Require all denied
</Directory>
 
<Directory "/usr/share/zabbix/include">
    Require all denied
</Directory>
 
<Directory "/usr/share/zabbix/local">
    Require all denied
</Directory>
  • 编辑完成之后,重启httpd服务
service httpd restart
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值