设为首页 收藏本站
查看: 968|回复: 0

[经验分享] 笔记15(Linux监控平台)

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2019-1-17 10:45:45 | 显示全部楼层 |阅读模式
  常见开源监控软件

  cacti、nagios、zabbix、smokeping、open-falcon等等
  cacti、smokeping偏向于基础监控,成图非常漂亮
  cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
  open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究
  后续以介绍zabbix为主
  

  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 客户端软件,负责采集各个监控服务或项目的数据,并上报
  

  zabbix监控流程图

  安装zabbix
  需要准备两台工具一台服务端一台客户端
  官网下载地址 www.zabbix.com/download 找到release版本 复制他的连接 安装到两台机器上
  下载安装包:wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
  安装rpm包:rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
  安装一些包:yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
  会连带安装httpd和php
  如果mysql之前没有安装的话,需要根据lamp那一章的mysql安装方法安装mysql
  查看mysql是否启动 ps aux |grep mysql 没启动启动它:systemctl start mysql
  

  vim /etc/my.cnf //需要增加配置
  character_set_server = utf8
  重启:systemctl restart mysql
  重启mysqld服务后,进入mysql命令行,创建zabbix库
  登录自己的mysql:mysql -uroot -p123456789
  create database zabbix character set utf8;
  再创建用户
  grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'aming-zabbix';
  导入数据
  退出mysql(quit)
  1.进入目录:cd /usr/share/doc/zabbix-server-mysql-3.2.7
  2.解压安装包:gzip -d create.sql.gz
  3.把这个文件导入到库里边去:mysql -uroot -p123456789 zabbix < create.sql
  4.启动服务:mystemctl start zabbix-server
  5.启动httpd服务:mystemctl start httpd (再启动httpd服务之前先检查一下有没有启动着nginx服务:ps aux |grep nginx
  他启动的话会监听80端口,所以我们要先关闭它:/etc/init.d/nginx stop
  netstat -lntp查看是否监听80端口)如果都没有,我们在启动httpd服务
   如果想让他开机自启
  1.加入到服务列启动表中:systemctl enable httpd
  systemctl enable zabbix-server
  2.把nginx服务停掉:systemctl disable nginx
  chkconfig nginx off
  3.查看zabbix是否开启:pa aux |grep zabbix
  查看监听端口:netstat -lntp 如果没监听则需要更改它的配置文件
  vim /etc/zabbix/zabbix_server.conf 搜索DBhost修改或增加
  DBHost=127.0.0.1 //在DBName=zabbix上面增加
  DBPassword=aming-zabbix //在DBuser下面增加 密码自己设置
  更改完启动服务:
  systemctl start zabbix-server
  systemctl enable zabbix-server
  查看进程:netstat -lntp |grep zabbix //查看监听端口
  浏览器访问http://ip/zabbix/  web界面下面配置zabbix
  用户名Admin 密码zabbix
  进入后台第一件事情就是修改密码
  

  忘记admin密码怎么做
  进入mysql命令行,选择zabbix库
  mysql -uroot -p zabbix
  update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
  这样就更改了Admin用户的密码
  

  zabbix客户端安装
  在客户端上也需要下载zabbix的yum源
  下载安装包:wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
  解压:rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm
  安装:yum install -y zabbix-agent
  编辑配置文件:vim  /etc/zabbix/zabbix_agentd.conf //修改如下配置
  Server=127.0.0.1修改为Server=192.168.133.130 //定义服务端的ip(被动模式)
  ServerActive=127.0.0.1修改为ServerActive=192.168.133.130 //定义服务端的ip(主动模式)
  Hostname=Zabbix server修改为Hostname=aming-123 //这是自定义的主机名,一会还需要在web界面下设置同样的主机名
  重启:systemctl start zabbix-agent
  systemctl enable zabbix-agent
  

  主动模式和被动模式
  主动或者被动是相对客户端来讲的
  被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端
  主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。
  当客户端数量非常多时,建议使用主动模式,这样可以降低服务端的压力。
  服务端有公网ip,客户端只有内网ip,但却能连外网,这种场景适合主动模式
  

  添加主机
  先添加主机组aming-test
  再添加主机,主机名称和可见名称都写aming-02
  群组选择aming_test
  IP地址填写客户端的ip 192.168.133.132
  几个概念:应用集、监控项、触发器、图形、自动发现、web监测
  

  添加模板
  可以自定义一个常用模板,方便给新增主机添加监控项目
  自定义aming模板
  把其他自带模板里面的某些监控项目(比如cpu、内存等)复制到aming模板里
  定义触发器
  添加图形
  自动发现,找到Template OS Linux,点击右侧的自动发现,参考Mounted filesystem discovery和Network interface discovery定义规则
  可以直接导出、导入模板,然后再删除不需要的对象
  

  处理图形中乱码
  设置为中文后,zabbix图形的中文文字会显示小方框
  这是因为在zabbix的字体库中没有中文字体,需要从windows上借用一个过来
  编辑配置文件:vim /usr/share/zabbix/include/defines.inc.php //搜索ZBX_FONTPATH
  它定义的路径是“fonts”,它是一个相对路径,绝对路径为/usr/share/zabbix/fonts,而字体文件为“ZBX_GRAPH_FONT_NAME”所定义的“graphfont”,它是一个文件,绝对路径为/usr/share/zabbix/fonts/graphfont
  windows字体路径为“C:\Windows\Fonts\”,找到“simfang.ttf”(其实就是那个仿宋简体),先把它复制到桌面上,然后上传到linux的/usr/share/zabbix/fonts/,并且改名为graphfont.ttf
  

  添加自定义监控项目
  需求:监控某台web的80端口连接数,并出图
  两步:1.zabbix监控中心创建监控项目;
  2.针对该监控项目以图形展现
  对于第一步,需要到客户端定义脚本
  编辑配置文件:vim /usr/local/sbin/estab.sh //内容如下
  #!/bin/bash
  ##获取80端口并发连接数
  查看端口:netstat -ant |grep ':80 ' |grep -c ESTABLISHED
  更改权限:chmod 755 /usr/local/sbin/estab.sh
  客户端上编辑配置文件 vim /etc/zabbix/zabbix_agentd.conf//增加:
  UnsafeUserParameters=1  //表示使用自定义脚本
  UserParameter=my.estab.count
  • ,/usr/local/sbin/estab.sh
      //自定义监控项的key为my.estab.count,后面的
  • 里面写脚本的参数,如果没有参数则可以省略,脚本为/usr/local/sbin/estab.sh
      重启:zabbix-agent服务 systemctl restart zabbix-agent
      

      配置警告
      使用163或者QQ邮箱发告警邮件
      首先登录你的163邮箱,设置开启POP3、IMAP、SMTP服务
      开启并记录授权码
      然后到监控中心设置邮件告警
      “管理”,“报警媒介类型”,“创建媒体类型”
      {ALERT.SENDTO} ,{ALERT.SUBJECT},{ALERT.MESSAGE}

      

      创建报警脚本mail.py
      编辑配置文件:vim /usr/lib/zabbix/alertscripts/mail.py//
      内容参考https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D22Z/mail.py
      更改权限:chmod 755 /usr/lib/zabbix/alertscripts/mail.py
      创建一个接受告警邮件的用户,“管理”,“用户”,“创建用户”,“报警媒介”,类型选择“baojing”,注意用户的权限,如果没有需要到用户组去设置权限
       设置动作,“配置”,“动作”,“创建动作”,名称写“sendmail”(自定义),“操作”页面,内容如下:
      HOST:{HOST.NAME} {HOST.IP}
      TIME:{EVENT.DATE}  {EVENT.TIME}
      LEVEL:{TRIGGER.SEVERITY}
      NAME:{TRIGGER.NAME}
      messages:{ITEM.NAME}:{ITEM.VALUE}
      ID:{EVENT.ID}
      “新的触发条件”,A维护状态 非在 维护,B触发器示警度>=未分类
      





  • 运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
    2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
    3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
    4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
    5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
    6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
    7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
    8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

    所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-664311-1-1.html 上篇帖子: 19.3,19.4,19.6 安装zabbix(上中下 )19.5 忘记Admin密码如何做; 下篇帖子: centos7安装zabbix3.4.1
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫码加入运维网微信交流群X

    扫码加入运维网微信交流群

    扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

    扫描微信二维码查看详情

    客服E-mail:kefu@iyunv.com 客服QQ:1061981298


    QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


    提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


    本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



    合作伙伴: 青云cloud

    快速回复 返回顶部 返回列表