使用1台Linux虚拟机,安装部署LNMP环境、Zabbix及相关的依赖包,配置数据库并对Zabbix监控平台进行初始化操作。使用2台Linux被监控端,源码安装Zabbix Agent。完成Zabbix实验需要我们搭建一个实验环境,拓扑结构如表-1所示。

表-1 实验拓扑结构(网卡名称仅供参考,不能照抄)

步骤一:部署监控服务器

1)安装LNMP环境

Zabbix监控管理控制台需要通过Web页面展示出来,并且还需要使用MySQL来存储数据,因此需要先为Zabbix准备基础LNMP环境。可点击参考:

[root@zabbixserver ~]# yum -y install gcc pcre-devel  openssl-devel[root@zabbixserver ~]# tar -xf nginx-1.12.2.tar.gz[root@zabbixserver ~]# cd nginx-1.12.2[root@zabbixserver nginx-1.12.2]# ./configure --with-http_ssl_module[root@zabbixserver nginx-1.12.2]# make && make install[root@zabbixserver ~]# yum -y  install  php  php-mysql  php-fpm[root@zabbixserver ~]# yum -y  install  mariadb  mariadb-devel  mariadb-server

2)修改Nginx配置文件

配置Nginx支持PHP动态网站,因为有大量PHP脚本需要执行,因此还需要开启Nginx的各种fastcgi缓存,加速PHP脚本的执行速度。

[root@zabbixserver ~]# vim /usr/local/nginx/conf/nginx.conf… …http{… …fastcgi_buffers 8 16k;                  #缓存php生成的页面内容,8个16kfastcgi_buffer_size 32k;              #缓存php生产的头部信息,32kfastcgi_connect_timeout 300;         #连接PHP的超时时间,300秒fastcgi_send_timeout 300;             #发送请求的超时时间,300秒fastcgi_read_timeout 300;            #读取请求的超时时间,300秒location ~ .php$ {root           html;fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;include        fastcgi.conf;}… …

3)启动服务

启动Nginx、PHP-FPM、MariaDB服务,关闭SELinux与防火墙。

[root@zabbixserver ~]# systemctl start  mariadb        #启动服务
[root@zabbixserver ~]# systemctl start  php-fpm        #启动服务[root@zabbixserver ~]# systemctl enable  mariadb        #设置开机自启[root@zabbixserver ~]# systemctl enable  php-fpm        #设置开机自启[root@zabbixserver ~]# /usr/local/nginx/sbin/nginx        #启动服务[root@zabbixserver ~]# echo /usr/local/nginx/sbin/nginx  >> /etc/rc.local[root@zabbixserver ~]# chmod +x /etc/rc.local#通过rc.local设置开机自启[root@zabbixserver ~]# firewall-cmd --set-default-zone=trusted[root@zabbixserver ~]# setenforce 0
[root@zabbixserver ~]# sed -i '/SELINUX/s/enforcing/permissive/' /etc/selinux/config

步骤二:部署监控服务器Zabbix Server

1)源码安装Zabbix Server

多数源码包都是需要依赖包的,zabbix也一样,源码编译前需要先安装相关依赖包。

[root@zabbixserver lnmp_soft]# yum -y install  net-snmp-devel curl-devel autoconf libevent-devel#安装相关依赖包[root@zabbixserver lnmp_soft]# tar -xf zabbix-3.4.4.tar.gz[root@zabbixserver lnmp_soft]# cd zabbix-3.4.4/[root@zabbixserver zabbix-3.4.4]# ./configure  --enable-server --enable-proxy --enable-agent --with-mysql=/usr/bin/mysql_config --with-net-snmp --with-libcurl# --enable-server安装部署zabbix服务器端软件# --enable-agent安装部署zabbix被监控端软件# --enable-proxy安装部署zabbix代理相关软件# --with-mysql指定mysql_config路径# --with-net-snmp允许zabbix通过snmp协议监控其他设备(如交换机、路由器等)# --with-libcurl安装相关curl库文件,这样zabbix就可以通过curl连接http等服务,测试被监控主机服务的状态[root@zabbixserver zabbix-3.4.4]# make && make install

2)创建并初始化数据库

