博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在LNMP架构中搭建zabbix监控服务!!!
阅读量:5773 次
发布时间:2019-06-18

本文共 7532 字,大约阅读时间需要 25 分钟。

在上篇博客中我具体操作了在LAMP架构中搭建zabbix监控服务,在本篇中我将在LNMP中搭建一个zabbix服务,操作步骤相比于之前要稍微复杂一些,但也只是在细节上LNMP稍多一些,大体过程还是类似的。

实验环境:

在LNMP架构中搭建zabbix监控服务!!!
STKAITI链接:
提取码:90v8
操作步骤
一、搭建LNMP
1 安装nginx1.4

[root@promote~]#wget http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm[root@promote ~]# rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm    #安装nginx官方源[root@promote ~]# yum install nginx -y[root@promote ~]# systemctl start nginx[root@promote ~]# systemctl enable nginx[root@promote ~]# netstat -ntap | grep 80tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      3024/nginx: master

在浏览器上访问http://192.168.199.129/

在LNMP架构中搭建zabbix监控服务!!!

2 安装mysql5.7(这里为了安装方便我也mariadb来代替mysql,功能都是一样的):

[root@promote ~]# yum install mariadb-server mariadb -y     #下载mariadb安装包[root@promote ~]# systemctl start mariadb.service[root@promote ~]# systemctl enable mariadb.service [root@promote ~]# mysql_secure_installation       #配置mariadb相关参数Set root password? [Y/n] yRemove anonymous users? [Y/n] nDisallow root login remotely? [Y/n] nRemove test database and access to it? [Y/n] nReload privilege tables now? [Y/n] y

3 安装PHP7.2

[root@promote~]#rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm[root@promote ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm    #下载PHPyum源[root@promote ~]# yum install php72w php72w-devel php72w-fpm php72w-gd php72w-mbstring php72w-mysql -y    #安装PHP相关服务[root@promote ~]# php -v     #查看版本PHP 7.2.10 (cli) (built: Sep 15 2018 07:10:58) ( NTS )Copyright (c) 1997-2018 The PHP GroupZend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

4 配置nginx支持PHP:

[root@promote ~]# vim /etc/php-fpm.d/www.conf8 user = nginx     #将Apache改为nginx10 group = nginx   #将Apache改为nginx

5 配置PHP:

[root@promote ~]# vim /etc/php.ini359 expose_php = Off    #隐藏PHP版本368 max_execution_time = 300    #监控执行时间378 max_input_time = 300    #接收数据等待时间389 memory_limit = 128M    #每个脚本占用内存656 post_max_size = 16M    #POST数据大小799 upload_max_filesize = 2M    #下载文件大小800 always_populate_raw_post_data = -1    #可以用$HTTP_RAW_POST_DATA接收post raw datadate.timezone = Asia/Shanghai    #将时区设为上海时区

6 配置PHP请求被传送到后端的php-fpm模块,默认情况下php配置模块是被注释掉的:

[root@promote ~]# vim /etc/nginx/conf.d/default.conf10         index  index.php index.html index.htm;30     location ~ \.php$ {31         root          /usr/share/nginx/html;32         fastcgi_pass   127.0.0.1:9000;33         fastcgi_index  index.php; 34         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_scr    ipt_name; 35         include        fastcgi_params; 36     }    #把fastcgi_param中的/scripts改为$document_root,root是配置php程序用户

7 开启服务

[root@promote ~]# systemctl start php-fpm.service [root@promote ~]# systemctl enable php-fpm.service [root@promote ~]# systemctl restart nginx[root@promote ~]# vim /usr/share/nginx/html/index.php    #创建PHP测试首页

在浏览器上访问http://192.168.199.129/index.php

在LNMP架构中搭建zabbix监控服务!!!
测试PHP能否连接数据库:

[root@promote html]# vim index.php 

在LNMP架构中搭建zabbix监控服务!!!

8 创建zabbix数据库与zabbix用户:

[root@promote html]# mysql -u root -pMariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;MariaDB [(none)]> grant all privileges on *.* to 'zabbix'@'%' identified by '123123';MariaDB [(none)]> flush privileges;

解决本地无法登陆问题:

[root@promote ~]# mysql -u zabbix -p    #现在用zabbix用户是无法登陆数据库的,因为有空用户在进行占用Enter password: ERROR 1045 (28000): Access denied for user 'zabbix'@'localhost' (using password: YES)MariaDB [(none)]> select user,host from mysql.user;+--------+-------------------------+| user   | host                    |+--------+-------------------------+| zabbix | %                       || root   | 127.0.0.1               || root   | ::1                     ||        | localhost               || root   | localhost               ||        | promote.cache-dns.local || root   | promote.cache-dns.local |+--------+-------------------------+7 rows in set (0.00 sec)MariaDB [(none)]> drop user ''@'localhost';    #删除库中的空用户Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> drop user ''@'promote.cache-dns.local';    #删除空用户Query OK, 0 rows affected (0.00 sec)

测试zabbix用户能否连接PHP:

[root@promote ~]# vim /usr/share/nginx/html/index.php 

在浏览器上访问http://192.168.199.129/index.php

在LNMP架构中搭建zabbix监控服务!!!
到此为止LNMP架构就搭建完成了,下面开始部署zabbix服务

二、部署zabbix server:

[root@promote~]#rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm[root@promote ~]# yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y[root@promote ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix     #将zabbix脚本文件导入到zabbix数据库中[root@promote ~]# mysql -u zabbix -pMariaDB [(none)]> use zabbixMariaDB [zabbix]> show tables;    #查看zabbix数据库中的表,如果脚本导入成功,就应该会看到很多表

修改zabbix配置文件,需要修改以下内容:

[root@promote ~]# grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf 38:LogFile=/var/log/zabbix/zabbix_server.log49:LogFileSize=072:PidFile=/var/run/zabbix/zabbix_server.pid82:SocketDir=/var/run/zabbix91:DBHost=localhost         #去掉注释101:DBName=zabbix117:DBUser=zabbix125:DBPassword=123123     #修改密码357:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log475:Timeout=4518:AlertScriptsPath=/usr/lib/zabbix/alertscripts529:ExternalScripts=/usr/lib/zabbix/externalscripts565:LogSlowQueries=3000

修正图表中文乱码:

[root@promote ~]# vim /usr/share/zabbix/include/defines.inc.php

在LNMP架构中搭建zabbix监控服务!!!

[root@promote zabbix]# cp STKAITI.TTF /usr/share/zabbix/fonts/ #从微软系统下复制相应的字体文件到/usr/share/zabbix/fonts/

赋予文件权限:

[root@promote ~]# cp -r /usr/share/zabbix/ /usr/share/nginx/html/[root@promote ~]# chown -R zabbix.zabbix /etc/zabbix/[root@promote ~]# chown -R zabbix.zabbix /usr/share/nginx/[root@promote ~]# chown -R zabbix.zabbix /usr/lib/zabbix/[root@promote ~]# chmod -R 755 /etc/zabbix/web/[root@promote ~]# chmod -R 777 /var/lib/php/session/

启动服务:

[root@promote ~]# systemctl start zabbix-server.service [root@promote ~]# systemctl enable zabbix-server.service [root@promote ~]# systemctl start zabbix-agent.service [root@promote ~]# systemctl enable zabbix-agent.service [root@promote ~]# systemctl restart php-fpm.service [root@promote ~]# systemctl restart nginx       #这两个服务一定要重启,不然在登陆zabbix监控页面时会出错

在浏览器上登录zabbix界面:

版本显示为4.0
在LNMP架构中搭建zabbix监控服务!!!
这里必须每项都显示OK才可以,如果有报错请重新启动PHP,nginx和zabbix服务,如果还有问题,请检查三个服务的配置文件
在LNMP架构中搭建zabbix监控服务!!!
接着填写密码即可,密码就是zabbix登录数据库密码,端口保持默认即可
在LNMP架构中搭建zabbix监控服务!!!
接着填写zabbix的服务器名称,这里我就定义为zabbix
在LNMP架构中搭建zabbix监控服务!!!
接着点击下一步就会显示zabbix的完整信息
在LNMP架构中搭建zabbix监控服务!!!
接着点击下一步就会看到这个信息,是说没办法创建配置文件,这时候点击图中的下载链接下载这个文件,接着将这个文件挂载到zabbix服务器上,具体操作如下:
在LNMP架构中搭建zabbix监控服务!!!
在LNMP架构中搭建zabbix监控服务!!!
点击完成就会发现报错消失了
在LNMP架构中搭建zabbix监控服务!!!
使用账户密码登录zabbix,默认账号密码为‘Admin’和‘zabbix’
在LNMP架构中搭建zabbix监控服务!!!
接着就会看到zabbix的监控页面
在LNMP架构中搭建zabbix监控服务!!!

三、配置被监控服务器:

[root@promote ~]# systemctl stop firewalld.service [root@promote ~]# setenforce 0

下载yum源:

[root@promote~]# rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm[root@promote ~]# yum install zabbix-agent -y

更改zabbix配置文件,需要更改以下内容:

[root@promote ~]# grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf 13:PidFile=/var/run/zabbix/zabbix_agentd.pid32:LogFile=/var/log/zabbix/zabbix_agentd.log43:LogFileSize=098:Server=192.168.199.129      #地址指向zabbix监控端139:ServerActive=192.168.199.129    #地址指向zabbix监控端150:Hostname=test      #定义服务器名称268:Include=/etc/zabbix/zabbix_agentd.d/*.conf

开启服务:

[root@promote ~]# systemctl start zabbix-agent.service [root@promote ~]# systemctl enable zabbix-agent.service [root@promote ~]# netstat -ntap | grep 10050       #查看端口,注意被监控端端口是10050tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      38128/zabbix_agentd tcp6       0      0 :::10050                :::*                    LISTEN      38128/zabbix_agentd

到此为止,在LNMP上搭建zabbix服务已经完成,要想监控到其他服务器还需要在浏览器的监控页面上手动添加,添加过程我在上篇博客“在LAMP架构上搭建zabbix监控服务”已经详细讲过,这里就不再操作。

转载于:https://blog.51cto.com/13706760/2309915

你可能感兴趣的文章
ELK实战之logstash部署及基本语法
查看>>
帧中继环境下ospf的使用(点到点模式)
查看>>
BeanShell变量和方法的作用域
查看>>
LINUX下防恶意扫描软件PortSentry
查看>>
由数据库对sql的执行说JDBC的Statement和PreparedStatement
查看>>
springmvc+swagger2
查看>>
软件评测-信息安全-应用安全-资源控制-用户登录限制(上)
查看>>
cacti集成
查看>>
我的友情链接
查看>>
Java Web Application 自架构 一 注解化配置
查看>>
如何 debug Proxy.pac文件
查看>>
Python 学习笔记 - 面向对象(特殊成员)
查看>>
Kubernetes 1.11 手动安装并启用ipvs
查看>>
Puppet 配置管理工具安装
查看>>
Bug多,也别乱来,别被Bug主导了开发
查看>>
sed 替换基础使用
查看>>
高性能的MySQL(5)创建高性能的索引一B-Tree索引
查看>>
附件3:eclipse memory analyze使用教程
查看>>
oracle备份与恢复--rman
查看>>
图片变形的抗锯齿处理方法
查看>>