Helm: Lanzamiento "prometheus-operator" falló: error rpc: código = cancelado

Creado en 31 jul. 2019  ·  71Comentarios  ·  Fuente: helm/helm

Describe el error
Cuando intento instalar el operador prometheus en AKS con helm install stable/prometheus-operator --name prometheus-operator -f prometheus-operator-values.yaml , aparece este error:

prometheus-operator "falló: error de rpc: código = cancelado

Verifiqué con la historia:

helm history prometheus-operator -o yaml
- chart: prometheus-operator-6.3.0
  description: 'Release "prometheus-operator" failed: rpc error: code = Canceled desc
    = grpc: the client connection is closing'
  revision: 1
  status: FAILED
  updated: Tue Jul 30 12:36:52 2019

Gráfico
[estable / prometheus-operator]

Información adicional
Estoy usando las siguientes configuraciones para implementar un gráfico:

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/alertmanager.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheus.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheusrule.crd.yaml
 kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/servicemonitor.crd.yaml

En el archivo de valores: createCustomResource se establece en false ,

Salida de helm version :
Cliente: & version.Version {SemVer: "v2.14.3", GitCommit: "0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState: "clean"}
Servidor: & version.Version {SemVer: "v2.14.3", GitCommit: "0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState: "clean"}

Salida de kubectl version :
Versión del cliente: version.Info {Major: "1", Minor: "10", GitVersion: "v1.10.4", GitCommit: "5ca598b4ba5abb89bb773071ce452e33fb66339d", GitTreeState: "clean", BuildDate: "2018-06-06T08: 13: 03Z ", GoVersion:" go1.9.3 ", Compilador:" gc ", Plataforma:" windows / amd64 "}
Versión del servidor: version.Info {Major: "1", Minor: "13", GitVersion: "v1.13.7", GitCommit: "4683545293d792934a7a7e12f2cc47d20b2dd01b", GitTreeState: "clean", BuildDate: "2019-06-06T01: 39: 30Z ", GoVersion:" go1.11.5 ", Compilador:" gc ", Plataforma:" linux / amd64 "}

Proveedor de nube / plataforma (AKS, GKE, Minikube, etc.):
AKS

questiosupport

Comentario más útil

Pude solucionar este problema siguiendo la sección 'Helm no puede crear CRD' en readme.md. No estoy seguro de cómo se relacionan, pero funcionó.

Paso 1: crea manualmente el CRDS

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/alertmanager.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheus.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheusrule.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/servicemonitor.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/podmonitor.crd.yaml

Paso 2:
Espere a que se creen los CRD, lo que solo debería tomar unos segundos

Paso 3:
Instale el gráfico, pero deshabilite el aprovisionamiento de CRD configurando prometheusOperator.createCustomResource = false

$ helm install --name my-release stable/prometheus-operator --set prometheusOperator.createCustomResource=false

Todos 71 comentarios

Tenemos el mismo problema en minikube, por lo que no parece ser específico de AWS.

Tenemos el mismo problema con los clústeres implementados por kubespray.

También veo el problema tanto en k8s 12.xy 13.x k8s kubespray implementó clústeres en nuestra canalización automatizada: tasa de falla del 100%. La versión anterior de prometheus-operator (0.30.1) funciona sin problemas.
Lo curioso es que si ejecuto el comando manualmente en lugar de hacerlo a través de la canalización del CD, funciona, así que estoy un poco confundido sobre cuál sería la causa.

Vi que había una actualización de la tabla de Promethus hoy. Lo golpeé a

NAME                            CHART VERSION   APP VERSION
stable/prometheus-operator      6.8.0           0.32.0     

y ya no veo el problema.

@rnkhouse ¿Puede verificar con la última versión del gráfico como lo menciona @ dlevene1 en https://github.com/helm/helm/issues/6130#issuecomment -526977731?

Tengo este mismo problema con la versión 6.8.1 en AKS.

NAME                        CHART VERSION   APP VERSION
stable/prometheus-operator  6.8.1           0.32.0
❯ helm version 
Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
 ❯ helm install -f prd.yaml --name prometheus --namespace monitoring stable/prometheus-operator 
Error: release prometheus failed: grpc: the client connection is closing
>>> elapsed time 1m56s

Tenemos el mismo problema con los clústeres implementados por kubespray.

Versión de Kubernete: v1.4.1
Versión de timón:

Client: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.0", GitCommit:"05811b84a3f93603dd6c2fcfe57944dfa7ab7fd0", GitTreeState:"clean"}

Versión del operador de Prometheus:

NAME                            CHART VERSION   APP VERSION
stable/prometheus-operator      6.8.1           0.32.0  

Tengo el mismo problema con aks.

¿Alguien puede reproducir este problema en Helm 3 o se propaga como un error diferente? Mi suposición es que con la eliminación del timón esto ya no debería ser un problema.

@bacongobbler Esto sigue siendo un problema en Helm 3.

bash$ helm install r-prometheus-operator stable/prometheus-operator --version 6.8.2 -f prometheus-operator/helm/prometheus-operator.yaml

manifest_sorter.go:179: info: skipping unknown hook: "crd-install"
Error: apiVersion "monitoring.coreos.com/v1" in prometheus-operator/templates/exporters/kube-controller-manager/servicemonitor.yaml is not available

Sin embargo, ese parece ser un problema diferente al problema planteado por el OP.

descripción: 'Error de lanzamiento "prometheus-operator": error rpc: código = desc cancelada
= grpc: la conexión del cliente se está cerrando '

¿Puedes comprobar y ver si también estás usando la última versión beta? Ese error aparentemente se solucionó en # 6332, que se lanzó en 3.0.0-beta.3. Si no, ¿puede abrir una nueva edición?

@bacongobbler Estoy usando la última versión de Helm v3.0.0-beta.3.

Tuve que volver a la versión 6.7.3 para que se instalara correctamente

Nuestra solución es mantener la imagen del operador de prometheus en v0.31.1.

helm.log
También acabo de encontrar este problema en la instalación de Kubernetes de DockerEE

Después de jugar un poco con las opciones de instalación, depuración y demás, ahora obtengo:

Error: release prom failed: context canceled

Editar: puedo intentar actualizar las versiones de mi timón, actualmente en v2.12.3
Edit2: actualizado a 2.14.3 y sigue siendo problemático
grpc: the client connection is closing
Edit3: instaló la versión 6.7.3 según las sugerencias anteriores para que las cosas vuelvan a funcionar
Edit4: registro de timón adjunto para una instalación fallida como helm.log

relacionado: https://github.com/helm/charts/issues/15977

Después de investigar un poco con @ cyp3d , parece que el problema podría deberse a un tiempo de espera de eliminación de timón demasiado corto para algunos clústeres. No puedo reproducir el problema en ninguna parte, por lo que si alguien que está experimentando esto pudiera validar una posible solución en la rama de solicitud de extracción vinculada, se lo agradecería mucho.

https://github.com/helm/charts/pull/17090

Lo mismo en varios clústeres creados con kops en AWS.
Sin embargo, no hay problemas cuando se ejecuta en K3S.

@xvzf

¿Podrías probar la posible solución en este PR? https://github.com/helm/charts/pull/17090

Le di al PR un ensayo y sigo siendo el mismo Error: release prom failed: context canceled
tiller.log

@vsliouniaev No, no soluciona el problema aquí

Gracias por consultar @xvzf y @pyadminn. He hecho otro cambio en el mismo PR. ¿Podrías ver si esto ayuda?

Acabo de verificar el PR actualizado y todavía veo lo siguiente en nuestra infra: Error: release prom failed: rpc error: code = Canceled desc = grpc: the client connection is closing

Para su información, estamos en Kuber 1.14.3
Helm vers v2.14.3

Pude solucionar este problema siguiendo la sección 'Helm no puede crear CRD' en readme.md. No estoy seguro de cómo se relacionan, pero funcionó.

Paso 1: crea manualmente el CRDS

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/alertmanager.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheus.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheusrule.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/servicemonitor.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/podmonitor.crd.yaml

Paso 2:
Espere a que se creen los CRD, lo que solo debería tomar unos segundos

Paso 3:
Instale el gráfico, pero deshabilite el aprovisionamiento de CRD configurando prometheusOperator.createCustomResource = false

$ helm install --name my-release stable/prometheus-operator --set prometheusOperator.createCustomResource=false

@vsliouniaev ¡ Sigue siendo el mismo problema! Aunque la solución alternativa de lethalwire funciona.

La solución alternativa de Lethalwire también me ha resuelto.

Así que 4 días por parte la solución funcionó y dejó de funcionar. Tuve que usar el archivo CRDs de 0.32.0 not master.

Acabo de experimentar el mismo problema con los CRD actualmente en master. Gracias @Typositoire por su sugerencia de utilizar la versión anterior actualmente. Adaptar la instalación de CRD a lo siguiente funcionó para mí:

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/alertmanager.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/prometheus.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/prometheusrule.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/servicemonitor.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/podmonitor.crd.yaml

Por eso, corregir la versión suele ser una buena práctica.

También tuvo este problema, intente deshabilitar admissionWebhooks . Ayudó en mi caso.

Instale prometheus-operator chart 6.0.0 y realice una actualización de helm --force --version 6.11.0, esto parece funcionar en rancher kubernetes 1.13.10 y helm v2.14.3

La solución alternativa sugerida por @Typositoire funcionó bien para mí en un clúster 1.13.10 generado por kops.

El mismo problema aquí al intentar instalar en Azure AKS con kubernetes 1.13.10 y helm v2.14.3 con prometheus-operator-6.18.0. ¿Cualquier sugerencia?

CRD instalado manualmente.

Este comando falló:
helm install --name prometheus-operator stable/prometheus-operator --namespace=monitoring --set prometheusOperator.createCustomResource=false

dar el error

Error: no se pudo liberar el operador de prometheus: error de rpc: código = desc cancelado = grpc: la conexión del cliente se está cerrando

EDITAR: la instalación de la versión 6.11.0 (así como la 6.7.3) del gráfico está funcionando:

helm install --name prometheus-operator stable/prometheus-operator --namespace=monitoring --set prometheusOperator.createCustomResource=false --version 6.11.0

¿Intenta deshabilitar el enlace web del controlador de admisiones?

https://waynekhan.net/2019/10/09/prometheus-operator-release-failed.html

El 15 de octubre de 2019, a las 19:32, iMacX [email protected] escribió:


El mismo problema aquí al intentar instalar en Azure AKS con kubernetes 1.13.10 y helm v2.14.3 con prometheus-operator-6.18.0. ¿Cualquier sugerencia?

-
Estás recibiendo esto porque estás suscrito a este hilo.
Responda a este correo electrónico directamente, véalo en GitHub o cancele la suscripción.

Estaba luchando contra el mismo problema, tuve que instalar manualmente los crds especificados por @JBosom e instalar con el web hook desactivado.

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/alertmanager.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/prometheus.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/prometheusrule.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/servicemonitor.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.32/example/prometheus-operator-crd/podmonitor.crd.yaml

helm --tls --tiller-namespace=tiller install --namespace=monitoring --name prom-mfcloud stable/prometheus-operator --set prometheusOperator.createCustomResource=false --set prometheusOperator.admissionWebhooks.enabled=false --values values.yaml --versi on 6.18.0

Recibí el mismo error al intentar instalar v8.0.0 en el clúster K8S local por Docker para escritorio con helm v2.14.3 . Pude instalar solo después de crear CRD primero como lo sugirió @lethalwire

Creo que tenemos suficientes casos aquí para determinar que este es un problema específico con el gráfico de operadores de prometheus.

Voy a cerrar esto como algo sobre lo que no tenemos una respuesta procesable de nuestra parte, pero siéntase libre de mantener la conversación.

Lamento la perorata, pero ya no recibo este error después de actualizar a la última versión del timón v2.15.2 . 👍

Parece bastante extraño que no haya información disponible de Helm sobre lo que está sucediendo.

No hay registros de depuración publicados aquí ni solicitados y la gente está restaurando los interruptores y viendo si ayuda.

¿Qué significa realmente el error? ¿Es un indicador de un punto muerto con esperas? ¿Hay otras acciones que se puedan realizar además de un encogimiento de hombros colectivo?

Si. El error original parece ser un punto muerto esperando a que se complete el enlace web de admisión, ya que deshabilitar el enlace web permite que el gráfico se instale sin problemas. Mirar los registros de Tiller debería confirmar el problema.

Helm 3 debe informar el error correcto al usuario ya que no hay una capa de gRPC en el tiempo de espera de la mezcla y cancela la solicitud desde un tiempo de espera.

Siéntase libre de proporcionar parches para Helm 2. Dado que esto se ha mejorado para Helm 3, seguí adelante y cerré esto como se solucionó en las versiones más recientes.

Espero que esto ayude.

El error original parece ser un punto muerto esperando a que se complete el enlace web de admisión, ya que deshabilitar el enlace web permite que el gráfico se instale sin problemas.

Esto parece bastante extraño como conclusión, ya que la solución es deshabilitar el trabajo o deshabilitar la instalación de los ganchos CRD. Ambos parecen resolver el problema, por lo que no parece ser un problema específico con el trabajo.

Para cualquier otra persona que tenga este problema, ¿podría proporcionar el resultado de kubectl describe job para que podamos averiguar qué trabajos están fallando? He pedido esto antes, pero todos parecen indicar que no hay trabajos presentes.

Tiller dice lo siguiente:

[kube] 2019/11/15 14:35:46 get relation pod of object: monitoring/PrometheusRule/prometheus-operator-node-time
[kube] 2019/11/15 14:35:46 Doing get for PrometheusRule: "prometheus-operator-kubernetes-apps"
[ A lot of unrelated updates in between... ]
2019/11/15 14:36:38 Cannot patch PrometheusRule: "prometheus-operator-kubernetes-apps" (rpc error: code = Canceled desc = grpc: the client connection is closing)
2019/11/15 14:36:38 Use --force to force recreation of the resource
[kube] 2019/11/15 14:36:38 error updating the resource "prometheus-operator-kubernetes-apps":
     rpc error: code = Canceled desc = grpc: the client connection is closing
[tiller] 2019/11/15 14:36:38 warning: Upgrade "prometheus-operator" failed: rpc error: code = Canceled desc = grpc: the client connection is closing
[storage] 2019/11/15 14:36:38 updating release "prometheus-operator.v94"
[storage] 2019/11/15 14:36:38 updating release "prometheus-operator.v95"
[ then rollback... ]

Entonces tuve que eliminar manualmente este recurso. apiserver puede tener más información (parece que está relacionado con el controlador de admisión).

@desaintmartin Parece que esto le está sucediendo en una actualización, en lugar de una instalación, ¿verdad?

Dado que Helm 3.0 es GA ahora y el gráfico está funcionando, informe si puede hacer que suceda allí y si obtiene mejores registros

Estoy en Helm3 y sigo recibiendo este error en Azure AKS :(

Probé en el gráfico v8.2.4: if prometheusOperator.admissionWebhooks=false , prometheus.tlsProxy.enabled=false también.

Además, como dijo vsliouniaev, ¿qué dicen --debug y --dry-run ?

@ truealex81 Dado que helm3 está destinado a brindar más información sobre esto, ¿puede publicar registros detallados del proceso de instalación?

Recibo el mismo problema al implementar 8.2.4 en Azure AKS.

Versión de timón:
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}

Helm --debug produce este resultado:

install.go:148: [debug] Original chart version: ""
install.go:165: [debug] CHART PATH: /root/.cache/helm/repository/prometheus-operator-8.2.4.tgz
client.go:87: [debug] creating 1 resource(s)
client.go:87: [debug] creating 1 resource(s)
client.go:87: [debug] creating 1 resource(s)
client.go:87: [debug] creating 1 resource(s)
client.go:87: [debug] creating 1 resource(s)
install.go:139: [debug] Clearing discovery cache
wait.go:51: [debug] beginning wait for 5 resources with timeout of 1m0s
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ServiceAccount
client.go:245: [debug] serviceaccounts "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" PodSecurityPolicy
client.go:245: [debug] podsecuritypolicies.policy "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" RoleBinding
client.go:245: [debug] rolebindings.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" Role
client.go:245: [debug] roles.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRoleBinding
client.go:245: [debug] clusterrolebindings.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRole
client.go:245: [debug] clusterroles.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission-create" Job
client.go:245: [debug] jobs.batch "prometheus-operator-admission-create" not found
client.go:87: [debug] creating 1 resource(s)
client.go:420: [debug] Watching for changes to Job prometheus-operator-admission-create with timeout of 5m0s
client.go:445: [debug] Add/Modify event for prometheus-operator-admission-create: MODIFIED
client.go:484: [debug] prometheus-operator-admission-create: Jobs active: 1, jobs failed: 0, jobs succeeded: 0
client.go:445: [debug] Add/Modify event for prometheus-operator-admission-create: MODIFIED
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ServiceAccount
client.go:220: [debug] Starting delete for "prometheus-operator-admission" PodSecurityPolicy
client.go:220: [debug] Starting delete for "prometheus-operator-admission" RoleBinding
client.go:220: [debug] Starting delete for "prometheus-operator-admission" Role
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRoleBinding
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRole
client.go:220: [debug] Starting delete for "prometheus-operator-admission-create" Job
client.go:87: [debug] creating 120 resource(s)
Error: context canceled

Puedo reproducir esto de manera confiable. Si hay una manera de obtener registros más detallados, hágamelo saber y publico el resultado aquí.

@ pather87 muchas gracias!

Aquí está el orden de lo que debe suceder en el gráfico:

  1. Los CRD están aprovisionados
  2. Hay un trabajo de preinstalación; pre-actualización que ejecuta un contenedor para crear un secreto con certificados para los ganchos de admisión. Este trabajo y sus recursos se limpian con éxito
  3. Se crean todos los recursos
  4. Hay un trabajo posterior a la instalación y posterior a la actualización que ejecuta un contenedor para parchear la configuración de validationgwebhookconfiguration y mutatingwebhookconfiguration con la CA de los certificados creados en el paso 2. Este trabajo y sus recursos se limpian en caso de éxito

¿Podría comprobar si todavía tiene algún trabajo fallido? De los registros se lee como no debería porque todos tuvieron éxito.

¿Hay otros recursos presentes en el clúster después de que ocurra el Error: context canceled ?

Lo mismo aquí cuando instale prometheus-operator:

helm install prometheus-operator stable/prometheus-operator \
  --namespace=monitoring \
  --values=values.yaml

Error: rpc error: code = Canceled desc = grpc: the client connection is closing

@vsliouniaev ¡ gracias por tu respuesta!

  1. No hay trabajos desperdigados después de la implementación.
  2. Las implementaciones y los servicios están presentes en el clúster después de la implementación; consulte el resultado de kubectl:

kubectl get all -lrelease = prometheus-operator

NAME                                                     READY   STATUS    RESTARTS   AGE
pod/prometheus-operator-grafana-59d489899-4b5kd          2/2     Running   0          3m56s
pod/prometheus-operator-operator-8549bcd687-4kb2x        2/2     Running   0          3m56s
pod/prometheus-operator-prometheus-node-exporter-4km6x   1/1     Running   0          3m56s
pod/prometheus-operator-prometheus-node-exporter-7dgn6   1/1     Running   0          3m56s

NAME                                                   TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)            AGE
service/prometheus-operator-alertmanager               ClusterIP   xxx   <none>        9093/TCP           3m57s
service/prometheus-operator-grafana                    ClusterIP   xxx   <none>        80/TCP             3m57s
service/prometheus-operator-operator                   ClusterIP   xxx     <none>        8080/TCP,443/TCP   3m57s
service/prometheus-operator-prometheus                 ClusterIP   xxx   <none>        9090/TCP           3m57s
service/prometheus-operator-prometheus-node-exporter   ClusterIP   xxx    <none>        9100/TCP           3m57s

NAME                                                          DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
daemonset.apps/prometheus-operator-prometheus-node-exporter   2         2         2       2            2           <none>          3m57s

NAME                                           READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/prometheus-operator-grafana    1/1     1            1           3m57s
deployment.apps/prometheus-operator-operator   1/1     1            1           3m57s

NAME                                                      DESIRED   CURRENT   READY   AGE
replicaset.apps/prometheus-operator-grafana-59d489899     1         1         1       3m57s
replicaset.apps/prometheus-operator-operator-8549bcd687   1         1         1       3m57s

NAME                                                             READY   AGE
statefulset.apps/alertmanager-prometheus-operator-alertmanager   1/1     3m44s
statefulset.apps/prometheus-prometheus-operator-prometheus       1/1     3m34s

Instalación con depuración :

client.go:87: [debug] creating 1 resource(s)
install.go:126: [debug] CRD alertmanagers.monitoring.coreos.com is already present. Skipping.
client.go:87: [debug] creating 1 resource(s)
install.go:126: [debug] CRD podmonitors.monitoring.coreos.com is already present. Skipping.
client.go:87: [debug] creating 1 resource(s)
install.go:126: [debug] CRD prometheuses.monitoring.coreos.com is already present. Skipping.
client.go:87: [debug] creating 1 resource(s)
install.go:126: [debug] CRD prometheusrules.monitoring.coreos.com is already present. Skipping.
client.go:87: [debug] creating 1 resource(s)
install.go:126: [debug] CRD servicemonitors.monitoring.coreos.com is already present. Skipping.
install.go:139: [debug] Clearing discovery cache
wait.go:51: [debug] beginning wait for 0 resources with timeout of 1m0s
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRoleBinding
client.go:245: [debug] clusterrolebindings.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" RoleBinding
client.go:245: [debug] rolebindings.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRole
client.go:245: [debug] clusterroles.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ServiceAccount
client.go:245: [debug] serviceaccounts "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" PodSecurityPolicy
client.go:245: [debug] podsecuritypolicies.policy "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission" Role
client.go:245: [debug] roles.rbac.authorization.k8s.io "prometheus-operator-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prometheus-operator-admission-create" Job
client.go:245: [debug] jobs.batch "prometheus-operator-admission-create" not found
client.go:87: [debug] creating 1 resource(s)
client.go:420: [debug] Watching for changes to Job prometheus-operator-admission-create with timeout of 5m0s
client.go:445: [debug] Add/Modify event for prometheus-operator-admission-create: MODIFIED
client.go:484: [debug] prometheus-operator-admission-create: Jobs active: 1, jobs failed: 0, jobs succeeded: 0
client.go:445: [debug] Add/Modify event for prometheus-operator-admission-create: MODIFIED
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRoleBinding
client.go:220: [debug] Starting delete for "prometheus-operator-admission" RoleBinding
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ClusterRole
client.go:220: [debug] Starting delete for "prometheus-operator-admission" ServiceAccount
client.go:220: [debug] Starting delete for "prometheus-operator-admission" PodSecurityPolicy
client.go:220: [debug] Starting delete for "prometheus-operator-admission" Role
client.go:220: [debug] Starting delete for "prometheus-operator-admission-create" Job
client.go:87: [debug] creating 122 resource(s)
Error: context canceled
helm.go:76: [debug] context canceled

Después, ejecuto: kubectl get all -lrelease=prometheus-operator -A

NAMESPACE    NAME                                                     READY   STATUS    RESTARTS   AGE
monitoring   pod/prometheus-operator-grafana-d6676b794-r6cg9          2/2     Running   0          2m45s
monitoring   pod/prometheus-operator-operator-6584f4b5f5-wdkrx        2/2     Running   0          2m45s
monitoring   pod/prometheus-operator-prometheus-node-exporter-2g4tg   1/1     Running   0          2m45s
monitoring   pod/prometheus-operator-prometheus-node-exporter-798p5   1/1     Running   0          2m45s
monitoring   pod/prometheus-operator-prometheus-node-exporter-pvk5t   1/1     Running   0          2m45s
monitoring   pod/prometheus-operator-prometheus-node-exporter-r9j2r   1/1     Running   0          2m45s

NAMESPACE     NAME                                                   TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)            AGE
kube-system   service/prometheus-operator-coredns                    ClusterIP   None           <none>        9153/TCP           2m46s
kube-system   service/prometheus-operator-kube-controller-manager    ClusterIP   None           <none>        10252/TCP          2m46s
kube-system   service/prometheus-operator-kube-etcd                  ClusterIP   None           <none>        2379/TCP           2m46s
kube-system   service/prometheus-operator-kube-proxy                 ClusterIP   None           <none>        10249/TCP          2m46s
kube-system   service/prometheus-operator-kube-scheduler             ClusterIP   None           <none>        10251/TCP          2m46s
monitoring    service/prometheus-operator-alertmanager               ClusterIP   10.0.238.102   <none>        9093/TCP           2m46s
monitoring    service/prometheus-operator-grafana                    ClusterIP   10.0.16.19     <none>        80/TCP             2m46s
monitoring    service/prometheus-operator-operator                   ClusterIP   10.0.97.114    <none>        8080/TCP,443/TCP   2m45s
monitoring    service/prometheus-operator-prometheus                 ClusterIP   10.0.57.153    <none>        9090/TCP           2m46s
monitoring    service/prometheus-operator-prometheus-node-exporter   ClusterIP   10.0.83.30     <none>        9100/TCP           2m46s

