Zabbix
zabbix简介
Zabbix是一个基于WEB界面的提供分布式系统监控的企业级的开源解决方案,Zabbix能监视各种网络参数,保证服务器系统的安全文档的运行,并提供灵活的通知机制以SA快速定位并解决存在的各种问题。Zabbix分布式监控系统的有点如下:
- 支持自动发现服务器和网络设备
- 支持底层自动发现
- 分布式的监控体系和集中式的WEB管理
- 支持主动监控和被动监控模式
- 服务器端支持多种操作系统:Linux,Solaris,HP-UX,AIX,FreeBSD,OpenBSD,MAC等
- Agent客户端支持多种操作系统:Linux,Solaris,HP-UX,AIX,FreeBSD,Windows等;
- 基于SNMP,IPMI接口方式也可以监控Agent
- 安全的用户认证及权限配置
- 基于WEB的管理方法,支持自由的自定义事件和邮件发送
- 高水平的业务视图监控资源,支持日志审计,资产管理等功能
- 支持高水平API二次开发、脚本监控、自Key定义、自动化运维整合调用
Zabbix监控组件及流程
Zabbix监控组件,主要由三大组件,分别是Zabbix server端、Zabbix Proxy、Agent客户端,其中Zabbix Server端包括:WEB GUI、Database、 Zabbix_Server
Zabbix安装
安装依赖
# 下载安装包
wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.7/zabbix-4.4.7.tar.gz
# zabbix server端和zabbix Agent执行如下代码
yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI mariadb-devel mysql-devel gcc libevent-devel
# net-snmp net-snmp-devel net-snmp是个开源的SNMP实现项目。支持SNMPv1、SNMPv2、SNMPv3,支持基于IPv4和IPv6的SNMP应用程序开发。
# perl-DBI 激活数据库
创建用户
# 创建用户
groupadd zabbix
useradd -g zabbix zabbix
# 该用户不用登录了
usermod -s /sbin/nologin zabbix
数据库配置
# zabbix server端配置
创建zabbix数据库,执行授权命令
CREATE DATABASE zabbix character set utf8 collate utf8_bin;
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'Mysql123!';
flush privileges;
导入数据
# 解压zabbix软件包,并将zabbix基础sql文件导入数据至zabbix数据库
tar -zxvf zabbix-4.4.7.tar.gz
cd zabbix-4.4.7/database/mysql
mysql -uzabbix -pMysql123! zabbix < schema.sql
mysql -uzabbix -pMysql123! zabbix < images.sql
mysql -uzabbix -pMysql123! zabbix < data.sql
导入的顺序依次是用户结构、图片、数据
注意:导入顺序不能表
编译安装
cd cd zabbix-4.4.7
./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl
make && make install
# 加载snmp协议, --with-net-snmp
# 支持不同协议链接不同服务器支持多种协议,http,httos,ftp, --with-libcurl
/opt/software/zabbix-4.4.7/frontends/php
# 用来存放网站数据
# 配置zabbix_server.conf
cd /usr/local/zabbix/etc
cp zabbix_server.conf zabbix_server.conf.bak
grep -vE "^#|^$" zabbix_server.conf
# 配置zabbix_server.conf如下
LogFile=/tmp/zabbix_server.log
DBName=zabbix
DBUser=zabbix
Timeout=4
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
DBHost=localhost
DBPassword=Mysql123! # 数据库的密码
# 找到tru64
find / -name tru64 # centos 64位系统
cd /opt/software/zabbix-4.4.7/misc/init.d/tru64
cp -a ./* /etc/init.d/
cd /etc/init.d/
chmod +x zabbix_*
# 修改 zabbix_server
DAEMON=/usr/local/zabbix/sbin/zabbix_server # 改为 安装的路径 添加zabbix
# 启动
cd /etc/init.d/
./zabbix_server start
./zabbix_server restart
centos+zabbix+mysql+nginx
# 安装
https://www.cnblogs.com/leelice/p/12300303.html
# 界面操作
https://blog.csdn.net/qq_19731521/article/details/90697472
安装
# 1、安装数据源
rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
yum clean all
# 2、安装Zabbix server,Web前端,agent
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-agent
如果有报错,直接进行多次重试即可。
nginx包在官方存储库中不可用。可以在epel存储库中找到它
yum install epel-release
# 3、创建初始数据库
mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'Mysql123!';
flush privileges;
quit;
# 导入初始架构和数据,系统将提示您输入新创建的密码,zabbix数据库
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
# 4、为Zabbix server配置数据库
编辑配置文件 /etc/zabbix/zabbix_server.conf
DBPassword=password
# 5、为Zabbix前端配置PHP
编辑配置文件 /etc/nginx/conf.d/zabbix.conf, 去掉#号,server_name 一定要正确,否则可能打不开网站
listen 80;
server_name example.com;
编辑配置文件 /etc/php-fpm.d/zabbix.conf, 改成Asia/Shanghai,去掉前面的分号,
; php_value[date.timezone] = Europe/Riga
# 6、启动Zabbix server和agent进程
启动Zabbix server和agent进程,并为它们设置开机自启:
systemctl restart zabbix-server zabbix-agent nginx php-fpm
systemctl enable zabbix-server zabbix-agent nginx php-fpm
# 访问
http://本机ip
# 默认用户
user:Admin
password:zabbix