zabbix部
搭建LNMP环境,部署zabbix-WEB界面(略)
安装zabbix源
rpm -Uvh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sed -i 's#http://repo.zabbix.com#https://mirrors.tuna.tsinghua.edu.cn/zabbix#g' /etc/yum.repos.d/zabbix.repo
安装zabbix-server
yum install -y zabbix-server-mysql zabbix-agent2
zabbix数据库导入数据
zcat /usr/share/doc/zabbix-server-mysql-5.0.18/create.sql.gz | mysql -uzabbix -p123456 zabbix
zabbix服务端配置连接数据库
[root@m03-zabbix-server ~]# grep -n '^DB' /etc/zabbix/zabbix_server.conf 91:DBHost=localhost
100:DBName=zabbix
116:DBUser=zabbix
124:DBPassword=1
启动zabbix-server服务端
systemctl enable zabbix-server.service
systemctl start zabbix-server.service
ss -lntup |grep zabbix
安装结束,去web界面连接zabbix
zabbix应用
zabbix监控架构
zabbix是cs架构的服务
zabbix监控分为agent端和server端及web端
服务端向客户端获取数据,将数据存储到数据库,web界面通过调用数据库获取数据,将获取的数据处理后展示在出来。
zabbix排错必用工具:zabbix_get
yum install -y zabbix-get
zabbix_get -s 10.0.0.71(客户端ip) -p 10051(客户端端口) -k system.hostname
注意:客户端网段必须和服务端网段是同一个网段。
zabbix-agent配置
1:在客户端下载zabbix-agent2
rpm -Uvh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum install -y zabbix-agent2
2:配置客户端
修改客户端所指向服务端的ip(注意:客户端ip要和服务端ip是同一网段)
[root@elk.oldboyedu.com zabbix 02:12:21 # grep ^Server /etc/zabbix/zabbix_agent2.conf
Server=127.0.0.1 #服务端的ip,这个是zabbix服务端监控服务端
ServerActive=127.0.0.1-------------------------------------------------------------------------------------------------------------------------
root @ elk101 [/etc/zabbix]# grep ^Server /etc/zabbix/zabbix_agent2.conf
Server=10.0.0.200 #此ip是zabbix服务端的ip
ServerActive=127.0.0.1
3:去web界面添加客户端主机
[root@elk.oldboyedu.com zabbix 02:33:39 # zabbix_get -s 10.0.0.101 -p 10050 -k system.hostname
elk101.oldboyedu.com
自定义监控
zabbix自定义监控:记住一句话,闯天下, 只要能够通过命令/脚本取出来的内容,就可以做自定义监控.
在客户端子配置文件创建key(键值)
UserParameter=key,command或脚本
zabbix_get调试
#客户端创建key
注:创建监控项时用到的命令如果不是bin下的最好用绝对路径
root @ elk101 [/]# cat /etc/zabbix/zabbix_agent2.d/root_login.conf
#UserParameter=键值名字,对应的命令或脚本
UserParameter=root.login, who |awk '$1=="root"' |wc -l
#客户端测试key
[root@elk.oldboyedu.com fonts 03:37:02 # zabbix_get -s 10.0.0.101 -k root.login
1
创建监控项
监控项: zbx服务端向客户端获取数据的一个方式, 监控项与键值关联。
(linux键值和监控项关联起来,zabbix-server端可以通过键值获取数据)
应运集:就是将监控项分类
更新间隔: 线上环境推荐1m,不太重要10m 或1h
监控项: zbx服务端向客户端获取数据的一个方式. 监控项与键值关联
历史数据: 每个间隔获取的数据. 不太推荐保留过长
趋势数据: 每个小时,或者更长时间获取一次历史数据的平均值. 可以长期保存
信息类型:自定义监控项或去的值类型
触发器:触发告警的条件
检查定义的触发器:
图像:
检查添加的图像
创建模板:添加监控项,触发器,图形
注:注意一些模板中可能会有变量(宏),使用时候要修改
检查创建的模板
准备复制 监控项,触发器,图形
在主机中复制监控项 触发器,图形到对应模板
检查模板
模板关联主机
模板关联主机时后:一定一定要将配置文件(监控项key)发送到客户端,要不然模板中的监控项不可用
自动化监控
自动添策略
方式 | 优缺点 | |
自动注册 | 客户端主动向服务端注册,服务端只需要等待与验证即可 | 配置有点点复杂, 效率高 |
自动发现 | 服务端主动扫描局域网所有的机器,有新的则添加. | 配置简单方便.效率不高 |
主动发现:(前提必须要配置好客户端Server=********)
1:配置自动发现规则 -发现主机
2:启动自动发现动作 -发现主机后关联模板,添加主机,加入主机组,启动
配置自动发现规则
配置动作
动作
操作
检查自动发现情况
自动注册
修改客户端配置文件
修改:
#Server=172.16.1.72
#ServerActive=172.16.1.72
#HostnameItem=system.hostname
#HostMetadataItem=system.hostname
注:将客户端的配置文件中的Hostname=这行注释掉
动作
操作
监控系统一般监控什么指标
角度01:单台机器
硬件信息:磁盘,raid状态,温度,风扇转速,机房温度,湿度等
系统信息:cpu,磁盘,内存,负载,网络等
服务信息:各种服务状态,进程,端口,状态等
业务(应运)信息: 应运,程序代码是否有问题(需要和开发沟通书写一个页面)
角度02:网站集群监控(用户访问流程)
DNS解析: ping/dig/nslookup/host
DNS解析域CDN是否ok 本质:通过全局访问测试工具(模仿用户在全国(全球)各地访问我们的网站)
任性不差钱: 全国各地(核心城市),1台服务器,在服务器访问你们的源站/cdn/dns, (对应的服务:smokeping)
免费: http://17ce.com http://ping.chinaz.com/
调试工具:http://cesule.tingyun.com/cesule/home
商业版: 听云,监控宝 (告警)
TCP三次握手-网站负载均衡监控 ss -ant
HTTP请求豹纹-监控web日志查看(状态码) 补充: 加上HTTPS监控过期
请求经过网站架构
负载均衡(Nginx)
web服务器(php,tomcat..)
缓存
数据库
存储
HTTP响应豹纹-监控web日志查看(状态码)
TCP四次挥手-网站负载均衡监控 ss -ant 断开连接