首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >核心操作系统项目和prometheus算子有什么区别?

核心操作系统项目和prometheus算子有什么区别?
EN

Stack Overflow用户
提问于 2019-01-29 13:49:08
回答 5查看 8K关注 0票数 15

普罗米修斯运营商https://github.com/coreos/prometheus-operator/项目的github回购说,

Prometheus运算符使Prometheus配置成为本地的Kubernetes,并管理和操作Prometheus和Alertmanager集群。这是一个完整的端到端监控的谜题。 Kubernetes将Prometheus操作符与一组清单结合起来,以帮助开始监视Kubernetes本身和运行在上面的应用程序。

有人能详细说明一下吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2019-09-25 23:53:17

我一直有一个完全相同的问题/反复遇到这两个问题,但阅读上面的答案并没有为我澄清/我需要一个简短的解释。我发现了这个github的问题,让我明白了这一点。https://github.com/coreos/prometheus-operator/issues/2619

引用GitHub的术语:

最后,我意识到prometheus-操作符图表正在打包堆栈,但我花了大约10个小时才意识到这一点。

**以下是我的简要解释:

"kube-prometheus“和"Prometheus运算符Helm图表”都做了同样的事情:

  1. 从根本上讲,这一概念适用于Metrics/Prometheus操作符。
  2. 这两种方法都可以方便地在Kubernetes上配置、安装和管理大型分布式应用程序(Kubernetes Prometheus Stack):**

,你问的全部库贝普罗米修斯是什么?

Prometheus,Grafana,AlertManager,CRD(自定义资源定义),Prometheus操作员(软件bot应用程序),IaC警报规则,IaC Grafana仪表板,IaC ServiceMonitor CRD(自动生成配置并自动热导入Prometheus )

(另外,当我说轻松配置时,我指的是1,000-10,000++行易于人类理解的配置,这些配置生成和自动管理10,000至100,000行机器配置+带有合理默认值的配置+监视配置自助服务,分布式配置分片与操作员/控制器结合使用配置+从良好的人类可读的配置生成详细的样板机器可读的配置。

如果他们实现了相同的最终目标,你可能会问他们之间有什么区别?

https://github.com/coreos/kube-prometheus

https://github.com/helm/charts/tree/master/stable/prometheus-operator

基本上,CoreOS的使用Ksonnet部署Prometheus堆栈。

Prometheus运算符Helm图包装/取得相同的最终结果,但使用Helm。

那么使用哪一个呢?

不重要+他们取得相同的最终结果+不应该是疯狂的,很难从1开始,然后切换到另一个。

舵机往往更快地学习/发展基本掌握。

Ksonnet很难学习/发展基本的掌握,但是:

  • 它具有更强的幂等性(更适合CICD自动化)(但它只是99%的幂等与99.99%的幂等)的差别。
  • 内置模板,这意味着如果您有多个集群,您需要管理/您希望始终保持彼此一致。然后,您可以利用ksonnet的模板来管理的多个实例(用于多个env),使用具有大量代码重用的干代码库。(如果您只有几个env和Prometheus不需要经常更改,那么手动保持4个helm值文件同步也不是完全不合理的。我也看到过用于模板helm值文件的Jinja2模板,但是如果要处理这个问题,不妨考虑一下ksonnet。)
票数 12
EN

Stack Overflow用户

发布于 2019-01-29 14:44:54

Kubernetes operator是kubernetes特定的应用程序(Pods),它自动配置、管理和优化其他Kubernetes部署。它们是作为自定义控制器实现的。

根据coreOS官方网站:

操作员是由CoreOS引入的一类操作其他软件的软件,将人类收集的操作知识应用到软件中。

prometheus操作符提供了在kubernetes集群上部署、配置和监视prometheus实例的简单方法。为此,prometheus操作符在kubernetes中引入了三种自定义资源定义(CRD)。

  1. 普罗米修斯
  2. 警报管理器
  3. ServiceMonitor

现在,在上述CRD的帮助下,您可以通过提供kind: Prometheus直接创建prometheus实例,prometheus实例也可以为AlertManager提供服务。如果没有这一点,您将不得不设置prometheus的部署,以及它的映像、配置和更多的东西。

Prometheus操作符可以使Prometheus尽可能容易地在Kubernetes之上运行,同时保留Kubernetes-本机配置选项。

现在,kube实现了prometheus操作符,并提供了最小的yaml文件,通过运行一个命令创建prometheusalertmanagergrafana的基本设置。

代码语言:javascript
复制
git clone https://github.com/coreos/prometheus-operator.git
kubectl apply -f prometheus-operator/contrib/kube-prometheus/manifests/

通过在kube目录中运行上面的命令,您将得到一个monitoring名称空间,其中包含一个用于UI的警报管理器、prometheusgrafana的实例。对于大多数基本实现来说,这是足够的设置,如果根据应用程序需要更多的细节,您可以添加更多的导出程序。

kubernetes是对prometheus-operator项目的更多贡献,它很好地实现了prometheus操作符功能,并为您的kubernetes集群提供了完整的监视设置。您可以从kube开始,然后根据应用程序扩展监视设置的功能。

您可以了解更多关于prometheus-运算符这里的信息。

票数 7
EN

Stack Overflow用户

发布于 2020-09-28 17:29:19

截至今天( 28-09-2020 ),这是在Kubernetes集群https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack#kube-prometheus-stack中安装Prometheus的方法。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54422566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档