Helm: Освободить «прометей-оператор» не удалось: ошибка rpc: код = Отменено

Созданный на 31 июл. 2019  ·  71Комментарии  ·  Источник: helm/helm

Опишите ошибку
Когда я пытаюсь установить оператор прометея на AKS с помощью helm install stable/prometheus-operator --name prometheus-operator -f prometheus-operator-values.yaml я получаю эту ошибку:

прометей-оператор "не удалось: ошибка rpc: код = Отменено

Проверил с историей:

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

Диаграмма
[конюшня / прометей-оператор]

Дополнительная информация
Я использую следующие конфигурации для развертывания диаграммы:

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

В файле значений: createCustomResource установлено в false ,

Вывод helm version :
Клиент: & version.Version {SemVer: "v2.14.3", GitCommit: "0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState: "clean"}
Сервер: & версия. Версия {SemVer: "v2.14.3", GitCommit: "0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState: "clean"}

Вывод kubectl version :
Версия клиента: version.Info {Major: «1», Minor: «10», GitVersion: «v1.10.4», GitCommit: «5ca598b4ba5abb89bb773071ce452e33fb66339d», GitTreeState: «clean», BuildDate: «2018-06-06T08: 13: 03Z ", GoVersion:" go1.9.3 ", компилятор:" gc ", платформа:" windows / amd64 "}
Версия сервера: version.Info {Major: "1", Minor: "13", GitVersion: "v1.13.7", GitCommit: "4683545293d792934a7a7e12f2cc47d20b2dd01b", GitTreeState: "clean", BuildDate: "2019-06-06T01: 39: 30Z ", GoVersion:" go1.11.5 ", компилятор:" gc ", платформа:" linux / amd64 "}

Облачный провайдер / платформа (AKS, GKE, Minikube и т. Д.):
AKS

questiosupport

Самый полезный комментарий

Мне удалось обойти эту проблему, следуя разделу «Helm не может создать CRD» в readme.md. Не знаю, как они связаны, но это сработало.

Шаг 1. Создайте 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

Шаг 2:
Подождите, пока будут созданы CRD, что займет всего несколько секунд.

Шаг 3:
Установите диаграмму, но отключите подготовку CRD, установив prometheusOperator.createCustomResource = false

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

Все 71 Комментарий

У нас такая же проблема с minikube, поэтому она не специфична для AWS.

У нас такая же проблема с кластерами, развернутыми с помощью kubespray.

Я также вижу проблему в кластерах k8s 12.x и 13.x, развернутых kubespray, в нашем автоматизированном конвейере - 100% отказов. Предыдущая версия prometheus-operator (0.30.1) работает без проблем.
Забавно то, что если я запускаю команду вручную, а не через конвейер компакт-диска, она работает, поэтому я немного не понимаю, в чем может быть причина.

Видел, что сегодня было обновление карты Promethus. Я наткнулся на

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

и я больше не вижу проблемы.

@rnkhouse Можете ли вы проверить последнюю версию диаграммы, упомянутую @ dlevene1 в https://github.com/helm/helm/issues/6130#issuecomment -526977731?

У меня такая же проблема с версией 6.8.1 на 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

У нас такая же проблема с кластерами, развернутыми с помощью kubespray.

Версия Kubernete: v1.4.1
Версия Helm:

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

Версия Прометей-оператора:

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

У меня такая же проблема на акс.

Может ли кто-нибудь воспроизвести эту проблему в Helm 3, или она распространяется как другая ошибка? Я полагаю, что с удалением культиватора это больше не должно быть проблемой.

@bacongobbler Это все еще проблема в 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

Однако это, похоже, другая проблема, чем проблема, поднятая OP.

описание: 'Не удалось выпустить "прометей-оператор": ошибка rpc: код = Отменено desc
= grpc: клиентское соединение закрывается '

Можете ли вы проверить, используете ли вы последнюю бета-версию? Эта ошибка, по-видимому, была исправлена ​​в # 6332, который был выпущен в версии 3.0.0-beta.3. Если нет, можете ли вы открыть новый выпуск?

@bacongobbler Я использую последнюю версию Helm v3.0.0-beta.3.

Мне пришлось вернуться к --version 6.7.3, чтобы правильно установить

Наше обходное решение - сохранить образ оператора Prometheus в версии 0.31.1.

helm.log
Также только что столкнулся с этой проблемой при установке DockerEE kubernetes

После некоторой возни с параметрами установки --debug и т. Д. Теперь я получаю:

Error: release prom failed: context canceled

Изменить: можно попробовать обновить мои версии руля, в настоящее время на v2.12.3
Edit2: обновлено до 2.14.3 и все еще проблематично
grpc: the client connection is closing
Edit3: установлена ​​версия 6.7.3 в соответствии с приведенными выше предложениями, чтобы снова начать работу
Edit4: прикрепленный журнал tiller для неудачной установки как helm.log

связанные: https://github.com/helm/charts/issues/15977

После некоторого покопания с

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

То же самое и с несколькими кластерами, созданными с помощью kops на AWS.
Однако при работе на K3S проблем нет.

@xvzf

Не могли бы вы попробовать возможное исправление в этом пиаре? https://github.com/helm/charts/pull/17090

Я прогнал PR и все тот же Error: release prom failed: context canceled
tiller.log

@vsliouniaev Нет, здесь проблему не исправить

Спасибо за проверку @xvzf и @pyadminn. Я сделал еще одно изменение в том же PR. Не могли бы вы увидеть, поможет ли это?

Только что проверил обновленный PR, но на нашей инфра-странице еще есть: Error: release prom failed: rpc error: code = Canceled desc = grpc: the client connection is closing

К вашему сведению, мы на Kuber 1.14.3
Версия Helm v2.14.3

Мне удалось обойти эту проблему, следуя разделу «Helm не может создать CRD» в readme.md. Не знаю, как они связаны, но это сработало.

Шаг 1. Создайте 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

Шаг 2:
Подождите, пока будут созданы CRD, что займет всего несколько секунд.

Шаг 3:
Установите диаграмму, но отключите подготовку CRD, установив prometheusOperator.createCustomResource = false

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

@vsliouniaev Все еще та же проблема! Хотя обходной путь от lethalwire работает.

Обходной путь lethalwire меня тоже решил.

Итак, 4 дня, когда обходной путь работал и перестал работать, мне пришлось использовать файл CRD из 0.32.0 not master.

Я только что столкнулся с той же проблемой с CRD, которые в настоящее время находятся на главной. Спасибо @Typositoire за ваше предложение использовать

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

Вот почему исправление версии часто является хорошей практикой.

Также была эта проблема, попробуйте отключить admissionWebhooks . В моем случае это помогло.

Установите prometheus-operator chart 6.0.0 и выполните обновление helm --force --version 6.11.0, похоже, это работает на rancher kubernetes 1.13.10 и helm v2.14.3

Обходной путь, предложенный @Typositoire, отлично работал у меня в кластере 1.13.10, созданном kops.

Та же проблема здесь при попытке установить на Azure AKS с kubernetes 1.13.10 и helm v2.14.3 с prometheus-operator-6.18.0. Любое предложение?

CRD установил вручную.

Эта команда не удалась:
helm install --name prometheus-operator stable/prometheus-operator --namespace=monitoring --set prometheusOperator.createCustomResource=false

дать ошибку

Ошибка: выпустить прометей-оператор не удалось: ошибка rpc: код = отменен desc = grpc: клиентское соединение закрывается

РЕДАКТИРОВАТЬ: установка версии 6.11.0 (а также 6.7.3) диаграммы работает:

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

Попробуйте отключить веб-перехватчик контроллера допуска?

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

15 октября 2019 года в 19:32 iMacX [email protected] написал:

Взаимодействие с другими людьми
Та же проблема здесь при попытке установить на Azure AKS с kubernetes 1.13.10 и helm v2.14.3 с prometheus-operator-6.18.0. Любое предложение?

-
Вы получаете это, потому что подписаны на эту ветку.
Ответьте на это письмо напрямую, просмотрите его на GitHub или откажитесь от подписки.

Я боролся с той же проблемой, мне пришлось вручную установить crds, указанные @JBosom, и установить с отключенным веб-перехватчиком.

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

Я получал ту же ошибку при попытке установить v8.0.0 на локальный кластер K8S с помощью Docker для настольных ПК с помощью helm v2.14.3 . Можно было установить только после создания CRD сначала, как было предложено @lethalwire

Я думаю, что у нас достаточно случаев, чтобы определить, что это конкретная проблема с диаграммой оператора прометея.

Я собираюсь закрыть это как что-то, на что у нас нет действенного ответа с нашей стороны, но, пожалуйста, не стесняйтесь продолжать разговор.

Прошу прощения за тираду, но я больше не получаю эту ошибку после обновления до последней версии helm v2.15.2 . 👍

Кажется довольно странным, что от Хелма нет информации о том, что происходит.

Здесь нет журналов отладки, которые не запрашиваются, и люди восстанавливаются до щелчка переключателей и смотрят, поможет ли это.

Что на самом деле означает ошибка? Это индикатор тупика с ожиданиями? Есть ли какие-то другие действия, которые можно выполнить, кроме коллективного пожатия плечами?

Да. Исходная ошибка выглядит как тупик в ожидании завершения веб-ловушки допуска, поскольку отключение веб-ловушки позволяет без проблем установить диаграмму. Просмотр журналов Tiller должен подтвердить проблему.

Helm 3 должен сообщать пользователю правильную ошибку, поскольку в тайм-ауте микширования и отмене запроса из тайм-аута отсутствует уровень gRPC.

Не стесняйтесь предоставлять патчи для Helm 2. Учитывая, что это было улучшено для Helm 3, я пошел дальше и закрыл это как исправленное в новых выпусках.

Надеюсь это поможет.

Исходная ошибка выглядит как тупик в ожидании завершения веб-ловушки допуска, поскольку отключение веб-ловушки позволяет без проблем установить диаграмму.

Этот вывод кажется довольно странным, поскольку решение состоит в том, чтобы либо отключить задание, либо отключить установку хуков CRD. Похоже, что оба они решают проблему, поэтому, похоже, это не проблема, связанная с работой.

Всем, кто сталкивается с этой проблемой - не могли бы вы предоставить результат kubectl describe job чтобы мы могли узнать, какие задания терпят неудачу? Я просил об этом раньше, но все, кажется, указывают, что работы нет.

Тиллер читает следующее:

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

Поэтому мне пришлось вручную удалить этот ресурс. apiserver может иметь больше информации (похоже, что это действительно связано с контроллером доступа).

@desaintmartin Похоже, это происходит для вас при обновлении, а не при установке, верно?

Поскольку Helm 3.0 теперь является GA, и диаграмма работает для нее, сообщите, сможете ли вы сделать это там, и если у вас есть лучшие журналы

Я использую Helm3, но все еще получаю эту ошибку в Azure AKS :(

Я пробовал на графике v8.2.4: если prometheusOperator.admissionWebhooks=false , то prometheus.tlsProxy.enabled=false тоже.

Также, как и то, что сказал вслюняев, что говорят --debug и --dry-run ?

@ truealex81 Поскольку helm3 предназначен для предоставления дополнительной информации об этом, не могли бы вы опубликовать подробные журналы процесса установки?

У меня такая же проблема при развертывании 8.2.4 в Azure AKS.

Версия Шлема:
version.BuildInfo{Version:"v3.0.0", GitCommit:"e29ce2a54e96cd02ccfce88bee4f58bb6e2a28b6", GitTreeState:"clean", GoVersion:"go1.13.4"}

Helm --debug производит такой вывод:

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

Я могу воспроизвести это достоверно. Если есть способ получить более подробные журналы, сообщите мне, и я опубликую здесь вывод

@ pather87 большое спасибо!

Вот порядок того, что должно произойти на графике:

  1. CRD подготовлены
  2. Существует предварительная установка; задание перед обновлением, которое запускает контейнер для создания секрета с сертификатами для крючков доступа. Эта работа и ее ресурсы очищаются в случае успеха
  3. Все ресурсы созданы
  4. Существует задание после установки; после обновления, которое запускает контейнер для исправления созданной конфигурации validationgwebhookconfiguration и изменяет конфигурацию webhook с помощью CA из сертификатов, созданных на шаге 2. Это задание и его ресурсы очищаются в случае успеха.

Не могли бы вы проверить, остались ли у вас неудавшиеся вакансии? Судя по журналам, вы не должны этого делать, потому что все они были успешными.

Присутствуют ли какие-либо другие ресурсы в кластере после того, как произойдет Error: context canceled ?

То же самое здесь при установке оператора прометея:

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 спасибо за ответ!

  1. После развертывания рабочих мест нет.
  2. Развертывания и службы присутствуют в кластере после развертывания, см. Выходные данные kubectl:

kubectl получить все -lrelease = оператор прометея

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

Установка с отладкой :

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

После этого я выполняю: 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

Что я также обнаружил, пытаясь обойти это: проблема сохраняется, если я удаляю диаграмму и CRD впоследствии и снова устанавливаю диаграмму, но проблема не сохраняется, если я не удаляю CRD.

Я опробовал и установил crds заранее и сделал helm install --skip-crds , но проблема все еще сохраняется. Это несколько сбивает с толку.

Следующая строка журнала, которую я ожидал бы после этого, посвящена перехватчикам после установки и обновления, но в вашем случае она не появляется. Я не уверен, что здесь ждет руль

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

Создание CRD вручную помогает, по крайней мере, в Azure.
Сначала создайте crds по этой ссылке https://github.com/coreos/prometheus-operator/tree/release-0.34/example/prometheus-operator-crd
"kubectl create -f alertmanager.crd.yaml" и так далее для всех файлов
потом
helm install prometheus-operator stable / prometheus-operator --namespace monitoring --version 8.2.4 --set prometheusOperator.createCustomResource = false

Спасибо @ truealex81 ! Это работает в Azure.

myenv:
k8s 1.11.2 руль 2.13.1 румпель 2.13.1
prometheus-operator-5.5 ВЕРСИЯ ПРИЛОЖЕНИЯ 0.29 ОК !!!

но:
prometheus-operator-8 ВЕРСИЯ ПРИЛОЖЕНИЯ 0.32 имеет ту же проблему:
«контекст отменен» или «grpc: клиентское соединение закрывается» !!!

я думаю последняя версия prometheus-operator несовместима? !!!

@bierhov, пожалуйста, не могли бы вы разместить ресурсы в пространстве имен после сбоя?

да!
оболочка выполняет "helm ls", я вижу, что мой статус выпуска prometheus-operator "не выполнен", но в пространстве имен, где я установил prometheus-operator, есть все ресурсы prometheus-operator
но,
promethues web не может получить никаких данных!

Не могли бы вы опубликовать ресурсы?

Не могли бы вы опубликовать ресурсы?

извините, я не могу появиться снова, если я не удалю свой стабильный helm env и не сделаю это снова!

@bierhov остались ли у вас неудавшиеся задания после установки?

@bierhov остались ли у вас неудавшиеся задания после установки?

моя версия k8s - 1.11.2, версия румпеля - 2.13.1
если я установлю prometheus-operator версии 8.x
команда shell exec "helm ls", статус задания - сбой.
но я устанавливаю prometheus-operator версии 5.x
shell exec команда "helm ls", статус задания развернут !!!

Не воспроизводится с использованием:

Версия Kubernetes: v1.13.12"
Версия Kubectl: v1.16.2
Версия Helm: 3.0.1
Версия Прометей-оператора: 8.3.3

  1. Установите CRD вручную:

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. Настройте оператора, чтобы он не создавал crds в Values.yaml или при установке с использованием

--set prometheusOperator.createCustomResource=false

prometheusOperator: createCustomResource: false

@GramozKrasniqi
Что делать, если вы не создаете CRD вручную? Это один из способов решения проблемы.

@vsliouniaev, если вы их не создадите, вы получите сообщение об ошибке.
Но в исходном выпуске в Additional Info @rnkhouse заявил, что он создает CRD вручную.

Мы используем prometheus-operator в нашем развертывании, вкратце, мы обновили prom-op с 6.9.3 до 8.3.3 и всегда выходили с ошибкой «Ошибка: контекст отменен».
Также мы всегда устанавливаем crds перед установкой / обновлением prometheus-operator, и, конечно, мы не меняли и не обновляли эти crd-ы.

Я пытаюсь обновить crds, которые упоминаются в 'github.com/helm/charts/tree/master/stable/prometheus-operator' (например, этот kubectl apply -f https://raw.githubusercontent.com/coreos/prometheus-operator /master/example/prometheus-operator-crd/alertmanager.crd.yaml), но их больше не существует.
После этого я пытаюсь сделать это отсюда: https://github.com/helm/charts/tree/master/stable/prometheus-operator/crds
Но это снова не удалось.

Я почти сдался, но с этими crds развертывание руля прошло успешно! yeyyyy
https://github.com/coreos/kube-prometheus/tree/master/manifests/setup

Моя установка:

Версия Kubernetes: v1.14.3
Версия Kubectl: v1.14.2
Версия Helm: 2.14.3
Версия Прометей-оператора: 8.3.3

Очистите прометей-оператора от k8s!

Потом:

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

Это все !

Означает ли это, что необходимо выполнить чистую установку и потерять исторические данные метрик?

После обновления AKS k8s до 1.15.5, helm до 3.0.1 и Prometheus-operator chart до 8.3.3 проблема исчезла.

Наше обходное решение - сохранить образ оператора Prometheus в версии 0.31.1.

работал у меня также на AKS v1.14.8 и helm + tiller v2.16.1 и менял изображение оператора на v0.31.1

Создание CRD вручную помогает, по крайней мере, в Azure.
Сначала создайте crds по этой ссылке https://github.com/coreos/prometheus-operator/tree/release-0.34/example/prometheus-operator-crd
"kubectl create -f alertmanager.crd.yaml" и так далее для всех файлов
потом
helm install prometheus-operator stable / prometheus-operator --namespace monitoring --version 8.2.4 --set prometheusOperator.createCustomResource = false

в лазурном кубернете работает, спасибо

Мне удалось обойти эту проблему, следуя разделу «Helm не может создать CRD» в readme.md. Не знаю, как они связаны, но это сработало.

Шаг 1. Создайте 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

Шаг 2:
Подождите, пока будут созданы CRD, что займет всего несколько секунд.

Шаг 3:
Установите диаграмму, но отключите подготовку CRD, установив prometheusOperator.createCustomResource = false

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

Спасибо, у меня это сработало с кластером AKS. пришлось изменить URL-адрес 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

Закрытие. По словам последних трех комментаторов, похоже, что с тех пор эта проблема решена. Спасибо!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги