【发布时间】:2020-11-09 02:48:06
【问题描述】:
我在 EKS 集群上运行我的服务。为了收集应用程序指标 [API 响应时间、状态和调用次数],我遇到了 Prometheus。我认为需要完成以下步骤:
- 集群角色、服务帐户和角色绑定:这将允许我的 prometheus 服务与集群节点、pod 和服务 [在资源部分中定义] 进行通信。
- Configmap:这允许抓取过程并定义不同的角色。
- 服务和入口:建立端点 [例如:9090] 并路由来自互联网的流量。
我遇到了prometheus using helm,它描述了我们如何利用 helm 预定义的 prometheus 图表来从 kubernetes 获取原始指标。
我按照以下步骤操作:
kubectl create namespace prometheus
helm install prometheus stable/prometheus \
--namespace prometheus \
--set alertmanager.persistentVolume.storageClass="gp2",server.persistentVolume.storageClass="gp2"
kubectl get pods -n prometheus
我可以看到使用该命名空间运行的 pod。现在,我有两个问题,
- 我有多个服务(例如,服务 A 和服务 B) 在集群上运行。那么,我怎样才能区分上的指标 普罗米修斯。
- 是否需要每次运行
kubectl --namespace=prometheus port-forward deploy/prometheus-server 9090才能看到结果?我懂了 targetPort 被定义为9090那么为什么我需要运行 命令?我可以改用values.yaml吗?
【问题讨论】:
-
是否尝试遵循普罗米修斯文档?
标签: amazon-web-services kubernetes prometheus amazon-eks