NAMESPACE    NAME                                                          DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
monitoring   daemonset.apps/prometheus-operator-prometheus-node-exporter   4         4         4       4            4           <none>          2m46s

NAMESPACE    NAME                                           READY   UP-TO-DATE   AVAILABLE   AGE
monitoring   deployment.apps/prometheus-operator-grafana    1/1     1            1           2m46s
monitoring   deployment.apps/prometheus-operator-operator   1/1     1            1           2m46s

NAMESPACE    NAME                                                      DESIRED   CURRENT   READY   AGE
monitoring   replicaset.apps/prometheus-operator-grafana-d6676b794     1         1         1       2m46s
monitoring   replicaset.apps/prometheus-operator-operator-6584f4b5f5   1         1         1       2m46s

NAMESPACE    NAME                                                             READY   AGE
monitoring   statefulset.apps/alertmanager-prometheus-operator-alertmanager   1/1     2m40s
monitoring   statefulset.apps/prometheus-prometheus-operator-prometheus       1/1     2m30s

Lo que también descubrí al tratar de solucionar esto: el problema persiste, si elimino el gráfico y los CRD posteriormente e instalo el gráfico nuevamente, pero el problema no persiste, si no elimino el crds.

Probé e instalé el crds de antemano, y hice un helm install --skip-crds , pero el problema persiste. Esto es algo confuso.

