环境:zabbix server

centos 7 1611最小化安装 172.16.103.2

zabbix client

Centos 7 1611 最小化安装 172.16.103.3

1,配置光盘yum源

创建挂载的目录,挂载光驱,备份原有repo

mkdir -p /media/cdrom

mount /dev/cdrom /media/cdrom/

cd /etc/yum.repos.d/

mv CentOS-Base.repo CentOS-Base.repo.bak

vi CentOS-Media.repo

enabled=1

清除yum缓存,重新制作cache

yum clean all

yum makecache

2,配置LNMP环境

安装依赖包

yum -y install gcc pcre-devel openssl-devel

上传nginx-1.12.2.tar.gz包到root的家目录

解压缩nginx的包

tar -xf nginx-1.12.2.tar.gz

进入nginx的目录,编译安装

cd nginx-1.12.2

./configure --with-http_ssl_module

make && make install

卸载原有的mariadb,使用如下命令查看和卸载

rpm -qa |grep mar

rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64

安装php和mariadb

yum -y install php php-mysql mariadb mariadb-devel mariadb-server php-fpm

修改nginx的配置文件,让其支持php动态网站,因为有大量的php脚本需要执行,还有开启nginx的各种fastcgi缓存加速php脚本的执行速度

vi /usr/local/nginx/conf/nginx.conf

添加以下内容,添加的内容要顶格写,添加的位置如图所示

fastcgi_connect_timeout 300;

fastcgi_send_timeout 300;

fastcgi_read_timeout 300;

fastcgi_buffer_size 128k;

fastcgi_buffers 4 128k;

同时添加以下内容,添加位置如图所示

location ~ \.php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

include fastcgi.conf;

}

开启mariadb服务,php-fpm服务和nginx服务

systemctl start mariadb

systemctl start php-fpm

ln -s /usr/local/nginx/sbin/nginx /sbin/nginx

nginx

创建一个测试的php页面,使用curl测试访问

vim /usr/local/nginx/html/test.php

<?php

$i='this is a test page!';

echo $i;

?>

curl http://172.16.103.2/test.php

返回值this is a test page! 说明成功

3,安装zabbix server

首先安装zabbix server 的依赖包

yum -y install net-snmp-devel curl-devel libevent-devel

解压zabbix包,进入目录,编译安装

tar -xf zabbix-3.4.11.tar.gz

cd zabbix-3.4.11

./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等服务,测试被监控主机服务的状态

执行make && make install

make && make install

数据库配置,登陆数据库,创建中文字符集的数据库,赋权,如图

mysql

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

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

MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';

创建可以访问数据库的账户和密码(zabbix的源码包下有关于数据库的sql脚本,只需要进入到源码包的database/mysql目录下,导入sql脚本即可,注意一定要安装顺序)

cd database/mysql/

mysql -uzabbix -pzabbix zabbix < schema.sql

mysql -uzabbix -pzabbix zabbix < images.sql

mysql -uzabbix -pzabbix zabbix < data.sql

将zabbix的web页面关联到nginx中

cd /root/zabbix-3.4.11/frontends/php/

cp -r * /usr/local/nginx/html/

