我在本地的kubernetes集群中部署了spring boot支持的微服务。微服务正在使用micrometer和prometheus registry,但由于我们公司的政策,执行器可在另一个端口上使用:
http://host:8081/manage/prometheus
并查看在本地运行进程(不使用kubernetes)时的度量。现在,我是Prometheus的初学者,对kubernetes的了解相当有限(我将带着Java开发人员的背景)。
我已经用我的应用程序创建了一个POD,并在Kubernetes中成功地运行了它。它可以工作,我可以访问它(对于8080,我创建了一个映射端口的服务),我可以从同一台PC执行“业务”级http请求。
但我还没有找到任何例子加入一个普罗米修斯的图片。普罗米修斯应该被部署在同一个库伯内特斯集群中,就像另一个吊舱一样。所以我从以下几个方面开始:
FROM @docker.registry.address@/prom/prometheus:v2.15.2
COPY entrypoint.sh /
USER root
RUN chmod 755 /entrypoint.sh
ADD ./prometheus.yml /etc/prometheus/
ENTRYPOINT ["/entrypoint.sh"]
entrypoint.sh看起来像:
#!/bin/sh
echo "About to run prometheus"
/bin/prometheus --config.file=/etc/prometheus/prometheus.yml \
--storage.tsdb.path=/prometheus \
--storage.tsdb.retention.time=3d \
--web.console.libraries=/etc/prometheus/console_libraries \
--web.console.templates=/etc/prometheus/consoles
我的问题是我应该如何定义prometheus.yml
,以便它能够从我的spring boot pod(以及我拥有的其他微服务,所有spring boot都是用相同的执行器设置驱动的)获得度量。
我从(prometheus.yml
)开始:
global:
scrape_interval: 10s
evaluation_interval: 10s
scrape_configs:
- job_name: 'prometheus'
metrics_path: /manage/prometheus
kubernetes_sd_configs:
- role: pod
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
relabel_configs:
- source_labels: [__meta_kubernetes_pod_label_app]
action: keep
regex: sample-pod-app(.*)|another-pod-app(.*)
作为附带说明。在这一点上,我不关心可伸缩性问题,我相信一台prometheus服务器可以完成这项工作,但我必须将Grafana添加到图片中。
而不是在prometheus config中硬编码它,您需要使用POD上的注释来告诉prometheus应该刮哪个POD、什么路径和哪个端口。
prometheus.io/scrape: "true"
prometheus.io/path=/manage/prometheus
prometheus.io/port=8081
prometheus.io/scheme=http
Spring靴千分尺的例子与普罗米修斯在库伯内特。普罗米修斯部署指南。
我们使用 Giantswarm 开源的 kubernetes-promethues 来监控 kubernetes 集群,所有的 YAML 文件可以在 ../manifests/prometheus 目录下找到。 需要用到的镜像有: harbor-001.jimmysong.io/library/prometheus-alertmanager:v0.7.1 harbor-001.jimmysong.
需求-对作为kubernetes集群一部分在pods中运行的应用程序进行新的Relic监控。 我已经在我的集群上安装了Kube-state-metrics,并且能够使用新的见解查看kubernetes仪表板。 此外,还需要为其配置应用程序监控。下列的https://blog.newrelic.com/2017/11/27/monitoring-application-performance-in-
我已经使用和Jetty在服务器(在8091)中部署了一个Java应用程序。 我需要用普罗米修斯和格拉法纳监控那个应用程序。 config.yaml 我在通常的部署中使用的部署命令:(在这个目录中,存在Jetty) 它很好用..
我正在尝试使用Prometheus在Kubernetes上监视Spring Boot应用程序。Promethus正在使用Helm,而我正在使用Spring Boot执行器进行健康检查、审计、度量收集和监控。 致动器给出了应用的详细说明。例如: 在输出下方返回
主要内容:1.Micrometer简介,2.SpringBoot Actuator,3.Prometheus,4.自定义Metric,5.总结1.Micrometer简介 Micrometer 为 Java 平台上的性能数据收集提供了一个通用的 API,应用程序只需要使用 Micrometer 的通用 API 来收集性能指标即可。Micrometer 会负责完成与不同监控系统的适配工作。这就使得切换监控系统变得很容易。Micrometer 还支持推送数据到多个不同的监控系统。Micrometer