La siguiente línea de registro que esperaría después de esto es sobre ganchos posteriores a la instalación y actualización, pero no aparece en su caso. No estoy seguro de qué timón está esperando aquí.

...
lient.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" RoleBinding
client.go:245: [debug] rolebindings.rbac.authorization.k8s.io "prom-op-prometheus-operato-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" Role
client.go:245: [debug] roles.rbac.authorization.k8s.io "prom-op-prometheus-operato-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" ClusterRole
client.go:245: [debug] clusterroles.rbac.authorization.k8s.io "prom-op-prometheus-operato-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" ServiceAccount
client.go:245: [debug] serviceaccounts "prom-op-prometheus-operato-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" ClusterRoleBinding
client.go:245: [debug] clusterrolebindings.rbac.authorization.k8s.io "prom-op-prometheus-operato-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" PodSecurityPolicy
client.go:245: [debug] podsecuritypolicies.policy "prom-op-prometheus-operato-admission" not found
client.go:87: [debug] creating 1 resource(s)
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission-patch" Job
client.go:245: [debug] jobs.batch "prom-op-prometheus-operato-admission-patch" not found
client.go:87: [debug] creating 1 resource(s)
client.go:420: [debug] Watching for changes to Job prom-op-prometheus-operato-admission-patch with timeout of 5m0s
client.go:445: [debug] Add/Modify event for prom-op-prometheus-operato-admission-patch: MODIFIED
client.go:484: [debug] prom-op-prometheus-operato-admission-patch: Jobs active: 1, jobs failed: 0, jobs succeeded: 0
client.go:445: [debug] Add/Modify event for prom-op-prometheus-operato-admission-patch: MODIFIED
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" RoleBinding
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" Role
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" ClusterRole
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" ServiceAccount
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" ClusterRoleBinding
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission" PodSecurityPolicy
client.go:220: [debug] Starting delete for "prom-op-prometheus-operato-admission-patch" Job

