一 前期规划

1.1 Zabbix架构图

1.2 其他规划

组件
类型
版本
备注
Zabbix Web
zabbix-web-apache-mysql镜像
wordpress:latest
也可采用zabbix-web-nginx-mysql镜像
数据库
MySQL数据库镜像
mysql:5.7
也可采用MariaDB
zabbix-server-mysql镜像
   
node01
zabbix/zabbix-agent
 
被监控端
Docker已安装,参考《002.Docker版本及安装》。
Docker Compose已安装,参考《009.Docker Compose基础使用》。

二 正式构建Zabbix Server

2.1 创建目录

 root@docker01:~# mkdir my_zabbix
root@docker01:~# mkdir /zabbix_mysql_data
 

2.2 创建Docker Compose

 root@docker01:~# cd my_zabbix/
root@docker01:~/my_zabbix# vi docker-compose.yml
version: '3'
services:
zabbix-mysql:
image: mysql:5.7
container_name: zabbix-mysql
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: zabbixpassword
volumes:
- /zabbix_mysql_data:/var/lib/mysql zabbix-web-apache-mysql:
image: zabbix/zabbix-web-apache-mysql
container_name: zabbix-web-apache-mysql
environment:
DB_SERVER_HOST: zabbix-mysql
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: zabbixpassword
MYSQL_ROOT_PASSWORD: rootpassword
ZBX_SERVER_HOST: zabbix-server-mysql
PHP_TZ: Asia/Shanghai
ports:
- '80:80'
- '443:443'
links:
- zabbix-mysql
- zabbix-server-mysql
depends_on:
- zabbix-mysql
- zabbix-server zabbix-server:
image: zabbix/zabbix-server-mysql
container_name: zabbix-server-mysql
network_mode: host
environment:
DB_SERVER_HOST: 127.0.0.1
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: zabbixpassword
MYSQL_ROOT_PASSWORD: rootpassword
ports:
- '10051:10051'
links:
- zabbix-mysql
depends_on:
- zabbix-mysql zabbix-agent:
image: zabbix/zabbix-agent
container_name: zabbix-server-agent
network_mode: host
environment:
ZBX_HOSTNAME: zabbix server
ZBX_SERVER_HOST: 127.0.0.1
ports:
- '10050:10050'
 

2.3 开始构建

 root@docker01:~# cd my_zabbix/
root@docker01:~/my_zabbix# docker-compose up -d
 

2.4 确认验证

浏览器访问http://172.24.8.111
如上所示即可正常登录,更多Zabbix使用方法请参考官方文档。

三 构建Zabbix Agent

3.1 安装Docker

需要被监控客户端节点安装Docker,参考《002.Docker版本及安装》。

3.2 安装Docker Compose

在需要被监控客户端节点安装Docker Compose,参考《009.Docker Compose基础使用》。

3.3 创建Docker Compose

 root@node01:~# mkdir my_agent/
root@node01:~# cd my_zabbix/
root@node01:~/my_zabbix# vi docker-compose.yml
version: '3'
services:
zabbix-agent:
image: zabbix/zabbix-agent
container_name: zabbix-server-agent
network_mode: host
environment:
ZBX_HOSTNAME: zabbix server
ZBX_SERVER_HOST: 127.0.0.1
ports:
- '10050:10050'
 

3.4 开始构建

 root@node01:~# docker-compose up -d

四 添加监控节点

4.1 添加主机
Configuration---->Host---->Creat Host
添加需要监控的节点,更多Zabbix使用方法请参考官方文档。
提示:docker相关知识参考本博客其他文档。

029.Docker Compose部署Zabbix实战的更多相关文章

  1. Docker Compose 部署 Redis 及原理讲解 | 懒人屋

    原文:Docker Compose 部署 Redis 及原理讲解 | 懒人屋 Docker Compose 部署 Redis 及原理讲解  4.4k  字    16  分钟    2019-10-1 ...

  2. 使用Docker Compose部署基于Sentinel的高可用Redis集群

    使用Docker Compose部署基于Sentinel的高可用Redis集群 https://yq.aliyun.com/articles/57953 Docker系列之(五):使用Docker C ...

  3. Docker Compose 部署前后端分离应用

    部署前后端分离应用 容器化 Abp 应用 关于 Abp 应用的容器化,其实和普通的 ASP.NET Core 应用差不多,大家可以参考我此前的文章. 唯一需要注意的是:因为 Abp 解决方案中有多个项 ...

  4. Docker Compose部署项目到容器-基于Tomcat和mysql的项目yml配置文件代码

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

  5. 在Windows Server 2019通过Docker Compose部署Asp.Net Core

    一.安装Docker Enterprise 安装文档是: https://docs.docker.com/install/windows/docker-ee/ 安装完成后,如下图 二.首先,拉取一个W ...

  6. 使用Docker Compose 部署Nexus后初次登录账号密码不正确,并且在nexus-data下没有admin,password

    场景 Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/ ...

  7. Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程)

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

  8. Docker Compose部署Nexus3时的docker-compose,yml代码

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

  9. Docker Compose部署GitLab服务,搭建自己的代码托管平台(图文教程)

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

随机推荐

  1. mysql 案例~mysql元数据的sql统计

    一 简介:今天我们来收集下提取元数据的sql 二 前沿: information_schema  引擎 memory 元数据收集表 三 sql语句: 1#没有使用索引的表统计 SELECT t.TAB ...

  2. R-CNN论文详解(转载)

    这几天在看<Rich feature hierarchies for accurate object detection and semantic segmentation >,觉得作者的 ...

  3. Sql 正确删除用户过期的数据

    怎样才算是正确的删除过期的数据呢?先交代一下前提,XX网站上面有一个放心企业专区,办理超级会员即可成为放心企业,放心企业可设置推荐职位展示在放心企业专区,信息都是存放在Info表中的,所谓的推荐职位就 ...

  4. saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy

    saltstack自动化运维系列⑥SaltStack实践安装配置HAproxy 下载haproxy1.6.2.tar.gz下载地址:http://www.haproxy.org/download/1. ...

  5. centos中创建自动备份Mysql脚本任务并定期删除过期备份

    背景: OA系统数据库是mysql,引擎为myisam,可以直接通过拷贝数据库文件的方式进行备份 创建只备份数据库的任务: 创建保存mysql数据库备份文件的目录mysqlbak mkdir /hom ...

  6. java工程添加类库

    在属性中添加自定义类库 在工程中引入自定义类库

  7. 转载:磁盘目录(1.3.3)《深入理解Nginx》(陶辉)

    原文:https://book.2cto.com/201304/19614.html 要使用Nginx,还需要在Linux文件系统上准备以下目录. (1)Nginx源代码存放目录 该目录用于放置从官网 ...

  8. javascript 什么类型没有toString()?

    JS里面任何对象都有toString()方法么?不是! null和undefined就没有!虽然null用typeof看的时候,是object类型的. 另外number对象调用toString()会报 ...

  9. Numpy详解

    NumPy 简介 Python并没有提供数组功能.虽然列表可以完成基本的数组功能,但它不是真正的数组,而且在数据量比较大时,使用列表的速度会很慢.为此,Numpy提供了真正的数组功能,以及对数据进行快 ...

  10. n个月后兔子的个数问题(for循环)