zabbix监控(1-10)
zabbix监控
zabbix监控
1:什么是监控,为什么需要监控
2:常见的linux监控命令
3:使用shell脚本来监控服务器
4:zabbix的基础服务架构(画图)
5:zabbix生产环境安装(部署)
6:监控一台服务器主机(集群)
7:自定义监控项(服务监控)
8:自定义触发器(阈值)
a:添加自定义监控项
b:开启动作和报警媒介
9:邮件报警和微信报警(无人值守)
邮件报警
a.发件人 b.收件人 c.启用动作
微信报警
a.放入脚本 b.配置发件人 c.配置收件人 d.接收测试
10.自定义图像
a.划分应用级 b.查看负载图 c.自定义图 d.grafana自定义图形
2:常见的linux监控命令
http://man.linuxde.net/par/3 free
df top
htop(epel) uptime iftop iostat iotop
vmstat
netstat(下午提问tcp的三次握手,四次挥手) nethogs
总结:cpu,内存,硬盘,网络
3:使用shell脚本来监控服务器
内存:每隔1分钟监控一次内存,当你的可用内存低于100m,发邮件报警,要求显示剩余内存值
4:zabbix的基础服务架构(画图)
zabbix-agent c语言 ----> zabbix-server c语言 ----> 数据库 mysql <--- zabbix web lamp
5:zabbix生产环境安装(部署)
zabbix LTS 5年 zabbix 标准版 7个月
ip地址:10.0.0.61 硬件配置:1c1g 主机名:zabbix-server
1:配置zabbix yum仓库
wget http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
rpm -ivh zabbix-release-4.0-1.el7.noarch.rpm
epel
yum -y install epel-release
[root@zabbix-server ~]# cat /etc/yum.repos.d/zabbix.repo [zabbix]
name=Zabbix Official Repository - $basearch baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/ enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/non-supported/rhel/7/$basearch/ enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX gpgcheck=1
2.安装zabbix服务端和zabbix-web前端
yum install zabbix-server-mysql zabbix-web-mysql -y
3:安装mariadb,创建zabbix库,授权zabbix用户
yum install mariadb-server -y
systemctl start mariadb systemctl enable mariadb
mysql_secure_installation
回车
n
一路y
mysql
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
导入zabbix表结构和初始数据
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p123456 zabbix
检查zabbix库是否导入成功
mysql -uroot zabbix -e 'show tables'
验证包
Rpm -qa | grep zabbix
4:配置启动zabbix-server
vi /etc/zabbix/zabbix_server.conf DBHost=localhost
DBName=zabbix DBUser=zabbix DBPassword=123456
启动zabbix-server
systemctl start zabbix-server systemctl enable zabbix-server
检查:
netstat -lntup
5:修改Zabbix前端的PHP配置,并启动httpd
#vim /etc/httpd/conf.d/zabbix.conf php_value date.timezone Asia/Shanghai
systemctl start httpd
systemctl enable httpd
6:前端zabbix-web的安装
后期修改zabbix数据库密码的时候,需要修改的配置文件:
/etc/zabbix/web/zabbix.conf.php
http://10.0.0.61/zabbix/zabbix.php
登录的账号密码;
Admin zabbix
6:监控一台服务器主机(集群)
a:安装zabbix-agent(同一台机器直接跳到c)
#rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-agent-4.0.11-1.el7.x86_64.rpm
b:配置zabbix-agent
#vim /etc/zabbix/zabbix_agentd.conf #Server=10.0.0.61
c:启动zabbix-agent
#systemctl start zabbix-agent
d:zabbix-web界面,添加主机
主机名称:标识主机
群组分类:一种以业务划分(商城业务,论坛业务),一种以功能分组(数据库,web服务,缓存,存储软件)
Agent接口:填写主机地址 或 DNS名称(DNS要有做host解析,建议填IP地址),默认端口
7:自定义监控项(服务监控)
a:命令行,手动取值
# iostat|awk '$1 ~/sda/'
sda 7.52 9.81 141.25 689991 9933268
# iostat|awk '$1 ~/sda/{print $2}'
7.52
b:修改zabbix-agent配置文件
vim /etc/zabbix/zabbix_agentd.conf UserParameter=sda_tps,iostat|awk '$1 ~/sda/{print $2}'
systemctl restart zabbix-agent.service
c:zabbix-server测试监控项取值
安装zabbix_get
#yum install zabbix-get
或
#rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-get-4.0.19-1.el7.x86_64.rpm
设置超时时间(4.44版本开始不设置超时可能无法正常取值,默认为3秒)
重启zabbix-agent
#systemctl restart zabbix-agent
测试取值
[root@node10 src]# zabbix_get -s 127.0.0.1 -k sda_tps
7.52
d:在web界面添加自定义监控项
e:在web界面查询监控
名称:支持模糊查询
f:权限分离
因为权限问题,部分脚本会无法正常取值
如:
处理方案:
- 加sudo启动
二.给路径命令授权(更改属主)
1.寻找命令执行目录
#which netstat(命令)
2.给命令执行目录授权
#chmod u+s /usr/bin/netstat
3.查看目录权限
#ll /usr/bin/netstat
4.查看命令效果
#netstat -antp|head -5
g:将自定义监控项添加到其他主机
- 手动CP添加
1.通过过滤我们可以看到,zabbix的配置文件有扩展项目
#grep -Ev '^$|#' /etc/zabbix/zabbix_agentd.conf
2.将原自定义项写入扩展路径
#vim /etc/zabbix/zabbix_agentd.d/user.conf
写入自定义文件
3.重启zabbix-agent生效
#systemctl restart zabbix-agent.service
手动web添加(要先给agent端准备好命令,我就觉得很脑残)
1.在监控项中将需要添加的监控项目选中,点击复制
2.选择主机/群组进行复制
3.在主机中查看监控项
4.在最新数据中查看状态
名称:不选即可查看所有
原因:因为缺少授权/命令包
解决:1.授权相关命令路径
#which netstat(命令)
#chmod u+s 路径
2.安装命令包
先搜索命令包,看是否存在
#yum provides iostat(命令包名)
安装命令包
#yum install iostat
重启agent端(批量监控不能进行server端重启)
8:自定义触发器(阈值)
a:添加自定义监控项
{Zabbix server:system.users.num.last()}>4
Zabbix server:主机名
system.users.num:监控项key值
last():函数方法
严重性:
灾难:机房连接不上,还能用的就不叫灾难,灾难级别报告给老板,剩下自己处理
严重: 一般严重: 警告:
b:开启动作和报警媒介
9:邮件报警和微信报警(无人值守)
邮件报警
a.发件人
b.收件人
需要建立zabbix账号,一个账号对应一个邮箱地址
c.启用动作
定制消息格式
定制报警的内容 https://www.zabbix.com/documentation/4.0/zh/manual/appendix/macros/supported_by_locat ion
微信报警
a:放入脚本
将weixin.py放在zabbix特定目录/usr/lib/zabbix/alertscripts(可查:grep -Ev '^$|#' /etc/zabbix/zabbix_server.conf)
查找企业ID、查找应用密码、应用ID
CORPID=企业id
Appsecret=应用密码
Agentid=应用id
安装python模块
1.配置阿里云源
curl -o /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-7.repo
2.安装python环境
yum -y install epel-release
yum install python-pip
pip install requests
pip install --upgrade requests
3.测试命令行
python weixin.py LiZongLi '外卖到了' '恰饭 8月12日 23:23'
4.查看发送日志
cat /tmp/weixin.log
删除日志(因为测试以root环境创建,而zabbix需要以普通用户创建)
b.配置发件人
{ALERT.SENDTO}, {ALERT.SUBJECT} and {ALERT.MESSAGE}
c.配置收件人
d.接收测试
10:自定义图像
grafana 安装grafana 安装zabbix插件,启动插件 数据源--zabbix数据源 导入模板
a.划分应用集
b.查看负载图
自带的饼图乱码,并且很丑
乱码原因:/usr/share/zabbix/assets/fonts/graphfont.ttf 文件默认不支持中文
解决方法:
1.从C:\Windows\Fonts 中复制喜欢的字体到桌面,然后丢到上面目录
2.改名 #mv STKAITI.TTF graphfont.ttf
效果:
c.自定义图
正常(线图)、层积(柱状图)、pie(饼图)、爆发
d.grafana自定义图形
1.安装
到清华源中下载
#Wget https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/grafana-6.7.3-1.x86_64.rpm
#Rpm -ivh grafana-6.7.3-1.x86_64.rpm
2.启动
#systemctl start grafana-server.service
#systemctl enable grafana-server.service
3.查看、访问端口(3000)
#netstat -lntup
官方地址:https://grafana.com/
默认账号密码都是:admin
4.安装zabbix插件
查找zabbix插件#grafana-cli plugins list-remote | grep zabbix
安装插件#grafana-cli plugins install alexanderzobnin-zabbix-app(也可以下zip丢进去解压)
5.重启grafana-server
#systemctl restart grafana-server.service
在web上看到
启用
6.添加数据源
URL可以搜索本地接口找出
账号Admin
密码zabbix
7.导入数据
8.下载饼图
查询饼图
# grafana-cli plugins list-remote|grep -i pie
下载饼图
# grafana-cli plugins install grafana-piechart-panel
压力测试
# ab -n 次数 -c 并发 http://192.168.1.10/zabbix/index.php
9.添加数据源
密码:可以查看 /etc/zabbix/web/zabbix.conf.php 配置文件
- 点赞
- 收藏
- 关注作者
评论(0)