La creación manual de CRD ayuda al menos en Azure.
En primer lugar, cree crds desde este enlace https://github.com/coreos/prometheus-operator/tree/release-0.34/example/prometheus-operator-crd
"kubectl create -f alertmanager.crd.yaml" y así sucesivamente para todos los archivos
Luego
helm install prometheus-operator estable / prometheus-operator - supervisión del espacio de nombres - versión 8.2.4 --set prometheusOperator.createCustomResource = false

¡Gracias @ truealex81 ! Eso funciona en Azure.

myenv:
k8s 1.11.2 timón 2.13.1 timón 2.13.1
prometheus-operator-5.5 VERSIÓN DE LA APLICACIÓN 0.29 está bien !!!

pero:
prometheus-operator-8 APP VERSION 0.32 tiene el mismo problema:
"contexto cancelado" o "grpc: la conexión del cliente se está cerrando" !!!

¿Supongo que la última versión de prometheus-operator no es compatible?

@bierhov, por favor, ¿puede publicar los recursos en el espacio de nombres después de una falla?

¡sí!
shell ejecutar "helm ls" puedo ver mi estado de liberación de prometheus-operator "fallido", pero el espacio de nombres donde he instalado prometheus-operator tiene todos los recursos de prometheus-operator
pero,
¡promethues web no puede obtener ningún dato!

