12月24日任务
19.1 Linux监控平台介绍
19.2 zabbix监控介绍
19.3/19.4/19.6 安装zabbix
19.5 忘记Admin密码如何做
一.Linux监控平台介绍
- 常见的开源监控软件
- 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节点可以支持上万台客户端 ,并发量还是挺大的,瓶颈在于采集数据的量。可以增加一些代理点,让它们袋体serve去采集数据,将统计好的数据来汇报给server。
- 最新版本3.4,官方文档https://www.zabbix.com/manuals
- 架构里有 5个组件
- zabbix-server 监控中心,需要一个PHP的环境,接收客户端上报信息,负责配置、统计、操作数据
- 数据存储 存放数据,比如mysql
- web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因
- zabbix-proxy 可选组件,机器量比较大的时候,它可以代替zabbix-server的功能,减轻server的压力
- zabbix-agent 客户端软件,每个客户端都需要安装,负责采集各个监控服务或项目的数据,并上报
- zabbix-server需要配置一个具体的告警规则,还需要配置一个报警的机制,列如:发邮件,发短信,发微信。
三.安装zabbix(上)(中)(下)
- 准备两台机器,一台作为服务端,一台作为客户端。
- 官网下载地址 www.zabbix.com/download
- 两台机器都下载: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扩展源
- 服务端安装:yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
- 会连带安装httpd和php
- 如果mysql之前没有安装的话,需要根据lamp那一章的mysql安装方法安装mysql,也可以yum安装一个mysql
- ps aux |grep mysql 查看一下mysql会否有启动
- systemctl start mysql 启动mysql
- vim /etc/my.cnf //需要增加配置
character_set_server = utf8 设定字符集
- 重启mysqld服务后
- 进入mysql命令行,创建zabbix库
- create database zabbix character set utf8;
- 再创建用户
- grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'aming-zabbix';
- quit 退出
- 导入数据
- cd /usr/share/doc/zabbix-server-mysql-3.2.7 进入该目录下
- ls查看一下
- gzip -d create.sql.gz 解压包
- ls查看一下
- mysql -uroot -pxxx zabbix < create.sql 将该文件内容导入到zabbix库里去
- systemctl start httpd; systemctl enable httpd
- vim /etc/zabbix/zabbix_server.conf //修改或增加
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
- 进入后台第一件事情就是修改密码
- 完成后重新登录
- 进入mysql命令行,选择zabbix库
- mysql -uroot -p zabbix 登入到mysql数据库里
- use zabbix 使用zabbix库
- update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
- 查看一下
- 这样就更改了Admin用户的密码
- 然后重新登录一下就行了
- 在客户端上也需要下载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 加入到启动目录里面去,让它开机启动
- 查看一下是否运行起来
- 查看一下监听端口,监听端口为10050
四.忘记Admin密码如何做
- 进入mysql命令行,选择zabbix库
- mysql -uroot -p zabbix 登入到mysql数据库里
- use zabbix 使用zabbix库
- update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
- 查看一下
- 这样就更改了Admin用户的密码
- 然后重新登录一下就行了