Уменьшение количества старых репликаций при развертывании требует переноса данных. - PullRequest
0 голосов
/ 26 ноября 2018

Как насчет ReplicaSet_B и ReplicaSet_A обновить один и тот же БД?Я надеялся, что модули в ReplicaSet_A были остановлены с созданием снимка.Но нет никакого объяснения, подобного этому, в https://kubernetes.io/docs/concepts/workloads/controllers/deployment/. Я думаю, предполагается, что контейнеры запускают онлайн-приложения в модулях.Что делать, если они являются пакетными приложениями?Я имею в виду, что старые модули, принадлежащие старым репликам, будут обновлять базы данных по-старому.Это потребует также проблемы с миграцией данных.

1 Ответ

0 голосов
/ 26 ноября 2018

Да.ReplicaSets (управляемый Deployments) делает два предположения: 1. ваша рабочая нагрузка не имеет состояния и 2. все модули являются идентичными клонами (кроме их IP-адресов).Теперь StatefulSets относятся к некоторым аспектам, например, вы можете назначить блокам определенную идентификацию (например: лидер или последователь), но на самом деле работают только для определенных рабочих нагрузок.Кроме того, абстракции Jobs в Kubernetes не очень-то вам помогут в работе с состоянием.То, на что вы, вероятно, смотрите, это пользовательский контроллер или оператор.Мы собираем хорошие практики и инструменты через stateful.kubernetes.sh , может быть, есть что-то, что может помочь?

...