У меня есть 3 разных секрета Kubernetes, и я хочу смонтировать каждый из них в свой собственный Pod, управляемый StatefulSet с 3 репликами.
Можно ли настроить StatefulSet таким образом, чтобы каждый Secret монтировался в свой собственныйПод
Не совсем.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, но для его реализации может потребоваться больше времени.
pod1
pod2
pod3
podN
Во всех случаях вам нужно будет убедиться, что количество секретов соответствует вашему количеству капсул вваш StatefulSet.