Centos7部署Zabbix

Posted ace_lee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7部署Zabbix相关的知识,希望对你有一定的参考价值。

转载于http://www.cnblogs.com/xqzt/p/5124894.html,更正了部分错误,并增加了个别问题处理办法。

一、Zabbix简介

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

下面是Centos7上yum安装zabbix的步骤。

二、Zabbix安装

本文档在同一台机器上安装了zabbix-server 和zabbix-agent 自己监控自己。

1、配置LAMP

参照下面的链接

Centos 7.0 配置LAMP

Install LAMP Server (Apache, MariaDB, PHP) On CentOS/RHEL/Scientific Linux 7

2、配置源

Zabbix在CentOS基本源里不可获得,因此必须配置EPEL 和Zabbix 官方repository

安装EPEL repository

yum install epel-release

配置ZabbixZone package repository and GPG key

rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX

rpm -Uv http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm

3、安装Zabbix server and agent(agent是可选的)

安装Zabbix server and agent:(配置自己监控自己,所以安装了zabbix-agent)

yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-java-gateway

编辑 file /etc/httpd/conf.d/zabbix:

vi /etc/httpd/conf.d/zabbix.conf

更新时区:

php_value date.timezone Asia/Shanghai

重启httpd

systemctl restart httpd

4、创建MySQL 数据库和用户

登录MariaDB:

mysql –u root –p

创建一个数据库‘zabbixdb’和数据库用户‘zabbix’

MariaDB [(none)]> create database zabbix character set utf8;

MariaDB [(none)]> grant all privileges on zabbix.* to \'zabbix\'@\'localhost\' identified by \'zabbix\';

MariaDB [(none)]> flush privileges;

5、数据库导入zabbix template

使用数据库用户zabbix登录数据库

mysql –uzabbix –p

切换到zabbix数据库

use zabbix

导入模板数据

MariaDB [zabbix]> source /usr/share/doc/zabbix-server-mysql-2.4.8/create/schema.sql

MariaDB [zabbix]> source /usr/share/doc/zabbix-server-mysql-2.4.8/create/images.sql

MariaDB [zabbix]> source /usr/share/doc/zabbix-server-mysql-2.4.8/create/data.sql

注意:Zabbix-server-mysql-x.x.x版本序号可能不同,亲自安装时我的版本为2.4.8

6、配置Zabbix server

编辑文件/etc/zabbix/zabbix_server.conf,

vi /etc/zabbix/zabbix_server.conf

配置下面的三个参数

复制代码
[...]
DBName=zabbix
[...]
DBUser=zabbix
[...]
DBPassword=zabbix
[...]
复制代码

7、配置zabbix-agent

vi /etc/zabbix/zabbix_agentd.conf

配置zabbix server 的ip

复制代码
[...]

## Line 85 - Specify Zabbix server ##

Server=127.0.0.1

[...]

## Line 126 - Specify Zabbix server ##

ServerActive=127.0.0.1

[...]

## Line 137 - Specify Zabbix server Hostname or IP address ##

Hostname=127.0.0.1

[...]
复制代码

8、修改PHP 设置

修改php.ini为zabbix 建议的设置

编辑文件 php.ini,

vi /etc/php.ini

设置下面的参数.

复制代码
max_execution_time = 600
max_input_time = 600
memory_limit = 256
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = Asia/Shanghai
复制代码
 
 

更正:

原文第4行有误,正确应该为post_max_size = 32M

9、修改Firewall 和SELinux 设置

开放zabbix端口10050 and 10051.

firewall-cmd --permanent --add-port=10050/tcp

firewall-cmd --permanent --add-port=10051/tcp

重启firewall

systemctl restart firewalld

如果使用 SELinux, 运行以下命令使 Apache 可以和 Zabbix通信

setsebool -P httpd_can_connect_zabbix=1

10、允许Zabbix web console 对特定IP段可用 (可选)

编辑文件 /etc/httpd/conf.d/zabbix.conf,

vi /etc/httpd/conf.d/zabbix.conf

添加允许访问 zabbix web interface的ip段. 如果设置 ‘Allow from All’, 这可以允许全部可以访问

复制代码
#
# 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 date.timezone Asia/Shanghai
    </IfModule>
</Directory>

<Directory "/usr/share/zabbix/conf">
    Require all denied
</Directory>

<Directory "/usr/share/zabbix/include">
    Require all denied
</Directory>
复制代码

启动zabbix-server 和zabbix-agent。重启httpd,,并设置zabbix-server和zabbix-agent开机自动启动

复制代码
systemctl start zabbix-server

systemctl start zabbix-agent

systemctl restart httpd

systemctl restart mariadb

systemctl enable zabbix-server

systemctl enable zabbix-agent  ---- (可选)
复制代码

11、通过控制台配置Zabbix

浏览器访问http://ip-address/zabbix

clip_image001

检查包的完整性和参数配置

clip_image002

数据zabbix数据库名、数据库用户和密码,并测试

clip_image003

 

补充原文:

这一步可能会出错误——

Error connecting database:can\'t connect to local MySQL server through socket \'var/lib/mysql/mysql.sock\'

解决方法一:

ln -s /usr/local/mysql/data/mysql.sock  /var/lib/mysql/mysql.sock (将自己本机mysql.sock地址链接到错误提示中这个地址)

若法一失败,采用解决方法二:

将zabbix登陆界面3.Configure DB Connection中的“Database host"改为127.0.0.1 

 

输入Server name(可选)

clip_image004

预安装summary

 clip_image005

点击完成,完成安装

clip_image006

安装完成后,重定向到zabbix控制台登录页面. 输入用户名和密码,默认的用户名和密码为admin/zabbix.

clip_image007

管理仪表盘页面如下

clip_image008

原文地址

http://www.unixmen.com/how-to-install-zabbix-server-on-centos-7/

以上是关于Centos7部署Zabbix的主要内容,如果未能解决你的问题,请参考以下文章

Centos7下yum安装zabbix的部署

Centos7下zabbix-3.2.4安装部署

CentOS7.4部署Zabbix4.0

Centos7下zabbix安装与部署,设置中文(保姆级图文)网络工程

Centos7下安装部署Zabbix3.4

CentOS7.X部署Zabbix4.0