CentOS 6.5安装部署Zabbix监控系统
CentOS 6.5安装部署Zabbix监控系统
先说一点废话,我没有用centos7做实验,讲真,centos 7我也不常用,喜欢新版本的同学其实可以尝试下,注意一点的就是centos 6.5只支持到php5.3.3版本,不支持以上版本,当然,你要是编译安装的话也是可以的,反正centos 6.5和centos 7 部署的过程没差多少,喜欢用哪个系统,个人喜好而已。
本文实验环境信息:
zabbix_server(服务端): 10.0.10.120 CentOS 6.5-x86_64最小化
zabbix_agentd(客户端): 10.0.10.100 CentOS 6.5-x86_64最小化
Zabbix2.2.2(版本比较老,但是常用的功能都有了)
安装centos 6.5-x86_64
在这里,建议大家最小化安装,占用的资源比较少,就算缺某些常用的程序,还可以用yum安装嘛,安装的时候直接配置好网络参数,安装重启后就能直接用了,不然又要进去改,太麻烦
服务端分区建议采用以下的格式:
/boot 500M
swap 8G //这个根据自己的服务器内存大小来定
/var 30G //主要用来存放日志,也可以根据服务器的磁盘空间调整
/ 剩下所有空间
我一般装系统的时候直接让系统自动使用全部空间,生成的是基于LVM逻辑卷的分区,我直接修改,把/home去掉或者改动成别的分区,然后把根分区调整成使用全部空间。
装完后直接关掉iptables和selinux,不然后面会很麻烦
Zabbix_Server端安装
1.安装开发软件包
yum -y groupinstall "Development Tools"
2.安装所需要的各种环境包
rpm-ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm //我用的版本没有nginx源,就网上找了一个
yum –y install php*
yum –y install mysql*
yum –y install nginxcurl curl-devel net-snmp net-snmp-devel wget vim
3.同步服务器的时间
ntpdate pool.ntp.rog //如果内网有NTP服务器也是可以用的
4.创建zabbix服务所需的用户和组
groupadd –g 201 zabbix
useradd –g zabbix –u 201 –m zabbix
5.mysql数据库环境准备
service mysqld start
chkconfig mysqld on
mysqladmin -u root password "123456" //这里建议使用高复杂度密码
mysql –u root –p //输入密码登陆数据库
mysql>create database zabbix character set utf8;
mysql>insert into mysql.user(Host,User,Password)
values("localhost","admin",password("123456")); //创建用户
mysql>grant all privileges on zabbix.* to admin@localhost identified by '123456';
//把创建的库授权给新用户
mysql>flush privileges; //刷新系统权限表
6.下载zabbix包
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz
tar –zxvf zabbix-2.2.2.tar.gz
cd zabbix-2.2.2
mysql –u admin –p 用admin账户导入zabbix数据库
mysql> source /root/zabbix-2.2.2/database/mysql/schema.sql
mysql> source /root/zabbix-2.2.2/database/mysql/data.sql
mysql> source /root/zabbix-2.2.2/database/mysql/images.sql
7.编译安装zabbix_server
./configure --prefix=/etc/zabbix/ --enable-server --enable-agent --with-net-snmp --with-libcurl --with-mysql
make && make install
8.将zabbix_server和zabbix_agentd服务加入到开机自启
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
cp misc/init.d/tru64/zabbix_server /etc/init.d/
chmod +x /etc/init.d/zabbix_*
vim /etc/init.d/zabbix_server和zabbix_agentd并且在#!/bin/bash下添加下面的两句
# chkconfig: - 95 95
# description: Zabbix Server
chkconfig --add zabbix_server
chkconfig –add zabbix_agentd
chkconfig zabbix_server on
chkconfig zabbix_agentd on
9.配置nginx+SSL环境,支持PHP访问等
chkconfig nginx on
cd ~/zabbix-2.2.2
mkdir –p /data/html/zabbix/
cp -a frontends/php/* /data/html/zabbix/
chown -Rf apache.apache /data/html/zabbix/
chmod –Rf 755 /data/html/zabbix/
mkdir –p /etc/nginx/cert
cd /etc/nginx/cert //创建自签名证书步骤
openssl genrsa -des3 -out nginx.key 2048
openssl req -new -key nginx.key -out nginx.csr
cp nginx.key nginx.key.org
openssl rsa -in nginx.key.org -out nginx.key
openssl x509 -req -days 365 -in nginx.csr -signkey nginx.key -out nginx.crt
vim /etc/nginx/conf.d/zabbix1.conf 写入一下内容
server {
listen 80;
server_name localhost;
rewrite ^(.*)$ https://$host$1 permanent;
#为了安全起见,配置了80重定向到443
location / {
root /data/html/zabbix/;
index index.html index.htm index.php;
}
location ~ \.php$ {
root /data/html/zabbix/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/html/zabbix/$fastcgi_script_name;
include fastcgi_params;
}
}
vim /etc/nginx/conf.d/zabbix2.conf 写入一下内容
server {
listen 443;
server_name localhost;
ssl on;
ssl_certificate /etc/nginx/cert/nginx.crt;
ssl_certificate_key /etc/nginx/cert/nginx.key;
ssl_protocols SSLv3 SSLv2 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
location / {
root /data/html/zabbix/;
index index.html index.htm index.php;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /data/html;
}
location ~ \.php$ {
root /data/html/zabbix/;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/html/zabbix/$fastcgi_script_name;
include fastcgi_params;
}
}
cd /etc/nginx/conf.d/
rm –rf default.conf
service nginx start
10.配置PHP环境
vim /etc/php.ini //修改以下参数
date.timezone = Asia/Shanghai
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
memory_limit = 128M
service php-fpm start
chkconfig php-fpm on
11.配置zabbix_server.conf和zabbix_agentd.conf
vim /etc/zabbix/etc/zabbix_server.conf
DBHost=localhost
DBName= zabbix
DBUser=admin
DBPassword=123456
Logfile=/var/log/zabbix/zabbix_server.log
#加粗部分是必须内容,下面的内容根据自己的情况而定
StartPollers=30 #开启多线程数,一般不要超过30个
StartTrappers=20 #trapper线程数
StartPingers=10 #fping线程数
StartDiscoverers=120
MaxHousekeeperDelete=5000
CacheSize=1024M #用来保存监控数据的缓存数,根据监控主机的数量适当调整
StartDBSyncers=8 #数据库同步时间
HistoryCacheSize=1024M
TrendCacheSize=128M #总趋势缓存大小
HistoryTextCacheSize=512M
AlertScriptsPath=/etc/zabbix/alertscripts
LogSlowQueries=1000
vim /etc/zabbix/etc/zabbix_server.conf 写入以下内容
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=localhost
UnsafeUserParameters=1
LogFile=/var/log/zabbix/zabbix_agentd.log
touch /var/log/zabbix/zabbix_server.log
touch /var/log/zabbix/zabbix_agentd.log
chmod –Rf 755 /var/log/zabbix/zabbix_*
chown –Rf zabbix:zabbix /var/log/zabbix/zabbix_*
service zabbix_server start
service zabbix_agentd start
查看日志服务是否正常启动
tail –f /var/log/zabbix/zabbix_server.log
tail –f /var/log/zabbix/zabbix_agentd.log
12.网页管理配置
其实后台服务已经起来了,不过我们还需要最后一项配置,就是网页管理啊
浏览器中直接输入zabbix服务器的地址,就可以直接进入了,由于证书是自己生成并签名的,所以浏览器很可能不会通过。我们需要手动放行下。就能看到下面的这个页面了
点击下一步;
必须确认其中没有报错,否则不能进行下一步安装;
输入我们添加的数据库用户名和密码,主机直接写localhost,端口默认,测试连接是否成功,正确后直接点击下一步;
这里主机直接填写为localhost,因为服务器是能解析到自己的,所以不建议修改hostname,直接下一步,然后确认保存配置文件到本地,就能进入到管理页面了;
管理员默认密码是admin / zabbix
输入用户名和密码进行登陆;
好了,服务端已经安装完成了,由于初始的界面是因为的,我们需要自己调整。
点击右上角的profile,将语言调整为中文就OK了
Zabbix_agent客户端安装
其实大家也看到了,客户端安装也和上面的差不多,只是少了网页管理,配置文件和其他地方修改都是一样的
1、安装依赖软件包
yum -y groupinstall "Development Tools"
yum –y install ntpdate net-snmp net-snmp-devel wget vim
2、同步客户端时间
ntpdate pool.ntp.org
3、创建zabbix运行所需要的用户跟组
groupadd -g 201 zabbix
useradd -g zabbix -u 201 -m zabbix
4.下载安装zabbix_agent
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz
tar –zxvf zabbix-2.2.2.tar.gz
cd zabbix-2.2.2
/configure --prefix=/etc/zabbix --enable-agent
make && make install
5. 将zabbix_agentd服务加入到开机自启
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_*
vim /etc/init.d/zabbix_agentd并且在#!/bin/bash下添加下面的两句
# chkconfig: - 95 95
# description: Zabbix Server
chkconfig –add zabbix_agentd
chkconfig zabbix_agentd on
6.配置agentd客户端配置文件
vim /etc /zabbix/etc/zabbix_agentd.conf 并写入以下内容
Server=10.0.10.100
ServerActive=10.0.10.100
#这里的IP地址为服务端的地址
Hostname=localhost
UnsafeUserParameters=1
LogFile=/var/log/zabbix/zabbix_agentd.log
7. 启动zabbix_agentd服务
touch /var/log/zabbix/zabbix_agentd.log
chmod –Rf 755 /var/log/zabbix/zabbix_*
chown –Rf zabbix:zabbix /var/log/zabbix/zabbix_*
service zabbix_agentd on
查看日志服务是否正常启动
tail –f /var/log/zabbix/zabbix_agentd.log
邮件告警设置
邮件报警有两种情况:
1、Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:root@localhost.localdomain),只能发送,不能接收外部邮件。
2、使用一个可以在互联网上正常收发邮件的邮箱账号(例如:xxx@163.com),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。
在这里,我只写第二种情况的设置步骤
service sendmail stop
chkconfig sendmail off
service postfix stop
chkconfig postfix off
yum install mailx -y
备注:
使用外部邮箱账号时,不需要启动sendmail或者postfix
如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱配置信息。
1.配置Zabbix服务端外部邮箱
vi /etc/mail.rc #编辑,添加以下信息,注意:信息根据自己的情况而定
set from=xxx@163.com smtp=smtp.163.com
set smtp-auth-user=xxx@163.com smtp-auth-password=123456
set smtp-auth=login
:wq! #保存退出
echo "zabbix test mail" |mail -s "zabbix" yyy@163.com
#测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:yyy@163.com,这时候,邮箱yyy@163.com会收到来自xxx@163.com的测试邮件
管理-用户-Admin (Zabbix Administrator)
默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
告警时间:{EVENT.DATE} {EVENT.TIME}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
恢复主旨:恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
告警时间:{EVENT.DATE} {EVENT.TIME}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
cd /etc/zabbix/share/zabbix/alertscripts #进入脚本存放目录
chown zabbix.zabbix /etc/zabbix/share/zabbix/alertscripts/sendmail.sh
chmod +x /etc/zabbix/share/zabbix/alertscripts/sendmail.sh
CentOS 6.5安装部署Zabbix监控系统的更多相关文章
- CentOS 7.4 下安装部署Nagios监控系统详细攻略(三)
Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户.它是基于GPLv2开发的开源软件,可免费获得及使用. nagios工作原理 nagios的功能是监控服务 ...
- centos6.5安装部署zabbix监控服务端和客户端
部署zabbix服务端需要LNMP环境(nginx,mysql,php),其它数据库也可以,我这里使用mysql,关于LNMP环境部署,可以参考我的另一遍文章:http://www.cnblogs.c ...
- CentOS 7.2安装lepus数据库监控系统
环境说明 系统版本 CentOS 7.2 x86_64 软件版本 lepus 3.7 Lepus是一套开源的数据库监控平台,目前已经支持MySQL.Oracle.SQLServer.MongoDB ...
- CentOS 6.7安装配置Cacti监控系统
一.安装配置LAMP环境 yum -y install httpd php php-mysql php-snmp php-xml php-gd mysql mysql-server 启动http和my ...
- Zabbix监控系统部署:源码安装
1. 概述1.1 基础环境2. 部署过程2.1 创建用户组2.2 下载源码解压编译安装2.2.1 下载源码解压2.2.2 YUM安装依赖环境2.2.3 编译安装最新版curl2.2.4 更新GNU构建 ...
- Zabbix监控系统部署:基本功能测试
1. 概述2. 登陆2.1 登陆账号密码2.1 设置中文语言环境3. 创建用户3.1 用户创建入口3.2 添加用户信息3.3 用户报警媒介3.4 用户权限4. 创建监控主机4.1 添加一台监控主机4. ...
- Zabbix监控系统部署:前端初始化
1. 概述 在上一篇博客<Zabbix监控系统部署:源码安装.md>中,主要进行了zabbix最新版的源码编译安装. (博客园地址:https://www.cnblogs.com/liwa ...
- RHEL6 最小化系统 编译安装部署zabbix (mysql)
RHEL6 最小化系统 编译安装部署zabbix (mysql)官方说明详细见:https://www.zabbix.com/documentation/4.0/manual/installation ...
- 部署zabbix监控平台(源码安装)
案例:部署Zabbix监控平台 1 问题 本案例要求部署一台Zabbix监控服务器,一台被监控主机,为进一步执行具体的监控任务做准备: 安装LNMP环境 源码安装Zabbix 安装监控端主机,修改基本 ...
随机推荐
- hdu--1798--Doing Homework again(贪心)
Doing Homework again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- NYOJ--927--dfs--The partial sum problem
/* Name: NYOJ--927--The partial sum problem Author: shen_渊 Date: 15/04/17 19:41 Description: DFS,和 N ...
- ubuntu 创建 PyCharm 桌面快捷方式 (或者叫 启动器 )
优麒麟新出的 17.04 新加了各种软件支持.忍不住体验一把.可是安装完 PyCharm 之后,总是无法创建桌面快捷方式(这种说法貌似是windows的,ubuntu不认,它管这种方式 叫 启动器). ...
- ACM做题过程中的一些小技巧
1.一般用C语言节约空间,要用C++库函数或STL时才用C++; cout.cin和printf.scanf最好不要混用. 2.有时候int型不够用,可以用long long或__int64型(两个下 ...
- sqlite的几种访问方法
方法1:直接执行SQL语句 sqlite3* db = Open(_T("./test.db3"), FALSE); if (db != NULL) { ExecuteSQL(db ...
- 【Hadoop】HDFS的java客户端编写
项目使用了Maven Project 快速进行HDFS 客户端程序测试 客户端操作系统:win10 64位 JDK: 1.7.0_79 开发工具 :Eclipse Luna pom.xml < ...
- linux磁盘分区 简要
基础知识: 以机械磁盘来说,磁盘的组成为盘片.机械手臂.磁头.主轴马达. 数据被写入在盘片上. 盘片分为 扇区Sector 柱面Cylinder 整块磁盘的第一个扇区特别重要 用来存放主引导分区Mas ...
- 跨server传输数据注意事项
我们需要模拟客服端 首先导入相关的jar包 文件,Jersey的相关jar包 实现客服端的代码为: @Test public void testClient() { //图片生成 ...
- HTTP常见状态码
1.100状态码 1xx:临时响应,表示临时相应并需要请求者继续操作的状态码 100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101 ...
- 递归调用里的性能问题(js)
说明 这是在codewars.com上刷的一道js练习题,在此做个记录 问题描述 The Fibonacci sequence is traditionally used to explain tre ...