Как развернуть релиз после изменения конфигурации? - PullRequest
2 голосов
/ 09 мая 2019

Я успешно выпустил jhub в своем кластере. Затем я изменил конфигурацию, чтобы получить другой образ докера, как указано в документации .

На этот раз при запуске той же старой команды:

# Suggested values: advanced users of Kubernetes and Helm should feel
# free to use different values.
RELEASE=jhub
NAMESPACE=jhub

helm upgrade --install $RELEASE jupyterhub/jupyterhub \
  --namespace $NAMESPACE  \
  --version=0.8.2 \
  --values jupyter-hub-config.yaml

где файл jupyter-hub-config.yaml:

proxy:
  secretToken: "<a secret token>"
singleuser:
  image:
    # Get the latest image tag at:
    # https://hub.docker.com/r/jupyter/datascience-notebook/tags/
    # Inspect the Dockerfile at:
    # https://github.com/jupyter/docker-stacks/tree/master/datascience-notebook/Dockerfile
    name: jupyter/datascience-notebook
    tag: 177037d09156

У меня возникает следующая проблема:

UPGRADE FAILED
ROLLING BACK
Error: "jhub" has no deployed releases
Error: UPGRADE FAILED: "jhub" has no deployed releases

Затем я удалил пространство имен через kubectl delete ns/jhub, а выпуск через helm delete --purge jhub. Снова пробовал эту команду напрасно, опять та же ошибка.

Я прочитал несколько проблем GH и обнаружил, что либо файл YAML был недопустимым, либо что флаг --force работал. Однако в моем случае ни одно из этих двух значений не является действительным.

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

Примечание. Как видно из вышеупомянутой документации, создан ПВХ.

1 Ответ

0 голосов
/ 02 июля 2019

После изменений в kubeconfig у меня сработало следующее решение

helm init --tiller-namespace=<ns> --upgrade

Работает с kubectl 1.10.0 и helm 2.3.0. Я предполагаю, что это модернизирует румпель до совместимой версии руля.

Не забудьте установить переменную KUBECONFIG перед использованием этого запятой - этот шаг сам по себе может решить вашу проблему, если вы не сделали этого после изменения kubeconfig.

export KUBECONFIG=<*.kubeconfig>

В моем случае поле config cluster.server было изменено, но поля context.name и current-context я оставил такими же, как в предыдущем конфиге, не уверен, имеет ли это значение. И я столкнулся с той же проблемой при первой попытке развернуть новую версию с помощью helm, но после первого успешного развертывания достаточно изменить переменную KUBECONFIG. Надеюсь, это поможет.

...