zabbix_server的安装流程
1. 创建 zabbix database
mysql> CREATE DATABASE zabbix CHARSET 'utf8';
mysql> GRANT ALL ON zabbix.* TO 'zbxuser'@'%' IDENTIFIED BY 'zbxpass';
2. 安装服务器端
~]# yum install zabbix-server-mysql-VERSION.x86_64 zabbix-get-VERSION.x86_64
- 程序环境:
配置文件:/etc/zabbix/zabbix_server.conf
Unit File:zabbix-server.service
- 导入数据库脚本,以生成数据库环境:
[root@node1 ~]# cp /usr/share/doc/zabbix-server-mysql-3.0.2/create.sql.gz . [root@node1 ~]# gzip -d create.sql.gz [root@node1 ~]# ls create.sql [root@node1 ~]# mysql -uzbxuser -hDBHost -pzbxpass zbxdb < ./create.sql
3. zabbix server配置启动
- 配置段:
[root@host1 ~]# grep "^####" /etc/zabbix/zabbix_server.conf ############ GENERAL PARAMETERS ################# ############ ADVANCED PARAMETERS ################ ####### LOADABLE MODULES ####### ####### TLS-RELATED PARAMETERS #######
- 通用配置相关的参数:
ListenPort=10051
SourceIP=
LogType=file
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0(0表示禁止日志滚动)
DebugLevel=3
DBHost=localhost
DBName=zabbix
DBUser=zbxuser
DBPassword=zbxpass
DBPort=3306
DBSocket=/tmp/mysql.sock
zabbix_web安装配置
1. 解决依赖关系
~]# yum -y install httpd php php-mysql php-mbstring php-gd php-bcmath php-ldap php-xml
2. 安装web GUI
~]# yum -y install zabbix-web-VERSION zabbix-web-mysql-VERSION
3. 配置php时区参数
-
/etc/php.ini
配置文件 -
/etc/httpd/conf.d/zabbix.conf
配置文件
php_value date.timezone Asia/Shanghai
4. 启动web服务
~]# systemctl start httpd.service
5. 访问web
- 安装后生成的配置文件:
/etc/zabbix/web/zabbix.conf.php
- 默认的管理员:
ID:Admin
PASSWORD:zabbix
6. 菜单:
Monitoring:监测
Inventory:资产记录
Reports:报表
Configuration:配置
Administration:管理
zabbix agent安装配置
1. 安装
~]# yum install zabbix-agent.x86_64 zabbix-sender.x86_64 -y
- 程序环境:
配置文件:/etc/zabbix/zabbix_agent.conf
Unit File:zabbix-agent.service
2. 配置
- 配置段:
[root@web-server /etc/httpd/conf.d]# grep -i "^####" /etc/zabbix/zabbix_agentd.conf ############ GENERAL PARAMETERS ################# ##### Passive checks related 客户端被动监控相关的配置 ##### Active checks related 客户端主动监控相关的配置 ############ ADVANCED PARAMETERS ################# ####### USER-DEFINED MONITORED PARAMETERS ####### 用户自定义的监控参数,UserParamter ####### LOADABLE MODULES ####### ####### TLS-RELATED PARAMETERS #######
-
被动监控相关配置:
-
Server=IP1,IP2,...
# 允许哪个 zabbix-server 地址,可以过来采样 -
ListenPort=10050
# 自己监听的地址 -
ListenIP=
# 监听于哪个IP地址 -
StartAgents=3
# 预先生成的响应监控端发出的响应请求的进程数量
-
-
主动监控相关配置:
-
ServerActive=127.0.0.1
# 主动向哪个 zabbix-server 报告 -
Hostname=Host-ID
# 标明自己的主机名是什么
-
3. 启动服务,确保10050端口处于监听状态
~]# systemctl start zabbix-agent.service
~]# systemctl enable zabbix-agent.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@web-server /etc/zabbix]# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 100 127.0.0.1:25 *:*
LISTEN 0 128 *:10050 *:*
LISTEN 0 128 *:22 *:*
配置监控
快速配置一个监控项:
host groups --> host --> applications --> item --> triggers(events) --> action(conditions,operations)
- operations:远程命令(remote command),报警(alert)
- item --> simple graph
items --> graph
graphs --> screen
screens --> slide show
item
- item:item key
分为两类:
zabbix内建:
zabbix agent:被动模式下专用的
zabbix agent(active):主动模式下专用的
用户自定义(UserParamter) - 采集到的数据类型:
数值:
整数
浮点数
字符型:
字符串
文本
日志 - 存储的值:
As is:不对数据做任何处理,存储采集到的数据本身
Delta(simple change):本次采样的数据减去前一次采样的数据
Delta(speed per second):本次采样的数据减去前一次采样的数据,再除以经过的时长;速率数据
触发器:
- 逻辑表达式,阈值,通常用于定义数据的不合理区间;条件满足时,TRUE,表示PROBLEM状态,反之,则OK状态;
OK --> PROBLEM
Recovery:PROBLEM --> OK - {<server>:<item>.<fuction>(<parameteres>)}<operator><constant>
- 触发器间可存在依赖关系
媒介类型(Media Types):
报警信息的传递方式
- 类型:
Email:邮件,需要定义发件人邮箱地址和SMTP服务器
Script:自定义脚本,此脚本有发送信息至相关用户的功能;
SMS、Jabber、Ez Texting
Action:动作
- conditions:触发此动作的条件,一般通过“事件”触发;
- operations:触发条件满足时要采取的动作;
- send message
- 功能:发报警信息给关联的用户
可用传递方式:
a. Email
b. script:报警脚本
位于server主机的配置文件下AlerScriptsPath
参数定义的目录下,默认为/usr/lib/zabbix/alertscripts
zabbix调用脚本时会向其传递参数;3.0之前的版本通过$1(消息接收人),$(消息主题),$3(消息主体);3.x之后的版本,此三个参数默认不再传递,需自行定义;可以使用宏来模拟此前的行为:{ALTET.SENDTO}、{ALERT.SUBJECT}、{ALERT.MESSAGE}
注意:每个信息接收人相对于此媒介来说,得配置相应的接收地址
- 功能:发报警信息给关联的用户
- remote command
- 功能:
在agent所在的主机上运行用户指定的命令或脚本来尝试着回复故障;例如:
重启服务
任何有用户自定义的脚本 - 类型:
IPMI命令
custom script
实现的前提:
在agent端配置:(1)zabbix拥有执行相应脚本的权限;编辑/etc/sudoers
文件,添加zabbix ALL=(ALL) NOPASSWD:ALL
注释如下内容:Defaults requiretty
;(2)agent进程要允许执行远程命令,编辑/etc/zabbix/zabbix-agent.conf
文件,设置EnableRemoteCommands=1
;(3)重启服务生效
ssh
telnet
global script
- 功能:
- send message
展示接口:
graph:simple,custom
screen:
slide show:
网友评论