ubuntu 24下使用docker compose部署zabbix-server 7.0 + zabbix-proxy 7.0 +zabbix agent(非docker)
环境:
Os:ubuntu 24.04
zabbix:7.0.29
192.168.1.102 zabbix-server
192.168.1.105 zabbix-proxy
192.168.1.106 zabbix agent 常规安装方式 不采用docker
##############################zabbix-server 7.0#######################
1.准备docker-compose.yml配置文件
工作目录:/opt/zabbix-server
mkdir -p /opt/zabbix-server/mysql_data ##mysql 数据目录
vi /opt/zabbix-server/docker-compose.yml
version: '3.8'
services:
mysql-server:
image: registry.cn-shenzhen.aliyuncs.com/hxlk8s/mysql:8.0.46
container_name: zabbix-mysql-server
restart: always
environment:
MYSQL_ROOT_PASSWORD: Zbx@Root123
MYSQL_DATABASE: zabbix_server
MYSQL_USER: zabbix
MYSQL_PASSWORD: Zbx@Db123
volumes:
- ./mysql_data:/var/lib/mysql
ports:
- "3306:3306"
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci
zabbix-server:
image: registry.cn-shenzhen.aliyuncs.com/hxlk8s/zabbix-server-mysql:ubuntu-7.0.29
container_name: zabbix-server
restart: always
depends_on:
- mysql-server
environment:
DB_SERVER_HOST: mysql-server
MYSQL_DATABASE: zabbix_server
MYSQL_USER: zabbix
MYSQL_PASSWORD: Zbx@Db123
MYSQL_ROOT_PASSWORD: Zbx@Root123
ports:
- "10051:10051"
volumes:
- ./alertscripts:/usr/lib/zabbix/alertscripts
- ./externalscripts:/usr/lib/zabbix/externalscripts
zabbix-web-nginx-mysql:
image: registry.cn-shenzhen.aliyuncs.com/hxlk8s/zabbix-web-nginx-mysql:ubuntu-7.0.29
container_name: zabbix-web
restart: always
depends_on:
- mysql-server
- zabbix-server
environment:
DB_SERVER_HOST: mysql-server
MYSQL_DATABASE: zabbix_server
MYSQL_USER: zabbix
MYSQL_PASSWORD: Zbx@Db123
ZBX_SERVER_HOST: zabbix-server
PHP_TZ: Asia/Shanghai
ports:
- "8080:8080"
2.启动
cd /opt/zabbix-server
docker compose up -d
3.浏览器登录
http://192.168.1.102:8080
账号密码为Admin/zabbix
##############################zabbix-proxy 7.0#######################
1.准备docker-compose.yml配置文件
工作目录:/opt/zabbix-proxy
mkdir -p /opt/zabbix-proxy/mysql_proxy_data ##mysql数据目录
vi /opt/zabbix-proxy/docker-compose.yml
version: '3.8'
services:
mysql-proxy:
image: registry.cn-shenzhen.aliyuncs.com/hxlk8s/mysql:8.0.46
container_name: zabbix-mysql-proxy
restart: always
environment:
MYSQL_ROOT_PASSWORD: ZbxProxy@Root123
MYSQL_DATABASE: zabbix_proxy
MYSQL_USER: zabbix_proxy
MYSQL_PASSWORD: ZbxProxy@Db123
volumes:
- ./mysql_proxy_data:/var/lib/mysql
ports:
- "3306:3306"
command:
--character-set-server=utf8mb4
--collation-server=utf8mb4_unicode_ci
zabbix-proxy-mysql:
image: registry.cn-shenzhen.aliyuncs.com/hxlk8s/zabbix-proxy-mysql:7.0.29-ubuntu
container_name: zabbix-proxy
restart: always
depends_on:
- mysql-proxy
environment:
DB_SERVER_HOST: mysql-proxy
MYSQL_DATABASE: zabbix_proxy
MYSQL_USER: zabbix_proxy
MYSQL_PASSWORD: ZbxProxy@Db123
MYSQL_ROOT_PASSWORD: ZbxProxy@Root123
## 关键:指向zabbix server物理IP
ZBX_SERVER_HOST: 192.168.1.102
ZBX_SERVER_PORT: 10051
## proxy名称,后面web页面要填这个名字
ZBX_HOSTNAME: zabbix-proxy
ZBX_PROXYMODE: 0 # 0=主动proxy;1=被动proxy,这里用主动
ports:
- "10051:10051"
volumes:
- ./externalscripts:/usr/lib/zabbix/externalscripts
ulimits:
nofile:
soft: 65536
hard: 65536
networks:
proxy-net:
driver: bridge
2.启用
cd /opt/zabbix-proxy
docker compose up -d
###############################zabbix agent#############################
常规安装,不采用docker
1.关闭防火墙
sudo ufw disable
sudo ufw status
2.设置主机名
hostnamectl set-hostname zabbix-agent
3.添加Zabbix7.0官方源
mkdir /soft
cd /soft
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu24.04_all.deb
dpkg -i zabbix-release_latest_7.0+ubuntu24.04_all.deb ##会生成apt源 zabbix.sources zabbix-tools.sources,所在目录 /etc/apt/sources.list.d
apt update
4.安装agent端
apt install -y zabbix-agent2
5.编辑配置文件
cd /etc/zabbix
mv zabbix_agent2.conf bak_zabbix_agent2.conf
vi zabbix_agent2.conf
输入如下内容
root@zabbix-agent:/etc/zabbix# more zabbix_agent2.conf
PidFile=/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=1
DebugLevel=3
SourceIP=192.168.1.106
Server=192.168.1.105
ListenPort=10050
ListenIP=192.168.1.106
ServerActive=192.168.1.105
Hostname=zabbix-agent
RefreshActiveChecks=5
BufferSend=20
BufferSize=100
Timeout=3
Include=/etc/zabbix/zabbix_agent2.d/*.conf
UnsafeUserParameters=1
AllowKey=system.run[*]
配置文件说明:
SourceIP=192.168.1.106 ##agent端本机ip地址
Server=192.168.1.105 ##zabbix proxy宿主机ip地址
ListenIP=192.168.1.106 ##agent端本机ip地址
ServerActive=192.168.1.105 ##zabbix proxy宿主机ip地址
Hostname=zabbix-agent ##agent端本机hostname
6.启动服务
systemctl restart zabbix-agent2
systemctl enable --now zabbix-agent2
systemctl status zabbix-agent2
7.创建自定义监控
mkdir -p /etc/zabbix/scripts ##自定义脚本目录
[root@zabbix-agent scripts]# more /etc/zabbix/scripts/es_check_available.sh
#!/bin/bash
available_flag=1
if [ $available_flag -eq 1 ] ; then
echo "ok"
else
echo "failed"
fi
配置项
[root@zabbix-agent zabbix_agentd.d]# more /etc/zabbix/zabbix_agent2.d/es.conf
UserParameter=check_es_available,sh /etc/zabbix/scripts/es_check_available.sh
重启zabbix agent服务
systemctl restart zabbix-agent2
8.在服务端添加主机和配置项



最新数据查看

浙公网安备 33010602011771号