Kubernetes - Создание определенного пространства имен для "сервисов"
В нашей архитектуре микросервисов у нас есть ряд сервисов с отслеживанием состояния:
- MongoDB
- MySQL
- Redis
- ElasicSearch
У нас также есть два Kubernetes namespaces
мы используем для наших различных сред:
- инсценировка
- производство
Мы запускаем каждую из вышеперечисленных служб с сохранением состояния в обеих средах / пространствах имен. Мне было интересно, так как у нас ограничены ресурсы в нашем кластере из-за ограниченного бюджета. Должны ли мы создать третье пространство имен для этих служб и использовать их как для производственных, так и для промежуточных сред? например, создать
Пространство имен "Услуги"?
Какова лучшая практика в этом случае? Есть ли недостатки?
1 ответ
Пространства имен обычно не общаются друг с другом, если вы не используете полные имена.
Использование одного и того же внутреннего сервиса для Staging и Prod звучит как очень рискованная ставка: все, что вы испортили в постановке, будет автоматически в Prod. Наверное, не то, что вы хотите...
но если вы хотите знать, можете ли вы, да, можете, если вы используете FQDN (то есть service-name.svc..cluster.local) для доступа к сервису.