docker compose一键部署容器监控 CAdvisor+InfluxDB+Granfana

docker compose一键部署容器监控 CAdvisor+InfluxDB+Granfana

CAdvisor监控收集+InfluxDB存储数据+Granfana展示图表

1、原生命令

通过docker stats 命令可以查看当前宿主机上所有创建的容器的CPU,内存和网络流量等信息

docker stats 

在这里插入图片描述
缺点:只能查看当前宿主机的全部容器,而且查询是实时的、不能存储、没有指标预警等功能。

2、CAdvisor

CAdvisor 是谷歌公司用来分析运行中的 docker 容器的资源占用以及性能特性的工具。
CAdvisor是一个容器资源监控工具,包括容器的内存,CPU,网络IO,磁盘IO等监控,同时提供了一个WEB页面用于查看容器的实时运行状态。
CAdvisor提供了很多数据集成接口,支持InfluxDB,Redis,Kafka,Elasticsearch等集成,可以加上对应配置将监控数据发往这些数据库存储起来。
CAdvisor功能主要有两点:
1、展示Host和容器两个层次的监控数据。
2、展示历史变化数据。

3、InfluxDB

InfluxDB是用Go语言编写的一个开源分布式时序、事件和指标数据库,无需外部依赖。
为了持久化存储数据和统一收集展示监控数据,需要将CAdvisor的数据存储到InfluxDB中。
InfluxDB是一个时序数据库,专门用于存储时序相关数据,很适合存储CAdvisor的数据。而且,CAdvisor本身已经提供了InfluxDB的集成方法,丰启动容器时指定配置即可。
InfluxDB主要功能:
1、基于时间序列,支持与时间有关的相关函数(如最大、最小、求和等);
2、可度量性:你可以实时对大量数据进行计算;
3、基于事件:它支持任意的事件数据;

4、Granfana

Grafana是一个开源的数据监控分析可视化平台,支持多种数据源配置(支持的数据源包括InfluxDB, MySQL,Elasticsearch, OpenTSDB、Graphite等)和丰富的插件及模板功能,支持图表权限控制和报警Grafan主要特性。
Grafana主要功能:
1、 灵活丰富的图形化选项
2、可以混合多种风格
3、支持白天和夜间模式
4、可配置多个数据源

5、创建目录

mkdir /data/cAdvison/ -p && cd /data/cAdvison/

6、创建docker-compose.yml文件

version: '2' services: influxdb: image: tutum/influxdbrestart: always ports: - "8083:8083" - "8086:8086" environment: - PRE_CREATE_DB=cadvisor volumes: - ./influxdb:/data cadvisor: image: google/cadvisor links: - influxdb:influxsrv command: -storage_driver=influxdb -storage_driver_db=cadvisor -storage_driver_host=influxsrv:8086 restart: always ports: - "8080:8080" volumes: - /:/rootfs:ro - /var/run:/var/run:rw - /sys:/sys:ro - /var/lib/docker/:/var/lib/docker:rwgrafana: image: grafana/grafana restart: always links: - influxdb:influxsrv ports: - "3000:3000" environment: - HTTP_USER=admin - HTTP_PASS=admin - INFLUXDB_HOST=influxsrv - INFLUXDB_PORT=8086 - INFLUXDB_NAME=cadvisor - INFLUXDB_USER=root - INFLUXDB_PASS=root volumes: - ./grafana:/var/lib/grafana:rw

7、启动docker compose

docker compose  up -d

在这里插入图片描述

8、查看服务状态

docker compose ps

在这里插入图片描述

9、grafana服务启动失败排查

1) 检查grafana服务日志
docker compose logs -f grafana

在这里插入图片描述

2) 日志提示没有权限,给目录授权
chmod -R  777 ./grafana/
3) 重启grafana服务
docker compose restart grafana
4) grafana服务恢复正常

在这里插入图片描述

10、访问各服务页面

1) cAdvisor
2) InfluxDB

InfluxDB的Web管理平台
在这里插入图片描述

3) Granana

Grafana管理控制页面
在这里插入图片描述
默认账号密码
admin/admin

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/443557.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pyppeteer:如何在 Python 中使用 Puppeteer 和 Browserless?

Python 中的 Pyppeteer 是什么? Pyppeteer 是流行的 Node.js 库 Puppeteer 的 Python 移植版本,用于以编程方式控制无头 Chrome 或 Chromium 浏览器。 本质上,Pyppeteer 允许 Python 开发人员在 Web 浏览器中自动执行任务,例如抓…

多选框的单选操作 Element ui

文章目录 样式预览Q:为什么要这么做?实现原理探索路程 样式预览 Q:为什么要这么做? 单选框的样式不够好看单选框因为框架等原因,无法取消选择 实现原理 判断多选框绑定的 value,如果长度为2,那…

oracle-函数-instr()的妙用以及相似功能like

INSTR(C1,C2[,I[,J]]) 【功能】在一个字符串中搜索指定的字符,返回发现指定的字符的位置; 【说明】多字节符(汉字、全角符等),按1个字符计算 【参数】 C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为1 J 第J次出现的位置,默认为1 【…

RTSP RTP RTCP SDP基础知识

理论 流(Streaming ) 是近年在 Internet 上出现的新概念,其定义非常广泛,主要是指通过网络传输多媒体数据的技术总称。 流式传输分为两种 顺序流式传输 (Progressive Streaming) 实时流式传输 (Real time Streaming) ​​​​​…

