k8s部署Prometheus抓取pods的metrics

2023-11-20

1.暴露pods给Prometheus抓取

spec:
  replicas: __app_replicas__
  template:
    metadata:
      annotations:
        prometheus.io/scrape: 'true'
        prometheus.io/path: '/metrics'
        prometheus.io/port: '9146'

2.部署Prometheus

---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRole
metadata:
  name: prometheus
rules:
- apiGroups: [""]
  resources:
  - nodes
  - nodes/proxy
  - services
  - endpoints
  - pods
  verbs: ["get", "list", "watch"]
- apiGroups:
  - extensions
  resources:
  - ingresses
  verbs: ["get", "list", "watch"]
- nonResourceURLs: ["/metrics"]
  verbs: ["get"]
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:
  name: prometheus
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: prometheus
subjects:
- kind: ServiceAccount
  name: default
  namespace: default
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: prometheus
  labels:
    app: prometheus
spec:
  replicas: 1
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: prometheus
    spec:
      serviceAccountName: default
      containers:
      - name: prometheus
        image: image.url
        command:
        - "/bin/prometheus"
        ports:
        - containerPort: 9090
        args:
        - "--config.file=/etc/prometheus/prometheus.yml"
        - "--storage.tsdb.path=/prometheus"
        - "--storage.tsdb.retention.time=24h"
        volumeMounts:
        - mountPath: /etc/prometheus/
          name: config-volume
      restartPolicy: Always
      volumes:
      - name: config-volume
        configMap:
          name: prometheus-configuration
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: prometheus-configuration
data:
  prometheus.yml: |-
    global:
      scrape_interval:     5s
      external_labels:
        monitor: 'my-monitor'
    scrape_configs:
    - job_name: 'kubernetes-pods'
      kubernetes_sd_configs:
      - role: pod
      relabel_configs:
      - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
        action: keep
        regex: true
      - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
        action: replace
        target_label: __metrics_path__
        regex: (.+)
      - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
        action: replace
        regex: ([^:]+)(?::\d+)?;(\d+)
        replacement: $1:$2
        target_label: __address__
      - action: labelmap
        regex: __meta_kubernetes_pod_label_(.+)
      - source_labels: [__meta_kubernetes_pod_name]
        action: replace
        target_label: pod_name
      - regex: '(controller_revision_hash|job)'
        action: labeldrop
      - source_labels: [name]
        regex: '.*/(.*)$'
        replacement: $1
        target_label: webapp
---
apiVersion: v1
kind: Service
metadata:
  name: prometheus
spec:
  type: NodePort
  ports:
  - port: 9090
    targetPort: 9090
    nodePort: 31090
  selector:
    app: prometheus
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

k8s部署Prometheus抓取pods的metrics 的相关文章

