ubuntn18 docker zabbix+grafana安装和使用
在ubuntu docker inflxudb(安装 使用 备份 还原 以及python编码) telegraf Grafana我采用telegraf采集数据, 本文计划采用zabbix来才采集数据,仍然用grafana来展示数据(为了节约资源我把telegraf先停掉)
sudo systemctl enable --now telegraf #添加到开机启动
sudo systemctl disable --now telegraf #从开机启动移除
systemctl status telegraf #查看telegraf状态
zabbix
模块介绍
Zabbix Server:负责接收agent发送的报告信息的核心组件,所有配置,统计数据及操作数据均由其组织进行.
Zabbix Agent:部署在被监控主机上,负责收集本地数据发往Server端或Proxy端.
Database Storage:用户存储所有配置信息,以及存储由Zabbix Server收集到的数据.
Web Interface: Zabbix的GUI接口,通常与Server运行在同一台主机上
Zabbix Proxy:常用于分布监控环境中,代理Server收集部分被监控的监控数据并统一发往Server端.
原理介绍
Agentd安装在被监控的主机上,Agent负责定期收集客户端本地各项数据,并发送至Zabbix Server端,Zabbix Server收到数据,将数据存储到数据库中,用户基于Zabbix WEB可以看到数据在前端展现图像.
当Zabbix监控某个具体的项目,改项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(SHELL命令、Reboot、Restart、Install等).
环境安装
zabbix需要zabbix-server、zabbix-agent、mysql.
其中mysql已经在本机安装了,在dockercompose文件中
写上对应的host、user、pwd即可.
在mysql中创建zabbix数据库,为了后期储存数据使用.
使用docker安zabbix装,docker-compose.yaml文件如下:
version: ''
services:
zabbix-server-service:
image: monitoringartist/zabbix-xxl:3.2.
container_name: zabbix-server-service
restart: always
ports:
- "9999:80"
environment:
- ZS_DBHost=192.168.100.3
- ZS_DBUser=root
- ZS_DBPassword=root
zabbix-agent-a:
image: zabbix/zabbix-agent:ubuntu-3.2.
links:
- zabbix-server-service:zabbixserverhost
container_name: zabbix-agent-a
restart: always
depends_on:
- zabbix-server-service
environment:
- ZBX_HOSTNAME=zabbix-agent-service-a
- ZBX_SERVER_HOST=zabbixserverhost
zabbix-agent-b:
image: zabbix/zabbix-agent:ubuntu-3.2.
links:
- zabbix-server-service:zabbixserverhost
container_name: zabbix-agent-b
restart: always
depends_on:
- zabbix-server-service
environment:
- ZBX_HOSTNAME=zabbix-agent-service-b
- ZBX_SERVER_HOST=zabbixserverhost
启动命令: docker-compose up -d



查看日志命令: docker logs -f zabbix-server-service
若果mysql是8.0 zabbix 是3.*的版本可能会有如下错误 syntax to use near 'identified by 'root'':

网上说下载最新版本也是扯淡,建议用mysql5.7 就能解决了

在这个过程中千万不要重启容器 当看到如下图就表示服务已经启动了

大概启动后1到2分钟登录zabbix web地址,http://192.169.100.3:9999,出现如下页面说明安装成功.

默认账号:Admin,密码:zabbix,登录后出现如下页面.

配置
修改语言
默认的语言是英文的,点击头像后展示修改语言选项,选择中文并且更新即可.

zabbix-agent配置
之前配置两个zabbix-agent-a和zabbix-agent-b,所以要添加两个zabbix-agent来采集数据并发送给zabbix-server.
在配置,选择主机,创建主机.

配置zabbix-agent需要其容器内的ip地址,可以通过
docker exec -it zabbix-agent-b ip addr命令查看.

在创建页面填写其ip和选择群组,点击保存即可.

此时添加了两台zabbix-agent.

另外还需要给zabbix-agent配置监控模版,在模版中选择Template OS Linux并且添加即可.(这里要点击添加按钮)

配置模版完成后,在主机列表中ZBX显示绿色说明添加完成.

添加监控数据
在首页仪表盘上,选择常用的图形.,在创建页面选择zabbix-agent-server-b主机和cpu jumps监控项.

监控数据可以控制缩放比例和时间段.

grafana
简介
grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示.
配置
安装grafana
可以使用grafana展示zabbix的数据,制作图表展示.
使用docker启动grafana.
docker run -d --name=grafana2 -p 3000:3000 -v /var/lib/grafana:/var/lib/grafana grafana/grafana:3.0.4
启动镜像完成后,等大概1到2分钟,在浏览器访问:http://192.168.100.3:300 admin默认账号和密码都是.
安装zabbix插件
安装zabbix插件,进入grafana容器执行如下命令
docker exec -it grafana /bin/bash #进入容器
grafana-cli plugins install alexanderzobnin-zabbix-app
docker restart grafana #重启容器
在插件中的app中,出现zabbix说明zabbix插件安装成功.


这里需要启动该插件

zabbix数据源
在Data Sources中新增一个数据源.
数据源配置:type=Zabbix、url、Zabbix的账号、Zabbix的密码.
url格式为:http://192.168.100.3:9999/api_jsonrpc.php

然后点击

