首页 > 其他分享 >Prometheus部署教程——基于 HELM 方式

Prometheus部署教程——基于 HELM 方式

时间:2024-08-21 10:10:00浏览次数:9  
标签:教程 bitnami helm Prometheus master HELM Helm k8s root

作者 乐维社区(forum.lwops.cn)许远

背景

随着容器化技术的飞速发展,Kubernetes已成为企业级容器编排的事实标准。为了确保容器化应用的稳定性和性能,有效的监控和告警系统显得尤为重要。因容器监控需要,某公司拟在k8s集群中搭建prometheus,计划通过Helm进行部署。

Kubernetes原生应用程序拥有一系列YAML文件,允许用户在部署应用时自定义应用程序的一些元数据,以便于应用程序的分发。而Helm则是Kubernetes生态系统中的一个软件包管理工具,类似于Ubuntu的apt、CentOS的yum或Python的pip,专门负责管理Kubernetes应用资源,它主要作用包括应用程序封装、版本管理、依赖检查以及便于应用程序分发,使得用户能够以一种标准化和自动化的方式部署、升级和回滚应用程序。

以下是详细部署教程:

1. 安装HELM

下载二进制文件安装:

[root@k8s-master~]wget -c https://get.helm.sh/helm-v3.14.1-linux-amd64.tar.gz

[root@k8s-master ~] tar zxvf helm-v3.14.1-linux-amd64.tar.gz [root@k8s-master ~] cd linux-amd64/

[root@k8s-master linux-amd64] ls helm  LICENSE  README.md

[root@k8s-master linux-amd64] mv helm /usr/local/bin

 

#查看版本

[root@k8s-master ~] helm version

version.BuildInfo{Version:"v3.13.0",

GitCommit:"825e86f6a7a38cef1112bfa606e4127a706749b1", GitTreeState:"clean", GoVersion:"go1.20.8"}

 

#查看命令帮助

[root@k8s-master ~] helm --help

 

2. 添加仓库

 

[root@k8s-master]# helm repo add bitnami https://charts.bitnami.com/bitnami [root@k8s-master ~]# helm repo list

NAME    URL

bitnami  https://charts.bitnami.com/bitnami


 

3. 搜索应用

[root@k8s-master ~]# helm search repo bitnami | grep prometheus

 

4. 拉取应用

[root@k8s-master ~] helm pull bitnami/prometheus

 

5. 进入目录

[root@k8s-master ~] cd prometheus/

 

6. 修改value.yaml文件

修改prometheus中的value.yaml文件(prometheus/templates/下k8s构建的 资源对象,就是引用的value.yaml的值):

[root@k8s-master ~] vi value.yaml

 

修改svc资源的type方式:

 

注意:

1. 如果使用了storageclass就将文件中的storageclass改变成自己本地的storageclass的名字

2. 将svc的type改为NodePort( NodePort就是映射主机端口,进行访问用的)

3. 可以将pv的值调大点

 

7. 安装promtheus

[root@k8s-master ~] helm install 自定义应用名称 -f values.yaml  bitnami/prometheus

 

8.查看开放端口

[root@k8s-master ~] kubectl get svc

 

 

 

使用浏览器访问ip:30331即可:

 

 

检查资源对象是否成功:

 

查看开放端口:

至此,整个部署过程结束。

从部署过程看,使用Helm部署Prometheus并不复杂,甚至对比其他部署方式,

使用Helm部署Prometheus到Kubernetes集群还具有以下优势:

1.模板化和参数化:Helm使用模板化配置,允许用户在部署时自定义应用程序的参数,从而适应不同的部署需求和环境。

2.版本控制和回滚:Helm支持应用的版本管理,可以轻松回滚到先前的版本,如果新版本出现问题,增强了部署的安全性和灵活性。

3.依赖管理:Helm能够自动处理应用的依赖关系,确保所有必需的组件都能正确安装和配置,减少了手动管理依赖的复杂性。

4.安全性:Helm 3移除了服务端组件Tiller,使用Kubernetes原生的RBAC进行权限控制,简化了安全模型。

5.配置的一致性和可维护性:通过Helm管理的配置,可以确保不同环境中配置的一致性,同时便于维护和更新配置。

这些优势使得Helm成为Kubernetes集群中部署和管理Prometheus及其他应用的强大工具。

