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

HELM是Kubernetes生态系统中的一个软件包管理工具,专门负责管理Kubernetes应用资源,使用Helm部署Prometheus到Kubernetes集群具有多方面的优势。

背景

随着容器化技术的飞速发展,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方式:

ImG89JaH66bdd05c56f1b.png

注意:

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

wOBUAVfH66bdd07c01e6f.png

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

LwN54Xci66bdd0a0adc7c.png

检查资源对象是否成功:

35ODORvt66bdd0b5e10ed.png

a5f1YIMI66bdd0d2663fd.png

N6aJqeVJ66bdd0de55a27.png

查看开放端口:

7guS8j6566bdd0fb005c5.png

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


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

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

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

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

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

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

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

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

  • 发表于 2024-08-15 18:03
  • 阅读 ( 1904 )
  • 分类:prometheus

0 条评论

请先 登录 后评论
乐维君
乐维君

397 篇文章

作家榜 »

  1. 乐维君 397 文章
  2. YOHOHO 14 文章
  3. 机灵小和尚 13 文章
  4. 我是一只小菜鸡 12 文章
  5. 细雨闲花 11 文章
  6. 。。。 9 文章
  7. 御前侍卫张五哥 9 文章
  8. 小黄人 8 文章