随机推荐

  • 论文笔记:Swin Transformer: Hierarchical Vision Transformer using Shifted Windows

    cvpr2021 0 abstract Transformer 从NLP迁移到CV 会遇到两个挑战 语义物体 人 车 的尺寸有大有小 如果是像素级别的Transformer 那么resolution太大 为了解决上述的两个挑战 提出了swi
  • buck降压斩波电路

    文章目录 前言 1 斩波电路概述 2 Buck 降压斩波电路的理论计算 3 Buck 降压斩波电路的仿真 总结 前言 Buck 降压斩波器是实际使用数量最多的一类斩波电路 也是各大厂商开关电源芯片中种类最多一类 降压斩波电路的原理也相对易于
  • 超详细Hexo+Github Page搭建技术博客教程

    超详细Hexo Github Page搭建技术博客教程 前言 准备环境 安装 Hexo 注册 Github 配置 SSH key 部署到 Github 开始写作 SEO优化 代码同时部署到 coding 百度提交链接 百度站长平台添加网站管
  • Android JVM 原理简析

    当我们在开发 Android 应用程序时 我们实际上是在使用 Java 编程语言编写代码 并将其编译为在 Android 上运行的字节码 这些字节码最终在 Android 设备上的 Java 虚拟机 JVM 中执行 Android JVM的
  • android10官方支持机型,Andorid10.0支持哪些手机?附安卓10支持机型介绍

    Andorid10 0支持哪些手机 附安卓10支持机型介绍 2019 03 12 09 58 24 来源 qqtn com 扫码可以 1 在手机上浏览 2 分享给微信好友或朋友圈 摘要 Andorid10支持手机型号目前正在逐渐公布 许多小
  • c#窗体开发俄罗斯方块小游戏

    在个人电脑日益普及的今天 一些有趣的桌面游戏已经成为人们在使用计算机进行工作或学习之余休闲娱乐的首选 而俄罗斯方块游戏是人们最熟悉的小游戏知益 它趣味性极强 变化无穷 易上手等诸多特点得到了大众的认可 此外对运动的方块进行组合 可以训练玩家
  • Session&Cookie&token

    一 Session 什么是Session 服务器为了保存用户状态而创建的一个特殊的对象 当浏览器第一次访问服务器时 服务器创建一个session对象 该对象有一个唯一的id 一般称之为sessionId 服务器会将sessionId以coo
  • 原创的 20 个 Python 自动化案例,一口一个,高效办公!

    导读 大家好 自从 发布第一篇 Python 办公自动化办公系列文章以来 目前已经马不停蹄的更新了 20 个案例 累计阅读超 10W 为了方便大家阅读学习 我将这二十个案例再次进行分类汇总 内容涵盖 Python 操作Word Excel
  • electron添加SQLite数据库

    序 在之前 我曾经使用electron开发过一个番茄钟应用 但是当时的应用数据存储是在JSON文件当中 通过node的fs文件系统进行读写的 但是感觉不用数据库总有点不太专业 所以还是打算使用数据库来作为存储的地方 不过数据库的选择就多了
  • html效果总结记录

    自动换行 style word break break all 改变布局或者显示文字 在html中插入如下类似代码
  • html5 图片下拉加载动画效果,HTML5和CSS3炫酷彩色loading加载动画特效

    这是一款HTML5和CSS3炫酷彩色loading加载动画特效 该loading加载动画特效共15种动画效果 它们分别通过div盒子或svg元素 配合CSS3来制作loading动画效果 使用方法 HTML结构 第一种loading加载动画
  • MySQL基本操作四:数据的查询

    之前我介绍了MySQL中 数据记录的增 删 改操作 本文我们看查询操作 为方便后面举例 还是先建立一个表 并插入一些数据 我在这里依旧建立一个学生信息表 建表的代码如下 CREATE TABLE tab student StuID CHAR
  • linux docker 基础命令

    docker常用命令 docker ps 显示所有的操作命令集合列表 docker login container registry oracle com 登录官方远程docker私有仓库 docker login username tes
  • spss练习数据_SPSS篇——数据的筛选

    前言 我们知道 在做数据分析时 经常要对数据库中的个案进行选择性的分析 由此排除一些数据 那么该如何利用SPSS进行数据的筛选呢 Step 1 打开SPSS 打开 数据 选择个案 Step 2 选择个案 对话框右侧 选择 栏有5个选项 所有
  • 云计算入门基础命令行

    严重声明 本人支持一切正规软件开发行为 接受知识付费理念 并坚决抵制盗版行为 用于学习交流的非盈利目的的 且法律允许且支持的条件下 可以进行相关文件交流 他人利用交流文件进行非法售卖等一切违法犯罪行为 本人概不负责 分享的网页链接能保证截止
  • Dynamics CRM online 添加附件

    1 创建一个字段 类型为文件 2 通过PoweApps将该字段添加到Form表单上
  • ESP8266上电时串口打印乱码原因和发送AT指令串口返回信息含义

    因为esp8266模块上电时 默认打印波特率为74880 其固件中通信与串口默认为115200 所以如果把串口设置为74880 之后再上电模块打印的信息就不会有乱码了 但AT指令默认通信波特率是115200 如果在使用AT通信时 在调到11
  • Docker 容器迁移

    1 把容器打包成镜像 docker commit m 描述 a 作者 CONTAINER ID 新的镜像名 docker commit m my rabbitmq a eric a922049125c4 rabbitmq my 1 0 2
  • QT 改编官方example QQuickView实现QQuickWidgt示波器

    先找到官方实例 将官方实例的QML文件全部搞到自己的资源中 pro中加入这个 DISTFILES 刚刚的QML文件路径 qml 还有这个 QT core gui quickwidgets QT qml 将官方的datasource cpp
  • k8s部署Prometheus抓取pods的metrics

    1 暴露pods给Prometheus抓取 spec replicas app replicas template metadata annotations prometheus io scrape true prometheus io p