Sin embargo, ¿puedes publicar los recursos?

Sin embargo, ¿puedes publicar los recursos?

lo siento, no puedo volver a aparecer, a menos que quite mi entorno de timón estable y lo vuelva a hacer.

@bierhov, ¿le quedan trabajos fallidos después de la instalación?

@bierhov, ¿le quedan trabajos fallidos después de la instalación?

mi versión de k8s es 1.11.2 timón una versión de timón es 2.13.1
si instalo prometheus-operator versión 8.x
comando shell exec "helm ls", el estado del trabajo es fallido
pero instalo prometheus-operator versión 5.x
comando shell exec "helm ls", el estado del trabajo está desplegado !!!

No reproducible usando:

Versión de Kubernetes: v1.13.12"
Versión de Kubectl: v1.16.2
Versión de casco: 3.0.1
Versión del operador de Prometheus: 8.3.3

  1. Instale los CRD manualmente:

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/v0.34.0/example/prometheus-operator-crd/alertmanager.crd.yaml kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/v0.34.0/example/prometheus-operator-crd/prometheus.crd.yaml kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/v0.34.0/example/prometheus-operator-crd/prometheusrule.crd.yaml kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/v0.34.0/example/prometheus-operator-crd/servicemonitor.crd.yaml kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/v0.34.0/example/prometheus-operator-crd/podmonitor.crd.yaml

  1. Configure el operador para no crear crds en Values.yaml o al instalar usando

