精华内容
下载资源
问答
  • Docker搭建zabbix,配置zabbix-agent基于Ubuntu系统
    2022-03-25 13:51:02

    Docker搭建zabbix,配置zabbix-agent基于Ubuntu系统

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vEOEjvSr-1648187439073)(/uploads/article/20220325/623d56b7e5aba.png)]
    Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。

    用户群:90%以上中小型的泛互联网企业

    优点:

    1. 支持多平台的企业级分布式开源监控软件
    2. 安装部署简单,多种数据采集插件灵活集成
    3. 功能强大,可实现复杂多条件告警,
    4. 自带画图功能,得到的数据可以绘成图形
    5. 提供多种API接口,支持调用脚本
    6. 出现问题时可自动远程执行命令(需对agent设置执行权限)

    缺点:

    1. 项目批量修改不方便
    2. 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发,难度较大;
    3. 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐(但是网上的模板比较,也可以使用模板导入的方法);
    4. 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;
    5. 数据报表需要特殊二次开发定义;

    Docker zabbix 安装流程

    最近研究关于服务器监控,由于一直用阿里云资源,但是查询各种监控比较麻烦,早期了解到zabbix运维工具,也受益于docker的流行,使我们安装使用更加的方便;由于搭建非本地数据库相对麻烦,以下以本机数据库为例演示,后续在更独立RDS数据库部署;

    使用内置MySQL

    Zabbix 应用实例将 10051/TCP 端口(Zabbix trapper)和80/TCP 端口(HTTP)暴露给主机。
    我这里配置到物理机,对应的端口是:9091和9092,这里可以自行配置

    docker run --name zabbix-appliance -t \
          -p 9091:10051 \
          -p 9092:80 \
          -d zabbix/zabbix-appliance:latest
    
    • 访问地址:http://ip:9092
    • 默认账户:Admin
    • 默认密码:zabbix

    存在错误:

    1.Zabbix agent is not available (for 3m)
    
    2.Get value from agent failed: cannot connect to [[127.0.0.1]:10050]: [111] Connection refused
    
    配置docker 容器的IP也出错,需要配置docker容器对应的gateway的IP
    3.Get value from agent failed: cannot connect to [[172.17.0.2]:10050]: [111] Connection refused
    
    

    解决思路:

    • 使用Docker安装几个容器后默认没有安装zabbix-agent,自然无法链接到本机自己的代理。
    • 宿主机和dokcer容器的网络不通原因

    第一步:apt install zabbix-agent (Ubuntu 16.04 64位)

    第二步:获取安装zabbix容器的IP(zabbix server ip)

    docker inspect zabbix-appliance | grep IPAddress
    
    "Gateway": "172.17.0.1",    # 配置到zabbix的agent代理程序的接口-主机IP地址中;
    "IPAddress": "172.17.0.2",  # zabbix server ip
    
    

    第三步:vim /etc/zabbix/zabbix_agentd.conf

    Server=172.17.0.2       # zabbix server ip
    ServerActive=172.17.0.2 # zabbix server ip
    Hostname=Zabbix server  # 默认
    

    第四步:修改zabbix web界面中主机配置

    配置–主机–Zabbix server将agent代理程序的接口更改为“172.17.0.1”(容器里的Gateway IP)即可

    第五步: zabiix-agent的操作

    • systemctl restart zabbix-agent
    • systemctl status zabbix-agent
    • systemctl start zabbix-agent.service
    • systemctl enable zabbix-agent.service

    Docker安装zabbix
    参考官方地址:https://www.zabbix.com/documentation/current/zh/manual/installation/containers

    更多相关内容
  • docker run --rm --network zabbix --name zabbix_agent--link zabbix_server:zabbix-server -e ZBX_HOSTNAME=mythird -e ZBX_SERVER_PORT=10051 -e ZBX_SERVER_HOST=172.22.0.3 -p 3998:10050 -d zabbix/zabbix-...
  • DOCKER搭建zabbix

    2022-04-19 18:16:47
    1.搭建数据库 docker run -name mysql-server -t -e MYSQL_USER=“zabbix” -e MYSQL_PASSWORD=“zabbix_pwd” -e MYSQL_ROOT_PASSWORD=...docker run --name zabbix-java-gateway -t -d zabbix/zabbix-java-ga

    1.搭建数据库

    docker run -name mysql-server -t
    -e MYSQL_USER=“zabbix”
    -e MYSQL_PASSWORD=“zabbix_pwd”
    -e MYSQL_ROOT_PASSWORD=“root_pwd”
    -p 3306:3306
    -d mysql:5.7

    在这里插入图片描述

    docker ps -a
    在这里插入图片描述

    搭建Java-gateway

    docker run --name zabbix-java-gateway -t
    -d zabbix/zabbix-java-gateway:latest
    在这里插入图片描述

    搭建Zabbix 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_pwd”
    -e MYSQL_ROOT_PASSWORD=“root_pwd”
    -e ZBX_JAVAGATEWAY=“zabbix-java-gateway”
    –link mysql-server:mysql
    –link zabbix-java-gateway:zabbix-java-gateway
    -p 10051:10051
    -d zabbix/zabbix-server-mysql:latest
    在这里插入图片描述

    搭建zabbix web

    docker run --name zabbix-web-nginx-mysql -t
    -e DB_SERVER_HOST=“mysql-server”
    -e MYSQL_DATABASE=“zabbix”
    -e MYSQL_USER=“zabbix”
    -e MYSQL_PASSWORD=“zabbix_pwd”
    -e MYSQL_ROOT_PASSWORD=“root_pwd”
    –link mysql-server:mysql
    –link zabbix-server-mysql:zabbix-server
    -p 80:8080
    -d zabbix/zabbix-web-nginx-mysql:latest

    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • Docker 搭建zabbix

    2020-08-15 18:50:43
    查找zabbix镜像:docker search zabbix 找到镜像zabbix/zabbix-appliance 下载:docker pull zabbix/zabbix-appliance 长期使用需要创建卷:docker volume create zabbix_data 生成容器:docker run --name zabbix...

    server 端

    查找zabbix镜像:docker search zabbix
    找到镜像zabbix/zabbix-appliance
    在这里插入图片描述
    下载:docker pull zabbix/zabbix-appliance
    长期使用需要创建卷:docker volume create zabbix_data
    在这里插入图片描述

    生成容器:docker run --name zabbix -p 80:80 -p 10051:10051 -v zabbix_data:/var/lib/mysql -d zabbix/zabbix-appliance
    需要确认宿主机80/10051端口没被占用,占用需要更换其他端口
    在这里插入图片描述
    登陆宿主机IP:80 进入zabbix登陆界面
    在这里插入图片描述

    agent 端

    下载agent镜像(需要和zabbix server 兼容)
    实现原理创建其他容器(nginx,mysql,tomcat等)和agent使用同一个网络名称空间形成新的应用+agent的容器,对新的容器进行监控
    在这里插入图片描述
    创建被监控容器
    docker run --name mysql -e MYSQL_ROOT_PASSWORD=redhat -d mysql:5.7

    备注:
    #docker exec -it mysql-agent bash (进入容器修改配置文件)
    vi /etc/zabbix/zabbix_agentd.conf
    Server= IP (server端IP地址)
    更改后按Ctrl+P+Q 进行不关闭退出容器

    需要知道server的name
    docker inspect zabbix(zabbix server端 容器的名称)
    在这里插入图片描述

    获取到IP地址
    查找:docker search zabbix-agent
    下载agent:docker pull zabbix/zabbix-agent:centos-4.4.6
    生成容器:docker run --name nginx01_agent --network=container:nginx_web01 -e ZBX_HOSTNAME=“nginx_web01” -e ZBX_SERVER_HOST=“172.17.0.5” -d zabbix/zabbix-agent

    docker run --name mysql_agent --network=container:mysql -e ZBX_HOSTNAME=“mysql” -e ZBX_SERVER_HOST=“172.17.0.5” -d zabbix/zabbix-agent
    被监控容器需要和zabbix server在同一网段,加入到同一个network
    创建局域网:docker network create zabbix_net
    加入到局域网:docker network connect zabbix_net nginx01_agent
    查看是否在同一网段:docker network inspect zabbix_net

    其中nginx_web01是我之前创建的测试容器,也可以用其他的
    创建好后,进入zabbix server控制台,添加主机
    在这里插入图片描述

    主机名是被监控容器名称,IP需要进行查询,添加到对应的主机组
    docker inspect nginx_web01
    然后添加模板
    在这里插入图片描述
    设置开机启动

    systemctl enable docker service
    docker update --restart always 容器名

    展开全文
  • 今天测试了一天的Zabbix-Docker,部署起来确实方便,就需要安装了Docker的linux系统中输入以下命令就可以了。 1.安装mysql数据库, 启动一个空的MySQL服务器实例 docker run –name zabbix-DB -t \  -e MYSQL_...
  • 2. 下载zabbix-server镜像,zabbix-server镜像分两种,支持MySQL数据库zabbix-server-mysql,支持支持PostgreSQL数据库zabbix/zabbix-...打开zabbix-server-mysql的docker hub,大家会发现,zabbix-server-mysql有下...

    2cd20dafa09539c029797660b786db9e.png

    2. 下载zabbix-server镜像,zabbix-server镜像分两种,支持MySQL数据库zabbix-server-mysql,支持支持PostgreSQL数据库zabbix/zabbix-server-pgsql。下面安装的是支持MySQL数据库的Server镜像。

    打开zabbix-server-mysql的docker hub,大家会发现,zabbix-server-mysql有下面这些版本

    Zabbix server 3.0 (tags: alpine-3.0-latest, ubuntu-3.0-latest, centos-3.0-latest)

    Zabbix server 3.0.* (tags: alpine-3.0.*, ubuntu-3.0.*, centos-3.0.*)

    Zabbix server 3.2 (tags: alpine-3.2-latest, ubuntu-3.2-latest, centos-3.2-latest)

    Zabbix server 3.2.* (tags: alpine-3.2.*, ubuntu-3.2.*, centos-3.2.*)

    Zabbix server 3.4 (tags: alpine-3.4-latest, ubuntu-3.4-latest, centos-3.4-latest, alpine-latest, ubuntu-latest, centos-latest, latest)

    Zabbix server 3.4.* (tags: alpine-3.4.*, ubuntu-3.4.*, centos-3.4.*)

    Zabbix server 4.0 (tags: alpine-trunk, ubuntu-trunk)

    因为我的服务器是centos7版本,所以选择的是centos-latest版本。还有后面如果想自己重做镜像的话,选择centos版本,用着会更简单一点。在linux终端使用

    docker pull zabbix/zabbix-server-mysql:centos-latest

    下载zabbix-server的镜像。再通过

    docker image ls

    查看下载的镜像。如下图:

    5b8a0318efcacc35e64e819f17bc9321.png

    3. 下载Zabbix web镜像,这里使用的是基于Nginx web服务器及支持MySQL数据库的Zabbix web接口zabbix/zabbix-web-nginx-mysql。这里是用的是latest版本,在linux终端使用

    docker pull zabbix/zabbix-web-nginx-mysql:latest

    下载web镜像。再通过

    docker image ls

    查看下载的镜像。如下图:

    3d80d6d370fabcb9347734fb0111303b.png

    4. 下载zabbix-java-gateway镜像, Zabbix本身不支持直接监控Java,而是使用zabbix-java-gateway监控jvm/tomcat性能。这里我们使用latest版本,在linux终端使用

    docker pull zabbix/zabbix-java-gateway:latest

    下载zabbix-java-gateway镜像。再通过

    docker image ls

    查看下载的镜像。如下图:

    5290a1cd088a5b96b8aee32f3b1722c9.png

    镜像运行

    1.  启动zabbix等镜像之前,需要先创建一个新的 Docker 网络。需要将后面的zabbix-server、mysql、web等容器都加入到此网络中,方便互相访问。在终端使用下面命令创建。

    docker network create -d bridge zabbix_net

    创建后,可以查看是否创建成功。

    docker network ls

    2. 运行mysql 镜像,创建mysql容器。

    docker run -dit -p 3306:3306 --name zabbix-mysql --network zabbix_net --restart always -v /etc/localtime:/etc/localtime -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix_pwd" -e MYSQL_ROOT_PASSWORD="root_pwd" mysql:5.7

    其中-p 是将容器中的3306端口映射到服务器的3306端口,

    --network zabbix_net是将容器加入到zabbix_net网络中,

    -v /etc/localtime:/etc/localtime是同步服务器和容器内部的时区,

    --restart always设置自启动,

    -e MYSQL_DATABASE="zabbix",创建环境变量。

    --name zabbix-mysql,给容器命名。

    3. 运行zabbix-java-gateway镜像,创建zabbix-java-gateway容器。

    docker run -v /etc/localtime:/etc/localtime -dit --restart=always --name=zabbix-java-gateway --network zabbix_net zabbix/zabbix-java-gateway:latest

    4. 运行zabbix-server-mysql镜像,创建zabbix-server-mysql容器。

    首先创建数据卷zabbix-server-vol,通过命令

    docker volume create zabbix-server-vol

    启动zabbix-server-mysql容器。

    docker run -dit -p 10051:10051 --mount source=zabbix-server-vol,target=/etc/zabbix -v /etc/localtime:/etc/localtime -v /usr/lib/zabbix/alertscripts:/usr/lib/zabbix/alertscripts --name=zabbix-server-mysql --restart=always --network zabbix_net -e DB_SERVER_HOST="zabbix-mysql" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix_pwd" -e MYSQL_ROOT_PASSWORD="root_pwd" -e ZBX_JAVAGATEWAY="zabbix-java-gateway" zabbix/zabbix-server-mysql:centos-latest

    5. 运行zabbix-web-nginx-mysql镜像,创建zabbix-web-nginx-mysql容器。

    docker run -dit -p 80:80 -v /etc/localtime:/etc/localtime --name zabbix-web-nginx-mysql --restart=always --network zabbix_net -e DB_SERVER_HOST="zabbix-mysql" -e MYSQL_DATABASE="zabbix" -e MYSQL_USER="zabbix" -e MYSQL_PASSWORD="zabbix_pwd" -e MYSQL_ROOT_PASSWORD="root_pwd" -e ZBX_SERVER_HOST="zabbix-server-mysql" zabbix/zabbix-web-nginx-mysql:latest

    zabbix所需容器已经全部启动,可以通docker ps 查看容器状态,如下图:

    f0d51683c07aefb780523c4035ac8af8.png

    6. 在浏览器中输入http://IP/zabbix,打开zabbix首页,其中用户名密码分别是admin/zabbix。

    出现下面页面,zabbix搭建成功。是不是比自己创建数据库,搭建zabbix-server简单很多。

    8d129dcf98cb678d9c70303893a6a83c.png

    展开全文
  • 使用docker搭建zabbix

    2018-04-22 20:36:43
    再次之前我们要知道zabbix的主要架构是怎样的,zabbix有一个server端是最主要的,主要是用来收集agent传来的数据然后进行处理等一系列操作,当然有server端肯定有agent端用来收集数据的,数据为了可以图形化展示给...
  • 使用Docker搭建Zabbix服务

    千次阅读 2018-07-30 22:51:34
    Zabbix官方提供有Docker镜像,本文结合资料记录一次使用Docker搭建Zabbix的过程,Docker、Zabbix的使用及介绍不再赘述。 Docker源文件 所有Zabbix组件都下列Docker源码库中提供: Zabbix agent : zabbix/zabbix...
  • Docker搭建zabbix-server

    2021-11-01 16:34:04
    安装docker #更新软件包索引,并且安装必要的依赖软件,来添加一个新的 HTTPS 软件源 #sudo apt update #sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common #导入...
  • 使用docker搭建zabbix环境

    千次阅读 2019-09-01 19:02:16
    一、下载mysql,这里下载mysql:5.7, docker image pull mysql:5.7 二、下载zabbix-server镜像,zabbix-server镜像有两种,一种是支持PostgreSQL,一种是支持mysql的。...docker search zabbix-ser...
  • zabbix系统由数据库、监控服务、管理...故障处理:控制台页面报错zabbix server is not running: the information displayed may not be current,根据网友非docker部署环境的排查方法,查了半天都没找到原因,居...
  • 基于docker 安装 zabbix

    2021-11-19 15:10:30
    1.docker+zabbix,使用docker搭建zabbix服务 Zabbix 介绍  zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。  zabbix能监视各种网络参数,保证服务器系统...
  • Docker部署Zabbix

    2021-10-03 11:04:43
    docker部署 Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker [root@localhost ~]# uname -r 3.10.0-1127.el7.x86_64 安装需要的软件包(yum-util 提供yum-...
  • docker搭建zabbix

    2021-02-17 18:37:51
    docker run --name mysql-server -t \ -p 3307:3306 \ -e MYSQL_DATABASE="zabbix" \ -e MYSQL_USER="zabbix" \ -e MYSQL_PASSWORD="zabbix_pwd" \ -e MYSQL_ROOT_PASSWORD="admins" \ -d mysql:5.7 \ --...
  • 关于docker 安装 zabbix proxy 的过程 近期公司使用的是FreeBSD的OS搭载的zabbix proxy,因为需要上百个proxy,还有vlan的限制, 所以就自己研究了一下; 是研究的vlan,因为是使用了esxi6.7的虚拟机,虚拟了2块...
  • docker搭建zabbix系统监控服务器并通知钉钉群报警 一.环境说明 OS:Ubuntu 16.04 x86_64 IP: 172.18.29.120 Docker version :19.03.5 Docker Compose: version 1.24.0 环境变量文件说明 .env_agent zabbix-agent ...
  • docker部署zabbix

    2021-01-17 01:06:55
    下面咱们来看看如何在docker搭建zabbix并且监控部署环境2台物理机机器:zabbix-server:192.168.254.13zabbix-agent:192.168.254.17docker版本:Server Version: 19.03.1zabbix版本:4.0docker的镜像网...
  • 一、基于Docker环境的安装以下为docker环境安装方法: ... 二、镜像的获取 你需要有一个dockerhub开源平台的账户: https://hub.docker.com/ linux链接dockerhub平台 docker login --username=你...三、搭建Zab
  • 一、Zabbix 简介 Zabbix 可以用来监控各种网络参数,来保证服务器和系统的安全运行。并且 Zabbix 还提供了灵活的通知机制,以此来让系统管理员快速定位/解决存在的各种问题。是一个基于 Web 界面提供的分布式系统...
  • Docker安装Zabbix+Granafa

    2021-11-30 08:48:52
    Docker安装Zabbix+Granafa 一、安装Zabbix 1.添加docker-repo yum-config-manager --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 2.拉取镜像 docker pull mysql:5.7 docker ...
  • 器化zabbix。 容器部署zabbix更简单 准备两台机器:192.168.22.200 zabbix-server192.168.22.8 zabbix-agent 软件版本:docker: 18.06.1-cezabbix: 4.0.1 安装docker可以使用阿里镜像源的repo安装:...
  • 基于docker搭建zabbix

    千次阅读 2019-05-26 15:02:42
    作者:【吴业亮】 博客:... 启动一个空的MySQL服务器实例 创建数据库目录 # mkdir /data # docker run --name mysql-server -t \ -v /data:/var/lib/mysql \ -e MYSQL_DATABASE="zabbix" \ -e...
  • 一:基于docker 配置zabbix 1、下载zabbix相关的4个镜像 1.下载mysql:5.7 sudo docker pull mysql:5.7 2.下载zabbix/zabbix-server-mysql sudo docker pull zabbix/zabbix-server-mysql 3.下载zabbix/zabbix-web-...
  • docker 部署 Zabbix5.0 版本,Zabbix 优化,生产环境 zabbix 部署实践,通过 Docker 搭建一个最小化版本的 Zabbix,安装 Docker,可参考阿里云镜像站 Docker 镜像加速
  • 编写docker-compose.yml文件 根据需求更改自己的配置,这里配置mysql为5.7版本,其他版本默认为最新的。由于80已被占用,这里为8088端口登录。 version: "3" services: mysql-server: image: mysql:5.7 container...
  • 基于 Docker 安装 zabbix

    千次阅读 2020-09-11 14:09:30
    docker+zabbix,使用docker搭建zabbix服务 zabbix中文文档https://www.zabbix.com/documentation/3.4/zh/start Zabbix 相关镜像下载 docker pull mysql:5.7 docker pull zabbix/zabbix-server-mysql:centos-...
  • docker部署zabbix_proxy

    千次阅读 2018-12-11 18:01:07
    docker部署zabbix_proxy,因为设置了zabbix_proxy通过psk加密方式连接到zabbix_server,因此需要生成psk密钥 目录结构: [root@container1 zabbix_proxy]# cat etc/env_mysql MYSQL_DATABASE=zabbix_proxy...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,437
精华内容 974
关键字:

在docker搭建zabbix