一、普罗米修斯容器化

普罗米修斯容器化就是在kubernetes中安装。

#1.下载普罗米修斯配置清单
[root@gdx1 ~]# git clone -b release-0.5 --single-branch https://github.com/prometheus-operator/kube-prometheus.git
正克隆到 'kube-prometheus'...
remote: Enumerating objects: 8051, done.
remote: Counting objects: 100% (2/2), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 8051 (delta 0), reused 1 (delta 0), pack-reused 8049
接收对象中: 100% (8051/8051), 4.54 MiB | 89.00 KiB/s, done.
处理 delta 中: 100% (4876/4876), done.
[root@gdx1 ~]# cd kube-prometheus/manifests/setup/
[root@gdx1 setup]# kubectl apply -f ./#2.查看
[root@gdx1 setup]# kubectl get pods -n monitoring
NAME                                   READY   STATUS    RESTARTS   AGE
prometheus-operator-848d669f6d-wpmdp   2/2     Running   0          85s#3.部署普罗米修斯
[root@gdx1 setup]# cd ..
[root@gdx1 manifests]# pwd
/root/kube-prometheus/manifests
[root@gdx1 manifests]# kubectl apply -f ./#4.做域名解析
[root@gdx1 manifests]# vim prometheus-ingress.yaml
kind: Ingress
apiVersion: extensions/v1beta1
metadata:name: prometheus-k8snamespace: monitoring
spec:rules:- host: "www.prometheus-k8s.monitoring.cluster.local.com"http:paths:- backend:serviceName: prometheus-k8sservicePort: 9090path: /
---
kind: Ingress
apiVersion: extensions/v1beta1
metadata:name: grafananamespace: monitoring
spec:rules:- host: "www.grafana.monitoring.cluster.local.com"http:paths:- backend:serviceName: grafanaservicePort: 3000path: /
[root@gdx1 manifests]# kubectl apply -f prometheus-ingress.yaml
[root@gdx1 manifests]# kubectl get pods -n monitoring   #所有全都running状态
NAME                                   READY   STATUS    RESTARTS   AGE
alertmanager-main-0                    2/2     Running   0          41m
alertmanager-main-1                    2/2     Running   0          41m
alertmanager-main-2                    2/2     Running   0          41m
grafana-5d9d5f67c4-94xp6               1/1     Running   0          41m
kube-state-metrics-7fddf8779f-8gjl5    3/3     Running   0          41m
node-exporter-9k288                    2/2     Running   0          41m
node-exporter-fkvh4                    2/2     Running   0          41m
node-exporter-v2ztd                    2/2     Running   0          41m
prometheus-adapter-cb548cdbf-pm6f9     1/1     Running   0          41m
prometheus-k8s-0                       3/3     Running   1          41m
prometheus-k8s-1                       3/3     Running   1          36s
prometheus-operator-848d669f6d-wpmdp   2/2     Running   0          47m
[root@gdx1 manifests]# kubectl get svc -n ingress-nginx
NAME                                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
ingress-nginx-controller             NodePort    10.107.30.201   <none>        80:31686/TCP,443:32703/TCP   2d21h
ingress-nginx-controller-admission   ClusterIP   10.105.78.45    <none>        443/TCP                      2d21h#5.配置主机host文件,浏览器访问
192.168.12.11 www.grafana.monitoring.cluster.local.com  www.prometheus-k8s.monitoring.cluster.local.com

二、PromQL

普罗米修斯官网连接:Query functions | Prometheus

QL顾名思义,Query language即查询语言。Prometheus作为强大的开源监控系统,最大的依赖便是PromQL。是监控数据个性化查询、展示的基础。所以要掌握Prometheus,掌握PromQL是必备的前提。

瞬时向量:包含该时间序列中最新的⼀个样本值
区间向量:⼀段时间范围内的数据

1.简单运算

1)查询5分钟以内数据

[5m]:5分钟以内的数据

#1.在主节点查看解析的域名
[root@gdx1 ~]# kubectl run test -it --rm --image=busybox:1.28.3
If you don't see a command prompt, try pressing enter.
/ # nslookup prometheus-k8s.monitoring
Server:    10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.localName:      prometheus-k8s.monitoring
Address 1: 10.110.249.255 prometheus-k8s.monitoring.svc.cluster.local#2.将http://prometheus-k8s.monitoring.svc.cluster.local:9090填入下图位置

在grafana添加普罗米修斯数据源


2)查询30分钟之前5分钟之内的数据

offset:查看多少分钟之前的数据

3)等于查询

=:等于查询

4)不等于查询

!=:不等于查询

5)正则匹配

=~:正则匹配

6)正则取反

!~:正则取反

7)计算服务器内存空闲率



[root@gdx1 ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           3155        1846         137          18        1170        1413
Swap:             0           0           0[root@gdx2 ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           1963        1205          71         109         686         714
Swap:             0           0           0[root@gdx3 ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:           1963         834          92          21        1035        1110
Swap:             0           0           0

#s:seconds 秒
#m:minutes 分
#h:hours 时
#d:days 天
#w:weeks 周
#y:years 年


2.聚合函数

1)逻辑运算

**and:和 **

or:或

unless:排除

2)函数运算

sum:求和运算

min:最小值

max:最大值

avg:平均数

3)标准差:stddev


4)标准方差:stdvar

5)统计总个数:count

6)分类计算个数:count_volues

7)求某个位置上的数:quantile [0-1之间]

8)获取最小的两个值:bottomk

9)获取最大的两个值:topk

3.二进制运算符优先级

^
*,/,%
+, -
==,!=,<=,<,>=,>
and, unless
or

4.特殊查询

1)查询某个字段

2)计算范围向量中时间序列的增加

