2023-03-14 在docker 下安装zabbix6并且使用外部数据库mysql8

Zabbix 一般可以搭配以下软件使用:

  1. 数据库:Zabbix 使用数据库来存储监测数据、配置信息等,常用的数据库包括 MySQL、PostgreSQL 和 Oracle 等。

  1. Web 服务器:Zabbix 的 Web 界面需要通过 Web 服务器来提供访问,常用的 Web 服务器包括 Apache 和 Nginx 等。

  1. Agent:Zabbix Agent 是一款在被监测设备上运行的程序,用于主动向 Zabbix Server 提供监测数据。在 Linux 系统上,常用的 Agent 包括 Zabbix Agent 和 SNMP 等。

  1. Proxy:Zabbix Proxy 可以提高 Zabbix Server 的性能和扩展性,允许多个 Proxy 向一个 Zabbix Server 上报监测数据。

1.安装mysql8数据库

由于zabbix6 使用mysql8 需要数据库用户是mysql_native_password模式,参考官方文

参考官方文档 https://hub.docker.com/_/mysql 使用

--default-authentication-plugin=mysql_native_password

#本人使用的是debian11,docker ce
#新建mysql8文件夹
mkdir ~/mysql8
cd ~/mysql8

docker run -id \
-p 3306:3306 \
--name=mysql_8 \
-v $PWD/conf:/etc/mysql8/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql8 \
-e MYSQL_ROOT_PASSWORD=123456abc \
mysql:8.0.32 --default-authentication-plugin=mysql_native_password

#根据个人需要新建数据库zabbix 添加mysql

#用户:zabbix

#密码:zabbix123456789

2.安装zabbix-server-mysql
docker run --name zabbix-server-mysql -t --restart always\
      -e DB_SERVER_HOST="192.168.18.100" \
      -e DB_SERVER_PORT="3306" \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="zabbix123456789" \
      -e ZBX_CACHESIZE="4G" \
      -e ZBX_STARTDISCOVERERS="10" \
      -p 10051:10051 \
      -d zabbix/zabbix-server-mysql:6.2.3-alpine \

参考链接:zabbix/zabbix-server-mysql Tags | Docker Hub

3.安装zabbix-web-nginx-mysql

docker run --name zabbix-web-nginx-mysql -t --restart always\
      -e DB_SERVER_HOST="192.168.18.100" \
      -e DB_SERVER_PORT="3306" \
      -e MYSQL_DATABASE="zabbix" \
      -e MYSQL_USER="zabbix" \
      -e MYSQL_PASSWORD="zabbix123456789" \
      -e ZBX_DBTLSCONNECT="required" \
      -e ZBX_SERVER_HOST=zabbix-server-mysql \
      -e ZBX_SERVER_PORT=10051 \
      --link zabbix-server-mysql:zabbix-server \
      -p 8080:8080 \
      -e PHP_TZ="Asia/Shanghai" \
      -d zabbix/zabbix-web-nginx-mysql:6.2.3-alpine \

========================================================================
# 使用下面命令查询zabbix-server-mysql在docker里面的ip
#docker inspect zabbix-server-mysql |grep IPAddress
# 172.17.0.2
#在zabbix的configuration中查看server的host name

参考链接:zabbix/zabbix-web-nginx-mysql - Docker Image | Docker Hub

4.安装zabbix-agent
========================================================================
# --restart=always 表示容器退出时,docker会总是自动重启这个容器
# ZBX_SERVER_HOST是zabbix-server-mysql在docker里面的ip
# ZBX_HOSTNAME是在zabbix的web界面configuration中查看server的host name

docker run --name zabbix-agent \
-p 10050:10050 \
-e ZBX_HOSTNAME="Zabbix server" \
-e ZBX_SERVER_HOST="172.17.0.2" \
--restart=always \
-d zabbix/zabbix-agent:latest

参考链接:zabbix/zabbix-agent Tags | Docker Hub

其他zabbix 参数设置参考链接

(9条消息) Zabbix unreachable poller processes more than 75% busy_zhanghengwei1995的博客-CSDN博客

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值