使用 helm 将 prometheus 配置到 kubernetes 中的特定节点上
Posted
技术标签:
【中文标题】使用 helm 将 prometheus 配置到 kubernetes 中的特定节点上【英文标题】:Configuring prometheus using helm onto a specific node in kubernetes 【发布时间】:2021-07-21 02:08:50 【问题描述】:我正在尝试在 Kubernetes 中使用 Helm 配置 Prometheus,并尝试执行如下命令,部署成功。
$ helm install prometheus prometheus-community/prometheus --namespace prometheus --set
nodeSelector.nodetype=infra
NAME: prometheus
LAST DEPLOYED: Tue Apr 27 22:47:20 2021
NAMESPACE: prometheus
STATUS: deployed
但是,当我尝试描述创建的 pod 时,我无法将 nodeSelector 值视为“nodetype=infra”。有人可以指出我错过了哪里。
$ kubectl get pods -n prometheus
NAME READY STATUS RESTARTS AGE
prometheus-alertmanager-7f86c968db-vln2x 2/2 Running 0 61m
prometheus-kube-state-metrics-6bfcd6f648-6cdbw 1/1 Running 0 61m
prometheus-node-exporter-7q9lh 1/1 Running 0 61m
prometheus-pushgateway-54576f7765-6kjt5 1/1 Running 0 61m
prometheus-server-7c9b8dbfcd-9x48b 2/2 Running 0 61m
$ kubectl describe pod prometheus-alertmanager-7f86c968db-vln2x -n prometheus
Name: prometheus-alertmanager-6bc84b9455-4g9mw
Namespace: prometheus
Priority: 0
..
QoS Class: BestEffort
Node-Selectors: <none> --> This is the field I'm expecting to have "nodetype=infra"
Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
【问题讨论】:
【参考方案1】:需要为每个组件配置nodeSelector
alertmanager:
nodeSelector:
nodetype: infra
nodeExporter:
nodeSelector:
nodetype: infra
server:
nodeSelector:
nodetype: infra
pushgateway:
nodeSelector:
nodetype: infra
你可以find所有的值here
【讨论】:
以上是关于使用 helm 将 prometheus 配置到 kubernetes 中的特定节点上的主要内容,如果未能解决你的问题,请参考以下文章
helm Prometheus values.yaml 的 alertmanager.yml 部分中的 external_labels 配置出错
如何使用 Helm 更改 Prometheus 配置 scrape_interval 以进行 Prometheus 部署
如何将抓取目标添加到使用 Kubernetes-Helm 安装的 Prometheus 服务器?
k8s实践17:监控利器prometheus helm方式部署配置测试