[root@zabbixserver ~]# mysqlmysql> create database zabbix character set utf8;#创建数据库,数据库名称为zabbix,character set utf8是支持中文字符集mysql> grant all on zabbix.* to zabbix@'localhost' identified by 'zabbix';#创建可以访问数据库的账户与密码,用户名是zabbix,密码是zabbix[root@zabbixserver ~]# cd lnmp_soft/zabbix-3.4.4/database/mysql/[root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix < schema.sql[root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix < images.sql[root@zabbixserver mysql]# mysql -uzabbix -pzabbix zabbix < data.sql#刚刚创建是空数据库,zabbix源码包目录下,有提前准备好的数据#使用mysql导入这些数据即可(注意导入顺序)#-u指定数据库用户名,-p指定数据库密码如何测试?[root@zabbixserver ~]# mysql -uzabbix -pzabbix -h 192.168.2.5 zabbix#-u指定用户名,-p指定密码,-h指定服务器IP,最后的zabbix是数据库名称#使用zabbix账户(密码为zabbix)连接192.168.2.5服务器上面的zabbix数据库

3)修改zabbix_server配置并启动监控服务

修改Zabbix_server配置文件,设置数据库相关参数,启动Zabbix_server服务

[root@zabbixserver ~]# vim /usr/local/etc/zabbix_server.confDBHost=localhost# 85行,定义哪台主机为数据库主机,localhost为本机DBName=zabbix#95行,设置数据库名称DBUser=zabbix#111行,设置数据库账户DBPassword=zabbix#119行,设置数据库密码LogFile=/tmp/zabbix_server.log    #38行,日志的位置,排错使用,该行仅查看即可[root@zabbixserver ~]# useradd -s /sbin/nologin zabbix#服务不允许以root身份启动,不创建用户无法启动服务(用户不需要登录系统)#创建zabbix用户才可以以zabbix用户的身份启动服务#启动服务后可以通过ps aux查看进程是以什么用户的身份启动的[root@zabbixserver ~]# zabbix_server                              #启动服务[root@zabbixserver ~]# echo  zabbix_server >>  /etc/rc.local        #设置开机自启[root@zabbixserver ~]# chmod +x  /etc/rc.local[root@zabbixserver ~]# ss -ntulp |grep zabbix_server     #确认连接状态,端口10051tcp LISTEN 0 128 *:10051 *:* users:(("zabbix_server",pid=23275,fd=4),("zabbix_server",pid=23274,fd=4)

提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_server,

一定要先使用killall zabbix_server关闭服务后,再重新启动一次。

安装psmisc软件包,才有killall命令。

附加知识(非必须操作):也可以通过创建service文件管理zabbix服务。

[root@zabbixserver ~]# cd /usr/lib/systemd/system/[root@zabbixserver ~]# vim zabbix_server.service[Unit]Description=zabbix serverAfter=network.target remote-fs.target nss-lookup.target[Service]Type=forkingPIDFile=/tmp/zabbix_server.pidExecStart=/usr/local/sbin/zabbix_serverExecStop=/bin/kill $MAINPID[Install]WantedBy=multi-user.target

4)修改Zabbix_agent配置文件,启动Zabbix_agent服务

[root@zabbixserver ~]# vim /usr/local/etc/zabbix_agentd.confServer=127.0.0.1,192.168.2.5            #93行,允许哪些主机监控本机ServerActive=127.0.0.1,192.168.2.5        #134行,允许哪些主机通过主动模式监控本机Hostname=zabbix_server                #145行,设置本机主机名(名称可以任意)LogFile=/tmp/zabbix_agentd.log            #设置日志文件(不需要修改)UnsafeUserParameters=1                #280行,是否允许自定义监控传参[root@zabbixserver ~]# zabbix_agentd    #启动监控agent[root@zabbixserver ~]# echo zabbix_agentd  >> /etc/rc.local    #设置开机自启[root@zabbixserver ~]# ss -ntulp |grep zabbix_agentd   #查看端口信息为10050tcp    LISTEN     0      128       *:10050                 *:*                   users:(("zabbix_agentd",pid=23505,fd=4),("zabbix_agentd",pid=23504,fd=4)

