在操作系统CentOS release 6.5 (Final) 上进行安装,注意配置好yum源,可采用163或者阿里云的yum源。
一 zabbix server 安装配置
1、Nginx 安装(安装包为nginx-1.6.3.tar.gz)
yum install pcre pcre-devel openssl-devel –y
tar xf nginx-1.6.3.tar.gz
cd nginx-1.6.3/
useradd -s /sbin/nologin -M nginx
./configure --prefix=/usr/local/nginx-1.6.3/ --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
ln -s /usr/local/nginx-1.6.3/ /usr/local/nginx
/usr/local/nginx/sbin/nginx
/usr/local/nginx/sbin/nginx -s stop
2.安装mysql(安装包为mysql-5.5.49-linux2.6-x86_64.tar)
useradd -s /sbin/nologin -M mysql
mv mysql-5.5.49-linux2.6-x86_64 /usr/local/mysql-5.5.49
ln -s /usr/local/mysql-5.5.49/ /usr/local/mysql
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --user=mysql
chown -R mysql.mysql /usr/local/mysql
cp /usr/local/mysql/support-files/my-small.cnf /etc/my.cnf
/usr/local/mysql/bin/mysqld_safe &
3、Php 安装 (安装包为php-5.6.24.tar.gz )
yum install -y libxml2
yum install libxml2-devel
yum install -y libcurl-devel
yum install -y libjpeg-devel
yum install -y libpng-devel
yum install -y freetype-devel
yum -y install libxslt-devel
wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz
tar zxf libmcrypt-2.5.7.tar.gz
cd libmcrypt-2.5.7
./configure
make & make install
ln -s /usr/local/mysql/lib/libmysqlclient.so /usr/lib/
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
tar xf php-5.6.24.tar.gz
cd php-5.6.24/
./configure --prefix=/usr/local/php5.6.24 --with-mysql=/usr/local/mysql \
--with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-iconv-dir=/usr/local/libiconv --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib \
--with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath \
--enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl \
--enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf \
--with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip \
--enable-soap --enable-short-tags --enable-static --with-xsl \
--with-fpm-user=nginx --with-fpm-group=nginx --enable-ftp --with-gettext
make & make install (如果编译错误,可以运行make clean all,再进行编译)
cp php.ini-production /usr/local/php/lib/php.ini
cat php-fpm.conf
[global]
[www]
user = nginx
group = nginx
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
启动PHP
php-fpm
4 整合
vi /usr/local/nginx/conf/nginx.conf 内容如下:
server {
listen 80;
server_name centos.yun;
access_log /data/logs/nginx/centos.yun.access.log access;
index index.html index.php index.html;
root /data/site/centos.yun;
location /
{
try_files $uri $uri/ /index.php?$args;
}
location ~ ^(.+.php)(.*)$ {
fastcgi_split_path_info ^(.+.php)(.*)$;
include fastcgi.conf;
#fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/tmp/php-cgi.sock;(根据实际内容修改)
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
vi /usr/local/nginx/html/zabbix/info.php
<?php
phpinfo();
?>
vi /usr/local/php/lib/php.ini 修改里面的参数
5. 安装zabbix server(安装包为zabbix-3.2.3.tar.gz )
tar xf zabbix-3.2.3.tar.gz
cd zabbix-3.2.3
./configure --prefix=/usr/local/zabbix-server --enable-server --with-mysql=/usr/local/mysql-5.5.49/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 --enable-agent --enable-proxy
make install
groupadd zabbix
useradd -g zabbix zabbix
cd /usr/local/nginx/html/zabbix/
cp -a /root/zabbix-3.2.3/frontends/php/* .
cd /root/zabbix-3.2.3/database/mysql/
/usr/local/mysql/bin/mysql
create database zabbix default charset utf8;
grant all privileges on zabbix.* to zabbix@'192.%' identified by 'zabbix';
grant all privileges on zabbix.* to zabbix@'localhost' identified by 'zabbix';
/usr/local/mysql/bin/mysql -uzabbix -pzabbix zabbix < schema.sql
/usr/local/mysql/bin/mysql -uzabbix -pzabbix zabbix < images.sql
/usr/local/mysql/bin/mysql -uzabbix -pzabbix zabbix < data.sql
vi /usr/local/zabbix-server/etc/zabbix_server.conf
DBHost=192.168.3.4
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/usr/local/mysql/mysql.sock
/usr/local/zabbix-server/sbin/zabbix_server -c /usr/local/zabbix-server/etc/zabbix_server.conf
为了测试snmp,进行安装
yum install net-snmp net-snmp-utils
测试snmp访问
snmpwalk -v 2c -c yang 14.1.8.1 1.3.6.1.2.1.2.2.1.10.2
6 配置自启动
在/etc/rc.local中配置文件中加入
/usr/local/nginx/sbin/nginx
/usr/local/mysql/bin/mysqld_safe &
/usr/local/php5.6.24/sbin/php-fpm
/usr/local/zabbix-server/sbin/zabbix_server -c /usr/local/zabbix-server/etc/zabbix_server.conf
二 zabbix aent 安装配置
1. 在centos6.5上安装
rpm -Uvh http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-agent-3.2.4-1.el6.x86_64.rpm
vi /etc/zabbix/zabbix_agentd.conf
Server=Zabbix Server IP
ServerActive=Zabbix Server IP
Hostname=AgentName
Include= /etc/zabbix/zabbix_agentd.conf.d/
这个选项不要配置,否则会造成agent 查找conf 出现递归,无法启动。经过测试,上述情况没有发生。
这个选项可以配置,并且在自定义返回参数的时候,需要用到此目录下的配置文件
/etc/init.d/zabbix-agent start
chkconfig zabbix-agent on
2. 在centos7上安装
关闭selinux
sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
setenforce 0
防火墙设置
允许zabbix-agent的10050端口通过
firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --reload
如下亲自实验成功
环境:CentOS Linux release 7.2.1511
机器1:zabbix服务器 192.168.1.10
机器2:zabbix-agent 192.168.1.11
***********192.168.1.11***************************
#yum localinstall -y http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
#yum install -y zabbix-agent
#cp /etc/zabbix/zabbix_agentd.conf{,.original}
#vim /etc/zabbix/zabbix_agentd.conf #编辑zabbix_agentd.conf 文件
SourceIP=192.168.1.10
Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=edm.cookie.com
#systemctl enable zabbix-agent.service
#systemctl start zabbix-agent.service
#vim /etc/sysconfig/iptables 设置防火墙,对zabbix服务器开放10050端口
-A INPUT -s 192.168.1.10 -p tcp -m state --state NEW -m tcp --dport 10050 -j ACCEPT
#systemctl restart iptables
*************测试****192.168.1.10***********************
zabbix_get -s 192.168.1.11 -p 10050 -k 'agent.ping'
3. windows 安装
安装
zabbix_agentd.exe -c c:\zabbix_agent\conf\zabbix_agentd.win.conf -i
找到conf下的配置文件 zabbix_agentd.win.conf ,需要修改的内容为:LogFile、Server、Hostname、ServerActive这几个参数
运行
zabbix_agentd.exe -c c:\zabbix_agent\conf\zabbix_agentd.win.conf -s
卸载
zabbix_agentd.exe -c c:\zabbix_agent\conf\zabbix_agentd.win.conf -d
在zabbix server 界面进行配置的时候,可以输入IP地址
三 zabbix邮件报警设置
cd /usr/local/src/
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
yum install perl-Net-SSLeay perl-IO-Socket-SSL -y
tar -xvf sendEmail-v1.56.tar.gz
cd sendEmail-v1.56
cp -ra sendEmail /usr/local/bin/
chmod +x /usr/local/bin/sendEmail
chown zabbix:zabbix /usr/local/bin/sendEmail
/usr/local/bin/sendEmail -f [email protected] -t [email protected] -s smtp.jiaying.tv -u "zabbxitest" -o message-content-type=html -o message-charset=utf8 -o tls=auto -xu [email protected] -xp xxxxxxx -m "我是邮件内容"
/usr/local/bin/sendEmail -f [email protected] -t [email protected] -s smtp.163.com -u "zabbxitest" -o message-content-type=html -o message-charset=utf8 -o tls=auto -xu [email protected] -xp xxxxxxx -m "this is a test"
/usr/local/bin/sendEmail -f [email protected] -t [email protected] -s smtp.163.com -u "zabbix is OK" -o message-content-type=html -o message-charset=utf8 -o tls=auto -xu [email protected] -xp xxxxxx -m "zabbix is OK"
cd /usr/local/zabbix-server/share/zabbix/alertscripts/
vi sendmail.sh
#!/bin/bash
to=$1
subject=$2
body=$3
/usr/local/bin/sendEmail -f [email protected] -t "$to" -s smtp.jiaying.tv -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu [email protected] -xp xxxxxxxx! -m "$body"
chmod a+x sendmail.sh
chown zabbix:zabbix sendmail.sh
在界面进行如下的设置:
1. 管理-示警媒介类型-Email(或者进行脚本设置),如果要进行脚本设置需要定义三个脚本参数 {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE}
2 设置Zabbix用户报警邮箱地址 3. 设置Zabbix触发报警的动作 如果采用脚本方式告警,需要
设置每天早上7-22 每隔2个小时发送邮件。
* 7-23/2 * * * /usr/local/zabbix-server/share/zabbix/alertscripts/zabbixok.sh