环境

操作系统 最小化安装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. sql cmd命令执行sqlserver的sql文件

    有的时候,我们通过Log Explorer工具根据日志生成的回滚脚本,或者其他情况我们得到的脚本文件,通过sqlserver打开脚本文件的方式不爽,我们可以这样: 方式一: osql -S . -U ...

  2. mysql无法通过ip地址链接

    用BitNami搭建个站点(内含mysql数据库服务.phpmyadmin和Apache web Service), 用localhost或127.0.0.1及用户名密码连接没有问题.但是本机或远程通 ...

  3. Robot Framework 自定义关键字 Ignore error

    以上是关键字的完整写法. 一下是调用该关键字的实例.

  4. 【NOIP】提高组2015 斗地主

    [题意]按照斗地主出牌规则,给定手牌求出完的最少步数. [算法]模拟+搜索 [题解] 可以发现除了顺子,其它的出牌规则都和点数无关,只与同点数的牌数有关. 所以可以先暴力枚举要出哪些顺子,然后每一个出 ...

  5. 【转】C++多继承的细节

    这几天写的程序应用到多继承. 以前对多继承的概念非常清晰,可是很久没用就有点模糊了.重新研究一下,“刷新”下记忆. 假设我们有下面的代码: #include <stdio.h> class ...

  6. python基础===创建大量对象是节省内存方法

    问题: 你的程序要创建大量(可能上百万) 的对象,导致占用很大的内存. 解决方案: 对于主要是用来当成简单的数据结构的类而言,你可以通过给类添加__slots__属性来极大的减少实例所占的内存.比如: ...

  7. python基础===字符串的制表,换行基础操作

    \n\t 制表符和换行符 >>> print("Languages:\n\tPython\n\tC\n\tJavaScript") Languages: Pyth ...

  8. python基础===如何优雅的写代码(转自网络)

    本文是Raymond Hettinger在2013年美国PyCon演讲的笔记(视频, 幻灯片). 示例代码和引用的语录都来自Raymond的演讲.这是我按我的理解整理出来的,希望你们理解起来跟我一样顺 ...

  9. MariaDB 复合语句和优化套路

    测试环境准备 本文主要围绕的对象是mariadb 高级语法,  索引优化,  基础sql语句调优. 下面那就开始搭建本次测试的大环境. 首先下载mariadb开发环境, 并F5 run起来. 具体参照 ...

  10. [caffe error] undefined reference to `inflateValidate@ZLIB_1.2.9'

    undefined reference to `inflateValidate@ZLIB_1.2.9' Makefile.config添加一行LINKFLAGS := -Wl,-rpath,$(HOM ...