--set prometheusOperator.createCustomResource=false

prometheusOperator: createCustomResource: false

@GramozKrasniqi
¿Qué sucede si no crea los CRD manualmente? Esa es una de las soluciones para el problema.

@vsliouniaev, si no los crea, obtendrá el error.
Pero en el número original en Información adicional, @rnkhouse declaró que estaba creando los CRD manualmente.

Usamos prometheus-operator en nuestra implementación, en pocas palabras, actualizamos prom-op de 6.9.3 a 8.3.3 y siempre fallamos con "Error: contexto cancelado".
Además, siempre instalamos crds antes de instalar / actualizar prometheus-operator, y ofc no cambiamos ni actualizamos estos crd-s.

Intento actualizar crds, que en 'github.com/helm/charts/tree/master/stable/prometheus-operator' menciona (como este kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator /master/example/prometheus-operator-crd/alertmanager.crd.yaml), pero estos ya no existen.
Después de eso, intento estos desde aquí: https://github.com/helm/charts/tree/master/stable/prometheus-operator/crds
Pero falló de nuevo.

Casi me rindo, pero con estos crds, ¡el despliegue del timón fue exitoso! yeyyyy
https://github.com/coreos/kube-prometheus/tree/master/manifests/setup

Mi configuración:

Versión de Kubernetes: v1.14.3
Versión de Kubectl: v1.14.2
Versión de casco: 2.14.3
Versión del operador de Prometheus: 8.3.3

