【云原生】Docker容器命令监控+Prometheus监控平台

news2024/9/22 19:21:42

目录

1.常用命令监控

docker ps

docker top

docker stats

2.weave scope

1.下载

2.安装

3.访问查询即可

3.Prometheus监控平台

1.部署数据收集器cadvisor

2.部署Prometheus

3.部署可视化平台Gragana

4.进入后台控制台


1.常用命令监控

docker ps

[root@localhost ~]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED          STATUS          PORTS     NAMES
30d9a0e764a3   busybox   "sh"      12 seconds ago   Up 11 seconds             busybox2
0d44a42e10dc   busybox   "sh"      17 seconds ago   Up 15 seconds             busybox1

字段含义

container id:容器的ID
images:基于创建的镜像
command:当前运行环境使用的进程
created:创建的时间
status:运行的时间
ports:映射的端口
names:容器的名称

docker top

查看指定容器内的进程

[root@localhost ~]# docker top busybox1
UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
root                2335                2314                0                   11:16               pts/0               00:00:00            sh

选项

与在Linux中运行的ps选项相同
a  显示现行终端机下的所有进程,包括其他用户的进程。
u  以用户为主的格式来显示进程状况。
x  显示所有进程,不以终端机来区分。
​
-A  显示所有进程。
-e  此参数的效果和指定"A"参数相同。
-f  显示UID,PPID,C与STIME栏位。

查看详细docker容器进程

[root@localhost ~]# docker top busybox1 aux
USER                PID                 %CPU                %MEM                VSZ                 RSS                 TTY                 STAT                START               TIME                COMMAND
root                2335                0.0                 0.0                 1320                252                 pts/0               Ss+                 11:16               0:00                sh

docker stats

动态显示容器的运行进程

查看所有容器的进程信息

[root@localhost ~]# docker stats
CONTAINER ID   NAME       CPU %     MEM USAGE / LIMIT   MEM %     NET I/O       BLOCK I/O     PIDS
30d9a0e764a3   busybox2   0.00%     56KiB / 3.686GiB    0.00%     648B / 0B     0B / 0B       1
0d44a42e10dc   busybox1   0.00%     56KiB / 3.686GiB    0.00%     1.09kB / 0B   1.18MB / 0B   1

查看容器的动态进程

[root@localhost ~]# docker stats busybox1
CONTAINER ID   NAME       CPU %     MEM USAGE / LIMIT   MEM %     NET I/O       BLOCK I/O     PIDS
0d44a42e10dc   busybox1   0.00%     56KiB / 3.686GiB    0.00%     1.09kB / 0B   1.18MB / 0B   1

字段含义

container id:容器id
name:容器名字
CPU %:CPU使用百分比
MEM USAGE/limit:容器使用的总内存,以及它允许使用的总内存
mem%:内存使用百分比
net I/O:容器通过其网络接口接收和发送的数据量
block I/O:容器从主机上的块设备写入和读取的数据量
pids:容器已经创建的进程或线程的数量

选项

-a:显示所有容器(默认显示正在运行)
--no-stream:禁用流统计,只拉取第一个结果
--no-trunc:不截断输出

2.weave scope

weave scope 的最大的特点就是会自动生成一张docker容器地图,让我们能够直观的理解,监控和控制器。

1.下载

wget https://github.com/weaveworks/scope/releases/download/v1.13.2/scope

2.安装

[root@localhost ~]# chmod +x scope 
[root@localhost ~]# ./scope launch
Unable to find image 'weaveworks/scope:1.13.2' locally
1.13.2: Pulling from weaveworks/scope
ba3557a56b15: Pull complete 
3ac4c0e9800c: Pull complete 
d052e74a4dae: Pull complete 
aacb9bf49f73: Pull complete 
06841e6f61a9: Pull complete 
ee99b95c7732: Pull complete 
dd0e726a9a15: Pull complete 
05cb5f9d0d32: Pull complete 
e956cf3e716a: Pull complete 
Digest: sha256:8591bb11d72f784f784ac8414660759d40b7c0d8819011660c1cc94271480a83
Status: Downloaded newer image for weaveworks/scope:1.13.2
458ddccb286a03b96e523e41d149ee102f6007cd55b4be179334675e5e7c311e
Scope probe started
Weave Scope is listening at the following URL(s):
  * http://192.168.2.5:4040/

3.访问查询即可

http://192.168.2.5:4040/

 

3.Prometheus监控平台

1.部署数据收集器cadvisor

[root@localhost ~]# docker run -v /:/rootfs:ro -v /var/run/:/var/run/:rw -v /sys:/sys:ro -v /var/lib/docker:/var/lib/docker:ro -p 8080:8080 -d --name cadivsor google/cadvisor
​
访问:http://192.168.2.5:8080/containers/

 

2.部署Prometheus

