zabbix4.0部署
Posted sy-blogs
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix4.0部署相关的知识,希望对你有一定的参考价值。
一.前期准备工作
1.系统内核版本
[root@node2 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@node2 ~]# uname -r
3.10.0-862.el7.x86_64
2.关闭防火墙和selinux
vi /etc/selinux/config #将SELINUX=enforcing改为SELINUX=disabled 设置后需要重启才能生效
systemctl stop firewalld
3.升级系统组件到最新版本
yum -y update
4.配置yum源
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo #下载阿里云镜像仓库
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo #下载epel仓库
yum clean all #清理缓存
yum makecache #重新生成缓存
二.搭建LAMP环境
1.安装依赖包
yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash yum install httpd php php-mysql php-gd php-bcmath php-common php-xml php-mbstring php-cli Zabbix 需要的 PHP 扩展库: - php-mysql:使用MySQL作为Zabbix后端数据库所需要的组件; - php-gd:PHP GD扩展库必须支持 PNG 图像(--with-png-dir)、JPEG 图像 (--with-jpeg-dir)和FreeType2(--with-freetype-dir); - php-bcmath:包含所需的bcmath; - php-common:包含所需的ctype和php-session扩展; - php-xml:包含所需的libXML、xmlreader和xmlwriter扩展。 - php-mbstring:包含所需的mbstring扩展 zabbix依赖的包: yum install pcre glibc gcc livevent zlib libcurl-devel curl-devel OpenIPMI-devel libssh2 fping net-snmp-devel perl-DBI openssl-devel iksemel libxml2 ntp - pcre:为强制安装的包。用来支持Perl Compatible Regular Expression(PCRE); - gcc:为强制安装的包。即编译器, - glibc:为强制安装的包。即libc运行库,其中包含了所需的Libpthread - libevent:为强制安装的包,用来支持 IPMI; - zlib:为强制安装的包。用来支持压缩; - libcurl-devel、curl-devel:为可选安装包,但建议安装。用来支持 Web 监控; - OpenIPMI-devel:为可选安装包,按需安装。用来支持IPMI监控; - libssh2:为可选安装包。用来支持SSH功能; - fping: 为可选安装包,但建议安装。用来支持ICMP Ping监控; - net-snmp-devel:为可选安装包,按需安装。用来支持SNMP监控; - iksemel:为可选安装包,按需安装。用来支持 Zabbix 报警媒介 Jabber; - libxml2:为可选安装包,按需安装。用来支持 VMware 监控; - ntp:为可选安装包,但强烈建议安装。用来保持 Zabbix 精准的时间
2.配置时间同步
zabbix对时间要求比较高,可以配置外网访问同步ntp服务器,并开启计划任务
ntpdate -u asia.pool.ntp.org #同步NTP服务器
systemctl enable ntpd #开机启动
systemctl start ntpd
systemctl status ntpd
echo ‘*/30 * * * * /usr/sbin/ntpdate -u asia.pool.ntp.org > /dev/null 2>&1‘ >>/var/spool/cron/root #半个小时同步一次时间
3.数据库安装及配置
下载安装包
yum -y install mariadb mariadb-server #安装mariadb数据库 mkdir -p /data/mysql #创建指定目录路径 chown -R mysql:mysql /data/mysql #配置数据库文件归属
编辑/etc/my.cnf配置文件
#在[mysqld]下添加
datadir=/data/mysql
编辑/etc/my.cnf.d/server.cnf ,在[mysqld]下添加
datadir=/var/mysql_data socket=/var/lib/mysql/mysql.sock character_set_server=utf8 slow_query_log=on slow_query_log_file=/var/mysql_data/slow_query.log long_query_time=2 mkdir -p /var/mysql_data chown -R mysql:mysql /var/mysql_data
启动数据库
systemctl enable mariadb
systemctl start mariadb
初始化数据库
mysql_secure_installation #初始化
配置完成root密码后,一路按Y即可
4.安装http
下载安装包
yum install -y httpd
rpm -qa httpd
编辑主配置文件
ServerName 10.0.0.117:80
DirectoryIndex index.html index.php
编辑PHP配置文件,添加时区
[root@node2 ~]# cat /etc/php.ini|grep ‘date.timezone‘
; http://php.net/date.timezone
;date.timezone = PRC
启动http
systemctl start httpd #启动并加入开机自启动httpd
systemctl enable httpd
创建一个测试页,测试LAMP是否搭建成功
vi /var/www/html/index.php #创建一个测试页,并编辑 <?php phpinfo() ?>
浏览器中测试:
本地测试:
curl http://127.0.0.1 -I
初始化mysql数据库,并配置root用户密码
mysql -hlocalhost -uroot -p123456
CREATE DATABASE zabbix character set utf8 collate utf8_bin; #创建zabbix数据库(中文编码格式)
GRANT all ON zabbix.* TO ‘zabbix‘@‘%‘ IDENTIFIED BY ‘123456‘; #授予zabbix用户对应的zabbix数据库的所有权限,密码123456
GRANT all ON zabbix.* TO ‘zabbix‘@‘localhost‘ IDENTIFIED BY ‘123456‘;
flush privileges; #刷新权限
测试数据库与PHP的联通性
cd /var/www/html
vim index.php
<?php
$link=mysql_connect(‘10.0.0.117‘,‘zabbix‘,‘123456‘); ##根据自个环境填写
if($link) echo "<h1>Success!!</h1>";
else echo "Fail!!";
mysql_close();
?>
为保证zabbix用户也可以登录数据库,若出现本地无法登录情况,解决方式如下:如果没有就不用操作
mysql -u root -p #使用root账户登录数据库;
select user,host from mysql.user; #有空用户名称占用导致本地无法登录远程可登录
drop user ‘‘@localhost; #删除空用户
三.安装zabbix
1.安装依赖包 + 组件
yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
yum install php-bcmath php-mbstring -y #安装php支持zabbix组件
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #会自动生成yum源文件,保证系统可以上网
yum install zabbix-server-mysql zabbix-web-mysql -y #安装zabbix组件
在安装zabbix组件时遇到的问题:
解决方法:
编辑zabbix.repo文件,添加新的镜像地址
这个镜像地址在https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/,选中rpm包,单击右键,复制镜像地址即可
2.导入数据
zcat /usr/share/doc/zabbix-server-mysql-4.0.15/create.sql.gz | mysql -h10.0.0.117 -uzabbix -p123456 zabbix #导入数据到数据库zabbix中(最后一个zabbix是数据库zabbix),且因为用户zabbix是%(任意主机),所以登录时需要加上当前主机ip(-h 10.0.0.117),密码是用户zabbix登陆密码123456
3.修改zabbix-server时区
vi /etc/httpd/conf.d/zabbix.conf //修改时区
php_value date.timezone Asia/Shanghai
4.启动zabbix-server
/etc/zabbix/zabbix_server.conf ##默认配置文件地址
systemctl enable zabbix-server
systemctl start zabbix-server
systemctl status zabbix-server
在启动zabbix-server时遇到的问题:
解决方法:
用root用户进到数据库中,重新授权,并修改配置文件
mysql -hlocalhost -uroot -p123456
GRANT all ON zabbix.* TO ‘zabbix‘@‘localhost‘ IDENTIFIED BY ‘123456‘;
flush privileges;
vi /etc/zabbix/zabbix_server.conf,告诉密码
四.web界面操作
点击 "next step"
默认用户名和密码:Admin/zabbix
网页汉化
五.客户端安装
上面的二三四章节是在服务端机器上的操作,但是第一章节不管是在服务端还是在客户端都要操作(如果防火墙开了的话,需要添加防火墙规则),agent在客户端和服务端都需要部署
1.下载rpm包
这里采用清华大学镜像中心的安装包
https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.10-1.el7.x86_64.rpm
都安装了哪些东西,主配置文件在/etc/zabbix/zabbix_agentd.conf,日志文件在/var/log/zabbix,日志路径可以自个定义,完了重启服务就行
2.编辑主配置文件
sed -i.ori ‘s#Server=127.0.0.1#Server=10.0.0.117#‘ /etc/zabbix/zabbix_agentd.conf
Server=10.0.0.117
3.加入开机自启动并启动服务
systemctl enable zabbix-agent.service
systemctl start zabbix-agent
systemctl status zabbix-agent
netstat -lntup|grep zabbix_agentd
4.服务端机器上安装检测客户端的工具
##在服务端机器上操作
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-get-4.0.10-1.el7.x86_64.rpm
使用方法:
# -s 指定访问的IP地址
# -p 指定访问的端口,默认10050
# -k 查询key值
正确的检测结果:
异常现象:
原因是在agent主配置文件时,将Server地址填错,修改后重启即可
六.页面添加需要监控的机器
1.服务端机器添加
创建主机
更新模板
添加成功后,如下图
2.客户端机器添加
创建主机
创建成功如下图
添加模板:
模板成功添加后如下图:
发现在4.X版本中模板不能重复使用,但是在3.X版本中可以重复使用
3.添加成功后尝试打开监控页面
乱码解决方法:
yum -y install wqy-microhei-fonts
cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf
六.自定义监控
vim /etc/zabbix/zabbix_agentd.d/userparameter_disk.conf
以上是关于zabbix4.0部署的主要内容,如果未能解决你的问题,请参考以下文章