环境

操作系统 最小化安装CentOS Linux release 7.2.1511
IP 192.168.88.1
zabbix版本 zabbix-3.4.4.tar.gz

zabbix依赖于LNMP环境部署

安装环境依赖包

yum install -y curl curl-devel net-snmp \
net-snmp-devel perl-DBI freetype freetype-devel \
libcurl-devel libxslt-devel pcre pcre-devel libevent-devel \
automake autoconf libtool gd gd-devel zlib zlib-devel openssl \
openssl-devel libxml2 libxml2-devel libjpeg libjpeg-devel libjpeg-turo-devel libpng libpng-devel

安装php

rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
yum --enablerepo=remi install php56 php56-php-fpm php56-php-mysqlnd php56-php-gd \
php56-php-xmlrpc php56-php-pecl-redis php56-php-mbstring php56-php-ldap
systemctl start php56-php-fpm
systemctl enable php56-php-fpm

启动后netstat -lntp查看9000端口是否起来

安装MySQL

yum install -y mariadb mariadb-server mairadb-devel

编辑/etc/my.cnf修改字符集为utf8

[mysqld]
...
character-set-server=utf8

启动数据库并设置密码为root,即账号密码为root/root,(这里演示用,实际生产环境设置复杂的密码)

systemctl restart mariadb
mysqladmin -uroot -p password 'root'

编译安装zabbix

tar xf zabbix-3.4..tar.gz

cd zabbix-3.4.
./configure \
--prefix=/opt/app/zabbix \
--enable-server \
--enable-agent \
--with-mysql \
--enable-bcmath \
--with-net-snmp \
--with-libcurl \
--with-libxml2 \
--enable-java #开启此功能需要安装jdk make install

创建普通用户zabbix, 因为zabbix不允许root用户运行

useradd zabbix
chown -R zabbix.zabbix /opt/app/zabbix

创建相关目录

cd /opt/app/zabbix
mkdir {logs,script} #存储日志和脚本的目录

在mysql创建数据库并导入数据

create database zabbix;
source /root/tools/zabbix-3.4./database/mysql/schema.sql
source /root/tools/zabbix-3.4./database/mysql/images.sql
source /root/tools/zabbix-3.4./database/mysql/data.sql

修改配置文件

[root@c1 etc]# cd /opt/app/zabbix/etc
[root@c1 etc]# grep -Ev "#|^$" zabbix_server.conf
LogFile=/opt/app/zabbix/logs/zabbix_server.log
PidFile=/opt/app/zabbix/logs/zabbix_server.pid
DBName=zabbix
DBUser=root
DBPassword=root
Timeout=
AlertScriptsPath=/opt/app/zabbix/script #指定脚本目录
LogSlowQueries= [root@c1 etc]# grep -Ev "#|^$" zabbix_agentd.conf
PidFile=/opt/app/zabbix/logs/zabbix_agentd.pid
LogFile=/opt/app/zabbix/logs/zabbix_agentd.log
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=c1.heboan.com

启动服务

/opt/app/zabbix/sbin/zabbix_server -c /opt/app/zabbix/etc/zabbix_server.conf
/opt/app/zabbix/sbin/zabbix_agentd -c /opt/app/zabbix/etc/zabbix_agentd.conf

安装web界面

安装nginx

useradd -s /sbin/nologin -M nginx
tar xf nginx-1.12..tar.gz
cd nginx-1.12. ./configure \
--prefix=/opt/app/nginx \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_realip_module \
--with-cpu-opt=amd64 \
--with-pcre
make
make install

拷贝web文件到nginx目录

