Zabbix——Zabbix的安装和基本配置
Posted stan Z
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix——Zabbix的安装和基本配置相关的知识,希望对你有一定的参考价值。
Zabbix的介绍
- Zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
- Zabbix 是由 Alexei Vladishev 创建,目前由 Zabbix SIA 在持续开发和支持。
- Zabbix 是一个企业级的分布式开源监控方案。
- Zabbix 是一款能够监控各种网络参数以及服务器健康性和完整性的软件。
- Zabbix 使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。
- Zabbix 支持主动轮询和被动捕获。
- Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。
- Zabbix是免费的。Zabbix是根据GPL通用公共许可证第2版编写和发行的。这意味着它的源代码都是免费发行的,可供公众任意使用, 商业支持 由Zabbix公司提供。
Zabbix的特点和优点
-
zabbix 在性能和功能上都强大很多
-
zabbix 的图形相当漂亮
-
支持多种监控方式 zabbix-agent snmp 等等
-
支持分布式监控,能监控的 agent 非常多
-
zabbix 有图形的 web 配置界面,配置简洁
-
zabbix 支持自动发现功能
-
开源,无软件成本投入
-
Server 对设备性能要求低
-
支持设备多,自带多种监控模板
-
支持分布式集中管理,有自动发现功能,可以实现自动化监控
-
开放式接口,扩展性强,插件编写容易
-
当监控的 item 比较多服务器队列比较大时可以采用主动状态,被监控客户端主动 从server 端去下载需要监控的 item 然后取数据上传到 server 端。 这种方式对服务器的负载比较小。
-
Api 的支持,方便与其他系统结合
Zabbix 架构
Zabbix由几个主要的软件组件构成,这些组件的功能如下
Zabbix Server
- Zabbix server 是 agent 程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器
Zabbix 数据库存储
- 所有配置信息和 Zabbix 收集到的数据都被存储在数据库中
Zabbix Web 界面
- 为了从任何地方和任何平台都可以轻松的访问Zabbix, 我们提供基于Web的Zabbix界面。该界面是Zabbix Server的一部分,通常(但不一定)跟Zabbix Server运行在同一台物理机器上
- 如果使用 SQLite,Zabbix Web 界面必须要跟Zabbix Server运行在同一台物理机器上
Zabbix Proxy 代理服务器
- Zabbix proxy 可以替Zabbix Server收集性能和可用性数据。Proxy代理服务器是Zabbix软件可选择部署的一部分;当然,Proxy代理服务器可以帮助单台Zabbix Server分担负载压力
Zabbix Agent 监控代理
- Zabbix agents监控代理 部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给Zabbix Server
Zabbix 数据流
-
监控方面,为了创建一个监控项(item)用于采集数据,必须先创建一个主机(host)。
-
告警方面,在监控项里创建触发器(trigger),通过触发器(trigger)来触发告警动作(action)。 因此,如果你想收到Server XCPU负载过高的告警,必须满足
- 为Server X创建一个host并关联一个用于对CPU进行监控的监控项(Item)
- 创建一个Trigger,设置成当CPU负载过高时会触发
- Trigger被触发,发送告警邮件
Zabbix的安装
官网下载地址:下载
选择5.0LTS版本
准备zabbix yum仓库
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
安装 Zabbix server and agent
yum install -y zabbix-server-mysql zabbix-agent
安装 Zabbix 前端
yum install centos-release-scl
编辑配置文件 /etc/yum.repos.d/zabbix.repo and 开启 zabbix-frontend repository
cd /etc/yum.repos.d/
vim zabbix.repo
[zabbix-frontend]
...
enabled=1
...
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl
安装数据库
yum install -y mariadb-server
systemctl start mariadb
netstat -lnt
设置密码
mysqladmin -uroot password '123'
登陆验证
mysql -uroot -p123
在数据库主机上运行以下代码
create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by '123';
grant all privileges on zabbix.* to zabbix@localhost;
导入初始架构和数据,系统将提示您输入新创建的密码
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
为Zabbix server配置数据库
vim /etc/zabbix/zabbix_server.conf
DBPassword=123
查看时区
timedatectl
为Zabbix前端配置php
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai
启动Zabbix server和agent进程
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
配置Zabbix前端
连接到新安装的Zabbix前端: http://server_ip_or_name/zabbix
都必须是绿色ok
填写数据库端口和用户和密码
用户和数据库默认zabbix 密码是之前自己填的123
填写主机名
Admin 密码:zabbix
解决中文代码
yum install -y wqy-microhei-fonts
cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf
基本配置
登录并配置用户
在管理、用户里面创建新用户
右上角
使用新账号登录
添加监控端主机
换一台新的服务器
yum install -y zabbix-agent
vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.188.158 # 指明监控服务器地址
ListenPort=10050 # 被监听服务器的端口
ListenIP=192.168.188.159 # 监听的地址,如果填0.0.0.0表示本机所有地址
StartAgents=3 # 优化时使用的
ServerActive=192.168.188.158:10051 # 主动监控时的服务器和端口
Hostname=zabbix-agent # 自己能被server端识别的名称
HostMetadata=Linux xiaotian # 指定类型和一串名称 这个一会儿要去zabbix服务器里进行配置
HostMetadataItem=system.uname # 系统变量
systemctl restart zabbix-agent
进入zabbix服务器,配置里面找到动作
左上角选择Auto,然后右上角创建动作
点击添加,主机元数据,这个值就是配置里面 HostMetadata=Linux
增加操作
最后更新动作
已经自动获取被监控主机
以上是关于Zabbix——Zabbix的安装和基本配置的主要内容,如果未能解决你的问题,请参考以下文章