CentOS7 LAMP环境安装部署Zabbix

CentOS7  LAMP环境安装部署Zabbix

查看CentOS版本号

more /etc/redhat-release 

server 最好配置静态IP地址、DNS,在DHCP服务器将此IP地址排除掉。

Hostname 改为zabbix

服务端:172.20.26.137

客户端:172.20.26.113

Zabbix服务端安装及配置(172.20.26.137

一、 安装Apache (我使用的yum安装)

  1. 安装Apache    

yum -y install httpd

  1. 开启Apache服务   

systemctl start httpd.service

  1. 设置Apache服务为开机自启   

systemctl enable httpd.service

浏览器访问172.20.26.137地址,出现Apache的欢迎页面则Apache访问成功,如下图

CentOS7 LAMP环境安装部署Zabbix_第1张图片

如果访问不到,则可能是由于CentOS7用的是Firewall-cmd,CentOS7之前用的是iptables防火墙;要想让外网能访问到apache主目录,就需要做以下的操作:

      firewall-cmd --permanent --zone=public --add-service=http

      firewall-cmd --permanent --zone=public --add-service=https

      firewall-cmd --reload

二、安装PHP 

     (1) 安装PHP :  yum -y install php php-fpm

     (2) 重启Apache服务:   systemctl restart httpd

     (3) 新建一个info.php vi /var/www/html/info.php  写入

     通过内网IP加文件名访问 如 http://172.20.26.137/info.php,看到一下内容表示访问成功

CentOS7 LAMP环境安装部署Zabbix_第2张图片

查看端口状态:

ss -tnl | grep 80

三、安装Zabbix 、Mysql数据库

时间同步Server端部署:

yum install -y ntp

systemctl start ntpd

/usr/sbin/ntpdate time.asia.apple.com && hwclock -w >/dev/null 2>&1

1.关闭selinuxfirewall

1.1检测selinux是否关闭

[root@zabbix ~]# getenforce  
Disabled                                     #Disabled 
为关闭

1.1.1临时关闭
[root@zabbix ~]# setenforce 0  #设置SELinux 成为enforcing模式

1.1.2永久关闭

[root@zabbix ~]# vi /etc/selinux/config   
SELINUX=enforcing改为SELINUX=disabled 
设置后需要重启才能生效

(或者SELinux配置放行httpd 服务端口:

setsebool -P httpd_can_connect_zabbix on

setsebool -P httpd_can_network_connect_db on

1.2查看默认防火墙状态

[root@zabbix ~]# firewall-cmd --state 
not running           #
关闭后显示not running,开启后显示running

1.2.1停止firewall

[root@zabbix ~]# systemctl stop firewalld.service

1.2.2禁止firewall开机启动
[root@zabbix ~]# systemctl disable firewalld.service

 

2.Zabbix3.4程序安装

2.1配置zabbixyum

Zabbix Official Repository  #查看zabbix版本,选择适用的zabbix版本,

[root@zabbix ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

2.2安装zabbix程序包,安装mysqlzabbxi-agent

yum list  zabbix    #查看zabbix安装包

[root@zabbix ~]# yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server

2.3启动mariadb并设置开机启动,创建数据库实例,授权

[root@zabbix ~]# systemctl start mariadb      #启动mariadb
[root@zabbix ~]# systemctl enable mariadb  #
设置开机启动
[root@zabbix ~]# mysql                             #登入数据库
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;   #创建数据库实例
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'%' identified by 'zabbix';   #
授权所有主机访问数据库实例zabbix,用户名/密码:zabbix/zabbix

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@zabbix identified by 'zabbix';   #
授权localhost主机名(zabbix)访问数据库实例zabbix,用户名/密码:zabbix/zabbix

Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@zabbix identified by 'zabbix';  #
授权localhost.localdomain主机(zabbix)访问数据库实例zabbix,用户名/密码:zabbix/zabbix

Query OK, 0 rows affected (0.00 sec)

导入初始模式和数据(将zabbix元数据添加到mariadb

[root@zabbix ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.15/              #进入create.sql.gz所在目录

[root@zabbix zabbix-server-mysql-3.4.15]# zcat create.sql.gz |mysql -uroot zabbix    #导入初始模式

 2.4启动zabbix-server服务

2.4.1配置zabbix-server的配置文件zabbix_server.conf

cp /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak ##先备份一份原始文件

[root@zabbix zabbix-server-mysql-3.4.15]# vim /etc/zabbix/zabbix_server.conf
DBHost=zabbix          #
数据主机名
DBName=zabbix            # 数据库实例
DBUser=zabbix              # 用户名
DBPassword=zabbix      # 密码

LogFile=/var/log/zabbix/zabbix_server.log

LogFileSize=0

PidFile=/var/run/zabbix/zabbix_server.pid

SocketDir=/var/run/zabbix

DBHost=zabbix

DBName=zabbix

DBUser=zabbix

DBPassword= zabbix

SNMPTrapperFile=/var/log/snmptrap/snmptrap.log

Timeout=4

AlertScriptsPath=/usr/lib/zabbix/alertscripts

ExternalScripts=/usr/lib/zabbix/externalscripts

LogSlowQueries=3000

2.4.2启动zabbix-server服务

[root@zabbix zabbix-server-mysql-3.4.15]# systemctl start zabbix-server   #启动zabbix-server服务
[root@zabbix zabbix-server-mysql-3.4.4]# systemctl enable zabbix-server  #设置zabbix-server服务开机自启动

查看端口状态:

ss -tnl | grep 10051

2.5编辑Apache的配置文件,取消注释设置正确的时区

[root@zabbix zabbix-server-mysql-3.4.4]# vim /etc/httpd/conf.d/zabbix.conf
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 always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai

启动httpd服务 ,设置开机启动httpd服务

[root@zabbix ~]# systemctl start httpd        #启动httpd服务 
[root@zabbix ~]# systemctl enable httpd     #
设置开机启动httpd服务

3.启动zabbix-agent并设置开机自启动
[root@zabbix ~]# systemctl start zabbix-agent          # 启动zabbix-agent服务
[root@zabbix ~]# systemctl enable zabbix-agent       # 设置zabbix-agent服务开机自启动

在浏览器地址栏输入:172.20.26.137/Zabbix  提示如下错误:

CentOS7 LAMP环境安装部署Zabbix_第3张图片

查看日志  cat /var/log/zabbix/zabbix_server.log

CentOS7 LAMP环境安装部署Zabbix_第4张图片

检查zabbix-agent zabbix-server 配置文件:

cat /etc/zabbix/zabbix_agentd.conf |grep -v ^# | grep -v ^$

CentOS7 LAMP环境安装部署Zabbix_第5张图片

Server 地址是127.0.0.1

cat /etc/zabbix/zabbix_server.conf |grep -v ^# | grep -v ^$

CentOS7 LAMP环境安装部署Zabbix_第6张图片

检查发现DBhost 名称不一致,一个是127.0.0.1,一个是localhost ,改成一致。

重启zabbix-server : systemctl restart zabbix-server

查看日志:cat /var/log/zabbix/zabbix_server.log   ,没有报错

重启 httpd systemctl restart httpd 

刷新一下,172.20.26.137/Zabbix 正常显示,此问题解决。

4.Zabbix Web网页安装

4.1.在浏览器输入地址http://172.20.26.137/zabbix/setup.php,出现欢迎界面,点击下一步;

CentOS7 LAMP环境安装部署Zabbix_第7张图片

4.2.出现必要条件检测界面,正常都是OK,点击下一步,如果不是OK,则需要根据要求提示修改php.ini配置文件

CentOS7 LAMP环境安装部署Zabbix_第8张图片 

4.3.配置DB连接,与zabbix_server.conf文件中主机、数据库名称、用户名、密码保持一致,点击下一步

CentOS7 LAMP环境安装部署Zabbix_第9张图片

4.4.zabbix服务器详细信息,点击下一步

CentOS7 LAMP环境安装部署Zabbix_第10张图片

4.5.安装前汇总,检查信息无误,点击下一步安装

CentOS7 LAMP环境安装部署Zabbix_第11张图片

4.6.安装成功
Congratulations! You have successfully installed Zabbix frontend.
配置文件目录
Configuration file "/etc/zabbix/web/zabbix.conf.php" created.

CentOS7 LAMP环境安装部署Zabbix_第12张图片

5.zabbix网页登录

在浏览器输入http://172.20.26.129/zabbix/index.php,输入管理员用户名Admin(区分大小写),默认密码zabbix,点击登入即可。

CentOS7 LAMP环境安装部署Zabbix_第13张图片 

点击右上角的人头图标,修改语言为中文

CentOS7 LAMP环境安装部署Zabbix_第14张图片

CentOS7 LAMP环境安装部署Zabbix_第15张图片

接下来就可以配置监控设备了。

Zabbix客户端安装及配置(172.20.26.113

对于zabbix服务器,自身也可以被监控。对于自身的监控,也应当安装agent 
对于非本机的agent安装,应先配置yum源,再安装agent端,修改agent配置文件指向服务端

?

1

2

3

4

5

6

7

8

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm

 rpm -ivh zabbix-agent-3.4.14-1.el6.x86_64.rpm  #也可以从别处把zabbix-agent-3.4.14-1.el6.x86_64.rpm拷贝过来进行安装

yum install -y zabbix-agent

#修改/etc/zabbix/zabbix_agentd.conf

#Server=127.0.0.1

Server=172.20.26.137

#ServerActive=127.0.0.1

ServerActive=172.20.26.137           //server端ip

HostName=controller                    //主机名唯一的

HostMetadataItem=system.uname          //设置默认模板,server端自动发现

#启动agent服务

systemctl start zabbix-agent

systemctl enable zabbix-agent

6.一些注意事项

6.1 安装前,建议配置服务器端和客户端/etc/hosts文件,即将服务器端与客户端主机IP映射关系添加到当前主机 
6.2 
服务器端和agent端配置文件中使用统一的Hostname,区分大小写。否则容易出现无法连接的情形 
6.3 
防火墙端口放开,对于非本地agent端,开放端口10050

问题1、出现乱码:

CentOS7 LAMP环境安装部署Zabbix_第16张图片

zabbix-server端执行如下命令:

[root@zabbix-server ~]# yum -y install wqy-microhei-fonts
[root@zabbix-server ~]# cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

刷新web界面后正常。

问题2、监控中 zabbix 不变绿色的问题,提示

Get value from agent failed: cannot connect to [[172.20.26.113]:10050]: [113]No route to host

客户端配置zabbix-agent 后,网页端出现Get value from agent failed: cannot connect to [[172.20.26.113]:10050]: [113]No route to host的错误,主机没法被监听

1、服务器端ping 客户端

      ping 172.20.26.113  

2、如果能ping通,则是因为防火墙的原因,需关闭防火墙

systemctl stop firewalld.service  停用防火墙

systemctl disable firewalld.service  设置开机不启动

回到zabbix web 页面,刷新一下,发现 Zabbix 变绿了,可以监测到客户端了,问题解决。

CentOS7 LAMP环境安装部署Zabbix_第17张图片

问题3、如果zabbix_server 无法成功启动,显示NO,如图:

CentOS7 LAMP环境安装部署Zabbix_第18张图片

运行 /usr/local/sbin/zabbix_server命令无法启动,使用find 命令查找zabbix_server真实存在路径,

Find / -name Zabbix_server |grep -vE “bak|init”

查找zabbix_server 程序路径在哪,并且不显示含有bak init 的文件显示,找到zabbix_server 文件后,

ln -s /usr/local/Zabbix/sbin/Zabbix_server /usr/local/sbin 

zabbix_server做软连接到 /usr/local/sbin ,然后重新启动 /usr/local/sbin/zabbix_server,已成功启动

CentOS7 LAMP环境安装部署Zabbix_第19张图片

CentOS7 LAMP环境安装部署Zabbix_第20张图片

CentOS7 LAMP环境安装部署Zabbix_第21张图片

CentOS7 LAMP环境安装部署Zabbix_第22张图片

问题7、发现邮件以附件方式发送,显示不正常,修改邮件发送脚本。

CentOS7 LAMP环境安装部署Zabbix_第23张图片

 安装dos2unix转换工具:

[root@zabbix-server ~]# yum -y install dos2unix

编辑发送脚本:

[root@zabbix-server ~]# cd /usr/lib/zabbix/alertscripts/

[root@zabbix-server alertscripts]# touch mailtmp.txt && chmod 777 mailtmp.txt
[root@zabbix-server ~]# chown -R zabbix:zabbix /usr/lib/zabbix/alertscripts/
[root@zabbix-server alertscripts]# more mail.sh
#!/bin/bash
FILE=
/usr/lib/zabbix/alertscripts/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE
cat $FILE|/bin/mail -s "$2" $1

注意dos2unix命令执行的时候会产生临时文件,所以要有写的权限,故应修改alertscripts目录属主,不然测试过程中会报错:‘dos2unix: Failed to open temporary output file: 权限不够

CentOS7 LAMP环境安装部署Zabbix_第24张图片

发现正文不再以附件形式显示。

Zabbix 安装部署完成。

你可能感兴趣的:(zabbix,zabbix)