Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 带普罗米修斯操作员舵图的堆垛机驾驶员普罗米修斯侧车_Kubernetes_Google Cloud Platform_Google Kubernetes Engine_Kubernetes Helm_Stackdriver - Fatal编程技术网

Kubernetes 带普罗米修斯操作员舵图的堆垛机驾驶员普罗米修斯侧车

Kubernetes 带普罗米修斯操作员舵图的堆垛机驾驶员普罗米修斯侧车,kubernetes,google-cloud-platform,google-kubernetes-engine,kubernetes-helm,stackdriver,Kubernetes,Google Cloud Platform,Google Kubernetes Engine,Kubernetes Helm,Stackdriver,我们已经使用头盔图在我们的GKE集群上设置了普罗米修斯+格拉法纳。现在我们想将一些度量导出到Stackdriver,因为我们已经安装了自定义度量Stackdriver适配器。我们已经在使用Stackdriver中的一些发布/订阅指标来自动调整少数部署。现在,我们还希望在其他部署的自动缩放中使用一些Prometheus指标,主要是nginx请求速率 所以,我的第一个问题是:我们可以在同一集群中并行使用Prometheus适配器和Stackdriver适配器进行自动缩放吗 如果没有,我们需要安装St

我们已经使用头盔图在我们的GKE集群上设置了普罗米修斯+格拉法纳。现在我们想将一些度量导出到Stackdriver,因为我们已经安装了自定义度量Stackdriver适配器。我们已经在使用Stackdriver中的一些发布/订阅指标来自动调整少数部署。现在,我们还希望在其他部署的自动缩放中使用一些Prometheus指标,主要是nginx请求速率

所以,我的第一个问题是:我们可以在同一集群中并行使用Prometheus适配器和Stackdriver适配器进行自动缩放吗

如果没有,我们需要安装Stackdriver Prometheus Sidecar,以便将Prometheus度量导出到Stackdriver,然后通过Stackdriver适配器使用它们进行自动缩放

根据说明,看起来我们需要在普罗米修斯运行的同一个吊舱上安装Stackdriver侧车。我试了一下。当我运行patch.sh脚本时,我得到了消息:statefulset.apps/prometheus-prom-operator-prometheus-o-prometheus patched,但当我再次检查statefulset时,它没有Stackdriver侧车容器。由于此状态集是由头盔图表创建的,因此我们可能无法直接修改它。在Helm中有推荐的方法吗?

多亏了,我找到了。这个掌舵图接受了太多的配置选项,以至于我在阅读文档时错过了它

所以,这个头盔图表接受一个配置选项prometheus.prometheusSpec.containers。它在报告中的描述是:容器允许注入额外的容器。这意味着允许向Prometheus吊舱添加身份验证代理。但是很明显,它并不局限于身份验证代理,您可以在这里传递任何容器规范,它将被添加到这个Helm图表创建的Prometheus Statefolset中

这是我使用的示例配置。一些要点:

请用实际值替换尖括号中的值。 请随意删除arg-include。我添加它是因为nginx_http_requests_total是我现在想发送给Stackdriver的唯一普罗米修斯指标。查看更多关于它的详细信息。 要计算要在volumeMounts中使用的卷的名称,请执行以下操作: 列出Prometheus运算符命名空间中的StatefulSet。假设您将其安装在监视命名空间中:kubectl get statefulset-n monitoring 描述Prometheus状态集假设其名称为Prometheus-prom-operator-Prometheus-o-Prometheus:kubectl描述状态集Prometheus-prom-operator-Prometheus-o-Prometheus-n监控 在该状态集的详细信息中,查找名为prometheus的容器。注意在arg-storage.tsdb.path中传递给它的值 在同一路径上查找装载在此容器上的卷。在我的例子中,它是prometheus-prom-operator-prometheus-o-prometheus-db,所以我也在Stackdriver侧车容器上安装了相同的卷。 假设发布名称为prom operator,您可以通过运行以下命令,根据上述配置更新此发布:

helm upgrade -f prom-config.yaml prom-operator stable/prometheus-operator
我希望你觉得这很有帮助。

多亏了,我找到了答案。这个掌舵图接受了太多的配置选项,以至于我在阅读文档时错过了它

所以,这个头盔图表接受一个配置选项prometheus.prometheusSpec.containers。它在报告中的描述是:容器允许注入额外的容器。这意味着允许向Prometheus吊舱添加身份验证代理。但是很明显,它并不局限于身份验证代理,您可以在这里传递任何容器规范,它将被添加到这个Helm图表创建的Prometheus Statefolset中

这是我使用的示例配置。一些要点:

请用实际值替换尖括号中的值。 请随意删除arg-include。我添加它是因为nginx_http_requests_total是我现在想发送给Stackdriver的唯一普罗米修斯指标。查看更多关于它的详细信息。 要计算要在volumeMounts中使用的卷的名称,请执行以下操作: 列出Prometheus运算符命名空间中的StatefulSet。假设您将其安装在监视命名空间中:kubectl get statefulset-n monitoring 描述Prometheus状态集假设其名称为Prometheus-prom-operator-Prometheus-o-Prometheus:kubectl描述状态集Prometheus-prom-operator-Prometheus-o-Prometheus-n监控 在该状态集的详细信息中,查找名为prometheus的容器。注意在arg-storage.tsdb.path中传递给它的值 在同一路径上查找装载在此容器上的卷。在我的例子中,它是prometheus-prom-operator-prometheus-o-prometheus-db,所以我也在Stackdriver侧车容器上安装了相同的卷。 假设发布名称为prom operator,您可以通过运行以下命令,根据上述配置更新此发布:

helm upgrade -f prom-config.yaml prom-operator stable/prometheus-operator

希望这对您有所帮助。

您仍然可以修改statefulset
尽管它是由赫尔姆创造的。Helm并不维护部署状态,它只是根据图表和模板部署资源。我有时会看到修补实时资源的问题。您可以通过更新helm模板或类似kuebctl get statefolset prometheus-prom-operator-prometheus-o-prometheus-o yaml-export file.yaml之类的内容来更新部署,添加所需字段,然后添加kubectl apply-f文件。yaml@PatrickW不,这似乎不起作用。即使只是删除statefulset,它也会自动重新创建。此状态集的生成yaml文件中有此行块。所有者参考:-apiVersion:monitoring.coreos.com/v1 blockownerDelete:true controller:true kind:Prometheus name:prom-operator-Prometheus-o-Prometheus uid:5f3e13d6-0caa-428c-88b0-39c883f93ec4它可能对此负责吗?您是否尝试编辑负责生成此状态集的舵图以包括sidecar的定义和重建吊舱?@MuhammadAnas我很高兴听到你解决了这个问题。您能否将您的结果作为答案共享,因为其他社区成员将更容易看到您的结果?您仍然可以修改statefulset,即使它是由Helm创建的。Helm并不维护部署状态,它只是根据图表和模板部署资源。我有时会看到修补实时资源的问题。您可以通过更新helm模板或类似kuebctl get statefolset prometheus-prom-operator-prometheus-o-prometheus-o yaml-export file.yaml之类的内容来更新部署,添加所需字段,然后添加kubectl apply-f文件。yaml@PatrickW不,这似乎不起作用。即使只是删除statefulset,它也会自动重新创建。此状态集的生成yaml文件中有此行块。所有者参考:-apiVersion:monitoring.coreos.com/v1 blockownerDelete:true controller:true kind:Prometheus name:prom-operator-Prometheus-o-Prometheus uid:5f3e13d6-0caa-428c-88b0-39c883f93ec4它可能对此负责吗?您是否尝试编辑负责生成此状态集的舵图以包括sidecar的定义和重建吊舱?@MuhammadAnas我很高兴听到你解决了这个问题。您能否将您的结果作为答案分享,因为其他社区成员将更容易看到您的结果?
helm upgrade -f prom-config.yaml prom-operator stable/prometheus-operator