docker小白第十四天之Portainer与CIG

Portainer简介

Portainer是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境。

Portainer命令安装

# 一个容器可以同时起多个-p端口,restart=always表示随时在线,重启机器后也自动重启
docker run -d -p 8000:8000 -p 9000:9000 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data/ portainer/portainer
# 第一次登录需要修改账号密码,用户名默认admin
# 本地浏览器访问如下地址,其中ip换为自己host宿主机地址
192.168.0.5:9000/#/init/admin

在这里插入图片描述
输入自定义密码登录后界面
在这里插入图片描述
监测本地docker
在这里插入图片描述
在这里插入图片描述
左侧有很多菜单选项。例如镜像、网络、容器实例。
在这里插入图片描述

使用portainer安装nginx

在这里插入图片描述
最后输入容器名、要拉取的镜像名nginx,定义的容器端口,最后发布容器。
在这里插入图片描述
最后自动显示安装完成
在这里插入图片描述

docker容器监控之CIG

# 命令行界面查看docker状态
docker stats

在这里插入图片描述
通过docker stats命令可以很方便的看到当前宿主机上所有容器的CPU,内存以及网络流量等数据,但是,docker stats统计结果只能是当前宿主机的全部容器,数据资料是实时的,没有地方存储、没有健康指标过线预警等功能。

CIG的意义:CAdvisor监控收集+InfluxDB存储数据+Granfana展示图表

CAdvisor

CAdvisor是一个容器资源监控工具包括容器的内存,CPU,网络IO,磁盘IO等监控,同时提供了一个WEB页面用于查看容器的实时运行状态。CAdvisor默认存储2分钟的数据,而且只是针对单物理机。不过,CAdvisor提供了很多数据集成接口,支持InfluxDB,Redis,Kafka,Elasticsearch等集成,可以加上对应配置将监控数据发往这些数据库存储起来。
CAdvisor功能主要有两点:

  • 展示Host和容器两个层次的监控数据。
  • 展示历史变化数据。

InfluxDB

InfluxDB是用Go语言编写的一个开源分布式时序、事件和指标数据库,无需外部依赖。CAdvisor默认只在本机保存最近2分钟的数据,为了持久化存储数据和统一收集展示监控数据,需要将数据存储到InfluxDB中。InfluxDB是一个时序数据库,专门用于存储时序相关数据,很适合存储CAdvisor的数据。而且,CAdvisor本身已经提供了InfluxDB的集成方法,丰启动容器时指定配置即可。
lnfluxDB主要功能:

  • 基于时间序列,支持与时间有关的相关函数(如最大、最小、求和等)
  • 可度量性:你可以实时对大量数据进行计算;
  • 基于事件:它支持任意的事件数据;

Granfana

Grafana是一个开源的数据监控分析可视化平台,支持多种数据源配置(支持的数据源包括InfluxDB,MySQL,Elasticsearch,OpenTSDB,Graphite等)和丰富的插件及模板功能,支持图表权限控制和报警。
Grafan主要特性:

  • 灵活丰富的图形化选项。
  • 可以混合多种风格。
  • 支持白天和夜间模式。
  • 多个数据源

compose容器编排CIG监控

在mydocker下新建一个目录cig
在这里插入图片描述

# 编辑compose文件
vim docker-compose.yml
# compose文件内容
version: '3.1'
volumes:grafana_data: {}
services:influxdb:image: tutum/influxdb:0.9restart: alwaysenvironment:- PRE_CREATE_DB=cadvisorports:- "8083:8083"- "8086:8086"volumes:- ./data/influxdb:/datacadvisor:image: google/cadvisorlinks:- influxdb:influxsrvrestart: alwaysports:- "8080:8080"volumes:- /:/rootfs:ro- /var/run:/var/run:rw- /sys:/sys:ro- /var/lib/docker/:/var/lib/docker:rografana:user: "104"image: grafana/grafanarestart: alwayslinks:- influxdb:influxsrvports:- "3000:3000"volumes:- grafana_data:/var/lib/grafanaenvironment:- HTTP_USER=admin- HTTP_PASS=admin- INFLUXDB_HOST=influxsrv- INFLUXDB_PORT=8086- INFLUXDB_NAME=cadvisor- INFLUXDB_USER=root- INFLUXDB_PASS=root
# 检查文件配置是否有误
docker-compose config -q
# 启动compose编排,前台运行,非后台守护进程。
docker-compose up
# 另起一个命令行窗口,查看已经运行的三个服务是否启动
docker ps

