king71 发表于 2019-1-23 09:24:53

六十四、Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做

  六十四、Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做
  一、Linux监控平台介绍
   cacti、nagios、zabbix、smokeping、open-falcon等等
   cacti、smokeping偏向于基础监控,成图非常漂亮
   cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图。
   open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究。
  nagios:更注重于某个监控的现在的状态,过去历史不关注。
  二、zabbix介绍
   C/S架构,基于C++开发,监控中心支持web界面配置和管理
   单server节点可以支持上万台客户端
   最新版本3.4,官方文档https://www.zabbix.com/manuals
   5个组件
   zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据,需要一个php的环境。
   数据存储 存放数据,比如mysql,mariadb等。
   web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因,没有它就不能在浏览器里去配置。
   zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力
   zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报
  监控流程图
http://blog.运维网.com/13576245/E:/%E6%9C%89%E9%81%93%E4%BA%91%E7%AC%94%E8%AE%B0/%E6%96%87%E4%BB%B6/qqABFF80061C1054E664D19B74C49D69A1/fb7003a119f54a32b40580ce874fb556/clipboard.pnghttp://s1.运维网.com/images/20180525/1527231893337375.png
  解析:
  添加主机到监控中心,添加监控的项目,监控项目能和服务端通信了,就会采集数据到到数据库(mysql),数据采集过程可以是主动或被动,zabbix-server中心需要设置一个告警,zabbix需要配置告警的规则和机制,检测到数据不正常时告警的方式是发微信还是发邮件,都在server中心配置,存储的数据是可以用图形呈现出来的,最终是以web界面展现出来。
  三、安装zabbix
   官网下载地址 www.zabbix.com/download
  zabbix可以yum安装,但是需要安装epel扩展源,epel扩展源里最高版本只能安装到2.2,所以我们使用官网提供的对应版本的yum源。
  Zabbix服务端安装
  # 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
  此时在/etc/yum.repos.d/里可以看到zabbix.repo的文件,这就是安装的rpm包的文件。
  # yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
  zabbix-get:服务端上的一个工具,可以通过命令行模式获得客户端的某些监控项目的数据。
  zabbix-server-mysql:和mysql相关的文件数据,在安装zabbix时要把这些数据导入进去的。
  zabbix-web:web界面。
  zabbix-web-mysql:web和mysql相关的东西。
   这里会连带安装httpd和php。
   如果mysql之前没有安装的话,需要根据lamp那一章的mysql安装方法安装mysql,检查mysql,把它启动起来。
  # vim /etc/my.cnf //在mysqld下增加一行配置,意思是设置字符集,如果不设置,后面web界面的中文显示可能就会有问题
  character_set_server = utf8
   重启mysqld服务systemctl restart mysql
  进入mysql命令行
  创建zabbix库
   create database zabbix character set utf8;   //指定字符集为utf8
   再创建用户
   grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'aming-zabbix';
  //这个用户是需要让web代码连接mysql的, zabbix-server启动的前提也是需要能连接mysql的。
  然后quit退出来。
  导入数据
  # cd /usr/share/doc/zabbix-server-mysql-3.2.11/
  # gzip -d create.sql.gz
  //解压完生成了create.sql文件
  # mysql -uroot -p12345 zabbix < create.sql
  # systemctl start zabbix-server
  # systemctl enable zabbix-server
  启动httpd之前要先检查一下你的nginx启动没有,需要停止,因为nginx监听了80端口,httpd需要监听80。/etc/init.d/nginx stop
  # systemctl start httpd; systemctl enable httpd
  # systemctl disable nginx
  # chkconfig nginx off
  错误:此时ps看到有进程,但是netstat没有监听zabbix的端口,说明这个zabbix没有启动起来,不能连接MySQL。开始排查:
  日志:/var/log/zabbix/zabbix_server.log
  # vim /etc/zabbix/zabbix_server.conf      //修改或增加
  DBHost=127.0.0.1
        //在DBHost最后面一行增加,这里可以写127.0.0.1,也可以写localhost,创建用户时写的是127.0.0.1,所以这里也写这个;因为mysql装在了这台机器上,mysql在别的机器上就写那台机器的IP。
  DBName和DBUser有需要的话也要定义,这里已经默认是zabbix,所以不改。
  DBPassword=aming-zabbix         //在DBuser下面增加
  # systemctl restart zabbix-server
  # netstat -lntp |grep zabbix      //查看监听端口为10051
  因为yum安装zabbix的时候,默认安装了httpd以及配置文件,全都配置好了,所以可以直接访问了
   浏览器访问http://192.168.93.130/zabbix/       //web界面下面配置zabbix
  点下一步,Next step
http://blog.运维网.com/static/js/ueditor1.4.3/themes/default/images/spacer.gifhttp://s1.运维网.com/images/20180525/1527231926830039.png
     右侧OK的就不用管,有一项是Fail,date.timezone。到PHP的配置文件里修改
  # vim /etc/php.ini
  搜索timezone
  date.timezone = Asia/shanghai      //将这行填好,把前面的分号去掉
  # systemctl restart httpd
  再进浏览器刷新,变成OK了,下一步。
http://blog.运维网.com/static/js/ueditor1.4.3/themes/default/images/spacer.gifhttp://s1.运维网.com/images/20180525/1527231937771482.png
   填好信息,端口0代表默认的3306,如果是其他就写其他的,
   用户名zabbix,密码aming-zabbix
  下一步,自定义一个zabbix server的name,下一步,检查确认无误再下一步。
  出现:Congratulations! You have successfully installed Zabbix frontend.
  意思是已经成功安装了zabbix前端。
   然后下一步,出现登录界面,默认的用户名Admin 密码zabbix。
   进入后台第一件事情就是修改密码
http://blog.运维网.com/static/js/ueditor1.4.3/themes/default/images/spacer.gifhttp://s1.运维网.com/images/20180525/1527231952416378.png
  按照1,2,3的顺序点进去后再点击change password就可以修改密码了,然后修改语言为Chinese,改好点Update。再次登录时用新密码登录即可。
   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.93.130 //定义服务端的ip(被动模式)
   ServerActive=127.0.0.1修改为ServerActive=192.168.93.130 //定义服务端的ip(主动模式)
  被动模式:只能服务端从客户端上取数据。
  主动模式:客户端主动上报把数据给服务端。
  Hostname=Zabbix server修改为Hostname=yaowei-02 //这是自定义的主机名,一会还需要在web界面下设置同样的主机名
  这两个IP都要写,原因在于这个客户端有可能用主动模式,有可能用被动模式
  # systemctl start zabbix-agent
  # systemctl enable zabbix-agent
  # netstat -lntp |grep zabbix
  看到端口是10050,服务端的是10051。
  四、忘记Admin密码如何做
   进入mysql命令行,选择zabbix库
  # mysql -uroot -p
  mysql> use zabbix   //切换到zabbix库
  mysql> update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
   这样就更改了Admin用户的密码



页: [1]
查看完整版本: 六十四、Linux监控平台介绍、zabbix监控介绍、安装zabbix、忘记Admin密码如何做