zabbix3.4.4安装部署

【介绍】
Zabbix是一个企业级的、开源的、分布式的监控套件。

Zabbix可以监控网络和服务的监控状况.Zabbix利用灵活的告警机制,允许用户对事件发送基于Email的告警. 这样可以保证快速的对问题作出相应. Zabbix可以利用存储数据提供杰出的报告及图形化方式. 这一特性将帮助用户完成容量规划。

Zabbix支持polling和trapping两种方式. 所有的Zabbix报告都可以通过配置参数在WEB前端进行访问. Web前端将帮助你在任何区域都能够迅速获得你的网络及服务状况. Zabbix可以通过尽可能的配置来扮演监控你的IT基础框架的角色,而不管你是来自于小型组织还是大规模的公司。


进程介绍

默认情况下zabbix包含5个程序:zabbix_agentd、zabbix_get、zabbix_proxy、zabbix_sender、zabbix_server,另外一个zabbix_java_gateway是可选,这个需要另外安装。下面来分别介绍下他们各自的作用。

zabbix_agentd
客户端守护进程,此进程收集客户端数据,例如cpu负载、内存、硬盘使用情况等

zabbix_get
zabbix工具,单独使用的命令,通常在server或者proxy端执行获取远程客户端信息的命令。通常用户排错。例如在server端获取不到客户端的内存数据,我们可以使用zabbix_get获取客户端的内容的方式来做故障排查。

zabbix_sender
zabbix工具,用于发送数据给server或者proxy,通常用于耗时比较长的检查。很多检查非常耗时间,导致zabbix超时。于是我们在脚本执行完毕之后,使用sender主动提交数据。

zabbix_server
zabbix服务端守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway的数据最终都是提交到server
备注:当然不是数据都是主动提交给zabbix_server,也有的是server主动去取数据。

zabbix_proxy
zabbix代理守护进程。功能类似server,唯一不同的是它只是一个中转站,它需要把收集到的数据提交/被提交到server里。为什么要用代理?代理是做什么的?卖个关子,请继续关注运维生存时间zabbix教程系列。

zabbix_java_gateway

zabbix2.0之后引入的一个功能。顾名思义:Java网关,类似agentd,但是只用于Java方面。需要特别注意的是,它只能主动去获取数据,而不能被动获取数据。它的数据最终会给到server或者proxy。


【部署】

1、防火墙及SELINUX关闭
systemctl stop firewalld.service
systemctl disable firewalld.service
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
2、yum源配置

Linux下安装MariaDB官方文档参见:https://mariadb.com/kb/zh-cn/installing-mariadb-with-yum/

yum -y install http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
yum install http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm -y

3.LAMP安装:
================================mariadb安装================================================
a.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:
如果存在,使用rpm -e --nodeps mariadb-*全部删除:
[root@localhost ~]# rpm -qa | grep mariadb
mariadb-server-5.5.52-1.el7.x86_64
mariadb-libs-5.5.52-1.el7.x86_64
[root@localhost ~]# rpm -e mysql-*

b.使用rpm -qa | grep mariadb搜索 MariaDB 现有的包:
如果存在,使用yum remove mysql mysql-server mysql-libs compat-mysql51全部删除;
[root@localhost ~]# yum remove mysql mysql-server mysql-libs compat-mysql51
[root@localhost ~]# rpm -qa | grep mariadb

c.开始新的安装, 创建MariaDB.repo文件
vi /etc/yum.repos.d/MariaDB.repo
插入以下内容:
# MariaDB 10.2.4 CentOS repository list - created 2017-05-05 16:13 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1


yum -y install MariaDB-server MariaDB-client galera xinetd rsync ntp ntpdate bash-completion percona-xtrabackup socat gcc gcc-c++
设置开机启动mariadb
systemctl enable mariadbd.service
systemctl restart mariadb.service
设置mariadb密码
mysql_secure_installation
mysql -uroot -pdevops -e "create database zabbix character set utf8 collate utf8_bin;"
mysql -uroot -pdevops -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';"
mysql -uroot -pdevops -e "flush privileges;"

==================================apache安装=============================================
yum -y install httpd httpd-manual mod_ssl mod_perl mod_auth_mysql
设置开机启动apache
systemctl enable httpd.service
启动apache
systemctl start httpd.service

