Как переместить адаптер Прометей в другое пространство имен? - PullRequest
0 голосов
/ 07 февраля 2020

Пока у меня есть Prometheus и адаптер Prometheus в разных пространствах имен: text

Я пытался настроить адаптер YML, но мне это не удалось: apiVersion: apps / v1 type: Метаданные развертывания:

  annotations:
    deployment.kubernetes.io/revision: "2"
  creationTimestamp: "2020-01-30T08:49:05Z"
  generation: 2
  labels:
    app: prometheus-adapter
    chart: prometheus-adapter-2.0.1
    heritage: Tiller
    release: prometheus-adapter
  name: prometheus-adapter
  namespace: my-custom-namespace
  resourceVersion: "18513075"
  selfLink: /apis/apps/v1/namespaces/my-custom-namespace/deployments/prometheus-adapter
  ...

Но я вижу ошибку:

the namespace of the object (my-custom-namespace) does not match the namespace on the request (default)

Как это исправить?

Ответы [ 2 ]

1 голос
/ 07 февраля 2020

Для руля 2 вы можете установить диаграмму в любом пространстве имен, используя:

helm install stable/prometheus-adapter --name my-release --namespace foo

Имейте в виду, что вам нужно удалить предыдущее.

Это можно сделать, используя helm delete --purge my-release

Также есть очень хорошая статья об изменениях в Helm3 Сломанные изменения в шлеме 3 (и как их исправить) .

1 голос
/ 07 февраля 2020

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

Редактировать:

С Helm2 вам нужно сначала удалить выпуск helm delete --purge release-name, а затем развернуть его в другом пространстве имен как helm install stable/prometheus-adapter --namespace namespace-name

С помощью helm 3, поскольку нет флага --namespace, вам нужно удалить существующее развертывание, а затем повторно разверните его в другое пространство имен, как показано в примере ниже, для развертывания сервера метрик.

$ helm install metricserver stable/metrics-server
Error: the namespace from the provided object "kube-system" does not          match the namespace "default". You must pass '--namespace=kube-system' to perform this operation.

$ helm install metricserver stable/metrics-server --namespace=kube-system
Error: the namespace from the provided object "kube-system" does not match the namespace "default". You must pass '--namespace=kube-system' to perform this operation.

$ kubectl config set-context kube-system --cluster=kubernetes --user=kubernetes-admin --namespace=kube-system
Context "kube-system" created.

$ kubectl config use-context kube-system
Switched to context "kube-system".

$ kubectl config get-contexts
CURRENT   NAME                          CLUSTER      AUTHINFO           NAMESPACE
*         kube-system                   kubernetes   kubernetes-admin   kube-system
          kubernetes-admin@kubernetes   kubernetes   kubernetes-admin
          metallb                       kubernetes   kubernetes-admin   metallb
          nfstorage                     kubernetes   kubernetes-admin   nfstorage

$ helm install metricserver stable/metrics-server
NAME: metricserver
LAST DEPLOYED: 2019-05-26 14:37:45.582245559 -0700 PDT m=+2.942929639
NAMESPACE: kube-system
STATUS: deployed
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...