Kubernetes(k8s)-Prometheus安装

作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

图片

我们上一章介绍了Docker基本情况,目前在规模较大的容器集群基本都是Kubernetes,但是Kubernetes涉及的东西和概念确实是太多了,而且随着版本迭代功能在还增加,笔者有些功能也确实没用过,所以只能按照我自己的理解来讲解。

我们上一小节对Prometheus做了一个简单的介绍,本小节我们就来介绍下Prometheus的安装。Prometheus支持通过二进制包、Docker 容器、Kubernetes Operator(如 Prometheus Operator)来进行安装。下面是一个简单配置文件,基于这些规则完成对数据的监控和告警。

global:
  scrape_interval: 15s  # 拉取间隔
scrape_configs:
  - job_name: "node"
    static_configs:
      - targets: ["node-exporter:9100"]  # 监控目标
alerting:
  alertmanagers:
    - static_configs:
        - targets: ["alertmanager:9093"]
rule_files:
  - "alerts.rules"  # 告警规则文件

我们这里就通过Operator安装,也算另外一个Operator的案例,只是核心是监控而非Opterator的逻辑。

1.添加helm仓库​​​​​​​

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update

2.安装opterator

# 创建命名空间(可选)
kubectl create namespace monitoring

# 安装 kube-prometheus-stack(包含 Operator、Prometheus、Grafana 等)
helm install prometheus prometheus-community/kube-prometheus-stack \
  --namespace monitoring

3.验证安装​​​​​​​

kubectl get pods -n monitoring
# 应看到 prometheus-operator、prometheus、grafana 等 Pod
# 当然这里还会生成很多其他资源,我们这里以Pod正常就算部署成功 

图片

4.组件介绍

1.alertmanager容器

功能:接收 Prometheus 的告警信息,去重、分组后通过邮件、Slack 等渠道发送通知。

2.grafana容器

功能:提供可视化仪表盘,默认已集成 Prometheus 数据源和预置的监控面板。

3.operator容器

作用:Prometheus Operator 的核心控制器。

功能:自动管理 Prometheus、Alertmanager、ServiceMonitor 等资源的生命周期,监听 Kubernetes API 并动态生成监控配置。

4.prometheus容器

作用:Prometheus Server 实例。

功能:负责抓取、存储监控数据,并提供查询和告警规则评估。

持久化:默认使用临时存储(重启后数据丢失),生产环境需配置 PersistentVolumeClaim

5.metrics容器

功能:采集Kubernetes 资源对象状态(如 Deployment、Pod、Service 的状态),生成与资源生命周期相关的指标。

6.Nodeexporter容器

功能:采集节点级指标(CPU、内存、磁盘、网络等),暴露给 Prometheus 抓取。部署方式:通过 DaemonSet 确保每个节点运行一个副本。

5.web访问

由于默认Service都是ClusterIP,所以我这里是通过修改了svc的类型,通过NodePort来访问,需要注意这个web界面是没有密码的,需要注意安全。

http://192.168.31.100:32729

Prometheus的界面比较简单,所以这里一般都只简单查看。

图片

通过选择监控项目,这些项目都是Pormetheus部署成功以后,就会自带部分监控。从这里可以看到有些监控是正常的,有些监控是异常的,我们需要根据实际情况进行调整。

图片

这里只显示监控项目是否正常,但是很多详细的指标这里并不会显示,我们可以通过PromQL去查询,比如我这里列举coredns的总请求数。

图片

运维小路

一个不会开发的运维!一个要学开发的运维!一个学不会开发的运维!欢迎大家骚扰的运维!

关注微信公众号《运维小路》获取更多内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值