304464743
V2EX  ›  Docker

关于 k8s 中的应用,如何监控

  •  
  •   304464743 · Mar 10, 2019 · 5757 views
    This topic created in 2798 days ago, the information mentioned may be changed or developed.

    最近看了 prometheus 的视频之类的(都是关于监控 node,pod 或其他一些资源),我自己也在网上搜索过,也没找到。 看过 prometheus 都有插件( php,nginx 等等),但是那些插件都是基于非容器的,一般都是要启用一个插件,绑定一个端口给 prometheus 上送数据,我就想问下,k8s 的 pod 里的一些应用如何监控,比如 nginx 连接数,php 进程数等等?

    5 replies  •  2019-04-01 19:20:25 +08:00
    binux
    binux
    Mar 10, 2019 via Android
    1
    装 agent 采集
    hilbertz
    hilbertz
    Mar 10, 2019
    2
    大多数组件都有对应的 exporter 来推送监控数据,有的甚至是内建的,nginx 的 exporter 通常放在另外一个容器,读取 nginx 的 stub_status 页面,并转换成 prometheus 的格式推送给 prometheus
    kingfsen
    kingfsen
    Mar 30, 2019
    3
    这个很简单吧,如果你不想使用第三方对应的一些 exporter,那你可以自行实现。
    比如我在 k8s 中部署了一个用 java springboot 部署的应该,在这个 springboot 应用中我们可以自己暴露一个 endpoint,在这个 endpoint 的时候暴露一些应用数据或者 Jvm 的数据,或者通过 java api 采集 tomcat 的数据。exporter、以及探针 black-exporter,都可以 DaemonSet 方式部署在 k8s 中的每个节点中,探测监控很多指标。其他的没有的指标,只能自行实现,然后让 prometheus 去采集对应的 endpoint 了。
    kingfsen
    kingfsen
    Mar 30, 2019
    4
    监控 k8s 中应用,就是监控 endpoint 或者 service 即可。不知道对你是否有帮助 https://youendless.com/post/prometheus_monitor_k8s2/#%E7%9B%91%E6%8E%A7java%E5%BA%94%E7%94%A8%E6%8C%87%E6%A0%87
    YzSama
    YzSama
    Apr 1, 2019 via iPad
    5
    有 prometheus 与 Java 应用集成的案例。提供 endpoint,使用 label 过滤出来,进行监控。 大概思路…
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1730 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 09:59 · PVG 17:59 · LAX 01:59 · JFK 04:59
    ♥ Do have faith in what you're doing.