Kubernetes运行监控-使用Helm快速部署Prometheus和Grafana

2023-05-16

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Kubernetes运行监控-使用Helm快速部署Prometheus和Grafana

使用Helm快速部署Pormetheus和Grafana非常方便,很多手工部署的方法不再需要了。

Kubernetes运行监控分为宿主机、容器以及Kubernetes集群的Node、Deployment、Replicaset、Storage、Pod、Service等数量和状态等方面,可以使用Heapster+Influxdb+Grafana的组合,或者使用Prometheus + Grafana的组合,传统的ELK方案无法穿透集群、而且集中于离线的方式不太适合Kubernetes中应用。

这里重点介绍KPG(Kubernetes+Prometheus+Grafana)的监控方案,功能全面、指标详细、模版丰富,更重要的是可以直接运行在Kubernetes集群之中。目前,Prometheus和Grafana部署都支持Helm了,安装非常方便。

简介

Prometheus主要用于度量指标的产生和收集,可以即时查询各种系统指标并以曲线图、表方式展示。Grafana提供图表化的监控面板,可以直接访问Prometheus产生的数据源并组装为可视化面板,支持监控面板的定制、保存和共享,需要与Prometheus配合起来使用。目前,已经有大量的Kubernetes监控面板面板模版可以使用,可以从https://grafana.com上下载或直接import进来使用,非常快捷。

  • Prometheus的Helm Chart,https://github.com/openthings/helm-charts/tree/master/stable/prometheus
  • Prometheus非官方中文手册,https://github.com/openthings/prometheus
  • Grafana的Helm Chart,https://github.com/openthings/helm-charts/tree/master/stable/grafana
  • 本文地址 https://my.oschina.net/u/2306127/blog/1828656,by openthings, 2018.06.12.
  • 安装脚本(非自动化,需要自行修改参数后使用)
    • https://github.com/openthings/kubernetes-tools/tree/master/monitor

1、准备存储卷