#返回过去 5 分钟内测量的 HTTP 请求数量
increase(http_requests_total{job="api-server"}[5m])

3)计算范围向量中时间序列的每秒平均平均增长率

#返回过去 5 分钟内测量的 HTTP 请求的每秒速率
rate(http_requests_total{job="api-server"}[5m])

4)计算射程矢量中时间系列的每秒即时增长率

#返回 HTTP 请求的每秒速率,该请求在范围矢量中每个时间系列中查找两个最新的数据点最多 5 分钟
irate(http_requests_total{job="api-server"}[5m])

5)基于范围向量预测从现在开始到某个时间的资源消耗情况

#基于1天的数据推算未来4天的数据(使用简单的线性回归)
predict_linear(node_filesystem_files[1d],4*3600*24)

5.排序

1)升序

2)降序

3)创建一个新字段

6.四舍五入


三、Grafana添加普罗米修斯数据源模板




Prometheus===》普罗米修斯容器化监控、PromQL的使用、Grafana添加普罗米修斯数据源模板相关推荐

  1. 普罗米修斯容器化监控、PromQL的使用、Grafana添加普罗米修斯数据源模板

    文章目录 一.普罗米修斯容器化 二.PromQL 1.简单运算 1)查询5分钟以内数据 在grafana添加普罗米修斯数据源 2)查询30分钟之前5分钟之内的数据 3)等于查询 4)不等于查询 5)正 ...

  2. Promethus-day2-普罗米修斯容器化与PromQL

    文章目录 普罗米修斯容器化与PromQL 普罗米修斯容器化 1.下载配置清单 2.部署operator 3.部署普罗米修斯 4.配置域名访问 5.部署并解析 Prom QL 1.简单运算 2.聚合运算 ...

  3. 普罗米修斯监控linux,Prometheus(普罗米修斯)搭建监控

    Prometheus(普罗米修斯) 实验环境:(各个主机,ip,所需服务) docker01 docker02 docker03 1.10 1.20 1.30 NodeEXporter NodeEXp ...

  4. Prometheus 普罗米修斯

    Prometheus 普罗米修斯 Prometheus由go语言开发,是一套开源的监控.报警.时间序列数据库的组合.适合监控docker容器.因为Kubernetes (K8S) 的流行带动了prom ...

  5. 一篇文章搞定Prometheus普罗米修斯监控系统的部署

    Prometheus普罗米修斯监控系统 一.普罗米修斯监控概述 1.1 什么是普罗米修斯监控 二.时间序列数据 2.1 什么是序列数据 2.2 时间序列数据特点 2.3 普罗米修斯特征 三.普罗米修斯 ...

  6. 【监控】Prometheus(普罗米修斯)监控概述

    文章目录 一.监控系统概论 二.基础资源监控 2.1.网络监控 2.2.存储监控 2.3.服务器监控 2.4.中间件监控 2.5.应用程序监控(APM) 三.Prometheus 简介 3.1.什么是 ...

  7. 系统监控——prometheus(普罗米修斯)的部署

    系统监控--prometheus的部署 一.prometheus简介 1.优点 2.组件 3.架构 二.环境包准备 三.安装运行 四.网页访问 五.安装图形化界面 一.prometheus简介 pro ...

  8. Prometheus 容器化部署,配合Grafan画图工具监控节点

    Prometheus 容器化部署,配合Grafan画图工具监控节点 一.部署环境 主机名 IP地址 服务 prometheus 192.168.85.131 prometheus.grafana no ...

  9. Prometheus容器化部署,配合Grafan画图工具监控节点信息

    文章目录 Prometheus 容器化部署,配合Grafan画图工具监控节点 部署 Prometheus 部署 node_exporter 部署grafana Prometheus 容器化部署,配合G ...

最新文章

  1. 收藏 | GPU多卡并行训练总结
  2. python 获取窗口句柄_Python文件读写最详细的讲解
  3. 脑科学研究:对于学习来说,休息可能与练习同样重要...
  4. Python 实现程序的单一实例
  5. mybatis 构造查询和联合子查询问题
  6. css工程师技巧,web前端工程师必须掌握的技巧–CSS Sprites技术(附基础操作教程)...
  7. Confluence 6 附件存储提取文本文件
  8. excel中添加图片的代码
  9. cmos逻辑门传输延迟时间_什么是TTL电平、CMOS电平?区别是什么?
  10. JavaScript 数组和函数
  11. php安装zend loader,PHP5.3安装Zend Guard Loader图文教程
  12. 数组测验1 7-5 冒泡法排序 (20 分)
  13. linux终端基本操作命令
  14. 问题 L: 分糖果(candy)
  15. WeUI:专为开发微信HTML5应用的开源Web UI组件库
  16. Blender着色器:使用手绘遮罩进行材质叠加
  17. QFP PQFP LQFP TQFP封装形式及PCB详解!
  18. 将window目录挂载到Linux目录下
  19. python编写贪吃蛇游戏下载,python实现简单的贪吃蛇游戏
  20. JointJS点击选中元素高亮显示

热门文章

  1. Php部分常见问题总结 [ http://www.phpx.com/happy/top38769.html ]
  2. 传承中华文化,争做文化宣传者
  3. 智能电视“套娃式”收费背后的自我救赎
  4. mdp框架_强化学习-MDP(马尔可夫决策过程)算法原理
  5. JAVA在大数据行业为何如此重要?
  6. Android分享字符串到微信,Android 微信分享组件
  7. vc++ RTSP客户端(附源码)
  8. 如何让form表单在enter键入时不提交
  9. 数据科学/人工智能比赛解决方案汇总 2019.9
  10. 通话未接通显示无法连接服务器,未接通分析报告-20210719181140.docx-原创力文档