新手上路容器安装ZABBIX6.0保姆级教程

容器的安装参见:高钙AD奶:新手上路,UBUNTU22.04默认安装DOCKER和web 管理工具 Portainer

1. 创建专用于 Zabbix 组件容器的网络:

docker network create --subnet 172.20.0.0/16 --ip-range 172.20.240.0/20 zabbix-net

2. 启动空的 MySQL 服务器实例:

docker run --name mysql-server -t \

-e MYSQL_DATABASE="zabbix" \

-e MYSQL_USER="zabbix" \

-e MYSQL_PASSWORD="zabbix" \

-e MYSQL_ROOT_PASSWORD="123456" \

--network=zabbix-net \

--restart unless-stopped \

-d mysql:8.0 \

--character-set-server=utf8 --collation-server=utf8_bin \

--default-authentication-plugin=mysql_native_password

3. 启动 Zabbix Java 网关实例:

docker run --name zabbix-java-gateway -t \

--network=zabbix-net \

--restart unless-stopped \

-d zabbix/zabbix-java-gateway:alpine-5.4-latest

4.启动 Zabbix server 实例,并将其关联到已创建的 MySQL server 实例:

docker run --name zabbix-server-mysql -t \

-e DB_SERVER_HOST="mysql-server" \

-e MYSQL_DATABASE="zabbix" \

-e MYSQL_USER="zabbix" \

-e MYSQL_PASSWORD="zabbix" \

-e MYSQL_ROOT_PASSWORD="123456" \

-e ZBX_JAVAGATEWAY="zabbix-java-gateway" \

--network=zabbix-net \

-p 10051:10051 \

--restart unless-stopped \

-d zabbix/zabbix-server-mysql:alpine-5.4-latest

5. 启动 Zabbix Web 界面,并将其关联到已创建的 MySQL server 和 Zabbix server 实例:

docker run --name zabbix-web-nginx-mysql -t \ -e ZBX_SERVER_HOST="zabbix-server-mysql" \ -e DB_SERVER_HOST="mysql-server" \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix" \ -e MYSQL_ROOT_PASSWORD="123456" \ --network=zabbix-net \ -p 80:8080 \ --restart unless-stopped \ -d zabbix/zabbix-web-nginx-mysql:alpine-5.4-latest

这里解释下几个选项:

-p 选项是端口映射给主机IP

4步Zabbix server 实例将 10051/TCP 端口(Zabbix trapper)暴露给主机。

5步Zabbix web 界面实例将 80/TCP 端口(HTTP)暴露给主机。

下面这两项分别对应的是数据库zabbix用户的密码和数据库root用户的密码

-e MYSQL_PASSWORD="zabbix" \ -e MYSQL_ROOT_PASSWORD="123456" \

此时你已经可以访问主机IP,进入zabbix的网页界面

Zabbix 前端已准备就绪! 默认用户名是Admin,密码zabbix。

添加图片注释,不超过 140 字(可选)

先改个中文吧,顺眼点:

添加图片注释,不超过 140 字(可选)

此时登录进去,没有监控到任何数据,因为没有安装 Zabbix Agent 啊,导致那么是不是应该装一个 agent 的容器呢?其实不是,容器的 agent 只监控容器本身,而无法体现出宿主机的详细状态,所以需要在服务器原生安装一个 Agent.

此过程切换root用户比较划算,不容易出故障。没有root的先sudo passwd root

那么我的系统是UBUNTU 22.04 SERVER安装命令是:

wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.0-4+ubuntu22.04_all.deb

dpkg -i zabbix-release_6.0-4+ubuntu22.04_all.deb

apt update

apt install zabbix-agent

systemctl restart zabbix-agent

systemctl enable zabbix-agent

装好了还得让他连接上我们容器里的服务器

首先docker ps找一找zabbix服务器容器的ID,然后用docker exec 容器ID ifconfig

看一下这个IP是多少,记下来。

添加图片注释,不超过 140 字(可选)

在宿主机nano /etc/zabbix/zabbix_agentd.conf,将 Server 和 ServerActive 的 127.0.0.1 改成 Zabbix Server 容器的 IP。

重启服务,systemctl restart zabbix-agent。

进入网页,路径为 ‘‘配置→主机,点击 Zabbix Server,弹出的界面找到 Agent 填写 IP 处,改为服务器的 IP 地址。

添加图片注释,不超过 140 字(可选)

添加图片注释,不超过 140 字(可选)

出来后,刷新几次,这里会变绿。

添加图片注释,不超过 140 字(可选)

备注:

容器的进程重启,容器自动运行参数设置:

--restart=always # 表示容器退出时,docker会总是自动重启这个容器

--restart=on-failure:3 # 表示容器的退出状态码非0(非正常退出),自动重启容器,3是自动重启的次数。超过3此则不重启

--restart=no # 默认值,容器退出时,docker不自动重启容器

--restart=unless-stopped # 表示容器退出时总是重启,但是不考虑docker守护进程运行时就已经停止的容器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值