实战指南:使用 kube-prometheus-stack 监控 K3s 集群

本文介绍了如何通过 kube-prometheus-stack 监控 K3s 集群,包括K3s集群的准备、Helm自定义values.yaml文件、安装过程以及总结。监控对于K3s集群的稳定性和性能至关重要,通过Prometheus、Alertmanager和Grafana,可以实现集群状态的实时查看和问题解决。
摘要由CSDN通过智能技术生成

作者简介
王海龙,Rancher 中国社区技术经理,Linux Foundation APAC Evangelist,负责 Rancher 中国技术社区的维护和运营。拥有 9 年的云计算领域经验,经历了 OpenStack 到 Kubernetes 的技术变革,无论底层操作系统 Linux,还是虚拟化 KVM 或是 Docker 容器技术都有丰富的运维和实践经验。

随着容器化应用的普及,Kubernetes 成为了管理和编排这些容器的首选平台。对于资源受限的生产环境和边缘部署来说,K3s 是一个理想的轻量级 Kubernetes 发行版。然而,为了确保 K3s 集群的稳定性和性能,监控是至关重要的。本文将介绍如何通过 kube-prometheus-stack 来监控 K3s 集群的运行状态。

先决条件

K3s 集群

你必须拥有一个健康的 Rancher K3s 集群。本次示例,将安装两个节点的 K3s 集群:一个 K3s master 节点,一个 K3s worker 节点,并且集群采用嵌入式 etcd 作为数据存储。

本文使用的 K3s 版本为:v1.27.6+k3s1

Helm

如果你尚未安装 Helm3,请参考 Helm 官网文档 安装 Helm。

Kubernetes Storage Class

为了支持集群中任何节点上的监控组件的持久化和调度,你需要提供 Kubernetes Storage Class。

你可以使用像 Longhorn 这样成熟的集群存储解决方案。但为了方便演示,本文使用 K3s 自带的 Local Path Provisioner

K3s 集群准备

默认情况下,K3s 将其多个管理组件绑定到节点主机的 localhost 127.0.0.1 地址,具体为:Kube Controller Manager、Kube Proxy 和 Kube Scheduler。

但是,为了进行监控,我们需要公开这些 endpoint,以便 Prometheus 可以提取它们的指标。因此,我们需要在 0.0.0.0 地址上公开这些组件的 metrics。

你可以通过将包含以下内容的文件放置在 “/etc/rancher/k3s/config.yaml” 中来更改 K3s master 节点上的这些设置。

# /etc/rancher/k3s/config.yaml
kube-controller-manager-arg:
- "bind-address=0.0.0.0"
kube-proxy-arg:
- "metrics-bind
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值