码迷,mamicode.com
首页 > 其他好文 > 详细

zabbix

时间:2018-10-22 12:59:18      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:需要   utf-8   emc   ase   rac   自定义模板   nat   出现   汇报   

19.1 Linux监控平台介绍
  • cacti、nagios、zabbix、smokeping、open-falcon等等
  • cacti、smokeping偏向于基础监控,成图非常漂亮
  • cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
  • open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究
  • 后续以介绍zabbix为主
19.2 zabbix监控介绍
  • C/S架构,基于C++开发,监控中心支持web界面配置和管理
  • 单server节点可以支持上万台客户端
  • 最新版本3.4,官方文档https://www.zabbix.com/manuals
  • 5个组件
  • zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据
  • 数据存储 存放数据,比如mysql
  • web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因
  • zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力
  • zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报
19.3/19.4/19.6 安装zabbix

服务端配置

安装zabbix源,官网下载地址www.zabbix.com/download

[root@localhost ~]# wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
[root@localhost ~]# rpm -ivh zabbix-release-4.0-2.el7.noarch.rpm

安装zabbix

[root@localhost ~]# yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web-mysql

mysql配置

[root@localhost ~]# vim /etc/my.cnf 
character_set_server = utf8
[root@localhost ~]# mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by ‘password‘;
mysql> quit
[root@localhost ~]# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

zabbix配置

[root@localhost ~]# vim /etc/zabbix/zabbix_server.conf
DBPassword=password
[root@localhost ~]# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
[root@localhost ~]# systemctl start zabbix-server zabbix-agent httpd
[root@localhost ~]# systemctl enable zabbix-server zabbix-agent httpd

浏览器输入ip/zabbix,初始化zabbix
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片
技术分享图片

用户名Admin 密码zabbix
进入后台第一件事情就是修改密码

客户端配置

安装zabbix源,官网下载地址www.zabbix.com/download

[root@localhost ~]# wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
[root@localhost ~]# rpm -ivh zabbix-release-4.0-2.el7.noarch.rpm

安装zabbix

[root@localhost ~]# yum install -y zabbix-agent
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.32.10 //定义服务端的ip(被动模式)
ServerActive=192.168.32.10 //定义服务端的ip(主动模式)
Hostname=aming-01 //这是自定义的主机名,一会还需要在web界面下设置同样的主机名
[root@localhost ~]# systemctl start zabbix-agent
[root@localhost ~]# systemctl enable zabbix-agent
19.5 忘记Admin密码如何做
[root@localhost ~]# mysql -u root -p
mysql> use zabbix;
mysql> update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
19.7 主动模式和被动模式
  • 主动或者被动是相对客户端来讲的
  • 被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端
  • 主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。
  • 当客户端数量非常多时,建议使用主动模式,这样可以降低服务端的压力。
  • 服务端有公网ip,客户端只有内网ip,但却能连外网,这种场景适合主动模式
19.8 添加监控主机

添加主机群组
技术分享图片
技术分享图片
添加主机
技术分享图片
技术分享图片

19.9 添加自定义模板

添加模板
技术分享图片
技术分享图片
技术分享图片
取消链接,让原先模板的内容保留
技术分享图片
技术分享图片
删除我们不需要的应用集、监控项、触发器、图形、自动发现、web监测,保留以下监控项即可
技术分享图片

19.10 处理图形中的乱码

设置为中文后,zabbix图形的中文文字会显示小方框,这是因为在zabbix的字体库中没有中文字体

需要从windows上借用一个过来,windows字体路径为“C:\Windows\Fonts”,上传到linux的/usr/share/zabbix/fonts/,并重新软连接

[root@localhost ~]# cd /usr/share/zabbix/fonts
[root@localhost fonts]# ll
total 17788
lrwxrwxrwx. 1 root root       33 Oct 20 20:46 graphfont.ttf -> /etc/alternatives/zabbix-web-font
-rw-r--r--. 1 root root 18214472 Oct 21 21:37 simsun.ttc
[root@localhost fonts]# mv graphfont.ttf graphfont.ttf.bak
[root@localhost fonts]# ln -s simsun.ttc graphfont.ttf
[root@localhost fonts]# ll
total 17788
lrwxrwxrwx. 1 root root       10 Oct 21 21:38 graphfont.ttf -> simsun.ttc
lrwxrwxrwx. 1 root root       33 Oct 20 20:46 graphfont.ttf.bak -> /etc/alternatives/zabbix-web-font
-rw-r--r--. 1 root root 18214472 Oct 21 21:37 simsun.ttc
19.11 自动发现

修改一下自动发现规则
技术分享图片
技术分享图片
在图形中就会自动出现
技术分享图片
技术分享图片

19.12 添加自定义监控项目

客户端配置

[root@localhost ~]# vim /usr/local/sbin/estab.sh
#!/bin/bash
##获取80端口并发连接数
netstat -ant |grep ‘:80 ‘ |grep -c ESTABLISHED
[root@localhost ~]# chmod 755 /usr/local/sbin/estab.sh
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
UnsafeUserParameters=1
UserParameter=my.estab.count[*],/usr/local/sbin/estab.sh
[root@localhost ~]# systemctl restart zabbix-agent

服务端验证

[root@localhost ~]# zabbix_get -s 192.168.133.132 -p 10050 -k ‘my.estab.count‘
0

服务端配置
添加监控项、图形,有需要可以配置触发器
技术分享图片
技术分享图片

19.13/19.14 配置邮件告警

web创建邮件告警
技术分享图片
技术分享图片
{ALERT.SENDTO} ,{ALERT.SUBJECT},{ALERT.MESSAGE}

创建mail.py脚本

[root@localhost ~]# vim /usr/lib/zabbix/alertscripts/mail.py
#!/usr/bin/env python
#-*- coding: UTF-8 -*-
import os,sys
reload(sys)
sys.setdefaultencoding(‘utf8‘)
import getopt
import smtplib
from email.MIMEText import MIMEText
from email.MIMEMultipart import MIMEMultipart
from  subprocess import *

def sendqqmail(username,password,mailfrom,mailto,subject,content):
    gserver = ‘smtp.163.com‘
    gport = 25

    try:
        # msg = MIMEText(unicode(content).encode(‘utf-8‘)) //如果发送的邮件有乱码,可以尝试把这行改成如下:
        msg = MIMEText(content,‘plan‘,‘utf-8‘) 
        msg[‘from‘] = mailfrom
        msg[‘to‘] = mailto
        msg[‘Reply-To‘] = mailfrom
        msg[‘Subject‘] = subject

        smtp = smtplib.SMTP(gserver, gport)
        smtp.set_debuglevel(0)
        smtp.ehlo()
        smtp.login(username,password)

        smtp.sendmail(mailfrom, mailto, msg.as_string())
        smtp.close()
    except Exception,err:
        print "Send mail failed. Error: %s" % err


def main():
    to=sys.argv[1]
    subject=sys.argv[2]
    content=sys.argv[3]
    sendqqmail(‘test@163.com‘,‘aaaaaaaaaa‘,‘test@163.com‘,to,subject,content)

if __name__ == "__main__":
    main()
[root@localhost ~]# chmod 755 /usr/lib/zabbix/alertscripts/mail.py

web修改用户组权限
技术分享图片
技术分享图片
创建用户
技术分享图片
技术分享图片
技术分享图片
创建动作
技术分享图片
技术分享图片
技术分享图片
技术分享图片

zabbix

标签:需要   utf-8   emc   ase   rac   自定义模板   nat   出现   汇报   

原文地址:https://www.cnblogs.com/2KP2/p/9829175.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!