Как я могу смонтировать один отдельный секрет в каждом модуле, управляемом StatefulSet? - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть 3 разных секрета Kubernetes, и я хочу смонтировать каждый из них в свой собственный Pod, управляемый StatefulSet с 3 репликами.

Можно ли настроить StatefulSet таким образом, чтобы каждый Secret монтировался в свой собственныйПод

1 Ответ

0 голосов
/ 26 февраля 2019

Не совсем.StatefulSet (и любой контроллер рабочей нагрузки в этом отношении) допускает только один шаблон определения модуля (он может иметь несколько контейнеров).Проблема заключается в том, что StatefulSet разработан для N реплик, поэтому вы можете иметь N секретов.Это должен быть SecretStatefulSet: другой контроллер.

Некоторые решения:

  • Вы можете определить один секрет Kubernetes , который содержит все необходимые секреты для всех ваших модулей.Недостатком является то, что вам придется делиться секретом между стручками.Например:

    apiVersion: v1
    kind: Secret
    metadata:
      name: mysecret
    type: Opaque
    data:
      pod1: xxx
      pod2: xxx
      pod3: xxx
      ...
      podN: xxx
    
  • Используйте что-то вроде Хранилище Хашикорпа и храните свой секрет удаленно с помощью таких ключей, как pod1, pod2, pod3,... podN.Вы также можете использовать HSM .Похоже, это более надежное решение IMO, но для его реализации может потребоваться больше времени.

Во всех случаях вам нужно будет убедиться, что количество секретов соответствует вашему количеству капсул вваш StatefulSet.

...