#kubernetes #kubernetes-statefulset #statefulset
#kubernetes #kubernetes-statefulset #statefulset
Вопрос:
В пределах одного и того же набора с сохранением состояния afaik вы можете взаимодействовать между конкретными модулями, просто ссылаясь на него напрямую, например, так — pod-{0..N-1}.my_service.my_namespace.svc.cluster.local
. (еще немного информации здесь: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-network-id ).
Однако в моем случае у меня есть 2 разных набора с сохранением состояния, и я хочу иметь возможность statefullset1-pod-0
из 1-го набора с сохранением состояния взаимодействовать statefullset2-pod-0
со 2-м набором с сохранением состояния (а также statefullset1-pod-1
с statefullset2-pod-1
, и так далее). Возможно ли это? Если да, не могли бы вы предоставить пример конфигурации?
Ответ №1:
Однако в моем случае у меня есть 2 разных набора с сохранением состояния, и я хочу иметь возможность statefullset1-pod-0 из 1-го набора с сохранением состояния взаимодействовать с statefullset2-pod-0 из 2-го набора с сохранением состояния (а также statefullset1-pod-1 с statefullset2-pod-1 и так далее). Возможно ли это? Если да, не могли бы вы предоставить пример конфигурации?
Да, ваши приложения могут обращаться к другим StatefulSet
, поскольку они обращаются к любой другой службе в кластере, используйте DNS-имя службы. Например. если вы создали службу statefullset2-pod-0
в том же пространстве имен, вы можете получить к ней доступ, http://statefullset2-pod-0
если это http-служба.
Помните, что для StatefulSet вы несете ответственность за создание служб Pod-identity самостоятельно.
Из документации StatefulSet:
В настоящее время для наборов параметров состояния требуется служба без заголовка, которая отвечает за сетевую идентификацию модулей. Вы несете ответственность за создание этой службы.