在这里插入图片描述

测试访问服务是否正常

本地浏览器访问如下网址:

  • 浏览CAdvisor收集服务,http://ip:8080/
# 第一次访问慢,需等待,cadvisor也有基础的图形展现功能。
http://192.168.0.5:8080/containers/

在这里插入图片描述

  • 浏览influxdb存储服务,http://ip:8083/
http://192.168.0.5:8083/#
  • 浏览grafana展现服务,http://ip:3000
# 账号密码admin,admin
http://192.168.0.5:3000/#

在这里插入图片描述

配置grafana展现服务

配置数据源

选择InfluxDB数据库。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输入compose.yml文件中新建的cadvisor数据库名字,用户名和密码分别为root
在这里插入图片描述
新建观察panel面板
在这里插入图片描述
在这里插入图片描述
可编辑监控选项,例如监控cpu
在这里插入图片描述

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

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

相关文章

麒麟系统Redis7.2哨兵集群部署

redis哨兵集群部署 1、原理 Redis 哨兵模式是指在 Redis 集群中,有一组专门的进程(即哨兵进程)负责监控主节点和从节点的状态,并在发现故障时自动进行故障转移,以保证 Redis 集群的高可用性。 Redis 提供了哨兵的命令,哨兵命令是一个独立的进程,哨兵进程会周期性地向主…

Flutter开发入门——路由

什么是路由? 移动端应用开发中,路由技术是一个非常重要的组成部分。路由技术负责管理应用中各个页面之间的跳转、导航以及参数传递等关键功能。在移动端应用中,一个高效、易于维护的路由系统对于提高开发效率和用户体验具有重要意义。 Flut…

MySQL 多表查询与事务的操作

一,多表联查 有些数据我们已经拆分成多个表,他们之间通过外键进行连接.当我们要查询两个表的数据,各取其中的一列或者多列. 这时候就需要使用多表联查. 数据准备: # 创建部门表 create table dept(id int primary key auto_increment,name varchar(20) ) insert into dept (n…

【机器学习系列】M3DM工业缺陷检测部署与训练

一.基础资料 1.Git 地址 地址 2.issues issues 3.参考 参考 csdn 二.服务器信息 1.GPU 服务器 GPU 服务器自带 CUDA 安装(前提是需要勾选上)CUDA 需要选择大于 11.3 的版本登录服务器后会自动安装 GPU 驱动 2.CUDA 安装 GPU 服务器自带 CUDA CUDA 版本查看 3.登录信…

软件杯 深度学习 python opencv 实现人脸年龄性别识别

文章目录 0 前言1 项目课题介绍2 关键技术2.1 卷积神经网络2.2 卷积层2.3 池化层2.4 激活函数:2.5 全连接层 3 使用tensorflow中keras模块实现卷积神经网络4 Keras介绍4.1 Keras深度学习模型4.2 Keras中重要的预定义对象4.3 Keras的网络层构造 5 数据集处理训练5.1 …

软件企业在咨询第三方软件测试机构报价时,应提前准备什么资料?

近年来,随着软件行业的迅速发展,软件企业对于软件质量的重视程度日益增加。为了确保软件产品的质量以及用户的满意度,越来越多的企业倾向于委托第三方软件测试机构进行测试工作。在咨询第三方软件测试机构报价之前,软件企业需要提…

软考81-上午题-【面向对象技术3-设计模式】-行为型设计模式01