¡Purgue prometheus-operator de k8s!

Luego:

kubectl apply -f https://raw.githubusercontent.com/coreos/kube-prometheus/master/manifests/setup/prometheus-operator-0alertmanagerCustomResourceDefinition.yaml   
kubectl apply -f https://raw.githubusercontent.com/coreos/kube-prometheus/master/manifests/setup/prometheus-operator-0podmonitorCustomResourceDefinition.yaml     
kubectl apply -f https://raw.githubusercontent.com/coreos/kube-prometheus/master/manifests/setup/prometheus-operator-0prometheusCustomResourceDefinition.yaml     
kubectl apply -f https://raw.githubusercontent.com/coreos/kube-prometheus/master/manifests/setup/prometheus-operator-0prometheusruleCustomResourceDefinition.yaml 
kubectl apply -f https://raw.githubusercontent.com/coreos/kube-prometheus/master/manifests/setup/prometheus-operator-0servicemonitorCustomResourceDefinition.yaml 
helm upgrade -i prom-op                               \
  --version 8.3.3                                     \
  --set prometheusOperator.createCustomResource=false \
  stable/prometheus-operator

Eso es todo !

¿Significa esto que es necesario realizar una instalación limpia y perder datos de métricas históricas?

Después de subir AKS k8s a 1.15.5, timón a 3.0.1 y gráfico de operador de Prometheus a 8.3.3, el problema desapareció.