mkdir /opt/app/nginx/html/zabbix
cd ~/tools/zabbix-3.4.
cp -r frontends/php/* /opt/app/nginx/html/zabbix/

调整php参数

yum install *bcmath* --skip-broken

/opt/remi/php56/root/etc/php.ini
[Date] #在此行下添加如下一行
date.timezone = Asia/Shanghai 找到如下参数并修改
post_max_size = 20M
max_execution_time =
max_input_time =
always_populate_raw_post_data =
...
extension=bcmath.so #################
vim /opt/app/nginx/html/zabbix/include/classes/setup/CFrontendSetup.php
public function checkPhpAlwaysPopulateRawPostData() {
$current = ini_get('always_populate_raw_post_data');
$current = -; ####添加此行
return [
'name' => _s('PHP option "%1$s"', 'always_populate_raw_post_data'),
'current' => ($current != -) ? _('on') : _('off'),
'required' => _('off'),
'result' => ($current != -) ? self::CHECK_FATAL : self::CHECK_OK,
'error' => _s('PHP option "%1$s" must be set to "%2$s"', 'always_populate_raw_post_data', -)
];
} systemctl restart php56-php-fpm

配置nginx虚拟主机

server {
listen ;
server_name zabbix.heboan.com;
location / {
root /opt/app/nginx/html/zabbix;
index index.html index.htm index.php;
} location ~ \.php$ {
root /opt/app/nginx/html/zabbix;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
} access_log /opt/app/nginx/logs/zabbix.log; }

启动nginx,访问http://zabbix.heboan.com进行安装,安装完成后,默认的用户名密码是admin/zabbix

安装zabbix监控系统的更多相关文章

  1. 以源码安装的lamp环境为依托,源码安装zabbix监控系统

    1.源码安装lamp环境 1)安装httpd, 以源码httpd-2.4.33为基础,解压后,执行./configure --prefix=/usr/local/ --sysconfdir=/etc/ ...

  2. linux记录-安装zabbix监控系统

    1. 安装依赖yum -y install libcurl-devel libxml2-devel net-snmp net-snmp-devel2. 安装 nginxyum -y install n ...

  3. CentOS 6.5安装部署Zabbix监控系统

    CentOS 6.5安装部署Zabbix监控系统 先说一点废话,我没有用centos7做实验,讲真,centos 7我也不常用,喜欢新版本的同学其实可以尝试下,注意一点的就是centos 6.5只支持 ...

  4. Zabbix监控系统部署:源码安装

    1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...

  5. Zabbix监控系统深度实践

    Zabbix监控系统深度实践(企业级分布式系统自动化运维必选利器,大规模Zabbix集群实战经验技巧总结,由浅入深全面讲解配置.设计.案例和内部原理) 姚仁捷 著  ISBN 978-7-121-24 ...

  6. 使用percona-xtrabackup实现对线上zabbix监控系统数据库mariadb5.5.47的主从同步

    使用percona-xtrabackup实现对线上zabbix监控系统数据库的主从同步 业务背景: zabbix3.0.4是业务的主要监控,部署在一台单机中,为避免数据丢失先对其做数据主从同步,因主数 ...

  7. Zabbix监控系统部署:基本功能测试

    1. 概述2. 登陆2.1 登陆账号密码2.1 设置中文语言环境3. 创建用户3.1 用户创建入口3.2 添加用户信息3.3 用户报警媒介3.4 用户权限4. 创建监控主机4.1 添加一台监控主机4. ...

  8. Zabbix监控系统部署:前端初始化

    1. 概述 在上一篇博客<Zabbix监控系统部署:源码安装.md>中,主要进行了zabbix最新版的源码编译安装. (博客园地址:https://www.cnblogs.com/liwa ...

  9. zabbix监控系统的配置

    一.zabbix介绍 zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系 ...

随机推荐

  1. CentOS查看系统版本号

    命令:cat /etc/redhat-release [elsearch@localhost data]$ cat /etc/redhat-release Red Hat Enterprise Lin ...

  2. 例子Architecting Android…The clean way?----代码分析

    Presention层:   整个应用启动的时候,就执行依赖的初始化.编译项目之后,Dagger依赖框架使用ApplicationComponent生成一个DaggerApplicationCOmpo ...

  3. 聂老师的考验(反向bfs)

    题目链接:http://113.240.233.2:8081/JudgeOnline/problem.php?id=1121 这个题看起来要多次使用bfs,其实只要换个思维就会发现这就是一个简单的bf ...

  4. 微信小程序提示框

    一.wx.showToast 如上图所示,showToast会显示一个弹窗,在指定的时间之后消失.中间的图标默认只有加载中和成功两种,也可以用image参数自定义图标 wx.showToast({ t ...

  5. .net XmlHelper xml帮助类

    using System.Data; using System.IO; using System.Xml; using System.Xml.Serialization; /// <summar ...

  6. sublime3 快捷键大全

    Ctrl+Shift+P:打开命令面板Ctrl+P:搜索项目中的文件Ctrl+G:跳转到第几行Ctrl+W:关闭当前打开文件Ctrl+Shift+W:关闭所有打开文件Ctrl+Shift+V:粘贴并格 ...

  7. 解决嵌套GridView显示不全的问题

    package com.adan.selectcitydome.view; import android.content.Context; import android.util.AttributeS ...

  8. xrange和range的区别

    >>> print type(range(5)) <type 'list'> >>> print type(xrange(5)) <type 'x ...

  9. python基础===requests学习笔记

    这里有一个新的学习requests网站:http://docs.python-requests.org/zh_CN/latest/user/quickstart.html2017/11/30 Requ ...

  10. gradle问题总结与理解(一篇文章带你理解android studio 与gradle 的关系)

    前言:近日在网上找了个很不错的安卓二维码美化,由于下载的项目经常出问题,且不方便依赖使用,因此我想把它写个demo,并把源码发布到jcenter中,修改还是很顺利的,运行项目到手机也没问题,发布遇到了 ...