grafana面板
在Dashboards中新建一个面板.
把Panel data source数据源改成zabbix数据源. 可用内存设置面板中参数如下:
Group=Linux servers (这个参数在zabbix设置过)
Host=zabbix-agent-service-a
Application=Memory
Item=Available memory

grafana使用模版
在https://grafana.com/grafana/dashboards中提供很多第三方模版 Servers Linux这个模版


下载模版的json文件.

配置模版信息.


(我不知道为什么必须要把Zabbix数据源设置为default,不然选择不了)最终在一个面板中展示了当前cpu、内存等,相对原始的数据展示更加直观.

参考:
https://testerhome.com/topics/18364
https://www.lengyuewusheng.com/2018/03/18/00032_influxdb-telegraf-Grafana%E7%9B%91%E6%8E%A7%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%E4%B8%8Ezabbix%E7%9B%91%E6%8E%A7%E7%9A%84%E5%AF%B9%E6%AF%94/
ubuntn18 docker zabbix+grafana安装和使用的更多相关文章
- Docker部署Zabbix+Grafana监控
Docker部署Zabbix+Grafana监控 环境 centos 7 ; Docker 17.12.0-ce ; docker-compose version 1.20.1 2018-4-1 当前 ...
- Docker搭建zabbix+grafana监控系统
一.准备工作 1.mysql数据库:192.168.1.5 2.nginx服务:192.168.1.10 3.docker服务器:192.168.1.20 4.zabbix客户端若干 二.docker ...
- grafana安装使用及与zabbix集成
grafana简介Grafana是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询.分析.可视化处理以及配置告警. Grafana支持的数据源:官方:Graphite,Infl ...
- Zabbix安装 Grafana安装
每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code 前提: 先需要安装好 lamp环境. 官方文档: https://www.zabbix.com ...
- docker环境下的Grafana安装
一.参考资源:https://grafana.com/docs/grafana/latest/installation/docker/ 二.过程 1.安装grafana 查看可用image [root ...
- Zabbix+Grafana打造高逼格监控系统
第一章 zabbix监控的意义 1.1 为什么要监控 业务安全性的保障 系统的保障 产品持续性的运行 1.2 监控的内容 1.3 zabbix的选择性 [x] 纯命令监控太局限性 [x] 监控三剑客( ...
- zabbix server安装详解
简介 zabbix(音同 zæbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以 ...
- 使用 Docker 部署 Grafana + Prometheus 监控 MySQL 数据库
一.背景 在平时开发过程当中需要针对 MySQL 数据库进行监控,这里我们可以使用 Grafana 和 Prometheus 来实现监控功能.Grafana 是一款功能强大的仪表盘面板,支持多种数据源 ...
- zabbix的安装部署及自定义监控的实现
此篇感谢我的小师傅. 1. Zabbix主要功能和优劣势说明 1. Zabbix主要功能和优劣势说明 1.1 Zabbix主要功能: 1)Application monitoring 应用监控 数据库 ...
随机推荐
- Burp Suite渗透实战操作指南-上篇
Burp必备知识 在介绍功能之前有必要让大家了解一些burp的常用功能,以便在使用中更好的发挥麒麟臂的优势. 1.1 快捷键 很多人可能都没用过burp的快捷键吧,位置如下,不说话,如果不顺手可以自 ...
- 关于 Java 关键字 volatile 的总结
1 什么是 volatile volatile 是 Java 的一个关键字,它提供了一种轻量级的同步机制.相比于重量级锁 synchronized,volatile 更为轻量级,因为它不会引起线程上下 ...
- android studio学习----构建(gradle )依赖时使用动态依赖的问题
今天在看Dan Lew大神的博客发现最新的文章就是 “Don't use dynamic versions for your dependencies” Everyone, please, to st ...
- iperf3 网络测试工具
Iperf3 是一个网络性能测试工具.Iperf可以测试最大TCP和UDP带宽性能,具有多种参数和UDP特性,可以根据需要调整,可以报告带宽.延迟抖动和数据包丢失.对于每个测试,它都会报告带宽,丢包和 ...
- Linux shell 中断循环语句
无限循环: 循环有限的生命,他们跳出来,一旦条件是 false 还是 false 取决于循环. 由于所需的条件是不符合一个循环可能永远持续下去.永远不会终止执行一个循环执行无限次数.出于这个原因,这样 ...
- javascript之BOM对象(一window对象)
javascript包含三个部分,ECMAScript,BOM和DOM.ECMAScript是javascript的核心,包含javascript的基础语法.在Web中使用javascript,BOM ...
- dapi 基于Django的轻量级测试平台四 任务设置
QQ群: GitHub:https://github.com/yjlch1016/dapi 一.间隔时间: 二.定时时间: 三.任务设置: 四.任务结果:
- Django Model的外键自关联‘self'和设置'unique_together'
在django的model定义中,有时需要某个Field引用当前定义的Model,比如一个部门(Department)的Model,它有一个字段是上级部门(super_department),上级部门 ...
- PDB files out of the debugger
我想我不需要强调在调试时拥有有效的PDB文件有多重要.通常,PDB文件是由调试器静默加载的,并且您很高兴在modules窗口中看到解析的所有符号.不幸的是,您还可能遇到调试器找不到匹配符号的情况.其原 ...
- three.js 加载STL文件
注意: TrackballControls.js 和 TDSLoader.js 都引用了 three.module.js,特别注意引用的路径 比如: 直接代码咯 <!DOCTYPE html&g ...