Linux/Centos 无网环境安装zabbix

zabbix 是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各类网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各类问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server能够经过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它能够运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。php

安装使用html

zabbix agent须要安装在被监视的目标服务器上,它主要完成对硬件信息或与操做系统有关的内存,CPU等信息的收集。zabbix agent能够运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows (2000/2003/XP/Vista)等系统之上。
zabbix server能够单独监视远程服务器的服务状态;同时也能够与zabbix agent配合,能够轮询zabbix agent主动接收监视数据(agent方式),同时还可被动接收zabbix agent发送的数据(trapping方式)。
另外zabbix server还支持SNMP (v1,v2),能够与SNMP软件(例如:net-snmp)等配合使用。前端

搭建Zabbix监控环境java

要想搭建一个Zabbix的工做环境,须要从服务器入手。与服务器通讯,管理员须要使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通讯。三个关键(界面、服务器和数据库)能够安装在同一台服务器上,可是若是你拥有一个更大更复杂的环境,将它们安装在不一样的主机上也是一个选项。Zabbix服务器可以直接监控到同一网络中的设备,若是其余网络的设备也须要被监控,那还须要一台Zabbix代理服务器。mysql

特色linux

zabbix的主要特色:
安装与配置简单,学习成本低
支持多语言(包括中文)
免费开源
自动发现服务器与网络设备
分布式监视以及WEB集中管理功能
能够无agent监视
用户安全认证和柔软的受权方式
经过WEB界面设置或查看监视结果
email等通知功能
Zabbix主要功能:nginx

CPU负荷
内存使用
磁盘使用
网络情况
端口监视
日志监视。web

介绍sql

本文是在centos6.8-64位系统上安装zabbix3.4.8版本数据库

本文中用到的全部软件添加最下方二维码免费提供
Linux/Centos 无网环境安装zabbix
本文是在lnmp环境上搭建zabbix3.4.8

Nginx版本:1.9.3 源码编译安装

Mysql版本:5.6.32 源码编译安装

php版本:5.6.9 源码编译安装

zabbix版本:3.4.8 源码编译安装

下面开始安装

系统环境准备

关闭防火墙

service iptables stop

chkconfig iptables off

关闭selinux

setenforce 0

vim /etc/sysconfig/selinux //修改以下

配置本地yum

配置本地yum源,若是机器有网络yum源,此步骤忽略

上传Centos6.8系统镜像到服务器目录:/data/zabbix
Linux/Centos 无网环境安装zabbix
挂载系统镜像盘

mkdir /data/yum/

mount -o loop /data/zabbix/CentOS-6.8-x86_64-bin-DVD1.iso /data/yum

df –h //挂载完后以下所示
Linux/Centos 无网环境安装zabbix
新建一个目录,把镜像里面的全部东西都拷贝出来,由于在后面安装rpm包的时候有些包系统镜像里面没有,这时候须要去网络yum源去下载包而后传到咱们本地yum源里放rpm包的地方,系统盘挂载是不容许写入的,因此咱们挂载后把全部的文件都拷贝到一个新目录

操做以下:

mkdir /data/yumserver

