如何使用 Helm 在 K8s 上集成 Prometheus 和 Grafana|Part 1

这篇具有很好参考价值的文章主要介绍了如何使用 Helm 在 K8s 上集成 Prometheus 和 Grafana|Part 1。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本系列将分成三个部分,您将学习如何使用 Helm 在 Kubernetes 上集成 Prometheus 和 Grafana,以及如何在 Grafana 上创建一个简单的控制面板。Prometheus 和 Grafana 是 Kubernetes 最受欢迎的两种开源监控工具。学习如何使用 Helm 集成这两个工具,使您能够轻松监控 Kubernetes 集群并排除故障。您还可以更深入地了解集群的健康状况和性能,它将跟踪 Kubernetes 集群上的资源和性能指标。

 

如前所述,Prometheus 和 Grafana 是用于监控容器编排平台的流行工具。最流行的两个容器编排工具是 Docker Swarm 和 Kubernetes。第一部分将为您介绍使用 Prometheus 和 Grafana 的前提条件,了解什么是 Prometheus 和 Grafana等。

 

前提条件

要跟上本指南,你需要:

 

  • 安装 Docker:要在你的机器上安装 Docker,请查看 Docker 官方文档 https://www.docker.com/。
  • 安装 Kubectl:这可以让你与 Kubernetes 集群通信。要在本地机器上安装 Kubectl 工具,请遵循 Kubectl 官方文档指南 https://kubernetes.io/docs/tasks/tools/。
  • 掌握 Kubernetes 的基本知识:请确保你对 Kubernetes 有一定的了解。您可以阅读 Kubernetes 官方文档 https://kubernetes.io/ 来学习 K8s 相关知识。
  • 建立 Kubernetes 集群:在Kubernetes 集群上安装 Prometheus 和 Grafana。本指南将使用 Minikube (快速指南 https://minikube.sigs.k8s.io/docs/start/)。这是一个免费的本地 Kubernetes 集群。

 

什么是 Prometheus?

Prometheus 是一款开源 DevOps 工具。它为 Kubernetes 等容器编排平台提供监控和实时警报功能,以时间序列数据的形式收集和存储来自平台的指标。其次,它具有监控容器编排平台的开箱即用功能,并且是 Grafana 等其他数据可视化库的数据源。

 

Prometheus 从 Kubernetes 集群收集的指标包括:

 

  • Kubernetes 集群健康状况。
  • CPU 状态
  • 内存使用情况
  • Kubernetes 节点状态。
  • 潜在性能瓶颈报告。
  • 性能指标
  • 服务器资源

 

什么是 Grafana?

Grafana 是一款用于分析和交互式可视化的多平台、开源在线应用程序。当你将它连接到受支持的数据源(如 Prometheus)时,它能提供:

 

  • 交互式控制面板
  • 交互式图表
  • 可视化图表
  • 网络告警

 

无论数据源是什么,Grafana 都能为您查询、可视化和理解您的指标。除了 Prometheus,Grafana 还支持其他几个数据源,例如:

 

  • InfluxDB
  • AzureMonitor
  • Datadog
  • Graphite
  • AWS CloudWatch。
  • PostgreSQL
  • Microsoft SQL Server (MSSQL)。
  • Elasticsearch
  • Google Cloud Monitoring
  • MySQL
  • Alertmanager
  • Loki

 

您可以选择从头开始创建控制面板,或者导入 Grafana 已经提供的控制面板,并对其进行定制以满足您的需求。大多数 DevOps 专业人员都使用 Grafana 和 Prometheus 来创建具有数据可视化控制面板的强大时序数据库。

 

在这里,我们将创建一个仪表板,用于可视化从 Prometheus 数据源收集的指标。

 

Prometheus 的架构

下图显示了 Prometheus 的组件和工作原理:

 

如何使用 Helm 在 K8s 上集成 Prometheus 和 Grafana|Part 1

 

这些都是 Prometheus 的组件:

 

  • Prometheus Server是 Prometheus 架构的核心组件。它是实际监控工作进行的地方。
  • Alertmanager 通过电子邮件和其他通信渠道(如 Slack)向用户发送告警。
  • Pushgateway 可支持临时任务。它允许用户将时间序列数据推送到 Prometheus 目标。它还能处理短期任务的指标。

 

Prometheus 服务器可进一步分为三个组件:

 

  • Data Retrieval Worker 从容器编排平台中抓取并收集度量数据。然后,它将指标转换为时间序列数据。它从许多来源收集指标,这些来源在其设置中指定。
  • Time Series Database 存储来自数据检索组件的时间序列数据。
  • HTTP Server 响应时间序列数据的请求和 PromQL 查询。然后,它将信息显示在网络用户界面或仪表板上。它既可以使用 Grafana 等第三方平台,也可以使用内置的 Prometheus Web UI。

 

设置 Prometheus 和 Grafana 以监控容器编排平台的好处

设置 Prometheus 和 Grafana 进行监控能给我们带来很多好处:

 

  • 可以获得一套完整的端到端解决方案,用于观察和监控 Kubernetes 集群。
  • 可以使用 Prometheus PromQL 查询语言查询指标。
  • 如果你有一个微服务架构,Prometheus 会同时跟踪你的所有微服务。
  • 当某个服务出现故障时,会立即发出警报。
  • Grafana 仪表盘提供集群的性能和健康状况报告。

 

在 Kubernetes 上集成 Prometheus 和 Grafana 时,开发人员普遍采用两种方法:

 

  • 手动 Kubernetes 部署:在这种方法中,开发人员需要编写 Kubernetes 部署和服务 YAML 文件。需要为 Prometheus 和 Grafana 应用程序编写 YAML。在 YAML 文件中,指定在 Kubernetes 上集成 Prometheus 和 Grafana 的所有配置。然后,把这些文件部署到 Kubernetes 集群,以便 Prometheus 和 Grafana 正常工作。不过这种方法的弊端是开发人员可能会有很多 YAML 文件,这对大多数 DevOps 实践者来说都是令人厌烦的。如果在任何 YAML 文件中出错,将无法在 Kubernetes 上集成 Prometheus 和 Grafana。

  • 使用 Helm:这是将应用容器部署到 Kubernetes 的最简单易行的方法。Helm 是 Kubernetes 的官方软件包管理器。有了 Helm,你可以简化 Kubernetes 应用程序的安装、部署和管理。Helm 将 Kubernetes 应用程序打包并捆绑到 Helm Chart中。

 

Helm Chart是所有 YAML 文件的集合:

 

  • 部署
  • 服务
  • 密钥
  • ConfigMaps Manifests

 

您将使用这些文件把应用容器部署到 Kubernetes。Helm 允许用户下载已有清单 YAML 文件的 Helm Chart,而不是为每个应用容器创建单独的 YAML 文件。文章来源地址https://www.toymoban.com/news/detail-760245.html

到了这里,关于如何使用 Helm 在 K8s 上集成 Prometheus 和 Grafana|Part 1的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • k8s集群部署Prometheus和Grafana

    参考https://zhaoll.blog.csdn.net/article/details/128155767 创建pvc 创建RBAC 创建Prometheus的configmap,也就是配置文件 创建Prometheus的sts和svc metrics文件 四、部署node_exporter 创建pvc 创建RBAC 创建sts和svc: 六、部署alarm 创建PVC 创建ConfigMap 注意替换里面的企业微信信息 创建Deploy和svc 配置告警规

    2024年02月12日
    浏览(43)
  • k8s集群监控cadvisor+prometheus+grafana部署

    目录 1.新建命名空间monitor 2.部署 2.1部署cadvisor 2.2部署node_exporter 2.3部署prometheus 2.4部署rbac权限 2.5.部署 metrics 2.6部署grafana 3.测试监控效果 参考文章: k8s集群部署cadvisor+node-exporter+prometheus+grafana监控系统 - cyh00001 - 博客园 准备工作: Cluster集群节点介绍: master:192.168.136.21(以

    2024年01月16日
    浏览(60)
  • Kubernetes(k8s)上安装Prometheus和Grafana监控

    当然前提环境是你得先有一个Kubernetes集群,版本在v1.21.*~v1.27.*之间,当然我已经准备好了Kubernetes: 可以看到我准备的Kubernetes版本为1.21.14的,符合要求。本篇文章也以这个版本来进行安装,上面提到的版本安装步骤和这个版本大体相同,按照步骤来即可。 因为在Kubernetes上安

    2024年02月10日
    浏览(142)
  • 外独立部署Prometheus+Grafana+Alertmanager监控K8S

    用集群外的prometheus来监控k8s,主要是想把监控服务跟k8s集群隔离开,这样就能减少k8s资源的开销。 CentOS Linux release 7.7.1908 (Core)  3.10.0-1062.el7.x86_64  Docker version 20.10.21 主机名 IP 备注 prometheus-server.test.cn 192.168.10.166 k8s集群 192.168.10.160:6443 集群master-vip 需要通过exporter收集各种维

    2024年02月08日
    浏览(55)
  • k8s入门:kube-prometheus-stack 全家桶搭建(Grafana + Prometheus)

    系列文章 第一章:✨ k8s入门:裸机部署 k8s 集群 第二章:✨ k8s入门:部署应用到 k8s 集群 第三章:✨ k8s入门:service 简单使用 第四章:✨ k8s入门:StatefulSet 简单使用 第五章:✨ k8s入门:存储(storage) 第六章:✨ K8S 配置 storageclass 使用 nfs 动态申领本地磁盘空间 第七章:

    2024年02月08日
    浏览(60)
  • 【Minikube & Prometheus】基于Prometheus & Grafana监控由Minikube创建的K8S集群

    通过运行以下命令来检查状态 由于使用的是 Minikube,第二个命令 prometheus-server 使用 NodePort . 这样,当 Pod 准备就绪时,就可以轻松访问 Prometheus Web 界面: http://192.168.20.20:30944/targets 由于使用的是 Minikube,为了轻松访问 Grafana 的 Web 界面,将该服务公开为 NodePort 。 注意: Gr

    2024年02月03日
    浏览(185)
  • Prometheus+Grafana(外)监控Kubernetes(K8s)集群(基于containerd)

    1、k8s环境 版本 v1.26.5 二进制安装Kubernetes(K8s)集群(基于containerd)—从零安装教程(带证书) 主机名 IP 系统版本 安装服务 master01 10.10.10.21 rhel7.5 nginx、etcd、api-server、scheduler、controller-manager、kubelet、proxy master02 10.10.10.22 rhel7.5 nginx、etcd、api-server、scheduler、controller-manager、kubel

    2024年02月16日
    浏览(55)
  • K8s部署Prometheus+grafana+alertmanager报警监控系统(持续更新)

    自行准备一套k8s集群,如果不知道怎么搭建,可以参考一下我之前的博客 https://blog.csdn.net/qq_46902467/article/details/126660847 我的k8s集群地址是: k8s-master1 10.0.0.10 k8s-node1 10.0.0.11 k8s-node2 10.0.0.12 一、安装nfs服务 二、安装nfs客户端 三、部署Prometheus 四、部署grafana 五、部署alertmanage

    2023年04月24日
    浏览(63)
  • k8s集群监控方案--node-exporter+prometheus+grafana

    目录 前置条件 一、下载yaml文件 二、部署yaml各个组件 2.1 node-exporter.yaml 2.2 Prometheus 2.3 grafana 2.4访问测试 三、grafana初始化 3.1加载数据源 3.2导入模板 四、helm方式部署 安装好k8s集群(几个节点都可以,本人为了方便实验k8s集群只有一个master节点),注意prometheus是部署在k8s集群

    2024年02月12日
    浏览(55)
  • k8s集群监控及报警(Prometheus+AlertManager+Grafana+prometheusAlert+Dingding)

    k8s集群部署后,急需可靠稳定低延时的集群监控报警系统,报警k8s集群正常有序运行,经过不断调研和测试,最终选择Prometheus+AlertManager+Grafana+prometheusAlert的部署方案,故障信息报警至钉钉群和邮件,如需要额外监控可部署pushgateway主动推送数据到Prometheus进行数据采集 Promet

    2024年02月08日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包