zabbix学习
2026-04-15 14:27:53 0 举报仅支持查看
AI智能生成
学无止境
总结与学习
模版推荐
作者其他创作
大纲/内容
zabbix6.0监控
安装篇
zabbix6.0安装要求:
硬件:
分支主题
软件:
分支主题
windows可以作为客户端,不能作为服务器server端
数据库支持的版本:
分支主题
前端:
分支主题
zabbix需要php+nginx或者php+apache环境
总结:
分支主题
zabbix6.0新特性
1、开箱即用的zabbix server高可用集群
Zabbix server高可用防止硬件故障或计划维护期的停机:
●原生选择加入HA群集配置
●定义一个或多个备用节点
●实时监控Zabbix server群集节点的状态
●不需要外部工具即可将Zabbix server配置为HA群集模式
2、Kubernetes监控
Zabbix 6.0 LTS新增Kubernetes监控功能,可以在Kubernetes系统从多 个维度采集指标:
●Kubernetes节点和pods的自动发现和监控
●无代理方式采集Kubernetes pods和节点的信息
●获取Kubernetes节 点主机高水平信息
Kubernetes监控还能够监控Kubernetes组件,例如
●kube-controller-manager
●kube-apiserver
●kube-scheduler
●kubelet
3.可视化数据的新方法
Zabbix 6.0新增的构件提供了展示信息的许多新方法。
●地理地图构件能在地图上显示主机和问题
●主机排序组件可显示按监控项值排序的前N个或后N个主机的列表
●单一监控项构件能展示单个指标的值
●SLA构件能显示特定业务服务的当前SLA
4、新增模板和集成
分支主题
zabbix单机版(Ubuntu)
部署环境
修改主机名:
sudo hostnamectl set-hostname zabbix01
特点:
zabbix server、zabbix agent、mysql都安装在同一台机器上
安装数据库(mysql 8.0)
安装数据库(mysql-server和mariadb)
默认mysql 5.7版本
默认mariadb10.3版本
使用清华源:
sudo bash -c "cat >/etc/apt/sources.list.d/mysql-community.list" <<EOF deb https://mirrors.tuna.edu.cn/mysql/apt/ubuntu bionic mysql-5.7 mysql-8.0 mysql-tools
EOF
导入GPG密钥:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3A79BD29
安装mysql
sudo apt update
sudo apt install mysql-server
检查状态:
sudo systemctl status mysql
默认用户自己的秘密:
sudo mysql -uroot -p
赋予mysql用户权限:
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@'localhost' identified WITH mysql_native_password by 'password';
grant all privileges on zabbix.* to zabbix@'localhost';
show databases;
quit
安装zabbix(lamp环境)
添加zabbix仓库
wget https://mirrors.aliyun.com/zabbix/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo apt update
安装zabbix server,Web前端,agent
sudo apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent2
安装中文字体
sudo apt -y install language-pack-zh-hans
创建初始数据库:
zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p -h localhost zabbix
输入zabbix用户的password等待完成。
默认密码:
password
mysql -uroot -p
use zabbix;
show tables;
修改zabbix server配置
sudo sed -i 's#\# DBPassword=#DBPassword=password#g' /etc/zabbix/zabbix_server.conf
sudo grep "DBPassword=" /etc/zabbix/zabbix_server.conf
启动server、agent、apache2
sudo systemctl start zabbix-server zabbix-agent2 apache2
sudo systemctl enable zabbix-server zabbix-agent2 apache2
检查:
sudo systemctl status zabbix-server zabbix-agent2 apache2
检查:
ss -lnpt | grep 80
Apache
ss -lnpt | grep 10051
zabbix-agent
配置前端
sudo systemctl restart zabbix-server zabbix-agent2 apache2
前端页面:
192.168.33.101/zabbix/setup.php
选择中文显示:
分支主题
下一步正常后操作:
分支主题
settings
分支主题
登录界面:
分支主题
密码登录:
sudo vim /usr/share/zabbix/conf/zabbix.conf.php
用户/密码:
Admin/zabbix
登录后:
分支主题
配置server上的zabbix-agent
因为zabbix-agent和zabbix-server在同一台机器,不需要改任何配置,就能收集数据
默认的
点击查看本机数据:
分支主题
最新数据:
分支主题
安装中文字体:
sudo apt -y install ttf-wqy-microhei
sudo cp /usr/share/fonts/truetype/wqy/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
二进制安装zabbix6.0集群(Ubuntu)
环境准备:
zabbix server主节点
zabbix server备节点
zabbix server备节点
数据库节点(mysql8.0或者mariadb10.5)
说明:zabbix HA最少需要
修改计算机名:
sudo hostnamectl set-hostname zabbix01
sudo hostnamectl set-hostname zabbix02
sudo hostnamectl set-hostname zabbix03
sudo hostnamectl set-hostname db01
安装数据库(mariadb)-操作db01机器
安装数据库(mysql-server和mariadb)
默认mysql 5.7版本
默认mariadb10.3版本
安装组件及设置key
sudo apt -y install software-properties-common dirmngr apt-transport-https
sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
添加阿里云的mariadb源
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el,s390x] https://mirrors.aliyun.com/mariadb/repo/10.5/ubuntu focal main'
添加完后更新源:
sudo apt update
安装数据库:
sudo apt install mariadb-server
sudo systemctl status mariadb
mysql -V
检查版本
mysql Ver 15.1 Distrib 10.5.16-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
数据库初始化
sudo mysql_secure_installation
如图
分支主题
Enter current password for root (enter for none):
OK, successfully used password, moving on...
第一次没有设置过密码,直接enter键
Switch to unix_socket authentication [Y/n]
是否使用unix_socket身份验证插件 :y
Change the root password? [Y/n] n
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] n
Reload privilege tables now? [Y/n] y
配置远程访问:
grep "bind-address" /etc/mysql/mariadb.conf.d/50-server.cnf
bind-address = 127.0.0.1
默认只能本机访问
sudo sed -i 's#bind-address\(.*\)#bind-address = 0.0.0.0#g' /etc/mysql/mariadb.conf.d/50-server.cnf
grep "bind-address" /etc/mysql/mariadb.conf.d/50-server.cnf
bind-address = 0.0.0.0
默认只能本机访问
重启mariadb
sudo systemctl restart mariadb
sudo systemctl status mariadb
创建zabbix库和用户
登录数据库
sudo mysql
直接登录,不需要输入密码
auth_socket插件将会通过Unix socket 文件验证用户来连接localhost。意味着你不需要提供密码来验证登录。
赋予mysql用户权限:
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@'%' identified by 'password';
delete from mysql.user where user like 'zabbix';
删除语句
grant all privileges on zabbix.* to zabbix@'%';
show databases;
quit
注意:
对于上面命令的改变由之前的zabbix@'localhost 变成了zabbix@'%',连接数据库由sudo mysql -uzabblx -p变成了mysq| -uzabbix P -h 192.168.11.50,因为zabbix和mysq|安装不在一台机器上,所以不能使用mysql -uzabbix -p方式来连接了。
安装zabbix(lamp环境)-操作三台zabbix
xshell 使用技巧:
垂直排列:
分支主题
撰写栏(选择全部会话)
分支主题
添加zabbix仓库
wget https://mirrors.aliyun.com/zabbix/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo dpkg -i zabbix-release_6.0-1+ubuntu20.04_all.deb
sudo apt update
安装zabbix server,Web前端,agent
sudo apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent2
安装中文字体
sudo apt -y install language-pack-zh-hans
创建初始数据库(只在zabbix01上执行):
sudo apt install -y mariadb-client
E: Unable to correct problems, you have held broken packages
该报错先忽略
zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p -h192.168.33.10 zabbix
-h的ip是db01的ip
输入zabbix用户的password等待完成。
默认密码:
password
sudo mysql -uzabbix -p -h 192.168.33.10
use zabbix;
show tables;
zabbix-server服务器上执行的操作(三台都要操作)
启动server、agent、apache2
sudo systemctl start zabbix-server zabbix-agent2 apache2
sudo systemctl enable zabbix-server zabbix-agent2 apache2
检查:
sudo systemctl status zabbix-server zabbix-agent2 apache2
检查:
ss -lnpt | grep 80
Apache
ss -lnpt | grep 10051
zabbix-agent
方法一:
使用vim修改zabbix server配置:
sudo vim /etc/zabbix/zabbix_server.conf
#数据库配置,3台zabbix server一致,根据实际修改
DBHost=192.168.33.10
DBName=zabbix
DBUser=zabbix
DBPassword=password
#HA配置,3台zabbix server不一致,根据实际修改
#HANodeName设置为当前节点主机名或者ip地址,需要保证统一集群中唯一
HANodeName=zabbix01
#NodeAddress设置为本机的IP:10051
NodeAddress=ip:10051
方法二:
使用sed命令zabbix server修改配置:
sudo sed -i 's#\# DBHost=localhost#DBHost=192.168.33.10#g' /etc/zabbix/zabbix_server.conf
sudo sed -i 's#\# DBPassword=#DBPassword=password#g' /etc/zabbix/zabbix_server.conf
sudo egrep "DBPassword=|DBHost=" /etc/zabbix/zabbix_server.conf
配置HA高可用配置:
zabbix01
sudo sed -i 's#\# HANodeName=#HANodeName=zabbix01#g' /etc/zabbix/zabbix_server.conf
sudo sed -i 's#\# NodeAddress=localhost:10051#NodeAddress=192.168.33.101:10051#g' /etc/zabbix/zabbix_server.conf
zabbix02
sudo sed -i 's#\# HANodeName=#HANodeName=zabbix02#g' /etc/zabbix/zabbix_server.conf
sudo sed -i 's#\# NodeAddress=localhost:10051#NodeAddress=192.168.33.102:10051#g' /etc/zabbix/zabbix_server.conf
zabbix03
sudo sed -i 's#\# HANodeName=#HANodeName=zabbix03#g' /etc/zabbix/zabbix_server.conf
sudo sed -i 's#\# NodeAddress=localhost:10051#NodeAddress=192.168.33.103:10051#g' /etc/zabbix/zabbix_server.conf
检查:
sudo egrep "DBPassword=|DBHost=|HANodeName=|NodeAddress=" /etc/zabbix/zabbix_server.conf
启动zabbix server和agent进程
集群主节点需要先启动进程:
在zabbix上执行:
sudo systemctl start zabbix-server zabbix-agent2 apache2
sudo systemctl enable zabbix-server zabbix-agent2 apache2
sudo systemctl status zabbix-server zabbix-agent2 apache2
检查zabbix-server日志是否正常:
sudo tail -f /var/log/zabbix/zabbix_server.log
配置zabbix-server前端:
sudo systemctl restart zabbix-server zabbix-agent2 apache2
对于Apache:
http://ip/zabbix
对于Nginx:
http://ip/
浏览器打开:
http://192.168.33.101/zabbix/
http://192.168.33.102/zabbix/
http://192.168.33.103/zabbix/
前端页面配置和单机版相似:
注意:
分支主题
主备节点界面显示:
分支主题
机器上去查看:
HA manager started in standby mode
日志信息中为备节点
HA manager started in active mode
日志信息中为主节点
"zabbix03" node switched to "active" mode
关闭或者重启一个节点后自动更改的日志信息
查看zabbix集群状态(必须要在主节点上执行):
sudo zabbix_server -R ha_status
配置server上zabbix-agent
修改配置文件(3台zabbix-server上操作)
sudo grep "^Server=" /etc/zabbix/zabbix_agent2.conf
原来的:
Server=127.0.0.1
改成如下命令中的:
Server=192.168.33.101,192.168.33.102,192.168.33.103
sudo sed -i 's#Server=127.0.0.1#Server=192.168.33.101,192.168.33.102,192.168.33.103#g' /etc/zabbix/zabbix_agent2.conf
重启3台zabbix-agent2
sudo systemctl restart zabbix-agent2
sudo systemctl status zabbix-agent2
在zabbix server Web界面中添加主机
步骤如图所示
分支主题
分支主题
需要等待,因为更改了127.0.0.1
分支主题
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
时区更改为上海
安装中文字体:
sudo apt -y install ttf-wqy-microhei
sudo cp /usr/share/fonts/truetype/wqy/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
模拟zabbix server主节点故障:
停止active主节点的zabbix-server服务
systemctl stop zabbix-server
docker 安装zabbix(单机版-Ubuntu)
环境介绍:
zabbix server、数据库、zabbix web都运行在同一台上
修改主机名:
sudo hostnamectl set-hostname zabbix01
安装docker:
sudo apt update
安装组件:
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
添加key:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
添加阿里云的docker源:
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
安装:
sudo apt install docker-ce docker-ce-cli containerd.io
查看docker版本
sudo docker version
配置163镜像加速:
注意:之前使用的阿里云镜像加速,下载的latest版本是zabbix5.4.9。非6.0
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<- 'EOF'
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/","https://hub-mirror.c.163.com","https://registry.docker-cn.com"],
"insecure-registries": ["10.0.0.12:5000"]
}
把用户添加到docker组:
sudo usermod -aG docker zhao
应用配置并重启docker:
sudo systemctl daemon-reload
sudo systemctl restart docker && sudo systemctl enable docker
ctrl + d
ctrl + shirt +r
docker ps
docker运行单个zabbix-server
创建专用于zabbix组件容器的网络:
sudo docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net
启动空的MySQL服务器实例:
注意zabbix用户的密码为password,root用户密码为默认设置的,根据实际修改。
sudo mkdir /data/ -p
sudo docker run --name mysql8-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="password" \
-e MYSQL_ROOT_PASSWORD=“123580zhw” \
--network=zabbix-net \
-v /etc/localtime:/etc/localtime:ro \
-v /data/zabbix/mysql8/data:/var/lib/mysql \
-d mysql:8.0 \
--character-set-server=utf8mb4 --collation-server=utf8mb4_bin \
--default_authentication-plugin=mysql_native_password
sudo docker run --name mysql8-server -t \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="password" \
-e MYSQL_ROOT_PASSWORD=“123580zhw” \
-v /etc/localtime:/etc/localtime:ro \
-v /data/zabbix/mysql8/data:/var/lib/mysql \
-d mysql:8.0 \
--character-set-server=utf8mb4 --collation-server=utf8mb4_bin \
--default_authentication-plugin=mysql_native_password
启动zabbix server实例,并将其关联到已创建的mysql server实例
sudo docker run --name zabbix-server -t \
-e MYSQL_SERVER_HOST="mysql8-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="password" \
-e MYSQL_ROOT_PASSWORD=“123580zhw” \
-v /data/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \
--network=zabbix-net \
-v /etc/localtime:/etc/localtime:ro \
-p 10051:10051 \
--restart unless-stopped \
-d zabbix/zabbix-server-mysql:latest
sudo docker run --name zabbix-server -t \
-e MYSQL_SERVER_HOST="mysql8-server" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="password" \
-e MYSQL_ROOT_PASSWORD=“123580zhw” \
-v /data/zabbix/alertscripts:/usr/lib/zabbix/alertscripts \
-v /etc/localtime:/etc/localtime:ro \
-p 10051:10051 \
--restart unless-stopped \
-d zabbix/zabbix-server-mysql:latest
zabbix server 实例将10051/TCP端口(zabbix trapper)暴露给主机
启动 zabbix web界面,并将其关联到已创建的Mysql server 和zabbix server实例:
sudo docker run --name zabbix-web -t \
-e ZBX_SERVER_HOST="zabbix-server" \
-e DB_SERVER_HOST="mysql8-server" \
-e PHP_TZ="Asia/shanghai" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="password" \
-e MYSQL_ROOT_PASSWORD=“123580zhw” \
--network=zabbix-net \
-v /etc/localtime:/etc/localtime:ro \
-p 80:8080 \
--restart unless-stopped \
-d zabbix/zabbix-web-nginx-mysql:latest
sudo docker run --name zabbix-web -t \
-e ZBX_SERVER_HOST="zabbix-server" \
-e DB_SERVER_HOST="mysql8-server" \
-e PHP_TZ="Asia/shanghai" \
-e MYSQL_DATABASE="zabbix" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="password" \
-e MYSQL_ROOT_PASSWORD=“123580zhw” \
-v /etc/localtime:/etc/localtime:ro \
-p 80:8080 \
--restart unless-stopped \
-d zabbix/zabbix-web-nginx-mysql:latest
检查
sudo docker logs -f mysql8-server
成功
sudo docker logs -f zabbix-server
sudo docker ps
没有问题后,浏览器访问zabbix地址,docker运行的zabbix不需要web端初始化,直接访问就ok
http://192.168.33.101
账号/密码:Admin/zabbix
启动zabbix agent界面,并将其关联到已创建的zabbix server实例
sudo docker run --name zabbix-agent2 -t \
-e ZBX_SERVER_HOST="zabbix-server" \
-e ZBX_SERVER_PORT="10051" \
--network=zabbix-net \
-v /etc/localtime:/etc/localtime:ro \
--restart unless-stopped \
-d zabbix/zabbix-agent2:latest
web界面-主机-(主机名)zabbix-agent2-更新
安装中文字体:
sudo apt -y install ttf-wqy-microhei
sudo cp /usr/share/fonts/truetype/wqy/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
最终临时结果:拉取不了镜像
docker-compose运行zabbix(单机版-Ubuntu)
安装docker:
sudo apt update
安装组件:
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
添加key:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
添加阿里云的docker源:
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
安装:
sudo apt install docker-ce docker-ce-cli containerd.io
查看docker版本
sudo docker version
环境介绍:
zabbix server、数据库、zabbix web都运行在同一台上
修改主机名:
sudo hostnamectl set-hostname zabbix01
配置163镜像加速:
注意:之前使用的阿里云镜像加速,下载的latest版本是zabbix5.4.9。非6.0
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<- 'EOF'
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF
把用户添加到docker组:
sudo usermod -aG docker zhao
应用配置并重启docker:
sudo systemctl daemon-reload
sudo systemctl restart docker && sudo systemctl enable docker
ctrl + d
ctrl + shirt +r
docker ps
首先需要有docker环境(可以接上docker安装zabbix-单机版操作或者直接重新安装docker)
docker rm -f `docker ps -qa`
强制删除运行中的容器
docker rm -rf /data/
删除数据库持久化目录
安装docker-compose
使用国内安装docker-compose
sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose -version
运行单台zabbix
创建用于存放zabbix数据库的目录:
sudo mkdir /data/zabbix -p
cd /data/zabbix/
sudo vim docker-compose.yml
注意:新建docker-compose.yml文件,因为yml 文件vim粘贴导致格式乱码。所以先新建txt文件,然后在改名创建用于zabbix数据库的目录
输入
:set paste
按i填入以下内容
version: '3.1'
services:
zabbix-mysql8:
image: mysql:8.0
container_name: zabbix-mysql8
# docker安全验证
security_opt:
- seccomp:unconfined
command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_bin, --default-authentication-plugin=mysql_native_password]
restart: always
networks:
- zabbix_net
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=123580zhw
volumes:
- /etc/localtime:/etc/localtime:ro
#- ./mysql8/conf:/etc/mysql/conf.d
- ./mysql8/data:/var/lib/mysql
zabbix-server:
image: zabbix/zabbix-server-mysql
container_name: zabbix-server
restart: always
networks:
- zabbix_net
depends_on:
- zabbix-mysql8
ports:
- 10051:10051
environment:
- DB_SERVER_HOST=zabbix-mysql8
- MYSQL_DATABASE=zabbix
- MYSQL_USER=zabbix
- MYSQL_PASSWORD=password
- MYSQL_ROOT_PASSWORD=123580zhw
volumes:
- /etc/localtime:/etc/localtime:ro
- ./zabbix-server/alertscripts:/usr/lib/zabbix/alertscripts
zabbix-web:
image: zabbix/zabbix-web-nginx-mysql
container_name: zabbix-web
restart: always
networks:
- zabbix_net
depends_on:
- zabbix-mysql8
ports:
- 80:8080
environment:
- DB_SERVER_HOST=zabbix-mysql8
- MYSQL_USER=zabbix
- MYSQL_PASSWORD=password
- ZBX_SERVER_HOST=zabbix-server
- PHP_TZ=Asia/Shanghai
volumes:
- /etc/localtime:/etc/localtime:ro
zabbix-agent2:
image: zabbix/zabbix-agent2
container_name: zabbix_agent2
restart: always
networks:
- zabbix_net
environment:
- ZBX_SERVER_HOST=zabbix-server
- ZBX_SERVER_POST=10051
volumes:
- /etc/localtime:/etc/localtime:ro
networks:
zabbix-net:
driver: bridge
web界面-主机-(主机名)zabbix-agent2-更新
安装中文字体:
sudo apt -y install ttf-wqy-microhei
sudo cp /usr/share/fonts/truetype/wqy/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
监控篇
其他web页面
zabbix知识点
常见的开源监控系统
zabbix
Prometheus
Open-Falcon
Nagios+Cacti
Zabbix和Prometheus的对比:
Zabbix
后端用C开发,界面用PHP开发,定制化难度很高。
6.0支持单个Zabbix实例监控超过10万个业务服务
更适合监控物理机环境
监控数据存储在关系型数据库内,如MySQL,很难从现有数据中扩展维度
安装简单,zabbix-server一个软件包中包括了所有的服务端功能
图形化界面比较成熟,界面上基本上能完成全部的配置操作
发展时间更长,对于很多监控场景,都有现成的解决方案
物理机、硬件设备的监控
Prometheus
后端用golang开发,前端是Grafana,JSON编辑即可解决定制化难度较低
支持更大的集群规模,速度也更快
更适合云环境的监控,对OpenStack,Kubernetes有更好的集成
监控数据存储在基于时间序列的数据库内,便于对已有数据进行新的聚合。十万级监控数据,Prometheus数据查询速率比Zabbix更快
安装相对复杂,监控、告警和界面都分属于不同的组件
界面相对较弱,很多配置需要修改配置文件
2015年后开始快速发展,发展时间短,但现在也非常的成熟
docker容器、k8s
Ubuntu基本操作:
sudo vim /etc/netplan/00-installer-config.yaml
应用配置
sudo netplan apply
修改时区
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date -R
系统优化
sudo sed -i '/^# End of file/,$d' /etc/security/limits.conf
sudo sh -c "cat >> /etc/security/limits.conf <<EOF
# End of file
root - nproc 512000
* - nproc 512000
root - nofile 512000
* - nofile 512000
EOF"
软件园替换成阿里云:
sudo sed -i.bak 's/http:\/\/.*.ubuntu.com/http:\/\/mirrors.aliyun.com/g' /etc/apt/sources.list
更新:
sudo apt update && sudo apt upgrade -y
重启:
sudo reboot
zabbix进程:
如图:
分支主题
zabbix-server
zabbix-agent
zabbix-agent2
zabbix-proxy
zabbix-java-gateway
zabbix-get
zabbix-js
zabbix-sender
zabbix-web-service
zabbix6.x学习(老男孩教育-有点摆烂)
1.系统:CentOS 7.x 不支持yum方式安装zabbix服务端
2. 安装方式:
zabbix服务端编译安装
zabbix客户端yum安装
3.部署zabbix服务端流程
<1.部署nginx+php环境并测试
ngx源
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
php源
curl -o /etc/yum. repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install epel-release.noarch -y #webtatic要求
curl -o /etc/yum. repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm #webtatic源
yum install php74-php-gd php74-php-pdo php74-php-mbstring php74-php-cli php74-php-fpm php74-php-mysqlnd
视频上的版本:yum install php72w-cli php72w-fpm php72w-gd php72w-mbstring php72w-bcmath php72w-xml php72w-ldap php72w-mysqlnd -y
更新CA证书:yum --disablerepo=epel -y update ca-certificates
查看系统时间是否准确:date
如果不一样,安装ntpdate工具,并同步:yum -y install ntp ntpdate(可先卸载epel-release)
ntpdate cn.pool.ntp.org
以上是解决rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 失败的问题
yum install epel-release
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
vim /etc/yum.repos.d/nginx.repo
检查安装架结果
rpm -qa | egrep 'php|nginx' | wc -l
分支主题
分支主题
对比缺少的:
yum install php74-php-bcmath.x86_64 -y
yum install php74-php-xml.x86_64 -y
结果:11
版本:7.2.34-1.w7.x86_64
nginx配置
conf.d/zbx.oldboylinux.cn.conf
server {
listen 80;
server_name zbx.oldboylinux.cn;
root /app/code/zbx;
location / {
index index.php;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENANE $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
php配置
sed -ri '/^(user|group)/s#apache#nginx#g' /etc/opt/remi/php74/php-fpm.d/www.conf
/etc/opt/remi/php74/php-fpm.d/www.conf
这个为74版本的安装路径
验证php配置文件:
egrep '^(user|group)' /etc/opt/remi/php74/php-fpm.d/www.conf
user = nginx
group = nginx
创建目录&创建测试文件
mkdir -p /app/code/zbx
vim /app/code/zbx/phpinfo.php
<?php
phpinfo();
?>
启动服务和测试
开机自启
systemctl enable nginx php74-php-fpm
systemctl start nginx php74-php-fpm
测试web(host解析)
192.168.33.129 zbx.oldboylinux.cn
<2.部署数据库 mariadb10.5及以上
<3.编译安装zabbix-server服务端及后续配置
<4.部署前端代码代码进行访问
<5.web访问
<6.配置客户端
Collect
Get Started
Collect
Get Started
Collect
Get Started
Collect
Get Started
评论
0 条评论
下一页