cp –R /data/yum/* /data/yumserver/

复制完之后,咱们去配置yum,操做以下

cd /etc/yum.repos.d/

mkdir bak

cp * ./bak

vim yum.repo //文件内容以下复制粘贴便可

[base]

name=yumserver

enabled=1

baseurl=file:///data/yumserver/

gpgcheck=0

yum list //若是出现不少包说明yum可用

开始安装

Nginx安装

软件版本:version 1.9.3

上传nginx-1.9.3.tar.gz到服务器目录:/usr/local/src

使用yum安装依赖包

yum install gcc zlib zlib-devel openssl openssl-devel pcre pcre-develncurse -y

(注:yum安装包的途中,若是报错 说那个包没有去能够上网的服务器访问下面地址,ctrl+f 搜索报错的包名,缺那个包去找那个,下载后传到服务器目录:/data/yumserver/Packages

而后继续安装。下面安装php和zabbix可能也须要去下载rpm包

Rpm包下载地址:http://mirrors.163.com/centos/6/os/x86_64/Packages/

示例:
Linux/Centos 无网环境安装zabbix
cd /usr/local/src

tar -zxvf /usr/local/src/nginx-1.9.3.tar.gz

cd nginx-1.9.3

./configure --prefix=/usr/local/nginx --with-http_realip_module --with-http_sub_module --with-http_gzip_static_module --with-http_stub_status_module --with-pcre --with-http_ssl_module

make && make install

启动方法

/usr/local/nginx/sbin/nginx

也能够经过/etc/init.d/nginx start|stop|restart方式

将附件里的nginx启动脚本上传到/etc/init.d/下

chmod 755 /etc/init.d/nginx //赋权

chkconfig --add nginx //添加nginx为系统服务

chkconfig nginx on //配置开机自启动

mysql安装

软件版本 MySQL-5.6.32

上传mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz到服务器目录:/usr/local/src (软件包见附件)

cd /usr/local/src

tar -zxvf mysql-5.6.32-linux-glibc2.5-x86_64.tar.gz

mv mysql-5.6.32-linux-glibc2.5-x86_64 /usr/local/mysql

groupadd mysql

useradd -g mysql mysql

cd /usr/local/mysql

mkdir /usr/local/mysql/data/tmp

chown -R mysql:mysql /usr/local/mysql/data

./scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

vim /etc/my.cnf //复制如下内容

[mysqld]

datadir=/usr/local/mysql/data

socket=/usr/local/mysql/data/mysql.sock

character_set_server=gbk

user=mysql

default-storage-engine=INNODB

tmpdir=/usr/local/mysql/data/tmp

symbolic-links=0

innodb_buffer_pool_size= 1G

skip-name-resolve

event_scheduler= 1

port= 3306

server_id= 1

wait_timeout=2880000

interactive_timeout= 2880000

max_allowed_packet= 512M

join_buffer_size= 128M

sort_buffer_size= 2M

read_rnd_buffer_size= 2M

lower_case_table_names= 1

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysqldump]

quick

max_allowed_packet= 512M

[client]

default-character-set=gbk

socket=/usr/local/mysql/data/mysql.sock

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

vim /etc/init.d/mysqld //文件开头添加以下内容

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

chkconfig --add mysqld //添加mysql为系统服务

chkconfig mysqld on //设置mysql开机自启动

service mysqld start //启动mysql

php安装

上传php-5.6.9.tar.gz到服务器目录:/usr/local/src

cd /usr/local/src

tar -zxvf php-5.6.9.tar.gz

ln -sv php-5.6.9 php

cd php/

./configure \

-prefix=/usr/local/php\

-with-config-file-path=/usr/local/php/etc\

-enable-inlin\

-disable-e-optimizationdebug \

-disable-rpath\

-enable-shared\

-enable-opcache\

-enable-fpm\

-with-mysql=/data/mysql\

-with-mysqli=/data/mysql/bin/mysql_config\

-with-pdo-mysql=/data/mysql\

-with-gettext\

-enable-mbstring\

-with-iconv\

-with-openssl\

-enable-bcmath\

-enable-soap\

-with-libxml-dir\

-enable-pcntl\

-enable-shmop\

-enable-sysvmsg\

-enable-sysvsem\

-enable-sysvshm\

-enable-sockets\

-with-curl\

-with-zlib\

-enable-zip\

-with-bz2\

-with-gd\

-with-freetype-dir\

-with-jpeg-dir\

-with-png-dir

(注意:配置过程当中可能会由于环境不一样,报错缺失rpm包,把报错信息复制粘贴百度,看是缺什么包,而后去网上下载回来yum安装 )

make && make install

php.ini是php运行核心配置文件

php-fpm.conf是php-fpm进程服务的配置文件

cp php.ini-production /usr/local/php/etc/php.ini

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm

fpm测试php配置

/usr/local/php/sbin/php-fpm –t
Linux/Centos 无网环境安装zabbix
#chkconfig --add php-fpm

#chkconfig php-fpm on

#service php-fpm start

配置nginx+php

配置php

#vim /usr/local/php/etc/php-fpm.conf //修改如下几项

user = www

group = www

listen = 10.42.221.56:8000 #使用真实ip

编辑php的ini文件并修改如下下内容

#vim /usr/local/php/etc/php.ini

post_max_size = 16M

max_execution_time = 300

max_input_time = 300

date.timezone = Asia/Shanghai

always_populate_raw_post_data= -1

配置nginx

#vim /usr/local/nginx/conf/nginx.conf //修改如下内容

user www;

server_name 10.42.221.56 ;

root /usr/local/nginx/html;

location ~ ^/.*.php$ {

root /usr/local/nginx/html;

       fastcgi_pass   10.42.221.56:8000;

       fastcgi_index  index.php;

       fastcgi_param SCRIPT_FILENAME   $document_root$fastcgi_script_name;

       include        fastcgi_params;

#vim /usr/local/php/etc/php-fpm.conf //修改如下两项

user = www

group = www

#groupadd www

#useradd –g www www

#cd /usr/local/nginx/html/

#vim index.php //写入下面内容

<?php phpinfo(); ?>

最后重启nginx和php-fpm

#/usr/local/nginx/sbin/nginx –s reload

#service php-fpm restart

访问http://ip/index.php出现下图说明成功
Linux/Centos 无网环境安装zabbix
zabbix安装

#tar -zxvf zabbix-3.4.8.tar.gz

#cd zabbix-3.4.8

设置web前端

#mkdir /usr/local/nginx/html/zabbix

#cp -R zabbix-3.4.3/frontends/php/* /usr/local/nginx/html/zabbix

设置nginx的执行和全部者

#chown -R www.www /usr/local/nginx/html/zabbix

赋予可执行权限

#chmod -R 755 /usr/local/nginx/html/zabbix/
建立zabbix用户和组
#groupadd zabbix
#useradd -g zabbix zabbix
编译安装zabbix
#./configure --enable-server --enable-agent --with-mysql=/data/mysql/bin/mysql_config --enable-ipv6 --enable-java --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc --with-ssh2 --with-openipmi --with-openssl --prefix=/usr/local/zabbix
编译成功会出现下图
Linux/Centos 无网环境安装zabbix
#make install

修改配置文件zabbix_server.conf

#vim /usr/local/zabbix/etc/zabbix_server.conf //修改如下内容

DBName=zabbix

DBUser=zabbix

DBPassword=zabbix

#cp zabbix-3.4.8/misc/init.d/fedora/core/zabbix_server /etc/init.d/zabbix_server

#cp zabbix-3.4.8/misc/init.d/fedora/core/zabbix_agentd /etc/init.d/zabbix_agentd

修改 /etc/init.d/zabbix_server、/etc/init.d/zabbix_agentd的BASEDIR=/usr/local/为BASEDIR=/usr/local/zabbix

进入数据库,刚装的mysql密码为空,直接回车就行

#mysql –u root

mysql>CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;

mysql>GRANT ALL PRIVILEGES ON . TO‘zabbix'@'localhost’ IDENTIFIEDBY 'zabbix';

mysql>use zabbix;

mysql>source zabbix-3.4.8/database/mysql/schema.sql;

mysql>source zabbix-3.4.8/database/mysql/images.sql;

mysql>source zabbix-3.4.8/database/mysql/data.sql;

重启全部服务

启动nginx

#/usr/local/nginx/sbin/nginx –s reload

重启数据库

#service mysqld restart

启动zabbix_server和zabbix_agent

#/etc/init.d/zabbix_server start

#/etc/init.d/zabbix_agentd start

设置zabbix开机自启

#chkconfig --add /etc/init.d/zabbix_server

#chkconfig --add /etc/init.d/zabbix_agentd

#chkconfig zabbix_server on

#chkconfig zabbix_agentd on

浏览器访问zabbix页面并进行初始化
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbixLinux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbixLinux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
Zabbix实现邮件报警
安装插件
安装邮件发送工具mailx
#yum –y install mailx dos2unix
配置
修改/etc/mail.rc,复制如下内容
#vim /etc/mail.rc
set sendcharsets=iso-8859-1,utf-8
set from=15149813470@163.com #发件人邮箱地址
set smtp=smtp.163.com #smtp服务器地址
set smtp-auth-user=15149813470@163.com #认证用户
set smtp-auth-password=xxxxxxxxx #认证密码
set smtp-auth=login

修改zabbix主配置文件zabbix_server.conf,加入下面一行
#vim /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts

新建邮件发送脚本sendmail.sh
#cd /usr/lib/zabbix/alertscripts
#vim sendmail.sh //复制如下内容
#!/bin/bash
FILE=/tmp/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE
mail -s "$2" $1 < $FILE
#chmod 755 sendmail.sh
#chown zabbix.zabbix sendmail.sh
#touch /tmp/mailtmp.txt
#chmod 755 /tmp/mailtmp.txt
#chown zabbix.zabbix /tmp/mailtmp.txt
配置web页面
建立媒体类型

管理–>报警媒介类型–>建立媒体类型
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
按图示填写完成后点击更新,就会在报警媒介类型中看到刚才建立的名为Email类型
给用户添加报警媒介

此处以Admin用户为例 管理–>用户–>点击Admin
Linux/Centos 无网环境安装zabbix
点击报警媒介,而后添加邮件接收人
Linux/Centos 无网环境安装zabbix
建立动做
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
Linux/Centos 无网环境安装zabbix
配置完成

添加完成后动做页面列表就会展现出来
此时没有添加相应的触发器,若是系统中任何一台机器出现告警信息,就会经过邮件发送器发送到对应的邮箱中。

而后咱们新建一个监控项,监听zabbix的22端口若是22端口处于侦听状态,就发邮件报警

邮件报警内容以下:
Linux/Centos 无网环境安装zabbix
若是对此文有什么问题的话,请加下面微信一块儿探讨
Linux/Centos 无网环境安装zabbix

相关文章
相关标签/搜索