Nuestra solución es mantener la imagen del operador de prometheus en v0.31.1.

también funcionó para mí en AKS v1.14.8 y timón + timón v2.16.1 y cambiando la imagen del operador a v0.31.1

La creación manual de CRD ayuda al menos en Azure.
En primer lugar, cree crds desde este enlace https://github.com/coreos/prometheus-operator/tree/release-0.34/example/prometheus-operator-crd
"kubectl create -f alertmanager.crd.yaml" y así sucesivamente para todos los archivos
Luego
helm install prometheus-operator estable / prometheus-operator - supervisión del espacio de nombres - versión 8.2.4 --set prometheusOperator.createCustomResource = false

en azure kubernetes funciona, gracias

Pude solucionar este problema siguiendo la sección 'Helm no puede crear CRD' en readme.md. No estoy seguro de cómo se relacionan, pero funcionó.

Paso 1: crea manualmente el CRDS

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/alertmanager.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheus.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/prometheusrule.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/servicemonitor.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/master/example/prometheus-operator-crd/podmonitor.crd.yaml

Paso 2:
Espere a que se creen los CRD, lo que solo debería tomar unos segundos

Paso 3:
Instale el gráfico, pero deshabilite el aprovisionamiento de CRD configurando prometheusOperator.createCustomResource = false

$ helm install --name my-release stable/prometheus-operator --set prometheusOperator.createCustomResource=false

Gracias, esto funcionó para mí con el clúster AKS. tuvo que cambiar la URL de los CRD.

kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.37/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml --validate = false
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.37/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml --validate = false
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.37/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml --validate = false
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.37/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml --validate = false
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.37/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml --validate = false
kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.37/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml --validate = false

helm install estable / prometheus-operator --name prometheus-operator --nombre de supervisión del espacio --set prometheusOperator.createCustomResource = false

Clausura. Parece que esto se ha resuelto desde entonces, según los últimos tres comentaristas. ¡Gracias!

¿Fue útil esta página
0 / 5 - 0 calificaciones