[root@localhost ~]# docker run -d -p 9100:9100 \
-v "/proc:/host/proc" \
-v "/sys:/host/sys" \
-v "/:/rootfs" \
--net=host \
prom/node-exporter \
--path.procfs /host/proc \
--path.sysfs /host/sys \
--collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc|rootfs/var/lib/docker/containers|rootfs/var/lib/docker/overlay2|rootfs/run/docker/netns|rootfs/var/lib/docker/devicemapper|rootfs/var/lib/docker/aufs)($$|/)"
​
Unable to find image 'prom/node-exporter:latest' locally
latest: Pulling from prom/node-exporter
aa2a8d90b84c: Pull complete 
b45d31ee2d7f: Pull complete 
b5db1e299295: Pull complete 
Digest: sha256:f2269e73124dd0f60a7d19a2ce1264d33d08a985aed0ee6b0b89d0be470592cd
Status: Downloaded newer image for prom/node-exporter:latest
WARNING: Published ports are discarded when using host network mode
795214fa2248b18fee6e6600bb567493db4be265b5c79c9445eb96020aab3578

编写Prometheus监控配置文件

[root@localhost ~]# vi prometheus.yml
# my global config
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).
​
# Alertmanager configuration
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093
​
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
​
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'
​
    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
​
    static_configs:
    - targets: ['localhost:9090','localhost:8080','localhost:9100']

主要配置文件内容

 static_configs:
    - targets: ['localhost:9090','localhost:8080','localhost:9100']
注意:填写你需要监控的cadvisor的IP地址和端口号

3.部署可视化平台Gragana

[root@localhost ~]# docker run -d -i -p 3000:3000 \
-e "GF_SERVER_ROOT_URL=http://grafana.server.name"  \
-e "GF_SECURITY_ADMIN_PASSWORD=secret"  \
--net=host \
grafana/grafana

4.进入后台控制台

http://192.168.2.5:3000/
默认用户名和密码
admin
密码:GF_SECURITY_ADMIN_PASSWORD=secret字段内容
注意:如果不指定密码为admin

1.添加Prometheus模块

2.添加docker容器监控模板

docker容器模板:193
Linux主机监控模板:9276

监控结果

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

手把手教你怎么写顺序表

目录 一、顺序表有什么功能&#xff1f; 二、实现顺序表的各个功能 1.前置准备 2.初始化顺序表 3.顺序表扩容 4.打印顺序表 5.增加顺序表成员 5.1尾增 5.2头增 6.删除顺序表中成员的内容 6.1尾删 6.2头删 7.查找成员 8.修改(替换) 9.插入(在目标位置插入成员) 10.定…

Kong Ming Qi hdu7321

Problem - 7321 题目大意&#xff1a;在(n2)*(m2)的棋盘上&#xff0c;中间摆满了n*m个棋子&#xff0c;每个棋子可以向上下左右四个方向移动&#xff0c;对于相邻的三格&#xff0c;移动前后分别为 有 有 无->无 无 有&#xff0c;问最后棋盘上最少能剩下几个棋子 1<n…

论文解读|PF-Net:用于 3D 点云补全的点分形网络

原创 | 文 BFT机器人 01 背景 从激光雷达等设备中获取的点云往往有所缺失&#xff08;反光、遮挡等&#xff09;&#xff0c;这给点云的后续处理带来了一定的困难&#xff0c;也凸显出点云补全作为点云预处理方法的重要性。 点云补全&#xff08;Point Cloud Completion&#x…

Drools用户手册翻译——第四章 Drools规则引擎(七)规则执行模式和线程安全

甩锅声明&#xff1a;本人英语一般&#xff0c;翻译只是为了做个笔记&#xff0c;所以有翻译错误的地方&#xff0c;错就错了&#xff0c;如果你想给我纠正&#xff0c;就给我留言&#xff0c;我会改过来&#xff0c;如果懒得理我&#xff0c;就直接划过即可。 drools的规则执…

HighTec 工程属性介绍2

目录 首先需要创建或导入一个工程&#xff0c;如下图&#xff1a; 有两种方式可以进入工程的属性面板&#xff1a; 选中工程&#xff0c;右键点击 Properies . 选中工程&#xff0c;按键 Alt Enter. 进入工程属性面板之后&#xff0c;左侧是书签标记&#xff0c;右侧是该书…

How to choose WIFI7 IPQ9554- WIFI6 IPQ8072? Who has the better performance?

How to choose WIFI7 IPQ9554- WIFI6 IPQ8072? Who has the better performance? The Wi-Fi standard is Wi-Fi 6, also known as 802.11ax. Wi-Fi 6 brings significant speed, capacity and performance improvements over the previous Wi-Fi 5 (802.11ac) standard. It p…

如何做好项目管理?年薪百万项目大佬一直在用这11张图!

日常工作中&#xff0c;我们会遇到各种大大小小的工作项目&#xff0c;如何能让项目保质保量的完成&#xff0c;就需要项目管理。项目管理是什么&#xff1f;一句话解释&#xff1a;在有限的时间内&#xff0c;在约束的范围中&#xff0c;集合有限资源来完成项目目标。 本周小编…

如何安装mmcv?官网解答