一、行为型设计模式一览 二、责任链模式 2-1、意图 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 1-2、结构 1-3、代码实现 1-4、适…

C/C++炸弹人游戏

参考书籍《啊哈,算法》,很有意思的一本算法书,小白也可以看懂,详细见书,这里只提供代码和运行结果。 这里用到的是枚举思想,还有更好地搜索做法。 如果大家有看不懂的地方或提出建议,欢迎评论区…

【Linux】Linux基本开发工具(yum) (vi/vim)的使用

本文章内容: 学习yum工具,进行软件安装掌握vim编辑器使用 Linux 软件包管理器 yum 什么是软件包 在Linux下安装软件, 一个通常的办法是下载到程序的源代码, 并进行编译, 得到可执行程序.但是这样太麻烦了, 于是有些人把一些常用的软件提前编译好, 做成…

基于python的4s店客户管理系统

技术:pythonmysqlvue 一、背景 进入21世纪网络和计算机得到了飞速发展,并和生活进行了紧密的结合。目前,网络的运行速度以达到了千兆,覆盖范围更是深入到生活中的角角落落。这就促使管理系统的发展。网上办公可以实现远程处理事务…

2024.03.19日志

今日复盘 1 学习导师给的项目 1.1 了解项目的业务背景:经销商-银行贷款 1.2 了解了大致的业务流程 经销商添加客户贷款信息->提交贷款信息->银行审核->审核通过经销商提交客户贷款信息资料->银行审核->制作名单导入网贷系统 1.3 业务功能 经销…

Java 设计模式系列:行为型-状态模式

简介 状态模式(State Pattern)是一种行为型设计模式,允许一个对象在其内部状态改变时改变其行为。状态模式中类的行为是由状态决定的,在不同的状态下有不同的行为。 状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂…

linux下关闭swap文件系统

临时关闭(马上生效) 永久关闭(重启计算机才能生效) vim /etc/fstab

深入浅出Hive性能优化策略

我们将从基础的HiveQL优化讲起,涵盖数据存储格式选择、数据模型设计、查询执行计划优化等多个方面。会的直接滑到最后看代码和语法。 目录 引言 Hive架构概览 示例1:创建表并加载数据 示例2:优化查询 Hive查询优化 1. 选择适当的文件格…

基于springboot+vue的交通管理在线服务系统

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

苏州工业园区党工委书记沈觅一行莅临聚合数据走访调研

3月7日,市委常委、苏州工业园区党工委书记沈觅莅临聚合数据,就数字经济企业情况展开专题调研。园区党工委委员、管委会副主任邹小伟,科创区、经发委、科创委、金融局主要负责人参加调研,聚合数据董事长左磊等人接待来访。 调研组…

Transformer学习笔记(二)

一、文本嵌入层Embedding 1、作用: 无论是源文本嵌入还是目标文本嵌入,都是为了将文本中词汇的数字表示转变为向量表示,希望在这样的高维空间捕捉词汇间的关系。 二、位置编码器Positional Encoding 1、作用: 因为在Transformer的…

将 OpenCV 与 Eclipse 结合使用(插件 CDT)

返回:OpenCV系列文章目录(持续更新中......) 上一篇:将OpenCV与gcc和CMake结合使用 下一篇:OpenCV4.9.0在windows系统下的安装 警告: 本教程可以包含过时的信息。 先决条件 两种方式,一种…

数据治理之数据标准管理及实践方法

什么是数据标准?提到数据标准大家肯定会想到我们公司也有相关的产品设计的标准、质量检验的标准、安全环保的标准,对于金融企业的话,还有市场监管相关的一些标准。些标准其实都不是我们要讲的数据标准,以上的标准最多只能被称作规…

OpenCV系列文章目录(持续更新中......)

引言: OpenCV是一个开源的计算机视觉库,由英特尔公司开发并开源的一组跨平台的C函数和少量的C函数组成,用于实时图像处理、计算机视觉和机器学习等应用领域。OpenCV可以在包括Windows、Linux、macOS等各种操作系统平台上使用,具…