zabbix的基本概念,监控系统的基本组件
将主机归类host groups
第二个组件称为主机
每一个主机上要定义监控项 items(监控项上定义触发器)
多个监控项可以定义成组applications
监控系上可以定义触发器,就是一些表达式triggers
触发器会触发事件(events
events可以被action所监听或者所监控,所注册都行
然后会产生动作,
而动作主要由条件(一般是某个事件产生了)和操作(operation,执行远程命令或者发送通知)组成
还有组件是媒介,媒介就是发送通知的通道,比如邮件服务器
通知(notification)
除了通知还可以执行远程命令(remote command)
进入zabbix的安装
zabbix服务端需要database,webgui ,zabbix server,这三个组件对于生产环境建议分开布置
数据存储在database(mysql或者,PGSQL),还要部署好的amp(apache mysql php)环境,然后才能去启动zabbixserver(定义好database中的表,zabbix提供了sql脚本导入一下即可)
1.先去设置zabbix database
准备一个mysql用户账号
charset字符集
第二部安装服务器端,zabbix自己的服务器也需要被监控,所以服务器端不仅要装server还需要安装agent
官方提供源码包和rpm包
3.0比2.2界面做的好看一点
下载3.0.2的包
本地既是agent又是server
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190617092856835.png
bcmatch做数据库运算的,ldap完成认证和扫描
server端装这两个包足够了
安装后需要配置zabbix server并启动服务
查看server包生成哪些文件
主配置文件,下面是unit file
启动之前还需要导入数据库脚本,以便生成数据库环境,解压出来就可以
唯独没有创建数据库的那一行,所以需要自己添加
指定数据库zabbix
这时候数据库才算符合条件,这个是3.0版本,如果是2.0 脚本就有些不一样
2.0或2.2脚本有三个,而这三个脚本要按照一定次序,一个一个导入
zabbixserver监听的端口10051
source,ip,作为服务端可能有多个ip地址,采样数据的时候,服务端要去联系每一个 被监控主机的,对于被监控主机 是能够看到源ip的,被监控主机为了能够认真,安全起见,应该不允许随便访问,zabbix有n个地址,哪个作为源地址是很难说的,所以可以限定对方允许采样时用的地址出去采样
源地址有多个,授权地址只有一个,那就必须要定义
要么发往system log,默认是file
如果日志文件变的过大,
0表示不会滚动,一直使用同一个文件
记录日志的详细级别
一般生产中使用的时候3或3以上级别
改成127.0.0。1,不用解析了
rpm安装的包的socket文件路径
设置为当前主机试试
现在启动可能有问题
zabbix要求trousers这个包 版本大于0.3,centos7.1可能会遇到这种情况、
如果版本低可以 下载安装
10051端口起来代表监听正常,如果显示启动服务速度太快就可以更新一下trousers
server已经ok接下来配置监控的主机
现在搭建zabbixweb
下面这些都在basic仓库有,解决依赖关系
生成的文件都在/usr/share下
修改这个文件,可以定义时区设定,使用默认是不合理的
现在就基本符合我们需要了
指明server的主机名,端口,地址,可填可不填
默认管理员是admin,密码是zabbix
分为一级菜单,monitoring 监控界面,
inventory主机清单
reports报告,比如排名前100的触发器是什么
configuration配置接口
actions不属于主机,属于alives级别的
administration 管理
系统自己的 功能都在administraction
配置监控功能的在configuration
出现问题在reports
要想快速监控主机可以把所有资产放到inventory
现在进行第三个组件agent安装配置
对应的配置文件
unit file zabbix-agent。service
配置文件一样有四段配置
被动是指客户端时被动的
主动指客户端是主动的
user-efined monitored parameters用户自定义监控项(必然是我们需要编辑的)
是否允许执行远程命令
允许采样的数据库服务
listenport 自己处于被动监控时,让服务器采样哪个 端口就是10050
本机有多个地址怎么监听,0.0。0。0表示所有地址都监听
主进程并不负责监控,而是请求来了,主进程接收进来,分给agents子进程响应
响应监控端生成的进程数量,
作为客户端主动去报告给服务端、
主动报告的服务器serveractive
报告给server端,server端除了IP地址还有其他哪些识别方式,主机名hostname
每隔多长时间重新刷新一次,主动报告
被动的也需要修改一下
启动服务
agent端配置就完成了
现在就可以配置监控了(要想监控主机,先要把主机添加到server上,而这个主机有可能属于某个组,applications,监控组),alert报警
添加主机组,在host(添加host的时候可以选择一个组)上去定义applications,applications定义监控项item,定义triggers触发器(用于生成事件exents),这个事件可以被item注册,item通过condition条件来定义要监控哪一个events,这个events产生了怎么办,就进行operations操作
对于操作而言有监控和远程命令
item还可以用图形展示出来simple graph,
将多个item柔和起来就叫graph
graphs多个图像可以组成一个屏幕screen
screens多个屏幕可以组成slide show
现在配置监控
可以添加主机组
也可以添加主机,可以导入模版,也可以选择已经有的组
visible name 可见主机名
监控主机有四个接口,选择某一种都可以
链接这个agent有很多种方式,1.IP地址,2.主机名
默认这个监控自己的是不可用状态
有四个接口,而zbx有一个item才认为是ok的
添加监控项
、
创建item指明监控项,
item要有对应的key
每一个监控项都需要有一个专门的命令来获取数据
那么这个命令就会很长,所以就可以预先定义key
zabbix有一些内置的key,如果不符合需要可以自定义key
cpu中断次数
-s指明主机,-p端口,-k指明对方的key就能获取数据
每30秒肯定是一个上升的值
将来采的数据有两种形式,一种是不断地变化数据本身,第二我们要计算速率的,采样是什么就记录什么(比如nginx在线人数,)
区域数据保存多少天365
保存本次减上次时间叫change,除以时间叫速率
这个item就可以采集到数据了
最新数据