参考“基于Kubernetes的容器存储系统”(https://my.oschina.net/u/2306127/blog/1822634)中的方法创建虚拟存储系统,创建StorageClass或者PVC,为监控系统所用。

Prometheus支持StorageClass方式指定存储系统,安装时系统自动产生pv卷。或者指定现存的pvc进行重用。

2、安装Prometheus

可以从helm的远程chart库直接安装,或者将该chart拷贝到自己的目录,修改参数后安装。

直接安装

指定storageClass为nfs,自动产生pv:

helm install --namespace monitor --name prometheus stable/prometheus \
  --set alertmanager.persistentVolume.storageClass="nfs" \
  --set server.persistentVolume.storageClass="nfs"

更多的参数,可以参考:

  • Prometheus的Helm Chart,https://github.com/openthings/helm-charts/tree/master/stable/prometheus

这里为了管理方面,我们将其安装在Kubernetes的命名空间monitor中,同时命名实例版本为prometheus,安装完毕后运行 helm list 即可列出。

本地安装

如果复制到本地,可以直接修改参数,进去目录将values.yaml里的参数修改后运行helm即可,如:

helm install --namespace monitor --name prometheus ./prometheus
  • 注意
    • 跟上面的网络安装一样,alertmanager和server的storageClass参数需要分别指定。
    • storageClass或者pv的指定是必须的,如果没有指定,运行helm install会失败。

映射服务

缺省的服务安装为ClusterIP,端口9090。需要通过port-forward映射出来(grafana运行在集群上,可以直接访问的),集群外面才可以访问。如下所示:

export POD_NAME=$(kubectl get pods --namespace monitor -l "app=prometheus,component=server" -o jsonpath="{.items[0].metadata.name}")

kubectl --namespace monitor port-forward $POD_NAME 9090

然后浏览器打开 http://127.0.0.1:9090就可以访问Prometheus的主界面了。

3、安装Grafana

远程安装

方法与Prometeheus基本一样,我们将其安装到同一个命名空间monitor中。如下:

helm install  --namespace monitor --name grafana stable/grafana \
  --set persistence.storageClassName="nfs"

更多的参数,可以参考:

  • Grafana的Helm Chart,https://github.com/openthings/helm-charts/tree/master/stable/grafana

获取admin密码:

kubectl get secret --namespace monitor grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo

本地安装

也可以复制chart到本地,修改参数后安装,如下:

helm install  --namespace monitor --name grafana ./grafana

映射服务

export POD_NAME=$(kubectl get pods --namespace monitor -l "app=grafana" -o jsonpath="{.items[0].metadata.name}")
     kubectl --namespace monitor port-forward $POD_NAME 3000
  • 注意
    • 我这里去掉了prometeus里的component筛选项,有的文档说要加上是有问题的,因为目前的这个版本chart并没有这个选项,会导致列表项为空而出错。
    • 也可以修改service的网络类型为nodeip,集群外就可以直接访问了,不需要端口映射。或者使用其他的代理来访问,不过需要注意安全性问题,不要把服务地址暴露到因特网上。

4、使用监控面板

现在,可以使用浏览器打开 http://127.0.0.1:3000,看到Grafana的面板界面。首先创建prometheus的数据源,注意里面的ip地址为prometheus的service地址(ClusterIP),不是主机地址。然后创建Dashboard即可。

选取“+”图标,import进去kubernetes-tool/monitor/dashboard下的面板json文件,或者直接import一个  https://grafana.com上的模版,即可看到监控面板的情况(有的有一些问题,需要自行试验、选择)。也可以自己设计面板、然后保存起来,或者分享给别人使用。

 

转载于:https://my.oschina.net/u/2306127/blog/1828656

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kubernetes运行监控-使用Helm快速部署Prometheus和Grafana 的相关文章

  • 关于LINUX的NVIDIA显卡驱动安装

    LINUX 中已经集成了一些组件的相关驱动 xff0c 但是随着机器相关组件芯片不断更新 xff0c 相应的驱动程序也在不断的更新 xff0c LINUX 中集成的驱动程序难免有些不能满足需要 xff0c 其最突出的问题 xff0c 莫过于
  • 性能专题

    if与switch 当多个条件语句判断时 xff0c switch比多个if语句的性能高 转载于 https www cnblogs com lanchong archive 2011 11 03 2234180 html
  • 自制户外登山地图傻瓜书(转载)

    自制户外登山地图傻瓜书 2009 02 19 灰羊羊 转载请注明出处 第一章 前言 大概4年前喜欢上了户外运动 xff0c 从此一发不可收拾 xff0c 07年初买了一个GPS xff0c 最初只是为了避免在山中迷路 xff0c 随着使用的
  • 文件加密和解密 - 密钥存储

    当我们想要做一次加密系统 xff0c 或者只是有一个关于这个问题 xff0c 它是如何保存的加密和解密密钥 一般认为想要的文件加密和解密 xff0c 对称算法用于 一般是AES要么DES 这就存在密钥管理的问题 xff0c 它是如何 xff
  • spring mvc绑定复杂对象报错“Could not instantiate property type [com.ld.net.spider.pojo.WorkNode] to auto-gro...

    解决方法之一 xff1a 1 确保所有的Pojo都包含了默认的构造器 xff1b
  • Docker容器 暴露多个端口

    1 创建容器是指定 docker run p lt host port1 gt lt container port1 gt p lt host port2 gt lt container port2 gt 2 修改dockerfile ex
  • 巴特沃斯(Butterworth)滤波器 (1)

    下面深入浅出讲一下Butterworth原理及其代码编写 1 首先考虑一个归一化的低通滤波器 xff08 截止频率是1 xff09 xff0c 其幅度公式如下 xff1a 当n gt 时 xff0c 得到一个理想的低通滤波反馈 xff1c
  • 用预训练的densenet121模型训练cifar10数据集

    densenet121采用pytorch预训练模型 xff0c 这里用cifar10作为数据集 import torchvision models as models import ssl ssl create default https
  • Ubuntu环境下安装DBoW2

    简介 DBoW2 is an improved version of the DBow library an open source C 43 43 library for indexing and converting images in
  • java如何将二进制转换为十进制

    1 使用java内部提供的方法 xff0c 直接进行api的调用 public static void binaryTodecimal2 int n String res 61 Integer toBinaryString n System
  • Spring Cloud Feign 请求动态URL

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 1 FeignClient 中不要写url 使用 64 RequestLine 修饰方法 2 调用地方必须引入 FeignClientConfiguration 必须有De
  • 折半查找:查找成功的最少/多次数、平均次数,查找不成功的最少/多次数、平均次数...

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 最方面的方法是建立一个判定树 现在有11个数 xff1a xff08 第1行是索引 xff0c 第2行是数 xff09 0 1 2 3 4 5 6 7 8 9 10 7 1
  • 关于maven打包 “程序包com.sun.deploy.net不存在” 的问题

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 关于maven打包 程序包com sun deploy net不存在 的问题 遇到问题如下 xff1a INFO payGateway 1 0 SNAPSHOT SUCCE
  • 印度理工学院有多难考?

    http app myzaker com news article php pk 61 599546401bc8e08604000085 印度理工学院有多难考 xff1f 何赟08 17 原文是六月高考季时给公众号 34 中印对话 34 x
  • iOS系统下 的手机屏幕尺寸 分辨率 及系统版本 总结

    今天 我对iOS系统下 的手机屏幕尺寸 分辨率 及系统版本做了一次系统总结 供大家参考 首先 是系统 xff1a 随着iOS 系统不断升级 xff0c 现在已经到iOS7 0了 xff0c 并且TA有了很多新变化 xff0c 最震撼的就是
  • android ViewFlipper的使用

    屏幕切换指的是在同一个Activity内屏幕见的切换 xff0c 最长见的情况就是在一个FrameLayout内有多个页面 xff0c 比如一个系统设置页面 xff1b 一个个性化设置页面 通过查看 OPhone API文档可以发现 xff
  • Linux下路由配置梳理

    在日常运维作业中 xff0c 经常会碰到路由表的操作 下面就linux运维中的路由操作做一梳理 xff1a 先说一些关于路由的基础知识 xff1a 1 xff09 路由概念 路由 xff1a 跨越从源主机到目标主机的一个互联网络来转发数据包
  • ASP.NET成员角色系列(一)--验证与授权入门

    在当今的信息世界里 无论是门户网站 电子商务 社区论坛 都有一个共性 它们通常都需要验证当前用户的身份并根据验证结果判断用户所具有的权限 例如博客园 它允许未注册的匿名用户可能查看帖子 但是不允许他们发表帖子 为了能够发表帖子 匿名用户必须
  • 老赵谈IL(4):什么时候应该学IL,该怎么学IL

    又是一个拖了半年的系列 xff0c 可能是前几篇主要以事实为准 xff0c 举例子的文章总是比较容易写的 xff0c 因此十分顺畅 而最后一篇打算做一个总结 xff0c 以讲道理为主 却发现该将的似乎都已经讲完了 不过做事要有始有终 xff
  • FreeRTOS的第一个任务是怎么跑起来的

    一 一般在程序末尾会有一个vTaskStartSheduler 函数 span class hljs keyword int span main span class hljs keyword void span BSP INIT Bina

随机推荐

  • STM32-正弦波可调(50HZ~20KHZ可调、峰峰值0~3.3V可调)

    1 原理 通过定时器每隔一段时间触发一次DAC转换 然后通过DMA发送正玄波码表值给DAC 当需要改变频率HZ 时 只需要修改定时器频率 即可 最高只能达到20KHz 当需要改变 正玄波的正峰峰值 负峰峰值 时 只需要修改正玄波码表 即可
  • .Net ASP.NET 打开指定文件夹

    比如要打开指定的文件夹 xff0c 而不是弹出对话框 System Diagnostics Process Start 64 34 D 34 这样就打开了D盘 和正常打开D盘是一样的
  • 几种更新(Update语句)查询的方法

    正 文 数据库更新就一种方法Update xff0c 其标准格式 xff1a Update 表名 set 字段 61 值 where 条件 只是依据数据的来源不同 xff0c 还是有所差别的 xff1a 1 从外部输入 这样的比較简单 例
  • mysql8.0.13 cmd 登陆报错

    今天打算配置一个php运行环境 xff0c 将php mysql apache依次下载好 xff0c 我首先安装的是mysql xff0c 安装过程很顺利 xff0c 在cmd输入mysql uroot p的时候 xff0c 我靠 xff0
  • vue移动端的自适应布局的两种解决方案

    目标 前端开发移动端及H5时候 xff0c 不需要再关心移动设备的大小 xff0c 只需要按照固定 设计稿的px值布局 基础知识 dpr xff08 设备像素比 xff09 css的像素px不等于设备像素 分辨率 各种值 xff0c css
  • 对单片机数码管显示段选位选的理解

    在51单片机的数码管的应用开发中一些小的细节还是应该注意到的 其中位选信号应该在段选之前打开 xff0c 下面是一段示例代码 xff08 我用的是国信长天开发板 xff09 xff1a include lt reg51 h gt 包含51单
  • http请求中get请求可以缓存和post请求不可缓存

    2019独角兽企业重金招聘Python工程师标准 gt gt gt GET请求后退 刷新无害 xff0c POST后退 刷新则会导致重新提交数据 GET书签可被收藏 POST为书签不可收藏 GET能被缓存 POST不能被缓存 GET编码类型
  • VMWare中虚拟机(CentOS)如何开启虚拟化功能

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 需求说明 xff1a VMware版本如下示 xff0c 在此VMware上创建了虚拟机并安装了CentOS6 5系统 现在需要在此客户机 xff08 VM xff09 上
  • C# 常见的错误类型

    Exception 应用程序执行期间发生错误 SystemException 系统异常 所有Exception的基类 ArgumentException 当方法提供的任意一个参数无效时 xff0c 引发此异常 ArithmeticExcep
  • 字典树 trie树 学习

    一字典树 字典树 xff0c 又称单词查找树 xff0c Trie树 xff0c 是一种树形结构 xff0c 哈希表的一个变种 二 性质 根节点不包含字符 xff0c 除根节点以外的每一个节点都只包含一个字符 xff1b 从根节点到某一节点
  • 《Linux 内核完全注释》阅读笔记

    在阅读源代码之前 xff0c 有必要对Linux内核的体系结构 源代码的目录结构有个宏观地了解 xff0c Linux内核完全注释 非常详细地介绍了这方面的内容 xff0c 所以 这里仅仅进行概述性的讨论 xff0c 以便让所有的笔记构成一
  • 抽象工厂模式(C++)

    define win 0 define mac 1 include lt iostream gt using namespace std class button public button virtual button virtual v
  • 大智慧显示切换服务器,大智慧怎么改界面 大智慧改界面教程

    很多软件的界面都可以根据每个用户不同的需求进行定制 xff0c 大智慧炒股软件也是如此 在大智慧的版面设计功能中 xff0c 用户可以将几十种不同功能的窗口自由组合摆放 xff0c 直到配置出满意的界面 大智慧的版面设计可以建立分析功能窗口
  • threadx将linux作为进程,如何在Windows操作系统上模拟ThreadX应用程序

    是的 xff0c 你可以的 xff0c 如果你愿意投入的工作 首先观察到每个线程系统调用都有一个等价的posix调用 xff0c 除了事件 因此 xff0c 您的线程程序可以使用posix线程 xff0c 互斥锁等作为单个进程运行 事件可以
  • STL"源码"剖析-重点知识总结

    STL是C 43 43 重要的组件之一 xff0c 大学时看过 STL源码剖析 这本书 xff0c 这几天复习了一下 xff0c 总结出以下LZ认为比较重要的知识点 xff0c 内容有点略多 1 STL概述 STL提供六大组件 xff0c
  • inter处理器(CPU)的分类

    对于台式机和笔记本电脑 xff0c 最常见的是酷睿 奔腾和赛扬系列 xff0c 同代产品中他们的性能依次减弱 xff0c 酷睿最强 xff0c 奔腾次之 xff0c 赛扬最弱 xff08 酷睿 gt 奔腾 gt 赛扬 xff09 对于智能手
  • 利用iftop查看网络带宽使用情况

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 利用iftop查看服务器实时流量 yum install y gcc flex byacc libpcap ncurses ncurses devel libpcap de
  • matlab程序改为m文件名,在MATLAB中,程序文件的扩展名为.m,所以程序文件也称为M文件...

    在MATLAB中 xff0c 程序文件的扩展名为 m xff0c 所以程序文件也称为M文件 答 xff1a 磷酸果糖激酶 2催化6 磷酸果糖生成的产物是 答 xff1a 2 xff0c 6 二磷酸果糖 人类行为的经济学分析 的作者是 答 x
  • 学习ASP.NET Core Razor 编程系列十八——并发解决方案

    学习ASP NET Core Razor 编程系列目录 学习ASP NET Core Razor 编程系列一 学习ASP NET Core Razor 编程系列二 添加一个实体 学习ASP NET Core Razor 编程系列三 创建数据
  • Kubernetes运行监控-使用Helm快速部署Prometheus和Grafana

    2019独角兽企业重金招聘Python工程师标准 gt gt gt Kubernetes运行监控 使用Helm快速部署Prometheus和Grafana 使用Helm快速部署Pormetheus和Grafana非常方便 xff0c 很多手