51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

zabbix5.2 安装(docker -compose 方式) 推荐-生产环境

zabbix5.2 安装(docker -compose 方式) 推荐

使用docker-compose部署zabbix服务 - Ronnybox - 博客园 (cnblogs.com)

1-首先准备几个文件:

mkdir /data/zabbix -p 

cd /data/zabbix
mkdir alertscripts db fonts

# 下载中文字体防止中文乱码
wget https://dl.cactifans.com/zabbix_docker/msty.ttf
mv msty.ttf DejaVuSans.ttf

然后

mv DejaVuSans.ttf fonts

2- 准备docker-compose 文件

cat docker-compose.yml

cat > docker-compose.yml << EOF
 
version: '3'
 
services:
  zabbix-web-nginx-mysql:
    image: zabbix/zabbix-web-nginx-mysql:centos-5.2-latest
    restart: always
    environment:
      - DB_SERVER_HOST=zabbix-mysql
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=123456
      - ZBX_SERVER_HOST=zabbix-server-mysql
    ports:
      - 8080:8080
    volumes:
      - /etc/localtime:/etc/localtime
      - /data/zabbix/fonts/DejaVuSans.ttf:/usr/share/zabbix/assets/fonts/DejaVuSans.ttf
    networks:
      - zbx_net
    depends_on:
      - zabbix-server-mysql
      - zabbix-mysql
  zabbix-mysql:
    image: mysql:8.0.23
    restart: always
    ports:
      - 3306:3306
    environment:
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=123456
    command:
      - mysqld
      - --default-authentication-plugin=mysql_native_password
      - --character-set-server=utf8
      - --collation-server=utf8_bin
    volumes:
      - /etc/localtime:/etc/localtime
      - /data/zabbix/db:/var/lib/mysql
    networks:
      - zbx_net
  zabbix-java-gateway:
    image: zabbix/zabbix-java-gateway:centos-5.2-latest
    restart: always
    volumes:
      - /etc/localtime:/etc/localtime
    networks:
      - zbx_net
  zabbix-server-mysql:
    image: zabbix/zabbix-server-mysql:centos-5.2-latest
    restart: always
    volumes:
      - zabbix-server-vol:/etc/zabbix
      - /data/zabbix/alertscripts:/usr/lib/zabbix/alertscripts
      - /etc/localtime:/etc/localtime
    ports:
      - 10051:10051
    environment:
      - DB_SERVER_HOST=zabbix-mysql
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
      - MYSQL_ROOT_PASSWORD=123456
      - ZBX_JAVAGATEWAY=zabbix-java-gateway
      - ZBX_JAVAGATEWAY_ENABLE=true
      - ZBX_JAVAGATEWAYPORT=10052
    depends_on:
      - zabbix-mysql
    networks:
      - zbx_net
  zabbix-agent:
    image: zabbix/zabbix-agent:centos-5.2-latest
    restart: always
    ports:
      - 10050:10050
    environment:
      - ZBX_HOSTNAME=Zabbix server
      - ZBX_SERVER_HOST=zabbix-server-mysql
      - ZBX_SERVER_PORT=10051
    networks:
      - zbx_net
 
networks:
  zbx_net:
    driver: bridge
 
volumes:
  zabbix-server-vol:



EOF

3 运行

找到 docker-compose.yml

docker compose up -d

4- 访问:

http://10.0.0.206:8080/

默认密码为Admin/zabbix

如果是在同一个机器上,需要使用和zabbix_server相同的网络

5- zabbix-agent 部署:

如果我们在docker中部署zabbix-agent,那么zabbix-server监控到的就是容器状态,而非是宿主机状态

这里我们用 原生的方式配置配置一下:

rpm -Uvh https://repo.zabbix.com/zabbix/5.2/rhel/7/x86_64/zabbix-release-5.2-1.el7.noarch.rpm

yum -y install zabbix-agent

2.配置zabbix客户端服务器信息 启动客户端

vim /etc/zabbix/zabbix_agentd.conf

注意这里的ip

Server=172.16.1.71


1.修改zabbix_agentd.conf配置文件,将Server=IP IP修改为docker的ip地址(zabbix-server)
Server=172.22.0.4
2.在zabbi-server的web界面将主机的客户端ip地址设置为服务器的ip地址10.0.0.206

启动 agent

systemctl start zabbix-agent

systemctl enable zabbix-agent

如果需要配置 docker版agent 可以参考: docker快速搭建并使用Zabbix_docker安装zabbix-CSDN博客

{#more-17317}

在生产环境中,我们需要把 zabbxi server 配置文件 挂载出来 ,修改配置文件后只要 重启对应的 容器就可以

怎么挂载呢?

docker cp zabbix52-zabbix-server-mysql-1:/etc/zabbix/zabbix_server.conf  /data/zabbix/config/

然后需要 在 docker-compose.yml 中修改

 - /data/zabbix/config:/etc/zabbix/

然后

docker compose down 

 docker compose up -d
赞(3)
未经允许不得转载:工具盒子 » zabbix5.2 安装(docker -compose 方式) 推荐-生产环境