k8s - развертывание с сервисной зависимостью - PullRequest
1 голос
/ 19 марта 2019

Я играл с развертыванием k8s - обновляемое обновление, и оно работает очень хорошо. Мне интересно знать, как выполнить развертывание, когда у нас есть сервисная зависимость! Не уверен, правильно ли я объясняю свой вопрос. Это просто сценарий очень высокого уровня!

Давайте рассмотрим этот пример. Я развернул 2 приложения с 10 репликами в каждом, представленные в виде сервисов.

Service-A
  Deployment-A
    Pod-A - v1 - (10)

Service-B
  Deployment-B
    Pod-B - v1 - (10)

Служба A зависит от B. Теперь, как часть выпуска v2, оба приложения должны использовать v2. Сервис B api ожидает несколько дополнительных параметров / немного изменен. Когда мы обновляем оба приложения с более новой версией v2, если Service-B запускается и работает до Service-A, некоторые запросы будут сбойными, так как Service-A все еще находится в v1 (поскольку обновление выполняется). Как мы можем сделать развертывание без каких-либо ошибок здесь? если вы уже используете k8s, то вам лучше всего следовать.

1 Ответ

2 голосов
/ 19 марта 2019

Как показано в « Включение обновлений обновлений в Kubernetes с нулевым временем простоя » из Нилеш Джаянандана , вы можете проверить, поможет ли реализация проверки готовности службе B ждать службы А, находящейся в V2.

Другим подходом может быть использование пакета Helm, как в « Развертывание, масштабирование и обновление приложения в Kubernetes с Helm », которое может смоделировать зависимость, а затем, с помощью helm update, выполнить скользящее обновление.

...