Helm: Échec de la publication de "prometheus-operator": erreur rpc: code = annulé

Créé le 31 juil. 2019  ·  71Commentaires  ·  Source: helm/helm

Décrivez le bogue
Lorsque j'essaye d'installer l'opérateur prometheus sur AKS avec helm install stable/prometheus-operator --name prometheus-operator -f prometheus-operator-values.yaml , j'obtiens cette erreur:

prometheus-operator "a échoué: erreur rpc: code = Annulé

J'ai vérifié avec l'histoire:

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

Graphique
[opérateur stable / prometheus]

Information additionnelle
J'utilise les configurations ci-dessous pour déployer un graphique:

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

Dans le fichier de valeurs: createCustomResource est défini sur false ,

Sortie de helm version :
Client: & version.Version {SemVer: "v2.14.3", GitCommit: "0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState: "clean"}
Serveur: & version.Version {SemVer: "v2.14.3", GitCommit: "0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState: "clean"}

Sortie de kubectl version :
Version du client: version.Info {Major: "1", Minor: "10", GitVersion: "v1.10.4", GitCommit: "5ca598b4ba5abb89bb773071ce452e33fb66339d", GitTreeState: "clean", BuildDate: "2018-06-06T08: 13: 03Z ", GoVersion:" go1.9.3 ", Compilateur:" gc ", Plate-forme:" windows / amd64 "}
Version du serveur: version.Info {Major: "1", Minor: "13", GitVersion: "v1.13.7", GitCommit: "4683545293d792934a7a7e12f2cc47d20b2dd01b", GitTreeState: "clean", BuildDate: "2019-06-06T01: 39: 30Z ", GoVersion:" go1.11.5 ", Compilateur:" gc ", Plate-forme:" linux / amd64 "}

Fournisseur / plate-forme de cloud (AKS, GKE, Minikube, etc.):
AKS

questiosupport

Commentaire le plus utile

J'ai pu contourner ce problème en suivant la section «Helm ne parvient pas à créer des CRD» dans readme.md. Je ne sais pas comment ils sont liés, mais cela a fonctionné.

Étape 1: créer manuellement le 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

Étape 2:
Attendez que les CRD soient créés, ce qui ne devrait prendre que quelques secondes

Étape 3:
Installez le graphique, mais désactivez le provisionnement CRD en définissant prometheusOperator.createCustomResource = false

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

Tous les 71 commentaires

Nous avons le même problème sur minikube, il ne semble donc pas être spécifique à AWS.

Nous avons le même problème sur les clusters déployés par kubespray.

Je vois également le problème sur les clusters déployés par k8s 12.x et 13.x k8s kubespray dans notre pipeline automatisé - taux d'échec de 100%. La version précédente de prometheus-operator (0.30.1) fonctionne sans problème.
Ce qui est drôle, c'est que si j'exécute la commande manuellement au lieu de via le pipeline CD, cela fonctionne - donc je suis un peu confus quant à la cause.

J'ai vu qu'il y avait une mise à jour du graphique Promethus aujourd'hui. Je l'ai heurté à

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

et je ne vois plus le problème.

@rnkhouse Pouvez-vous vérifier avec la dernière version de graphique mentionnée par @ dlevene1 sur https://github.com/helm/helm/issues/6130#issuecomment -526977731?

J'ai ce même problème avec la version 6.8.1 sur 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

Nous avons le même problème sur les clusters déployés par kubespray.

Version Kubernete: v1.4.1
Version de la barre:

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

Version de l'opérateur Prometheus:

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

J'ai le même problème sur aks.

Quelqu'un peut-il reproduire ce problème dans Helm 3 ou se propage-t-il comme une erreur différente? Je suppose qu'avec le retrait de la barre, cela ne devrait plus être un problème.

@bacongobbler C'est toujours un problème dans 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

Cela semble être un problème différent de celui soulevé par le PO.

description: 'Échec de la libération de "prometheus-operator": erreur rpc: code = annulé desc
= grpc: la connexion client se ferme '

Pouvez-vous vérifier et voir si vous utilisez également la dernière version bêta? Cette erreur a apparemment été corrigée dans le # 6332 qui a été publié dans la version 3.0.0-beta.3. Sinon, pouvez-vous ouvrir un nouveau numéro?

@bacongobbler J'utilise la dernière version de Helm v3.0.0-beta.3.

J'ai dû revenir à --version 6.7.3 pour l'installer correctement

Notre solution de contournement consiste à conserver l'image de l'opérateur prometheus sur la v0.31.1.

helm.log
Je viens également de rencontrer ce problème lors de l'installation de DockerEE kubernetes

Après quelques manipulations avec les options d'installation --debug et autres, j'obtiens maintenant:

Error: release prom failed: context canceled

Edit: peut essayer de mettre à jour mes versions de barre, actuellement à la v2.12.3
Edit2: mis à jour à 2.14.3 et toujours problématique
grpc: the client connection is closing
Edit3: version 6.7.3 installée selon les suggestions ci-dessus pour faire redémarrer les choses
Edit4: Journal de barre attaché pour une installation échouée comme helm.log

en relation: https://github.com/helm/charts/issues/15977

Après avoir creusé avec @ cyp3d, il semble que le problème puisse être causé par un délai de suppression de barre trop court pour certains clusters. Je ne peux reproduire le problème nulle part, donc si quelqu'un qui rencontre cela pouvait valider un correctif potentiel dans la branche de demande de tirage liée, je l'apprécierais beaucoup!

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

Idem ici sur plusieurs clusters créés avec kops sur AWS.
Aucun problème lors de l'exécution sur K3S.

@xvzf

Pourriez-vous essayer le correctif potentiel dans ce PR? https://github.com/helm/charts/pull/17090

J'ai fait un tour au PR et toujours le même Error: release prom failed: context canceled
tiller.log

@vsliouniaev Non, ne résout pas le problème ici

Merci d'avoir vérifié @xvzf et @pyadminn. J'ai fait un autre changement dans le même PR. Pouvez-vous voir si cela aide?

Je viens de vérifier le PR mis à jour et je vois toujours ce qui suit sur notre infra: Error: release prom failed: rpc error: code = Canceled desc = grpc: the client connection is closing

Pour info, nous sommes sur Kuber 1.14.3
Helm vers v2.14.3

J'ai pu contourner ce problème en suivant la section «Helm ne parvient pas à créer des CRD» dans readme.md. Je ne sais pas comment ils sont liés, mais cela a fonctionné.

Étape 1: créer manuellement le 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

Étape 2:
Attendez que les CRD soient créés, ce qui ne devrait prendre que quelques secondes

Étape 3:
Installez le graphique, mais désactivez le provisionnement CRD en définissant prometheusOperator.createCustomResource = false

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

@vsliouniaev Toujours le même problème! Bien que la solution de contournement de Lethalwire fonctionne.

La solution de contournement du fil mortel m'a également résolu.

Donc, 4 jours après, la solution de contournement a fonctionné et a cessé de fonctionner, j'ai dû utiliser le fichier CRD de 0.32.0 pas maître.

Je viens de rencontrer le même problème avec les CRD actuellement sur le maître. Merci @Typositoire pour votre suggestion d'utiliser la version actuellement précédente. L'adaptation de l'installation des CRD aux éléments suivants a fonctionné pour moi:

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

C'est pourquoi la correction de la version est souvent une bonne pratique.

Également eu ce problème, essayez de désactiver admissionWebhooks . Cela m'a aidé dans mon cas.

Installez prometheus-operator chart 6.0.0 et effectuez une mise à niveau de la barre --force --version 6.11.0, cela semble fonctionner sur rancher kubernetes 1.13.10 et helm v2.14.3

La solution de contournement suggérée par @Typositoire a bien fonctionné pour moi sur un cluster 1.13.10 généré par kops.

Même problème ici en essayant d'installer sur Azure AKS avec kubernetes 1.13.10 et helm v2.14.3 avec prometheus-operator-6.18.0. Toute suggestion?

CRD installé manuellement.

Cette commande a échoué:
helm install --name prometheus-operator stable/prometheus-operator --namespace=monitoring --set prometheusOperator.createCustomResource=false

donner l'erreur

Erreur: échec de la libération de l'opérateur prometheus: erreur rpc: code = annulé desc = grpc: la connexion client se ferme

EDIT: l'installation de la version 6.11.0 (ainsi que de la 6.7.3) du graphique fonctionne:

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

Essayez de désactiver le crochet Web du contrôleur d'admission?

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

Le 15 octobre 2019, à 19:32, iMacX [email protected] a écrit:


Même problème ici en essayant d'installer sur Azure AKS avec kubernetes 1.13.10 et helm v2.14.3 avec prometheus-operator-6.18.0. Toute suggestion?

-
Vous recevez ceci parce que vous êtes abonné à ce fil de discussion.
Répondez directement à cet e-mail, affichez-le sur GitHub ou désabonnez-vous.

Je combattais le même problème, je devais installer manuellement les crds spécifiés par @JBosom et installer avec le crochet Web désactivé.

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

Je recevais la même erreur en essayant d'installer v8.0.0 sur le cluster K8S local par Docker for Desktop avec helm v2.14.3 . N'a pu installer qu'après avoir créé les CRD, comme suggéré par @lethalwire

Je pense que nous avons suffisamment de cas ici pour déterminer qu'il s'agit d'un problème spécifique avec le graphique prométhée-opérateur.

Je vais clore cela comme quelque chose pour lequel nous n'avons pas de réponse concrète de notre côté, mais n'hésitez pas à poursuivre la conversation.

Je suis désolé pour la diatribe, mais je n'obtiens plus cette erreur après la mise à niveau vers la dernière barre v2.15.2 . 👍

Il semble assez étrange que Helm ne dispose d'aucune information sur ce qui se passe.

Il n'y a aucun journal de débogage affiché ici ni demandé et les gens sont en train de restaurer les commutateurs et de voir si cela aide.

Que signifie réellement l'erreur? Est-ce un indicateur d'une impasse avec des attentes? Y a-t-il d'autres actions qui peuvent être effectuées autre qu'un simple haussement d'épaules collectif?

Oui. L'erreur d'origine semble être un blocage en attente de la fin du crochet Web d'admission, car la désactivation du crochet Web permet au graphique de s'installer sans problème. L'examen des journaux de Tiller devrait confirmer le problème.

Helm 3 doit rapporter l'erreur correcte à l'utilisateur car il n'y a pas de couche gRPC dans le délai de mixage et l'annulation de la demande à partir d'un délai d'expiration.

N'hésitez pas à fournir des correctifs pour Helm 2. Étant donné que cela a été amélioré pour Helm 3, je suis allé de l'avant et j'ai fermé cela comme corrigé dans les versions plus récentes.

J'espère que cela t'aides.

L'erreur d'origine semble être un blocage en attente de la fin du crochet Web d'admission, car la désactivation du crochet Web permet au graphique de s'installer sans problème.

Cela semble assez étrange comme conclusion, car la solution consiste soit à désactiver le travail, soit à désactiver l'installation des hooks CRD. Ces deux éléments semblent résoudre le problème, il ne semble donc pas être un problème spécifique au travail.

À toute autre personne rencontrant ce problème - pourriez-vous s'il vous plaît fournir la sortie de kubectl describe job afin que nous puissions découvrir les tâches qui échouent? J'ai déjà demandé cela, mais tout le monde semble indiquer qu'il n'y a pas d'emplois présents.

Tiller se lit comme suit:

[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... ]

J'ai donc dû supprimer manuellement cette ressource. apiserver peut avoir plus d'informations (on dirait qu'il est en effet lié au contrôleur d'admission).

@desaintmartin Cela semble se produire pour vous lors d'une mise à niveau plutôt que d'une installation, n'est-ce pas?

Puisque Helm 3.0 est maintenant GA et que le graphique fonctionne pour cela, veuillez faire un rapport si vous pouvez y arriver et si vous obtenez de meilleurs journaux.

Je suis sur Helm3 et j'obtiens toujours cette erreur sur Azure AKS :(

J'ai essayé le graphique v8.2.4: si prometheusOperator.admissionWebhooks=false , prometheus.tlsProxy.enabled=false aussi.

Aussi, comme ce que dit vsliouniaev, que disent --debug et --dry-run ?

@ truealex81 Puisque helm3 est censé donner plus d'informations à ce sujet, pouvez-vous s'il vous plaît publier des journaux détaillés du processus d'installation?

Je reçois le même problème lors du déploiement de 8.2.4 sur Azure AKS.

Version de la barre:
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}

Helm --debug produit cette sortie:

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

Je peux reproduire cela de manière fiable. S'il existe un moyen d'obtenir des journaux plus détaillés, veuillez me le faire savoir et je publie la sortie ici

@ pather87 merci beaucoup!

Voici l'ordre de ce qui doit se passer dans le graphique:

  1. Les CRD sont provisionnés
  2. Il existe un travail de pré-installation; pré-mise à niveau qui exécute un conteneur pour créer un secret avec des certificats pour les hooks d'admission. Ce travail et ses ressources sont nettoyés en cas de succès
  3. Toutes les ressources sont créées
  4. Il existe un travail de post-installation; post-mise à niveau qui exécute un conteneur pour appliquer un correctif à la configuration de validationgwebhook créée et à la mutation de la configuration de webhook avec l'autorité de certification à partir des certificats créés à l'étape 2. Ce travail et ses ressources sont nettoyés en cas de succès.

Pourriez-vous s'il vous plaît vérifier si vous avez encore des travaux ayant échoué? D'après les journaux, il se lit comme vous ne devriez pas parce qu'ils ont tous réussi.

Y a-t-il d'autres ressources présentes dans le cluster après le Error: context canceled ?

Idem ici lors de l'installation de l'opérateur prometheus:

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 merci pour votre réponse!

  1. Il n'y a pas de travaux après le déploiement.
  2. Les déploiements et services sont présents dans le cluster après le déploiement, voir la sortie de kubectl:

kubectl get all -lrelease = opérateur-prométhée

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

Installation avec debug :

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

Après, j'exécute: 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

Ce que j'ai également découvert en essayant de contourner ce problème: Le problème persiste, si je supprime le graphique et les CRD par la suite et que je réinstalle le graphique, mais le problème ne persiste pas, si je ne supprime pas les crds.

J'ai essayé et installé le crds au préalable, et j'ai fait un helm install --skip-crds , mais le problème persiste. C'est quelque peu déroutant.

La prochaine ligne de journal à laquelle je m'attendrais après cela concerne les hooks post-installation et post-mise à niveau, mais elle n'apparaît pas dans votre cas. Je ne suis pas sûr de savoir quel casque attend ici

...
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 création manuelle de CRD aide au moins sur Azure.
Commencez par créer des crds à partir de ce lien https://github.com/coreos/prometheus-operator/tree/release-0.34/example/prometheus-operator-crd
"kubectl create -f alertmanager.crd.yaml" et ainsi de suite pour tous les fichiers
Puis
helm install prometheus-operator stable / prometheus-operator --namespace monitoring --version 8.2.4 --set prometheusOperator.createCustomResource = false

Merci @ truealex81 ! Cela fonctionne sur Azure.

myenv:
k8s 1.11.2 barre 2.13.1 barre 2.13.1
prometheus-operator-5.5 APP VERSION 0.29 est OK !!!

mais:
prometheus-operator-8 APP VERSION 0.32 a le même problème:
"contexte annulé" ou "grpc: la connexion client se ferme" !!!

je suppose que la dernière version de prometheus-operator n'est pas compatible? !!!

@bierhov pouvez-vous publier les ressources dans l'espace de noms après un échec?

Oui!
shell exécute "helm ls" je peux voir l'état de la version de mon opérateur prometheus "échoué", mais l'espace de noms où l'opérateur prometheus j'ai installé a toutes les ressources de l'opérateur prometheus
mais,
promethues web ne peut obtenir aucune donnée!

Pouvez-vous s'il vous plaît poster les ressources?

Pouvez-vous s'il vous plaît poster les ressources?

désolé, je ne peux pas réapparaître, à moins que je ne retire mon env de barre stable et que je ne recommence!

@bierhov vous reste-

@bierhov vous reste-

ma version k8s est la barre 1.11.2 et la version barre franche est la 2.13.1
si j'installe la version 8.x de prometheus-operator
commande shell exec "helm ls", le statut du travail a échoué
mais j'installe la version 5.x de prometheus-operator
shell exec commande "helm ls", le statut du job est déployé !!!

Non reproductible avec:

Version Kubernetes: v1.13.12"
Version Kubectl: v1.16.2
Version du casque: 3.0.1
Version de l'opérateur Prometheus: 8.3.3

  1. Installez les CRD manuellement:

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. Configurez l'opérateur pour ne pas créer de crds dans Values.yaml ou lors de l'installation à l'aide de

--set prometheusOperator.createCustomResource=false

prometheusOperator: createCustomResource: false

@GramozKrasniqi
Que faire si vous ne créez pas de CRD manuellement? C'est l'une des solutions de contournement du problème

@vsliouniaev si vous ne les créez pas, vous obtiendrez l'erreur.
Mais dans le numéro original dans Informations supplémentaires, @rnkhouse a déclaré qu'il créait les CRD manuellement.

Nous utilisons prometheus-operator dans notre déploiement, en un mot, nous avons mis à niveau prom-op de 6.9.3 à 8.3.3 et avons toujours échoué avec "Erreur: contexte annulé".
De plus, nous installons toujours crds avant d'installer / mettre à niveau l'opérateur-prometheus, et ofc nous n'avons pas changé ou mis à jour ces crd-s.

J'essaie de rafraîchir crds, qui dans 'github.com/helm/charts/tree/master/stable/prometheus-operator' mentionne (comme ce kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator /master/example/prometheus-operator-crd/alertmanager.crd.yaml), mais ceux-ci n'existent plus.
Après cela, j'essaye à partir d'ici: https://github.com/helm/charts/tree/master/stable/prometheus-operator/crds
Mais cela a encore échoué.

J'ai presque abandonné, mais avec ces CRD, le déploiement de la barre a réussi! yeyyyy
https://github.com/coreos/kube-prometheus/tree/master/manifests/setup

Ma configuration:

Version Kubernetes: v1.14.3
Version Kubectl: v1.14.2
Version du casque: 2.14.3
Version de l'opérateur Prometheus: 8.3.3

Purgez l'opérateur prometheus de k8s!

Puis:

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

C'est tout !

Cela signifie-t-il qu'il est nécessaire de faire une installation propre et de perdre les données de métriques historiques?

Après avoir amélioré AKS k8s à 1.15.5, barre à 3.0.1 et diagramme d'opérateur Prometheus à 8.3.3, le problème a disparu.

Notre solution de contournement consiste à conserver l'image de l'opérateur prometheus sur la v0.31.1.

travaillé pour moi aussi sur AKS v1.14.8 et barre + barre v2.16.1 et changer l'image de l'opérateur en v0.31.1

La création manuelle de CRD aide au moins sur Azure.
Commencez par créer des crds à partir de ce lien https://github.com/coreos/prometheus-operator/tree/release-0.34/example/prometheus-operator-crd
"kubectl create -f alertmanager.crd.yaml" et ainsi de suite pour tous les fichiers
Puis
helm install prometheus-operator stable / prometheus-operator --namespace monitoring --version 8.2.4 --set prometheusOperator.createCustomResource = false

dans azur kubernetes fonctionne, merci

J'ai pu contourner ce problème en suivant la section «Helm ne parvient pas à créer des CRD» dans readme.md. Je ne sais pas comment ils sont liés, mais cela a fonctionné.

Étape 1: créer manuellement le 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

Étape 2:
Attendez que les CRD soient créés, ce qui ne devrait prendre que quelques secondes

Étape 3:
Installez le graphique, mais désactivez le provisionnement CRD en définissant prometheusOperator.createCustomResource = false

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

Merci, cela a fonctionné pour moi avec le cluster AKS. a dû changer l'URL des 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 stable / prometheus-operator --name prometheus-operator --namespace monitoring --set prometheusOperator.createCustomResource = false

Fermeture. On dirait que cela a été résolu depuis, selon les trois derniers commentateurs. Merci!

Cette page vous a été utile?
0 / 5 - 0 notes