Zabbix部署7.2.7

Zabbix部署7.2.7

1、环境 1.1、部署平台 宿主机 Centos 7.9 X 4台 容器部署 docker Run 2、硬件配置

1、环境

1.1、部署平台

  • 宿主机

    • Centos 7.9 X 4台

  • 容器部署

    • docker Run

2、硬件配置

名称

数量

IP地址

端口

数据库

PostgreSQL

1

192.168.10.10

5432

主服务器

zabbix server postgresql

1

192.168.10.11

10051

Web服务器+NGINX

zabbix web nginx

1

192.168.10.11

443
80

zabbix snmp陷阱

zabbix SNMP traps

1

192.168.10.11

162

Proxy服务器

zabbix proxy

2

192.168.10.12
192.168.10.13

10051

3、官方文件

3、安装和配置

3.1、安装数据库

//zabbix postgresql安装

docker run --name postgres-server \
  -t \
  -e POSTGRES_USER="zabbix" \
  -e POSTGRES_PASSWORD="zabbix" \    # 数据库密码,请注意改成自己的环境。
  -e POSTGRES_DB="zabbix" \
  -e POSTGRES_WORK_MEM=128M \
  -e POSTGRESQL_MAX_CONNECTIONS=500 \
  -e POSTGRES_SHARED_BUFFERS=4G \
  -e POSTGRES_EFFECTIVE_CACHE_SIZE=12G \
  -e POSTGRES_CHECKPOINT_TIMEOUT=15min \
  -e TZ=Asia/Shanghai \
  -e PGTZ=Asia/Shanghai \
  -v /data/docker_storage/postgres/postgres_data:/var/lib/postgresql/data \
  -p 5432:5432 \
  --restart unless-stopped \
  -d \
  postgres:17.5

3.2、安装Zabbix服务器、前端、SNMP Traps

# zabbix snmp陷阱 安装

docker run --name zabbix-snmptraps -t \
             -v /data/docker_storage/zabbix/snmpstraps/zbx_instance/snmptraps:/var/lib/zabbix/snmptraps:rw \
             -v /data/docker_storage/zabbix/snmpstraps/mibs:/usr/share/snmp/mibs:ro \
             -v /data/docker_storage/zabbix/snmpstraps/snmptrapd_config:/var/lib/zabbix/snmptrapd_config \
             -e TZ=Asia/Shanghai \
             --network=zabbix-net \
             -p 162:1162/udp \
             --restart unless-stopped \
             -d zabbix/zabbix-snmptraps:alpine-7.2.7


# zabbix server postgresql安装

docker run --name zabbix-server-pgsql -t \
  -e DB_SERVER_HOST="192.168.10.10" \                # 数据库主机IP地址
  -e POSTGRES_USER="zabbix" \                  # 数据库用户名
  -e POSTGRES_PASSWORD="zabbix" \         # 数据库密码
  -e POSTGRES_DB="zabbix" \                    # 数据库表名
  -e ZBX_ENABLE_SNMP_TRAPS="true" \            # 开启snmp陷进
  -e TZ=Asia/Shanghai \                        # 设置容器内时区亚洲上海
  -e ZBX_CACHESIZE=2G \
  -e ZBX_CACHEUPDATEFREQUENCY=30 \
  -e ZBX_HISTORYCACHESIZE=2G \
  -e ZBX_HISTORYINDEXCACHESIZE=1G \
  -e ZBX_TRENDCACHESIZE=1G \
  -e ZBX_TRENDFUNCTIONCACHESIZE=1G \
  -e ZBX_VALUECACHESIZE=10G \
  -e ZBX_HOUSEKEEPINGFREQUENCY=12 \
  -e ZBX_MAXHOUSEKEEPERDELETE=5000 \
  -e ZBX_STARTPOLLERS=100 \
  -e ZBX_STARTPOLLERSUNREACHABLE=50 \
  -e ZBX_STARTTRAPPERS=32 \
  -e ZBX_STARTPINGERS=12 \
  -e ZBX_STARTALERTERS=50 \
  -e ZBX_STARTIPMIPOLLERS=10 \
  -e ZBX_STARTPREPROCESSORS=10 \
  -e ZBX_TIMEOUT=15 \
  -e ZBX_STARTDBSYNCERS=15 \
  -e ZBX_STATSALLOWEDIP=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com \    # 逗号分隔的 IP 地址列表,可选地采用 CIDR 表示法,或外部 Zabbix 实例的 DNS 名称,并且“::/0”将允许任何 IPv4 或 IPv6 地址。“0.0.0.0/0”可用于允许任何 IPv4 地址。
  -e ZBX_LOGSLOWQUERIES=3000 \
  -e ZBX_STARTLLDPROCESSORS=5 \
  -e ZBX_STARTDISCOVERERS=15 \
  -e ZBX_STARTESCALATORS=5 \
  -v /data/docker_storage/zabbix/server/export:/var/lib/zabbix/export \         # 持久化export目录
  --network=zabbix-net \
  -p 10051:10051 \
  --volumes-from zabbix-snmptraps \
  --restart unless-stopped \
  -d zabbix/zabbix-server-pgsql:alpine-7.2.7


#zabbix web nginx 安装(含php)

docker run --name zabbix-web-nginx-pgsql -t \
  -e ZBX_SERVER_HOST="zabbix-server-pgsql" \                # 服务器主机名称
  -e DB_SERVER_HOST="192.168.10.10" \                          # 数据库主机IP地址
  -e POSTGRES_USER="zabbix" \                               # 数据库用户名
  -e POSTGRES_PASSWORD="zabbix" \                      # 数据库密码
  -e POSTGRES_DB="zabbix" \                                 # 数据库表名
  -e TZ=Asia/Shanghai \
  -e PHP_TZ=Asia/Shanghai \
  --network=zabbix-net \
  -p 443:8443 \
  -p 80:8080 \
  -v /etc/ssl/nginx:/etc/ssl/nginx:ro \
  --restart unless-stopped \
  -d zabbix/zabbix-web-nginx-pgsql:alpine-7.2.7

4、查看Docker运行状态

4.1、服务器、前端

4.2、数据库

4.3、Proxy

  • 代理有2台,分担服务器压力,配置都一样。

5、访问

http://192.168.10.11:18080

5.1、在Zabbix服务器里面添加Proxy

LICENSED UNDER CC BY-NC-SA 4.0
评论
访问统计
总访问量: 👀| 访客数: 🚶‍♂️