提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_agentd,

一定要先使用killall zabbix_agentd关闭服务后,再重新启动一次。

安装psmisc软件包,才有killall命令。

附加知识:编写zabbix_agentd的service文件,通过systemd管理服务。

 # vim /usr/lib/systemd/system/zabbix_agentd.service[Unit]Description=zabbix agentAfter=network.target remote-fs.target nss-lookup.target[Service]Type=forkingPIDFile=/tmp/zabbix_agentd.pidExecStart=/usr/local/sbin/zabbix_agentdExecStop=/bin/kill $MAINPID[Install]WantedBy=multi-user.target

5)上线Zabbix的Web页面

[root@zabbixserver ~]# cd lnmp_soft/zabbix-3.4.4/frontends/php/[root@zabbixserver php]# cp -r * /usr/local/nginx/html/[root@zabbixserver php]# chown -R  apache.apache /usr/local/nginx/html/

浏览器访问Zabbix_server服务器的Web页面

火狐浏览器访问【 firefox http://192.168.2.5/index.php 】#第一次访问,初始化PHP页面会检查计算机环境是否满足要求,如果不满足会给出修改建议#默认会提示PHP的配置不满足环境要求,需要修改PHP配置文件

根据错误提示,安装依赖、修改PHP配置文件,满足Zabbix_server的环境要求。

[root@zabbixserver ~]# yum -y install  php-gd  php-xml[root@zabbixserver ~]# yum -y install  php-bcmath  php-mbstring[root@zabbixserver ~]# vim /etc/php.inidate.timezone = Asia/Shanghai                #878行,设置时区max_execution_time = 300                    #384行,最大执行时间,秒post_max_size = 32M                        #672行,POST数据最大容量max_input_time = 300                        #394行,服务器接收数据的时间限制[root@zabbixserver ~]# systemctl restart php-fpm

修改完PHP配置文件后,再次使用浏览器访问服务器,则会提示如图-1和图-2所示的提示信息。

注意:这里有一个PHP LDAP是warning状态是没有问题的!

在初始化数据库页面,填写数据库相关参数,如图-3所示。

在登陆页面,使用用户(admin)和密码(zabbix)登陆,登陆后设置语言环境为中文,如图-4和图-5所示。

步骤三:部署被监控主机Zabbix Agent

1)源码安装Zabbix agent软件

在2.100和2.200做相同操作(以web1为例)。

[root@web1 ~]# useradd -s /sbin/nologin  zabbix[root@web1 ~]# yum -y install gcc pcre-devel autoconf[root@web1 ~]# tar -xf zabbix-3.4.4.tar.gz[root@web1 ~]# cd zabbix-3.4.4/[root@web1 zabbix-3.4.4]# ./configure --enable-agent[root@web1 zabbix-3.4.4]# make && make install

2)修改agent配置文件,启动Agent

[root@web1 ~]# vim /usr/local/etc/zabbix_agentd.confServer=127.0.0.1,192.168.2.5                #93行,谁可以监控本机(被动监控模式)ServerActive=127.0.0.1,192.168.2.5            #134行,谁可以监控本机(主动监控模式)Hostname=web1                                    #145行,被监控端自己的主机名EnableRemoteCommands=1    #69行,监控异常后,是否允许服务器远程过来执行命令,如重启某个服务UnsafeUserParameters=1                    #280行,是否允许自定义key传参[root@web1 ~]# zabbix_agentd                #启动agent服务[root@web1 ~]# echo zabbix_agentd  >> /etc/rc.local[root@web1 ~]# chmod +x  /etc/rc.local[root@web1 ~]# firewall-cmd --set-default-zone=trusted[root@web1 ~]# sed -i  '/SELINUX/s/enforcing/permissive/' /etc/selinux/config[root@web1 ~]# setenforce 0

