zabbix+docker
由于公司线上服务器数量太少,又要用于生产,领导让上zabbix,但熟知zabbix搭建需要LAMP或者LNMP,如果和生产服务器混搭的话,不方便管理,也怕出问题,所以就先使用docker方式搭建管理。
zabbix组件:web、zabbix-server、zabbix-agent、如果服务器过多还需要用到zabbix-proce,这里未使用。
环境: 服务器A:172.18.237.14
服务器B:172.18.237.13
这里使用的zabbix官方镜像地址:https://hub.docker.com/r/zabbix/
下面yml中用到的镜像都在此处,以及官方提供的变量,也可以到对应镜像说明查看。
A服务器将作为server端(当然也要安装agent,监控自身),B服务器作为client端。 A服务器创建docker-compose.yml,内容如下:
version: '3'
services:
zabbix-mysql:
image: mysql:5.7
container_name: zabbix-mysql
ports:
- '13306:3306'
environment:
MYSQL_ROOT_PASSWORD: 123456
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: 123456
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
DB_SERVER_PORT: 3306
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: 123456
MYSQL_ROOT_PASSWORD: 123456
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-mysql zabbix-server-mysql:
image: zabbix/zabbix-server-mysql
container_name: zabbix-server-mysql
network_mode: host
environment:
DB_SERVER_HOST: 127.0.0.1
DB_SERVER_PORT: 13306
MYSQL_DATABASE: zabbix
MYSQL_USER: zabbix
MYSQL_PASSWORD: 123456
MYSQL_ROOT_PASSWORD: 123456
ports:
- '10051:10051'
# links:
# - zabbix-mysql
depends_on:
- zabbix-mysql zabbix-agent:
image: zabbix/zabbix-agent
container_name: zabbix-agent
network_mode: host
environment:
ZBX_HOSTNAME: zabbix-server-agent #这里的名字可以随意填写,不影响连接
ZBX_SERVER_HOST: 127.0.0.1
ports:
- '10050:10050'
之前用别人的yml,zabbix是搭建起来了,客户端的agent也能与server建立通信,但server端自身始终无法与监听到server端的agent,zabbix-server容器网络为bridge,通过端口映射方式将10051端口对外访问,zabbix-agent用的host模式,最终效果就是:
后将yml修改为当前所示,问题解决。将zabbix-server容器也改为host模式,所以当前网络情况为:
web容器和mysql容器使用bridge网络,并将端口映射至本机对外提供访问,并通过link连接,它们之间通过bridge网络实现互访(如3306端口);
zabbix-server和zabbix-agent都使用host网络,zabbix-server与web、mysql通过host:(映射端口)进行互联(如13306端口)。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
其他client上agent的docker-compose.yml配置如下:
version: '3'
services: zabbix-agent:
image: zabbix/zabbix-agent
container_name: zabbix-agent
network_mode: host
environment:
ZBX_HOSTNAME: one #这里的名字可以随意填写
ZBX_SERVER_HOST: 172.18.237.14 #这里填写server的地址
ports:
- '10050:10050'
zabbix+docker的更多相关文章
- zabbix docker - 安装和初始化配置
zabbix docker - 安装和初始化配置 安装zabbix server docker-mysql版本 zabbix server支持不同的数据库(详见zabbix的docker hub),这 ...
- Docker部署Zabbix+Grafana监控
Docker部署Zabbix+Grafana监控 环境 centos 7 ; Docker 17.12.0-ce ; docker-compose version 1.20.1 2018-4-1 当前 ...
- Docker安装Zabbix全记录
零.Zabbix架构设计 一.docker安装mysql 查找Docker Hub上的mysql镜像: [root@10e131e69e15 ~]# docker search mysql INDEX ...
- zabbix监控docker容器
1.环境说明 由于最近zabbix进行过一次迁移,所以zabbix-server系列采用docker方式安装,参考zabbix官网:https://github.com/zabbix/zabbix-d ...
- Zabbix在Docker中的应用和监控
目录 Zabbix在Docker中的应用和监控 一.如何使Zabbix跑在Docker里 1.Docker基础环境配置 2.Docker-compose安装配置 3.启动zabbix server 4 ...
- Docker搭建zabbix+grafana监控系统
一.准备工作 1.mysql数据库:192.168.1.5 2.nginx服务:192.168.1.10 3.docker服务器:192.168.1.20 4.zabbix客户端若干 二.docker ...
- 一文掌握Docker Compose
目录 Docker Compose介绍 Docker Compose安装 Docker Compose基本示例 1.基本文件及目录设置 2.创建一个Dockerfile 3.通过docker-comp ...
- Zabbix-(五)监控Docker容器与自定义jvm监控项
Zabbix-(五)监控Docker容器与自定义jvm监控项 一.前言 前文中讲述了Zabbix对服务器硬件方面的监控功能,本文将讲述利用Zabbix监控Docker容器中的Java Web服务,并通 ...
- OperationCenter Docker运行环境及其依赖启动脚本
1.Portainer docker rm -f portainer docker run -d -p : --name portainer --restart always portainer/po ...
随机推荐
- 三种解密 HTTPS 流量的方法介绍
转载自:https://imququ.com/post/how-to-decrypt-https.html作者: Jerry Qu Web 安全是一项系统工程,任何细微疏忽都可能导致整个安全壁垒土崩瓦 ...
- [Codeforces 1037D] Valid BFS?
[题目链接] http://codeforces.com/problemset/problem/1037/D [算法] 首先求出每个点的父节点 , 每棵子树的大小 然后判断BFS序是否合法即可 时间复 ...
- nginx 静态目录配置规则,路径匹配与本地资源
经常配了nginx静态目录,死活访问不了,每次访问404.查看文档后,发现nginx配置静态目录使 用以下规则 假如nginx是在本机,静态目录也是在本机, 1.子目录匹配 如下配置 location ...
- Vsftpd软件包的获取与安装
11.2 Vsftpd简介 Vsftpd是一种在GPL许可下开放源代码的FTP服务器,用于多种UNIX系统和Linux系统.Vsftpd也称为Very Secure FTP Daemon,它是一种安 ...
- FastDFS的介绍
FastDFS的介绍 FastDFS FastDFS是由国人余庆所开发,其项目地址: https://github.com/happyfish100 FastDFS是一个轻量级的开源分布式文件系统,主 ...
- bzoj 1697: [Usaco2007 Feb]Cow Sorting牛排序【置换群】
至今都不知道置换群是个什么东西--题解说什么就是什么.jpg 以下来自hzwer:http://hzwer.com/3905.html #include<iostream> #includ ...
- 为什么Markdown能夺得程序员的青睐
Markdown基本情况概述 Markdown是在HTML的基础上产生的.HTML的功能已经足够强大,可以编写出漂亮的网页.HTML在没有CSS的加持上,尽管不能显示出绚丽多彩的网页,但是仍然可以达到 ...
- Django day 33 vue中使用element-ui的使用,课程的相关介绍,vue绑定图片,课程列表接口,课程详情页面
一:vue中使用element-ui的使用, 二:课程的相关介绍, 三:vue绑定图片, 四:课程列表接口, 五:课程详情页面
- 键盘按钮keyCode大全:获取按键对应的键值的方法
没有大全,只有方法,授人与鱼不如授人于渔: 下面这行代码,大家可以打在控制台里,直接进行测试: document.body.onkeyup = function (e) { e = e || wind ...
- Linux安装PHP环境
简介: PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛,主要 ...