pip install -U openmim mim install mmcv

什么是宏变量和宏替换?

在Java中&#xff0c;宏变量和宏替换通常是与C/C预处理器相关的概念&#xff0c;而不是Java本身的特性。在Java中&#xff0c;我们通常不使用预处理器指令(例如宏定义)来进行代码替换。Java使用的编译器并不支持预处理器指令&#xff0c;因此没有宏替换的概念。 然而&#xff0…

移动硬盘文件或目录损坏且无法读取

早上插上硬盘&#xff0c;拔的时候不太规范&#xff0c;再插进去就显示无法读取了 搜了很多方法&#xff0c;很多让使用什么软件进行恢复 还参考了这个方法&#xff0c;但是我的属性打开跟博主的完全不一样 最后&#xff0c;参考移动硬盘“文件或目录损坏&#xff0c;无法读取…

[NOIP2007 普及组] 守望者的逃离

[NOIP2007 普及组] 守望者的逃离 题目背景 恶魔猎手尤迪安野心勃勃&#xff0c;他背叛了暗夜精灵&#xff0c;率领深藏在海底的娜迦族企图叛变。 题目描述 守望者在与尤迪安的交锋中遭遇了围杀&#xff0c;被困在一个荒芜的大岛上。 为了杀死守望者&#xff0c;尤迪安开始…

把一个列表拆成N个子列表的四种方法

编程的方法往往不止一种&#xff0c;比如怎么把一个Python种的列表拆成N个子列表&#xff0c;我们可以很容易找到N种方法&#xff0c;也许这就是编程的魅力所在。 一、列表表达式法 这种方法最为简洁&#xff0c;不过可读性差一些 这个方法中&#xff0c;即使原始列表的数量无…

途乐证券:美联储第11次加息 年内降息预期下降

7月26日&#xff0c;美国联邦储藏委员会主席鲍威尔在华盛顿到会记者会。新华社发 当地时刻7月26日&#xff0c;美国联邦储藏委员会一如预期加息25个基点。商场对美联储未来是否会持续加息尚未彻底构成共识&#xff0c;但对年内美联储将敞开降息周期的预期下降。 抑通胀 美联储…

24考研数据结构-队列2

目录 数据结构之队列&#xff1a;链式存储结构与循环队列链式存储结构链式队列的结构链式队列的操作 循环队列循环队列的结构循环队列的操作 链式队列与循环队列的比较结论3.2.3 队列的链式存储结构3.2.3.1定义3.2.3.2链式队列的基本操作——带头结点3.2.3.3 不带头结点的相关操…

PLC自学是否可行?

plc编程的关键是模拟原操作流程&#xff0c;通过运行程序完成控制过程。所以核心内容就是程序对流程的描述。因此&#xff0c;掌握PLC编程语言和基本功能实现是很有必要的。 PLC语言分为梯形图、语句和功能图。常用梯形图&#xff0c;适合基本逻辑描述&#xff0c;语句表适合数…

计算机网络(1) --- 网络介绍

目录 1.介绍协议 基础知识 协议 协议分层 OSI七层模型 2.TCP/IP五层模型 3.网络传输的基本流程 1.基本知识 协议报头 2.局域网通信的基本流程 3.网络传输流程 局域网分类 跨路由器传输 数据包封装和分用 4.网络中的地址管理 1.IP地址 2.MAC地址 3.区别 1.介绍…

商品分类子类新建,手机云进销存,扫码入库出库盘点开单打印

商品分类子类新建&#xff0c;手机扫码开单打印进销存&#xff0c;商贸批发生产企业仓库条码管理软件系统&#xff0c;超市便利店五金茶叶烟酒鞋帽门店零售手机收银管理软件APP_哔哩哔哩_bilibili商品分类子类新建的操作步骤。, 视频播放量 1、弹幕量 0、点赞数 0、投硬币枚数 …

Java基础---final 关键字

目录 定义&#xff1a; 用途&#xff1a; 使用注意事项&#xff1a; final 变量 final 方法 final 类 小结 定义&#xff1a; Java中&#xff0c;final 表示最终&#xff0c;也可以称为完结器&#xff0c;表示对象是最终形态的&#xff0c;不可改变的意思 用途&#xff…

springboot+mybatis多数据源的事务问题

1.springbootmybatis实现多数据源后&#xff0c;针对单个数据源我们可以使用Transactional(name"xxxTransactionManager") 来指定使用的事务管理器&#xff0c;但是如果被注解的方法需要同时支持两个事务管理器呢&#xff0c;这个时候如果用Transactional注解就不 …

设备数字化平台在制药行业数字化转型的思考与实践

近年来&#xff0c;全球制药行业正面临着数字化转型的浪潮。制药4.0的概念正引领着工业物联网、机器人流程自动化和人工智能等先进技术在制药行业的广泛应用。然而&#xff0c;尽管数字化转型在许多行业已经取得了巨大成功&#xff0c;制药行业仍然面临一些挑战。数据孤岛、人才…