请求zabbix_快速部署zabbix相关推荐

  1. 基于Docker快速部署Zabbix

    1.Zabbix基础监控架构图: 2.Zabbix的架构信息: 1. zabbix-server zabbix 的server 端,负责接收agent发送过来的监控数据,并且提供zabbix的所有核心 ...

  2. 分布式部署Zabbix监控平台

    Zabbix监控的优点 Zabbix是一个基于WEB界面的提供分布式系统监控的企业级的开源解决方案,Zabbix能监视各种网络参数,保证服务器系统的安全稳定的运行,并提供灵活的通知机制以让SA快速定位 ...

  3. 部署Zabbix企业级分布式监控

    1.定义 1.1.监控定义 通过一个友好的界面进行浏览整个网站所有的服务器状态 可以在Web前端方便的查看监控数据 可以回溯寻找事故发生时系统的问题和报警情况 #########分类######## ...

  4. 部署Zabbix集中监控系统

    一.Zabbix概述 Zabbix是一个高度集成的企业级开源网路监控解决方案,与Cacti,Nagios类似,提供分布式监控以及集中的Web管理界面.被监控对象只要支持SNMP协议或者运行Zabbix ...

  5. Centos7下使用Ceph-deploy快速部署Ceph分布式存储

    #Centos7下使用Ceph-deploy快速部署Ceph分布式存储 CEPH 简介  不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 C ...

  6. 性能领先,即训即用,快速部署,飞桨首次揭秘服务器端推理库

    允中 发自 凹非寺 量子位 编辑 | 公众号 QbitAI 假如问在深度学习实践中,最难的部分是什么?猜测80%的开发者都会说: "当然是调参啊." 为什么难呢?因为调参就像厨师根 ...

  7. SAP CRM RDS快速部署解决方案

    为了简化部署和实施,SAP推出了一系列的RDS快速部署(Rapid Deployment Solution)解决方案.RDS有明确的License范围,用户可以选择相关功能模块.据称最短在8周内即可实 ...

  8. output怎么用_性能领先,即训即用,快速部署,飞桨首次揭秘服务器端推理库

    允中 发自 凹非寺 量子位 编辑 | 公众号 QbitAI 假如问在深度学习实践中,最难的部分是什么?猜测80%的开发者都会说: "当然是调参啊." 为什么难呢?因为调参就像厨师根 ...

  9. [云框架]KONG API Gateway v1.5 -框架说明、快速部署、插件开发

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 当前版本采用KONGv0.12.3 当我们决定对应用进行微服务改造时,应用客户端如何与微服务交互的问 ...

最新文章

  1. 利用MyEclipse开发一个调用webservice接口的程序
  2. python 字典中的value 不在字典中,key才在
  3. C# 如何在PDF文档中创建表格
  4. windows server系统,登录系统提示按下 ctrl+alt+delete
  5. Memento(备忘录)--对象行为型模式
  6. Vue 计算属性 computed
  7. 技校毕业是什么学历_初中毕业上技校学什么专业好
  8. Jeewx-Boot 1.2 小程序官网模块发布,免费开源的微信管家平台
  9. 标准工业关系型数据库和对象关系数据库
  10. promise allrace
  11. 怎么解决php页面编码问题,PHP页面编码问题
  12. [转载] python面面观单元测试_python 使用unittest进行单元测试
  13. android状态栏华为,状态栏设置华为版
  14. P问题、NP问题、NPC问题、NPH问题详解
  15. 2007-2020年各大企业主营业务收入构成(行业)
  16. 开源软件的法律风险及防控
  17. 计算机游戏图形是什么意思,专业图形显卡和游戏显卡区别
  18. 6个不可多得的黑科技网站!
  19. 综合布线系统施工规范
  20. ipad/iphone的浏览器,为啥可以播放优酷土豆等在线视频

热门文章

  1. 【Python】Python库之网络爬虫
  2. 【C语言】输入10个人的成绩,求平均值
  3. C#LeetCode刷题之#349-两个数组的交集(Intersection of Two Arrays)
  4. C#设计模式之22-模板方法模式
  5. api工具 graphql_使用GraphQL构建更好的可发现的API
  6. 微处理器硬件喂狗_硬件基础:微控制器到底是什么?
  7. 前序表达式 中序表达式 后序表达式
  8. c++ 正则表达式_Python教程:进程和线程amp;正则表达式
  9. mac安装和使用boost库
  10. python代码编辑工具pycharm的使用技巧