=========================================php安装==========================================
1.删除以前的php版本(跟上面删除mysql的命令是一样的)
先查看
rpm -qa | grep php
再删除
yum remove 文件名
2. 配置yum源,事先确认yum源的链接是不是有效的。
yum install epel-release
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
3. 确认安装的php版本
yum list --enablerepo=remi --enablerepo=remi-php72 | grep php
4. 安装php
yum install --enablerepo=remi --enablerepo=remi-php72 php72-php php72-php-opcache php72-php-pecl-apcu php72-php-devel php72-php-mbstring php72-php-mcrypt php72-php-mysqlnd php72-php-phpunit-PHPUnit php72-php-pecl-xdebug php72-php-pecl-xhprof php72-php-ldap php72-php-pdo php72-php-pear php72-php-fpm php72-php-cli php72-php-xml php72-php-bcmath php72-php-process php72-php-gd php72-php-common

测试:
[root@localhost ~]# cat /var/www/html/index.php
<?php
phpinfo();
?>

systemctl restart httpd
systemctl restart mariadb

web浏览器http://ip/index.php


安装zabbix
依赖包:
yum -y install net-snmp-devel libxml2-devel libcurl-deve libevent libevent-devel

编译安装zabbix
[root@localhost ~]#tar zxvf zabbix-3.4.4.tar.gz
[root@localhost ~]# cd zabbix-3.4.4
[root@localhost zabbix-3.4.4]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

报错:configure: error: MySQL library not found
解决: yum install mysql-devel

在报错:configure: error: Curl library not found
解决:yum install curl-devel

***********************************************************   提示输入make install安装
*            Now run 'make install'                       *
*                                                         *
*            Thank you for using Zabbix!                  *
*              <http://www.zabbix.com>                    *
***********************************************************
[root@localhost zabbix-3.4.4]# make install

创建zabbix用户和用户组
groupadd zabbix
useradd -r -g zabbix zabbix
chown -R zabbix:zabbix /usr/local/zabbix/

导入数据库信息:
[root@localhost zabbix-3.4.4]# ll /root/zabbix-3.4.4/database/mysql/
total 4860
-rw-r--r-- 1 1001 1001 2861223 Nov  9 05:37 data.sql
-rw-r--r-- 1 1001 1001 1978341 Nov  9 05:37 images.sql
-rw-r--r-- 1 1001 1001  134738 Nov  9 05:37 schema.sql

[root@localhost zabbix-3.4.4]# mysql -uroot -pdevops
MariaDB [zabbix]> use zabbix;
Database changed
MariaDB [zabbix]> source /root/zabbix-3.4.4/database/mysql/schema.sql
MariaDB [zabbix]> source /root/zabbix-3.4.4/database/mysql/images.sql
MariaDB [zabbix]> source /root/zabbix-3.4.4/database/mysql/data.sql

修改配置文件:
[root@localhost ]# cat /usr/local/zabbix/etc/zabbix_server.conf | grep -v "^$" | grep -v "^#"
LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/tmp/mysql.sock
Timeout=4
LogSlowQueries=3000
Include=/usr/local/etc/zabbix_server.conf.d/*.conf

[root@localhost ]# cat /usr/local/zabbix/etc/zabbix_agentd.conf | grep -v "^#" | grep -v "^$"
PidFile=/tmp/zabbix_agentd.pid
LogFile=/tmp/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf

需要做个软连接,不然zabbix_server启动不了,因为默认的mysql.sock是在var目录下:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

拷贝zabbix WEB应用程序到Apache的网站目录下,并赋予网站的用户权限:
[root@localhost ~]# mv /root/zabbix-3.4.4/frontends/php/ /var/www/html/zabbix
[root@localhost ~]# chown -R apache:apache /var/www/html/zabbix/

[root@localhost ~]# find / -name php.ini
/etc/opt/remi/php72/php.ini
[root@localhost ~]# sed -i 's/post_max_size = 8M/post_max_size = 16M/' /etc/opt/remi/php72/php.ini
[root@localhost ~]# sed -i 's/max_execution_time = 30/max_execution_time = 300/' /etc/opt/remi/php72/php.ini
[root@localhost ~]# sed -i 's/max_input_time = 60/max_input_time = 300/' /etc/opt/remi/php72/php.ini
[root@localhost ~]# sed -i 's/;date.timezone =/date.timezone = Asia/Shanghai/' /etc/opt/remi/php72/php.in

浏览器访问,并进行安装http://ip/zabbix/
登录最新版Zabbix3.4 默认用户Admin 默认密码zabbix

汉化:
在windows的目录C:\Windows\Fonts找到 体楷 常规(simkai.ttf)

[root@localhost ~]# mv /var/www/html/zabbix/fonts/DejaVuSans.ttf /var/www/html/zabbix/fonts/DejaVuSans.ttf.bak
[root@localhost ~]# mv simkai.ttf /var/www/html/zabbix/fonts/DejaVuSans.ttf
[root@localhost ~]# chown apache:apache /var/www/html/zabbix/fonts/DejaVuSans.ttf

OK安装完成

猜你喜欢

转载自blog.csdn.net/weixin_41515615/article/details/81191661