一 前期规划

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. JXL读取Excel(只支持xls版本)——(二)

    注意:jxl是不支持xlsx后缀的excel的.因此建议用POI读取excel. Jar包 同一一样 Java代码 package JXL; import java.io.File; import j ...

  2. shiroWeb项目-授权(十一)

    使用PermissionsAuthorizationFilter 在applicationContext-shiro.xml中配置url所对应的权限. 测试流程: 1.在applicationCont ...

  3. ubuntu14.04下 Kinect V2+Ros接口安装

    1. 首先git下载代码,放到主文件夹下面 git clone https://github.com/OpenKinect/libfreenect2.git 2. 然后安装依赖项如下,最好事先编译安装 ...

  4. if-else 重构

    最近发现自己写的代码if else太多了,有时候自己回头看都要重新捋逻辑,很不好.决定深入理解下if else重构. 中心思想: ①不同分支应当是同等层次,内容相当. ②合并条件表达式,减少if语句数 ...

  5. ARMV8 datasheet学习笔记4:AArch64系统级体系结构之编程模型(3)- 异常

    1.前言 本文介绍异常相关内容,包括异常类型,异常进入,异常返回,异常层次结构,异常的路由等 2.  RESET ARMV8体系结构支持两种类型的RESET Cold reset:Reset PE所有 ...

  6. ARMV8 datasheet学习笔记3:AArch64应用级体系结构之Synchronization and semapores

    1.前言 本文主要介绍原子变量的实现原理,对原子变量的修改有一套特殊的机制 2. Local monitor和Global monitor UP时执行Load EX和Store EX时仅需关注Loca ...

  7. Linux内核调试方法【转】

    转自:http://www.cnblogs.com/shineshqw/articles/2359114.html kdb:只能在汇编代码级进行调试: 优点是不需要两台机器进行调试. gdb:在调试模 ...

  8. Nodejs+定时截图+发送邮件

    功能 每天定时截图,并把截到的图片自动通过邮件发送. 说明 代码注释已经非常详细,就不多做说明,需要的朋友自己查看代码即可,主文件Mail.js,截图文件capturePart1.js,capture ...

  9. springboot系列十五、springboot集成PageHelper

    一.介绍 项目中经常会遇到分页,PageHelper为我们解决了这个问题.本质上实现了Mybatis的拦截器,作了分页处理. 二.配置PageHelper 1.引入依赖 pagehelper-spri ...

  10. win10安装virtualBox创建CentOS6.5虚拟机

    1.安装virtualBox 1.1.下载安装包,安装 搜索一下,或者去 VirtualBox官网下载一个. 下载第一个,兼容64,32位. 2.创建64位虚拟机 2.1.解决无法创建64位的问题 2 ...