k8s中部署prometheus
时间: 2025-02-06 14:14:54 浏览: 42
### 安装和配置 Prometheus 监控系统
#### 准备工作
确保 Kubernetes 集群已经成功搭建并处于正常运行状态。可以通过命令 `kubectl get node` 来验证集群节点的状态[^1]。
#### 使用 Helm 安装 Prometheus Operator
为了简化 Prometheus 及其组件的管理,推荐采用官方提供的 Prometheus Operator 方案来部署监控环境。首先需安装 Helm 并添加稳定仓库:
```bash
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
```
接着执行如下命令完成 Prometheus 组件的一键式安装:
```bash
helm install prometheus prometheus-community/prometheus \
--namespace monitoring \
--create-namespace
```
这一步骤会创建名为 `monitoring` 的命名空间,并在此空间内部署一组默认配置下的 Prometheus 实例及相关资源对象[^4]。
#### 自定义 ServiceMonitor 和 PodMonitor 资源
对于特定应用的服务发现与数据采集路径定制化需求,可通过编写自定义的 `ServiceMonitor` 或者 `PodMonitor` CRD 对象描述文件实现。例如针对某 Web 应用设置 HTTP GET 请求形式的数据拉取接口:
```yaml
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: example-app-monitor
namespace: default
spec:
selector:
matchLabels:
app.kubernetes.io/name: webapp
endpoints:
- port: http-metrics
path: /metrics
interval: 30s
```
上述 YAML 文件定义了一个用于监听带有标签 `app.kubernetes.io/name=webapp` 的服务实例上的 `/metrics` URL 地址作为指标端点,每三十秒周期性地发起一次请求获取最新性能统计信息[^3]。
#### 访问 Grafana 控制台界面
Prometheus 默认集成了基于浏览器访问的支持图形展示功能强大的开源可视化工具——Grafana。要查看已收集到的各项 KPI 数据图表表现形式,可以先查询确认 Grafana Deployment 是否存在以及对应的 ClusterIP 类型 Service 名称:
```bash
kubectl get deployments --namespace=monitoring
```
之后利用 NodePort 或 Ingress 罉道建立外部网络可达性的路由映射关系以便于远程登录操作控制面板进行后续仪表盘编辑等工作[^5]。
阅读全文
相关推荐


















