Zabbix-3.4.3 监控安装部署
先附上zabbix官方安装说明: https://www.zabbix.com/documentation/3.4/zh/manual/installation/install
PS:感谢开源
笔者只是一个zabbix初级用户,有不对不妥之处请各位大神多多包涵,多多指教!
一、安装准备工作
系统环境
本文系统环境使用的是CentOS 6.9(RHEL版本同理)
安装MySQL
采用yum安装方式
mysql下载地址:MySQL :: Download MySQL Yum Repository
rpm -ivh mysql57-community-release-el6-11.noarch.rpm
具体安装MySQL哪个版本请修改 /etc/yum.repos.d/mysql-community.repo
enable=1生效 enable=0失效 本文使用mysql56-community,即MySQL-5.6版本,在mysql-community.repo中,生效MySQL5.6的yum仓库
# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
安装MySQL5.6
yum install mysql-community-server
启动mysql
service mysqld start
chkconfig mysqld on
初始化MySQL表结构
cd zabbix-3.4.3(保证在zabbix源码路径下)
mysqladmin -uroot password '你的mysql密码'(设置mysql数据库的root密码)
mysql -uroot -p(登陆数据库)
mysql> create database zabbix character set utf8;(创建zabbix数据库)
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> flush privileges;
(确保上述操作都正常,测试数据库连接)
mysql -uzabbix -pzabbix zabbix
导入zabbix数据库,确保在zabbix源码路径下
mysql -uzabbix -pzabbix zabbix < ./database/mysql/schema.sql
mysql -uzabbix -pzabbix zabbix < ./database/mysql/images.sql
mysql -uzabbix -pzabbix zabbix < ./database/mysql/data.sql
二、安装zabbix守护进程
1、下载zabbix:Download
yum -y install gcc gcc-c++
tar -zxvf zabbix-3.4.3.tar.gz
cd zabbix-3.4.3
2、创建用户账户
对于所有Zabbix的守护进程,需要一个无特权的用户。如果Zabbix守护进程以一个无特权的用户账户启动,那么它会使用该用户运行。
然而,如果一个守护进程以‘root’用户启动,它会切换为‘zabbix’用户账户,且这个用户必须存在。在Linux系统中,可以使用下面命令建立一个用户(该用户属于自己的用户组,“zabbix”):
groupadd zabbix
useradd -g zabbix zabbix
对于Zabbix前端的安装,不需要使用单独的用户账户。
如果Zabbixserver和agent运行在同一台计算机上,建议使用不同的账户运行Server和Agent。否则,如果两个进程使用了同一个用户,Agent就可以访问Server的配置文件,并可轻易地读取Zabbix中任何管理员级别的用户,比如数据库密码。
3、创建zabbix数据库(在前面已经完成)
4、配置源代码
当配置Zabbix server或者proxy的源代码时,需要指定所使用的数据库类型。每个Zabbix server或者proxy进程在同一时间内只能使用一种数据库类型。
如果需要查看所有支持的配置选项,可在解压缩后的Zabbix源代码目录中,运行下列命令:
./configure --help查看帮助
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
****编译常见问题及处理办法****
MySQL library not found
yum -y install mysql-community-devel
LIBXML2 library not found
yum -y install libxml2-devel
Invalid Net-SNMP directory - unable to find net-snmp-config
yum -y install net-snmp-devel
Unable to use libevent (libevent check failed)
yum -y install libevent-devel
Unable to use libpcre (libpcre check failed)
yum -y install pcre-devel
Curl library not found
yum -y install curl-devel
****结 束****
5、安装组件
make install
6、查看和编辑配置文件
在下列路径编辑Zabbix Agent的配置文件 /usr/local/etc/zabbix_agentd.conf
你需要配置为每台安装了 zabbix_agentd 的主机配置这个文件。
你必须在这个文件中指定Zabbix server的 IP地址 。从其他主机发起的请求会被拒绝。
在下列路径编辑Zabbix server的配置文件 /usr/local/etc/zabbix_server.conf
你必须指定数据库名称,用户名和密码(如果使用的话)。
创建zabbix日志路径
mkdir -p /opt/logs/zabbix
chown zabbix.zabbix /opt/logs/zabbix
zabbix_server.conf
ListenPort=10051
LogFile=/opt/logs/zabbix/zabbix_server.log
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/var/lib/mysql/mysql.sock
DBPort=3306
StartPollers=20
Timeout=30
AlertScriptsPath=/usr/local/share/zabbix/alertscripts
ExternalScripts=/usr/local/share/zabbix/externalscripts
LogSlowQueries=3000
AllowRoot=0
User=zabbix
Include=/usr/local/etc/zabbix_server.conf.d/*.conf
zabbix_agentd.conf
LogFile=/opt/logs/zabbix/zabbix_agentd.log
EnableRemoteCommands=0
Server=127.0.0.1
StartAgents=3
ServerActive=127.0.0.1
Hostname=Zabbix_server
Timeout=30
AllowRoot=0
User=zabbix
Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf
UnsafeUserParameters=1
7、拷贝启动脚本,启动服务,查看zabbix日志是否正常
cp misc/init.d/fedora/core/zabbix_* /etc/init.d/
chmod 755 /etc/init.d/zabbix_*
***注意启动脚本中的路径,确认其是安装路径下***
/etc/rc.d/init.d/zabbix_server start
/etc/rc.d/init.d/zabbix_agentd start
chkconfig --add zabbix_server
chkconfig --add zabbix_agentd
chkconfig zabbix_server on
chkconfig zabbix_agentd on
三、安装部署zabbix web界面
lamp或者lnmp环境,PHP需要5.4版本以上,php安装方式可以使用webtatic或remi源安装
webtatic可去webtatic官网查看,已经很详细了
1、这里说一下remi安装PHP5.6
rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum list --enablerepo=remi --enablerepo=remi-php56 | grep php
yum install --enablerepo=remi --enablerepo=remi-php56 php php-opcache php-devel php-bcmath php-gd php-ldap php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof
2、安装Apache
yum -y install httpd
3、修改Apache配置文件
ServerName localhost:80
DocumentRoot "/var/www/html"
DirectoryIndex index.php
4、复制PHP文件
Zabbix前端使用PHP写的,所以必须运行在PHP支持的Web服务器上。只需要简单的从frontends/php路径下复制PHP文件到Web服务器的HTML文件目录,就可以完成安装。
Apache Web服务器的HTML文件目录的一般包括:
/usr/local/apache2/htdocs (从源代码安装Apache的默认目录)
/srv/www/htdocs (OpenSUSE, SLES)
/var/www/html (Fedora, RHEL, CentOS)
/var/www (Debian, Ubuntu)
建议使用子目录替代HTML根目录。可以使用下列命令,以创建一个子目录并复制Zabbix的前端文件到这个目录下(注意替换为实际的目录):
mkdir -p /var/www/html/zabbix
cp -r ./frontends/php/ /var/www/html/zabbix
chown -R apache.apache /var/www/html/zabbix
打开浏览器,输入http://ip/zabbix,安装上面的提示一步一步安装即可(按照页面上的提示要求修改/etc/php.ini)即可