Kubernetes контейнер сродства на основе реплики? - PullRequest
0 голосов
/ 26 августа 2018

У меня есть StatefulSet с 10 репликами, каждая из которых имеет сотни ГБ данных.

Я хотел бы запустить команду резервного копирования для хранилища объектов (например, S3) всего на 1из 10 реплик .(таким образом, данные могут быть загружены в шаге initContainer)

Можно ли запланировать контейнер с использованием сходства на основе идентификатора реплики?Или можно получить идентификатор реплики из переменной среды?

1 Ответ

0 голосов
/ 04 сентября 2018

До сих пор я перебрал 2 решения по этому вопросу:

с помощью переменной $HOSTNAME env, чтобы проверить, что текущий модуль является репликой 0

Это работает, если вы можете терпетьрезервное копирование, когда модуль выполняет

- "[ $HOSTNAME = 'mypod-0' ] && /start-backup.sh || echo 'noop' && sleep 10000"

сценарий, который управляет кластером

, но если модуль должен сбросить состояние на диск перед резервным копированием, затем создайте сценарий (я использовал Node.js) для этого:

  1. уменьшить счет реплики на 1
  2. подключить диск из той реплики, которая была перенесена в резервный модуль
  3. увеличить счет реплики1
...