企业级监控工具应用实战-Zabbix安装与基础操作目录
实战一:zabbix的搭建与部署
1、下载安装
2、初始化数据库
3、配置,开启zabbix-server
4、设置zabbix的web 服务
5、在web 页面初始化设置
6、被监控node zabbix的安装配置
7、node1加入到监控中
8、对node1主机设置
实战二:zabbix 基础操作
1、设置items监控项,采集信息
2、设置trigger 触发器
3、设置触发器的依赖关系
4、设置Media 媒介
5、设置Actions 动作
6、测试动作
实战三、展示接口的实现
1、Graphs 图形的设置
2、定义Screens 聚合图形
3、把graphs 图形加入到screens 屏幕中
4、多个screens可以做成幻灯片
5、Maps 拓扑图
实战四、Templates 模板和macro 宏
1、Templates 模板
2、宏:macro,预设的文本替换模式
无监控,不运维。好了,废话不多说,下面都是干货。
警告:流量党勿入,图片太多!!!
实验前准备:
① ntpdate 192.168.30.1 同步时间
② 关闭防火墙、selinux
③ vim /etc/hosts 每个机器都设置hosts,以解析主机名;DNS也行
192.168.30.107 server.along.com 192.168.30.7 node1.along.com 192.168.30.2 node2.along.com 192.168.30.3 node3.along.com zbproxy.along.com
回到顶部
实战一:zabbix的搭建与部署 1、下载安装(1)下载
① 去官网,下载自己需要的版本https://www.zabbix.com/download
② 包的介绍
zabbix-agent-3.4.4-2.el7.x86_64.rpm 监控(安装在被监控者,当然监控自己也需要监控)
zabbix-get-3.4.4-2.el7.x86_64.rpm 在server端,手工连接agent 获取数据的,做测试的
zabbix-Java-gateway-3.4.4-2.el7.x86_64.rpm 基于JAM监控时使用的
proxy 是和代理相关的包:
zabbix-proxy-mysql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-sqlite3-3.4.4-2.el7.x86_64.rpm
zabbix-sender-3.4.4-2.el7.x86_64.rpm 安装在agent端,主动监控模式下,向server端发送测试数据使用的
server 取决自己的存储系统选mysql 或 pgsql:
zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm
zabbix-server-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-web-3.4.4-2.el7.noarch.rpm web部位,核心包
zabbix-web-japanese-3.4.4-2.el7.noarch.rpm 专用日语的web部位
web要连接mysql 或 pgsql时,需要安装的包:
zabbix-web-mysql-3.4.4-2.el7.noarch.rpm
zabbix-web-pgsql-3.4.4-2.el7.noarch.rpm
zabbix-release-3.4-2.el7.noarch.rpm zabbix下载的源
(2)安装
① 安装官方的源
zabbix-release-3.4-2.el7.noarch.rpm 直接下载源
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
yum repolist 可以查看自己的仓库有zabbix源了
声明:我用的是3.2版本的,以下的示范也是3.2版本
② 安装
yum -y install zabbix-agent zabbix-get zabbix-sender zabbix-server-mysql zabbix-web zabbix-web-mysql
2、初始化数据库(1)vim /etc/my.cnf.d/server.cnf 子配置文件
[server] skip_name_resolve = on innodb_file_per_table = on innodb_buffer_pool_size = 256M #buffer缓存大小 max_connections = 2000 #最大连接数 log-bin = master-log #二进制日志
(2)建数据库,授权,刷新权限
MariaDB [(none)]> create database zbxdb character set 'utf8'; MariaDB [(none)]> grant all on zbxdb.* to zbxuser@'192.168.30.%' identified by 'zbxpass'; MariaDB [(none)]> flush privileges;
(3)导入数据
rpm -ql zabbix-server-mysql 下包的时候,带有数据库文件的解压包
cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz ./ 考到root下,解压
gzip -d create.sql.gz
mysql -uroot -p zbxdb < create.sql 导入数据
(4)可以去数据库查看,数据已经生成
3、配置,开启zabbix-server(1)配置前准备
cd /etc/zabbix/
cp zabbix_server.conf{,.bak} 先备份,养成好习惯
grep -i "^####" zabbix_server.conf 查看有几个配置段
GENERAL PARAMETERS 一般性配置
ADVANCED PARAMETERS 高级配置
LOADABLE MODULES 可加载模块
TLS-RELATED PARAMETERS 配置加密的东西,如私钥证书等
grep -i "^###" zabbix_server.conf 可以查看一下需要配置的选项
(2)配置
vim zabbix_server.conf 修改配置文件
ListenPort=10051 默认端口10051 SourceIP= 发采用数据请求的端口,可以加多个地址,需要的话自己设置
② 日志的配置
② 数据库的配置 DBHost=192.168.30.107 数据库对外的地址 DBName=zbxdb 数据库中库的名字 DBUser=zbxuser 数据库授权的用户 DBPassword=zbxpass 密码 DBPort=3306 数据库服务端口
(3)开启服务
systemctl start zabbix-server.service
4、设置zabbix的web 服务(1)zabbix 需要开启与web 相连的服务
cd /etc/httpd/conf.d/
vim zabbix.conf 额外为php5 设置了一些参数
# php_value date.timezone Europe/Riga php的时区必须设置,不过有两处可以设置,在php的配置文件中设置,或在这里设置;在这里设置,只对zabbix有效
vim /etc/php.ini 在php的配置文件中设置,代表对所有使用php的都生效,我就在这里设置了
date.timezone = Asia/Shanghai
(2)开启
systemctl start httpd
5、在web 页面初始化设置(1)初始化配置
① web登录
② 检查所依赖的配置,如果有fail,需手动修改
③ 设置数据库的连接
④ 可能有多个zabbix服务器,加标识;非必须,可以不填
⑤ 没有问题,就开始安装了
⑥ 完成!!!
(2)登录,第一次登录默认账号密码
账号:admin
密码:zabbix
(3)登录进去的仪表盘
(4)status of zabbix 仪表盘分析
Zabbix server is running Yes 192.168.30.107:10051 ① Number of hosts (enabled/disabled/templates) 39 0 / 1 / 38 ② Number of items (enabled/disabled/not supported) 0 0 / 0 / 0 ③ Number of triggers (enabled/disabled [problem/ok]) 0 0 / 0 [0 / 0] ④ Number of users (online) 2 2 ⑤ Required server performance, new values per second 0
① 监控主机:已经启用被监控的主机数量,已经配置好缺被禁止主机数,自带模板数
② 监控项:启用多少指标,禁用多少指标,不支持的指标
③ 触发器数量:启用,禁用,处于有问题的
④ 当前zabbix有几个用户:现在是一个是来宾,一个是管理员
⑤ 重点关注的nvps 每秒的新值(根据我们定义的监控项,每秒采集过来多少新数据,平均值):
(5)用户管理设置,有大家最喜欢的汉语
(1)如果英语不好,可以切换为中文,但推荐使用英文,为了更好的讲解,博主使用中文示范
(2)修改密码
6、被监控node zabbix的安装配置(1)在node 机器上安装
yum -y install zabbix-agent zabbix-sender 只需安装这两个包就行
(2)配置,和之前一样,先查看一下配置段
① grep -i "^####" zabbix_agentd.conf 先查看一下配置段
GENERAL PARAMETERS 一般配置,有两个子配置段
Passive checks related 被动接口
Active checks related 主动接口
ADVANCED PARAMETERS 高级配置
USER-DEFINED MONITORED PARAMETERS 用户自定义的监控参数(必要,高级的特性)
LOADABLE MODULES
TLS-RELATED PARAMETERS
② grep -i "^###" zabbix_agentd.conf 查看选项
(3)配置
vim zabbix_agentd.conf
① EnableRemoteCommands=0 是否允许执行远程命令,默认是不允许的,有安全风险
② 指定服务器主机,可以指定多个 Server=192.168.30.107 ③ 自己的今天IP和端口 ListenPort=10050 自己的监听端口 ListenIP=0.0.0.0 允许监听在本机的地址,0.0.0.0 是监听所有 ④ agent个数,被监控项有很多时,可以多写几个 StartAgents=3 默认3个,优化时使用 ⑤ 主动监控的机器地址是谁 StartAgents=192.168.30.107 ⑥ 能被server段解析的主机名,写IP也行 Hostname=node1.along.com 下边都是默认值就好
(4)开启服务
systemctl start zabbix-agent.service
7、node1加入到监控中(1)先添加一个主机群组host groups
添加一个mysrvs 的host groups
(2)创建主机
创建一个属于mysrvs 主机组的node1.along.com 主机,若接口写主机,要开启DNS解析
关于主机加密,在内网中最好不要加密,急耗资源
8、对node1主机设置(1)监控类别 applications应用集
创建3个 CPU Utils 、Memory Stats、Network Interface Stats 的应用集
3个已经生成
(2)创建监控项 items
设置名为 rate of interrupt 的监控项 items
备注:
① key键值:內建key 、自定义key;对应的是命令;服务器自动执行key,就相当于采集数据
每一个key 都对应,能在客户端/agent端,执行的命令;该命令能帮我们取回关系型数据
例:system.cpu.intr cpu中断数的key
在命令行 zabbix_get -s 192.168.30.7 -p 10050 -k "system.cpu.intr"
② 数据更新间隔:
对于非关键型指标,不要太频繁,使服务器压力很大;推荐5分钟,或以上
为了实验,选择5s;关键型指标,30s(默认的)也很频繁了
(3)查看自己设置的监控