Я хочу запустить Eventstore в узле Kubernetes. Я запускаю узел с minikube start
, затем применяю этот файл yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
name: eventstore-deployment
spec:
selector:
matchLabels:
app: eventstore
replicas: 1
template:
metadata:
labels:
app: eventstore
spec:
containers:
- name: eventstore
image: eventstore/eventstore
ports:
- containerPort: 1113
protocol: TCP
- containerPort: 2113
protocol: TCP
---
apiVersion: v1
kind: Service
metadata:
name: eventstore
spec:
selector:
app: eventstore
ports:
- protocol: TCP
port: 1113
targetPort: 1113
---
apiVersion: v1
kind: Service
metadata:
name: eventstore-dashboard
spec:
selector:
app: eventstore
ports:
- protocol: TCP
port: 2113
targetPort: 2113
nodePort: 30113
type: NodePort
развертывание, набор реплик и модуль запускаются, но ничего не происходит: Eventstore не печатает в журнал, яне могу открыть свою приборную панель. Также другие службы не могут подключиться к хранилищу событий: 1113 . Никаких ошибок и стручков не вылетает. Единственное, что я вижу в журналах: «В выбранном контейнере еще не зарегистрировано ни одного сообщения».
IПробовал чистый ванильный узел minukube с разными драйверами vm, а также узел с настроенным Ambassador + Linkerd. Результаты одинаковы.
Но когда я запускаю Eventstore в Docker с этим файлом yaml через docker-compose
eventstore:
image: eventstore/eventstore
ports:
- '1113:1113'
- '2113:2113'
Все работает нормально: Eventstore выводит в журналы, другие службы могут подключаться кон и я можем открыть его приборную панель на порту 2113.
ОБНОВЛЕНИЕ: Хранилище событий начало работать примерно через 30-40 минут после развертывания. Я пробовал несколько раз, и пришлось ждать. Другие модули начинают работать практически сразу (через 30 секунд - 1 минута) после развертывания.