运维监控之zabbix4.0(安装,自定义监控项)

Posted Linux土著运维攻城狮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运维监控之zabbix4.0(安装,自定义监控项)相关的知识,希望对你有一定的参考价值。

简介


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等平台上。

 

常用系统监控的命令

lscpu :查看cpu相关信息

uptime:查看系统负载

top:实时查看系统负载 按照内存排序按M 按1查看cpu个数

vmstat:查看内存 IO 交换分区 。。。加1是一秒刷新一次

mpstat:查看cpu的信息,加1是一秒刷新一次

htop:top升级版

free -m :查看swap分区

df -h :查看block  -i查看inode

iotop:查看IO读写

netstat -tunlp :查看运行的服务及端口


环境准备

系统版本:CentOS Linux release 7.2.1511 (Core)

内核版本:3.10.0-327.el7.x86_64

关闭防火墙及selinux

systemctl stop firewalld

systemctl disable firewalld

sed -i s#SELINUX=enforcing#SELINUX=disabled#g /etc/selinux/config #重启生效

setenforce 0 #运行是关闭

IP:172.16.1.123

基础优化:略(如果想要优化脚本的联系我)


安装yum源和zabbix源

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

yum clean all
yum makecache

rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm


 

安装数据库

yum install -y mariadb mariadb-server

systemctl start mariadb
systemctl enable mariadb

mysql_secure_installation                 #配置数据库 设置一个密码之后 一路yyyyyy

mysql -uroot -p  -e “create database zabbix character set utf8 collate utf8_bin;”  #建库

mysql -uroot -p  -e “grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';” #授权

mysql -uroot -p  -e “flush privileges;” #刷新一下 省的重启

 


 

安装zabbix

yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent php httpd php-mysql

sed -i 's#Server=127.0.0.1#Server=192.168.110.138#' /etc/zabbix/zabbix_agentd.conf #修改server端为本机ip


 

配置数据库

vim /etc/zabbix/zabbix_server.conf

DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix


 

导入数据

cd /usr/share/doc/zabbix-server-mysql-4.0.2/

zcat create.sql.gz | mysql -uroot -p zabbix   //密码zabbix 对应数据库中新建的zabbix库


 

启动服务

systemctl restart zabbix-server zabbix-agent
systemctl enable zabbix-server zabbix-agent

netstat -tunlp|grep zabbix  #查看一下 server监听10051端口 agent监听10050端口
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 1326/zabbix_agentd 
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 1688/zabbix_server 
tcp6 0 0 :::10050 :::* LISTEN 1326/zabbix_agentd 
tcp6 0 0 :::10051 :::* LISTEN 1688/zabbix_server


 

配置agent时区

vim /etc/httpd/conf.d/zabbix.conf

php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai     主要去掉#


 

启动httpd
systemctl restart httpd
systemctl enable httpd

 


 

浏览器访问http://192.168.1.123/zabbix/

一路设置~

默认用户名/密码:Admin/zabbix  #新版本默认账号密码都是zabbix

 

安装完毕

运维监控之zabbix4.0(安装,自定义监控项)


4.0版本对比3.4版本优化了很多,参见:http://blog.51cto.com/433266/2293984


自定义监控项


监控nginx连接数

nginx端配置

安装

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

yum install openssl -y

yum install nginx -y

systemctl start nginx

systemctl enable nginx


cd /etc/nginx/conf.d

vim nginx_status.conf

server {

    listen 8866;     #定义为8866端口


     location /nginx-status {       #自定义名称

      stub_status on;

      access_log /var/log/nginx/status.log;

      auth_basic "NginxStatus";

      }

}

重启

/usr/sbin/nginx -s reload

访问

http://192.168.1.123:8866/nginx-status

出现 这个就对了

运维监控之zabbix4.0(安装,自定义监控项)

配置zabbix

cd /etc/zabbix/zabbix_agentd.d/

vim nginx_status.conf

UserParameter=nginx.active,/usr/bin/curl -s "http://192.168.1.123:8866/Nginxstatus" |grep Active |awk '{print $NF}'

测试

yum install -y zabbix-get

zabbix_get -s 192.168.1.123:8866 -p 10050 -k"nginx.active"

出现值为OK

运维监控之zabbix4.0(安装,自定义监控项)

运维监控之zabbix4.0(安装,自定义监控项)

运维监控之zabbix4.0(安装,自定义监控项)点进去--创建应用集--起个名--创建--监控项--创建监控项

运维监控之zabbix4.0(安装,自定义监控项)

添加~

图形--创建图形--添加--选择--添加

运维监控之zabbix4.0(安装,自定义监控项)

如果有数据会显示在这里

运维监控之zabbix4.0(安装,自定义监控项)

如果想要设置连接数超过多少就报警,可以设置触发器

比如我设置连接数到10000就报警

点触发器,创建触发器


运维监控之zabbix4.0(安装,自定义监控项)

告警邮件配置

运维监控之zabbix4.0(安装,自定义监控项)

运维监控之zabbix4.0(安装,自定义监控项)

运维监控之zabbix4.0(安装,自定义监控项)

这里可以分用户,不同用户收到不同的报警邮件。如果觉得zabbix自带的告警不好用,可以用第三方或者自己写脚本来调。


PS:自己写脚本加到zabbix-agent的配置里,根据key值配置到页面。想监控什么就监控什么。


遇到的问题


字符集问题无法显示中文

解决办法

yum -y install wqy-microhei-fonts


cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/zabbix/fonts/DejaVuSans.ttf


sed -i s#"define('ZBX_GRAPH_FONT_NAME',          'graphfont');"#"define('ZBX_GRAPH_FONT_NAME',          'DejaVuSans');"#g /usr/share/zabbix/include/defines.inc.php



忘记登录密码

设置新密码:

生成加密的密码

[root@zabbix ~]# echo -n  "your password"  | openssl md5 

(stdin)= e2798af12a7a0f4f70b4d69efbc25f4d

进入数据库

mysql -uroot -p

使用库

>use zabbix

查看

>select * from users;

更新密码

>update users set  passwd='5fce1b3e34b520afeffb37ce08c7cd66' where userid = '1';

>flush privileges;

>\q


告警邮件配置

运维监控之zabbix4.0(安装,自定义监控项)

动作这里打开

运维监控之zabbix4.0(安装,自定义监控项)

报警媒介打开

运维监控之zabbix4.0(安装,自定义监控项)

随便加一个模板

运维监控之zabbix4.0(安装,自定义监控项)

运维监控之zabbix4.0(安装,自定义监控项)

发送成功

修改配置,优雅显示


以上是关于运维监控之zabbix4.0(安装,自定义监控项)的主要内容,如果未能解决你的问题,请参考以下文章

Zabbix4.0实战课程与Grafana可视化监控(全新企业级运维监控)

自定义监控监控报警

自定义监控监控报警

Zabbix4.0监控Nginx1.16.1

zabbix监控,Zabbix4.0安装配置,Linux监控

37-Zabbix自定义监控模板及告警设置