chmod -R 777 /usr/local/nginx/html/*

修改zabbix-server配置文件,设置数据库的相关参数,启动zabbix-server服务

vi /usr/local/etc/zabbix_server.conf

DBHost=localhost

//数据库主机,默认该行被注释

DBName=zabbix

//设置数据库名称

DBUser=zabbix

//设置数据库账户

DBPassword=zabbix

//设置数据库密码,默认该行被注释

LogFile=/tmp/zabbix_server.log

//设置日志,仅查看以下即可

添加zabbix用户,不让其登陆到系统控制台,,不添加用户的话,无法启动zabbix_server服务

useradd -s /sbin/nologin zabbix

启动zabbix_server服务

zabbix_server

验证服务是否正常启动,如图

netstat -nutpl |grep zabb

提示:如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_server,一定要先使用killall zabbix_server关闭服务后,再重新启动一次。

下面配置zabbix_agent服务,同样编辑zabbix_agentd.conf配置文件

vi /usr/local/etc/zabbix_agentd.conf

Server=127.0.0.1,172.16.103.2                    //允许哪些主机监控本机

ServerActive=127.0.0.1,172.16.103.2                 //允许哪些主机通过主动模式监控本机

Hostname=zabbix_server                        //设置本机主机名

LogFile=/tmp/zabbix_server.log                    //设置日志文件

UnsafeUserParameters=1                        //是否允许自定义key

启动zabbix_agent服务,同样如果是因为配置文件不对,导致服务无法启动时,不要重复执行zabbix_agentd,一定要先使用killall zabbix_agentd关闭服务后,再重新启动一次。

zabbix_agentd

使用浏览器访问zabbix的web页面,进行相关配置,访问地址为:http://172.16.103.2/index.php但是因为是首次登陆,会被强制跳转到http://172.16.103.2/setup.php进行配置,如图所示

程序会检查先决条件,对于不满足的,程序已经给了解决方法,

关于以上错误,如果是PHP option类的错误,那么需要修改php.ini配置文件,修改之后需要重启php服务,php.ini文件的位置位于/etc目录下,可以直接使用vi /etc/php.ini命令来编辑该文件,保存修改之后需要执行systemctl restart php-fpm才生效。

vi /etc/php.ini

post_max_size = 16M

max_execution_time = 300

max_input_time = 300

date.timezone = Asia/Shanghai

systemctl restart php-fpm

执行了这些修改之后依然还有报错信息,如下图所示

部分报错可以通过yum安装一些扩展包来解决,例如bcmath mbstring等,执行下面的yum安装命令,安装依赖包。

yum -y install php-gd php-xml php-bcmath php-mbstring

执行完上述依赖包的安装命令之后重启php-fpm再次刷新网页

PHP的LDAP未开启,后面标注是是warning警告,再次忽略。进入下一步,下图中表单中的数据参照zabbix_server.conf配置文件中的内容填写

Name可以自行填写,也可以不填写,Name为此zabbixserver实例的名称

报错提示无法创建配置文件,为了安全起见上文配置nginx的过程中修改的权限为755,也就是其他用户没有写权限,程序提示我们可以手工下载文件,上传到/usr/local/nginx/html/conf目录,保存的绝对路径为/usr/local/nginx/html/conf/zabbix.conf.php

使用admin密码zabbix登陆

登陆之后满天红。。。。根据报错提示得知是时区配置错误

查看php.ini配置文件中的时区配置,之前的配置是date.timezone = "Asia/Shanghai",其实不需要加引号的,我在检查先决条件的时候加了引号导致了这个错误。

vi /etc/php.ini

date.timezone = Asia/Shanghai

修改之后重启的php和nginx

4,客户机安装zabbix-agent

安装zabbix-agent之前首先要创建zabbix用户,安装依赖包,然后才可以安装

创建zabbix用户

useradd -s /sbin/nologin zabbix

安装依赖包

yum install -y gcc pcre-devel

上传zabbix的包到root的家目录,解压缩,执行编译

tar -xf zabbix-3.4.11.tar.gz

cd zabbix-3.4.11

./configure --enable-agent

执行安装

make && make install

编辑zabbix_agentd.conf配置文件,启动zabbix_agent

vi /usr/local/etc/zabbix_agentd.conf

Server=172.16.103.2                //谁可以监控本机(被动监控模式)

ServerActive=172.16.103.2            //谁可以监控本机(主动监控模式)

Hostname=zabbix_server                //被监控端自己的主机名

EnableRemoteCommands=1    //监控异常后,是否允许服务器远程过来执行命令,如重启某个服务

UnsafeUserParameters=1                     //是否允许自定义key监控

启动zabbix_agentd服务

zabbix_agentd

检查启动情况

netstat -nutpl

5,创建一个linux主机,参照第四步,配置zabbix-agent服务,然后启动服务。

6,在控制台依次点击配置>主机>创建主机,如图

主机名称填入zabbix-agent配置文件中的hostname字段的名称,ip地址填写zabbix-agent客户端的名称。然后需要配置监控模板。最后保存即可。

zabbix部署文档的更多相关文章

  1. PPTP部署文档

    PPTP部署文档 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.       欢迎加入:高级运维工程师之路 598432640 前言:这款VPN部署起来特别简单,想对OPENVON配 ...

  2. hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档

    相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...

  3. supervisor 部署文档

    supervisor 部署文档 supervisor 需要Python支持,如果不用系统的supervisor,单独安装python python 安装 #依赖 yum install python- ...

  4. centos6 Cacti部署文档

    centos6 Cacti部署文档 1.安装依赖 yum -y install mysql mysql-server mysql-devel httpd php php-pdo php-snmp ph ...

  5. HP DL160 Gen9服务器集群部署文档

    HP DL160 Gen9服务器集群部署文档 硬件配置=======================================================Server        Memo ...

  6. Sqlserver2008安装部署文档

    Sqlserver2008部署文档 注意事项: 如果你要安装的是64位的服务器,并且是新机器.那么请注意,你需要首先需要给64系统安装一个.net framework,如果已经安装此功能,请略过这一步 ...

  7. CDH简易离线部署文档

        CDH 离线简易部署文档       文档说明 本文为开发部署文档,生产环境需做相应调整. 以下操作尽量在root用户下操作,避免权限问题. 目录 文档说明 2 文档修改历史记录 2 目录 3 ...

  8. Ceph分布式存储(luminous)部署文档-ubuntu18-04

    Ceph分布式存储(luminous)部署文档 环境 ubuntu18.04 ceph version 12.2.7 luminous (stable) 三节点 配置如下 node1:1U,1G me ...

  9. rabbitmq 3.7.8基于centos7部署文档

    rabbitmq 3.7.8部署文档 安装erlang 安装依赖环境 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel ope ...

随机推荐

  1. TP5路由的位置导致错误

    // 测试 '[js]' => [ ':id' => ['test/test/js', ['method' => 'get'], ['id' => '\d+']], ':id/ ...

  2. Thinkphp5 使用unlink删除文件出错Permission denied

    $info = $file->validate(['size'=>1024000,'ext'=>'jpg,png,gif'])->rule('uniqid')->move ...

  3. Jmeter系列(3) - 静默压测

    前言 Windows环境 简述 静默 : 脱离UI运⾏JMeter压测,用命令行方式运行性能测试脚本好处:命令运⾏更容易"搞事情"命令格式: jmeter –n –t $jmx_f ...

  4. Jmeter系列(34)- Jmeter优化常识

    Jmeter UI页面是调试脚本的,运行脚本使用命令行运行:Windows使用batch,Linux使用shell Jmeter减少使用各类监听控件,吃内存.CPU:用后置处理去拿log文件,生成图表 ...

  5. P7597 「EZEC-8」猜树 加强版

    #include<bits/stdc++.h>using namespace std;#define rg register#define inf 0x3f3f3f3f#define ll ...

  6. java中的swing设计界面时怎么加上背景图片。而不覆盖其他控件?

    通过以下方式设置下背景就可以了: import java.awt.Container; import javax.swing.ImageIcon; import javax.swing.JFrame; ...

  7. git 要求密码的解决方法:【生成gitLab公钥】:以及如何配置GitLab中的SSH key

    参考链接: https://www.cnblogs.com/yjlch1016/p/9692840.html https://blog.csdn.net/u011925641/article/deta ...

  8. VUE页面跳转方式

    一.to +跳转路径 <router-link to="/">跳转到主页</router-link> <router-link :to="{ ...

  9. 鸿蒙内核源码分析(索引节点篇) | 谁是文件系统最重要的概念 | 百篇博客分析OpenHarmony源码 | v64.01

    百篇博客系列篇.本篇为: v64.xx 鸿蒙内核源码分析(索引节点篇) | 谁是文件系统最重要的概念 | 51.c.h.o 文件系统相关篇为: v62.xx 鸿蒙内核源码分析(文件概念篇) | 为什么 ...

  10. Redis之品鉴之旅(二)

    2)hash类型,上代码 using (RedisClient client = new RedisClient("127.0.0.1", 6379, "12345&qu ...