以上就是本期的全部内容,更多运维问题也欢迎到乐维社区留言提问。

 

标签:教程,bitnami,helm,Prometheus,master,HELM,Helm,k8s,root
From: https://www.cnblogs.com/lwops/p/18371004

相关文章

  • 界面控件DevExpress WinForms中文教程:Data Grid(数据网格)简介(二)
    DevExpressWinFormsDataGrid是一个高性能的UI组件,由DirectX渲染引擎提供支持。数据网格(GridControl)提供了一个灵活的基于视图的体系结构,包括许多数据塑造和UI自定义特性,数据网格可以显示和编辑来自任何大小和复杂数据源的数据。P.S:DevExpressWinForms拥有180+组件和UI库,能......
  • 产线一直在用的 RabbitMQ 搭建教程(含负载均衡配置,验证脚本,监控案例),偷偷抄出来的,建议收
    本文介绍公司一直在用的rabbitmq集群安装部署过程,版本不算太新,但一直稳定运行,对其他版本安装也有一定的参考价值,建议收藏备用。简介官网:https://www.rabbitmq.com/RabbitMQ是一个开源的遵循AMQP(AdvancedMessageQueuingProtocol)协议实现的基于Erlang语言编写,支......
  • 【vue教程】七. Vue 的动画和过渡
    文章目录往期列表回顾本章涵盖知识点Vue的内置动画系统基本的进入和离开过渡列表过渡CSS过渡CSS过渡基础Vue中的CSS过渡JavaScript动画使用JavaScript钩子第三方动画库的使用集成Animate.css实例演示创建一个简单的动画应用结语往期列表【vue教程】......
  • Prometheus部署以及问题解决
    Prometheus作用:Prometheus监控(PrometheusMonitoring)是一种开源的系统监控和警报工具。它最初由SoundCloud开发并于2012年发布,并在2016年加入了云原生计算基金会(CNCF)。Prometheus监控旨在收集、存储和查询各种指标数据,以帮助用户监视其应用程序和系统的性能和运行状态。部署流......
  • Postman中Body添加注释后请求报错问题解决【保姆级教程!!!】
    本文介绍关于Postman中Body添加注释后请求报错问题解决方法如:请求返回下述报错操作失败!系统异常,JsonParseException:Unexpectedcharacter(‘/’(code47)):maybea(non-standard)comment?(notrecognizedasonesinceFeature‘ALLOW_COMMENTS’notenabled......
  • Prometheus + Alertmanager 实现监控预警
    prometheus学习圣经Part1:使用prometheus+Grafana实现指标监控prometheus学习圣经Part2:使用prometheus+Alertmanager实现指标预警1.prometheus+alertmanager监控和告警,是孪生兄弟,监控就需要报警,没有报警的监控是不完善的。那么prometheus生态,报警究竟是怎么实现呢,告警组......
  • prometheus学习笔记之简介与安装
    一、prometheus简介1.简介Prometheus是基于go语⾔开发的⼀套开源的监控、报警和时间序列数据库的组合,是由SoundCloud公司开发的开源监控系统,Prometheus于2016年加⼊CNCF(CloudNativeComputingFoundation,云原⽣计算基⾦会),2018年8⽉9⽇prometheus成为CNCF继kubernetes......
  • go的github.com/prometheus如何在单测中校验值是否正确
    假如我的指标定义如下:MetricGroupStatGauge=prometheus.NewGaugeVec(prometheus.GaugeOpts{ Name:"test", Help:"test",},[]string{"name","age","sex"})...忽略对指标添加数据的代码那么如何取值进行校验呢?注意:GetMetricWithLabelValues(&......
  • 鸿蒙Next-支付宝SDK接入教程
    App适配鸿蒙Next,开始做支付功能了,目前来说只有支付宝支持鸿蒙Next,微信还没上架,但是支付宝官方的文档跟Demo都很老,下载官方的Demo用最新版的DevEco-Studio导入都不成功。后面在OpenHarmony三方库中心仓找到了最新的代码:https://ohpm.openharmony.cn/#/cn/detail/@cashier_alipay......
  • Prometheus监控系统
    1、Prometheus概述Prometheus是一个开源的服务监控系统和时序数据库,其提供了通用的数据模型和快捷数据采集、存储和查询接口。它的核心组件Prometheusserver会定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉取数据,新拉取到的数据会持久化到存储设备当中......