国产长芯微LDC5422单通道、16位、电流源和电压输出DAC,HART连接完全P2P替代AD5422

描述 LDC5422是低成本、精密、完全集成、16位数模转换器(DAC),内置可编程电流源和可编程电压输出,设计用于满足工业过程控制应用的需要。 输出电流范围可编程设置为4 mA至20 mA、0 mA至20 mA或者超量程的0 mA至24 mA。 此产品的LFCSP版本有一个CAP2引脚…

胤娲科技:00后揭秘——AI大模型的可靠性迷局

当智能不再“靠谱”,我们该何去何从? 想象一下,你向最新的GPT模型提问:“9.9和9.11哪个大?”这本应是个小菜一碟的问题,却足以让不少高科技的“大脑”陷入沉思, 甚至给出令人啼笑皆非的答案。近…

vite学习教程06、vite.config.js配置

前言 博主介绍:✌目前全网粉丝3W,csdn博客专家、Java领域优质创作者,博客之星、阿里云平台优质作者、专注于Java后端技术领域。 涵盖技术内容:Java后端、大数据、算法、分布式微服务、中间件、前端、运维等。 博主所有博客文件…

智能桥梁:Profinet至CanOpen,台达伺服无缝对接

在工业自动化领域,将西门子S7-1200系列PLC与具备CANOPEN通讯功能的伺服驱动器设备集成时,由于PLC默认采用PROFINET实时以太网通讯协议,直接连接存在协议不匹配问题。为解决这一挑战,开疆推出的Profinet转CANOPEN网关提供了高效便捷…

Java基础知识——String篇

一、String 1、是什么 String 是 Java 中用于表示字符串的类。Java 中的字符串是不可变的,也就是说一旦创建,字符串的内容无法更改。 2、如何构造 (1)无参数构造方法: String str new String(); //创建一个空字符…

sass学习笔记(1.0)

1.使用变量 sass可以像声明变量那样进行使用,这样同样的样式,就可以使用相同的变量来提高复用。 语法为:$ 变量名 在界面中也可以正常的显示 当然了,变量之间也可以相互引用,比如下面 div{$_color: #d45387;$BgColo…

Word 拼写检查如何关闭?2 步轻松搞定

在日常进行文档编辑操作的过程中,拼写词语错误是比较常见的,特别是文档中包含大量文字的时候,一不小心就有可能输错,Word 当然有功能可以辅助我们发现这些问题,这就是 Word 拼写检查功能。 Word 拼写检查功能可以自动…

Spring Boot学习资源库:Java开发者的新篇章

2 相关技术简介 2.1Java技术 Java是一种非常常用的编程语言,在全球编程语言排行版上总是前三。在方兴未艾的计算机技术发展历程中,Java的身影无处不在,并且拥有旺盛的生命力。Java的跨平台能力十分强大,只需一次编译,任…

Java基本数据类型转换

一、自动类型转换 1.基本介绍 当Java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个就是自动类型转换数据类型按精度(容量)大小进行排序为: ![在这里插入图片描述](https://i-blog.csdnimg.…

【第2章 开始学习C++】C++语句

文章目录 导语声明语句和变量赋值语句cout的新花样使用cin类简介 导语 C 程序是一组函数, 而每个函数又是一组语句。 C 有好几种语句,例如:声明语句创建变量, 赋值语句给该变量提供一个值。 声明语句和变量 计算机是一种精确的…

Java 的数据结构整理(整合版)

Java 的数据结构整理(整合版) 一、数据输入输出 https://www.runoob.com/java/java-scanner-class.html 这部分是为了预防 leetcode 刷习惯了,忘记怎么处理输入输出的问题 数据输入 Java的数据输入和 C 相比非常繁琐,因此大多…

zookeeper API使用——znode的CRUD

这应该是目录 一、创建连接1.1构造函数1.2创建连接(封装) 二、节点操作2.1创建节点create语法代码 2.2获取节点数据getData语法代码 2.3获取子节点getChildren语法代码 2.4修改节点的值setData语法代码 2.5删除delete语法代码 以下的代码只能作为基础的语法使用,为了…

LangChain: 大语言模型的新篇章

本文介绍了LangChain框架,它能够将大型语言模型与其他计算或知识来源相结合,从而实现功能更加强大的应用。接着,对LangChain的关键概念进行了详细说明,并基于该框架进行了一些案例尝试,旨在帮助读者更轻松地理解LangCh…

65 切面AOP

65 切面AOP 切面基础概念 AOP:Aspect Oriented Programming,面向切面编程。是通过预编译方式(aspectj)或者运行期动态代理(Spring)实现程序功能的统一维护的技术。 面试问题: Spring的两大核心…

【VUE】双端比较算法

假设我们有两个虚拟节点 oldVnode 和 newVnode,它们分别对应的DOM结构为: 我们需要将 oldVnode 更新为 newVnode,这时就可以使用双端比较算法了。算法本质上是将新旧节点进行一次交叉比较,尽可能地重复使用已有的节点来达到最小…

懒人笔记-QT程序UOS打包篇

懒人笔记-uos打包篇 前言1、deploy2、组织打包目录2.1 控制文件2.1.1 control的内容:2.1.2 postinst的内容:2.1.3 postrm的内容: 2.2 执行程序2.3 开机自启(可选项) 3、输出deb安装包4、服务卸载4.1 服务卸载4.2 程序按…