【问题标题】:Is it possible/fine to run Prometheus, Loki, Grafana outside of Kubernetes?在 Kubernetes 之外运行 Prometheus、Loki、Grafana 是否可能/很好?
【发布时间】:2020-09-25 13:31:41
【问题描述】:

在某些项目中,使用本地云提供商的技术实现了扩展和编排,没有 Docker 和 Kubernetes。但是该项目的日志记录和监控很差,我想分别安装 Prometheus、Loki 和 Grafana 用于度量、日志和可视化。不幸的是,我没有找到关于在没有 K8s 的情况下使用 Prometheus 的文章。

但这可能吗?如果是这样,这是一个好方法吗?以及如何做到这一点?我也知道 Prometheus 和 Loki 可以自动检测 K8s 中的服务以提取指标和日志,但对于自定义编排系统是否也可以使用?

【问题讨论】:

  • 对于近距离投票者:我不认为这种基于 Q 意见的可能性是客观的事情,就像设置和维护的简单性是一个可以比较和使用其他方法测量(例如,使用 K8s 与不使用 K8s)。

标签: kubernetes microservices prometheus grafana-loki


【解决方案1】:

无法评论 Loki,但 Prometheus 绝对可行。 Prometheus 支持多种服务发现机制,k8s 就是其中之一。如果您查看list of options(以_sd_config 结尾的),您可以查看您的提供程序是否存在。 如果不是,则可以使用通用服务发现。也许DNS-baseddiscovery 可以与您的自定义系统一起使用?如果没有,那么使用一些胶水代码file based service discovery 几乎肯定会起作用。

【讨论】:

    【解决方案2】:

    是的,我正在 AWS ECS 集群中运行 Prometheus、Loki 等。它只需要更多的配置,尤其是在服务发现方面(如果您还没有使用 ECS Service Disovery 或 Hashicorp Consul 之类的东西)

    【讨论】:

    • 感谢您的回复!我是否理解正确,Loki 不需要服务发现,因为应该在每个服务中安装 Promtail 以自动发送日志?
    • 是的,你是对的。这不仅适用于在不同 VM 上运行的“大型”服务,而且适用于例如 Kubernetes(每个节点一个 Promtail)。在某些情况下,还有记录驱动程序/服务来处理从服务到 Loki 的日志传输。 Docker 日志记录驱动程序就是一个例子
    • 我有最后一个问题来澄清一下:如果是 K8s,Promtail 应该如何安装?作为 pod 中的单独服务,还是作为我要记录的每个服务的一部分?甚至在主机上,在 pod 之外?
    猜你喜欢
    • 2021-10-16
    • 2021-10-12
    • 2020-12-22
    • 2019-04-17
    • 1970-01-01
    • 2021-02-04
    • 2021-04-29
    • 2022-12-10
    • 1970-01-01
    相关资源
    最近更新 更多