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

作者 乐维社区(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

  1. 添加仓库

[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

  1. 搜索应用
    [root@k8s-master ~]# helm search repo bitnami | grep prometheus

  2. 拉取应用
    [root@k8s-master ~] helm pull bitnami/prometheus

  3. 进入目录
    [root@k8s-master ~] cd prometheus/

  4. 修改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的值调大点

  4. 安装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及其他应用的强大工具。

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

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值