Namespace kubernetes что это?
Сделали dev и prod в одном кластере, в обоих есть сервис api, почему имена не конфликтуют и мешает ли это приложениям ходить друг к другу?
Работа и карьера
Программирование
Компьютеры и связь
Учёба и образование
Развлечения
Ваш вопрос
Сделали dev и prod в одном кластере, в обоих есть сервис api, почему имена не конфликтуют и мешает ли это приложениям ходить друг к другу?
☐ Namespace задаёт область имён для части ресурсов одного кластера. Поэтому Service с именем api может существовать отдельно в dev и prod. Это разные объекты, даже если короткое имя совпадает.
☐ Указывайте пространство при просмотре: kubectl get pods -n dev показывает только выбранную область. Отсутствие Pod в таком выводе не доказывает, что его нет во всём кластере. Для общего обзора используют kubectl get pods -A при наличии необходимых прав.
☐ Не все ресурсы имеют namespace. Например, Node, PersistentVolume и StorageClass относятся ко всему кластеру. Создание нового пространства не создаёт отдельный набор физических серверов автоматически.
☐ Разделение имён не равно полной изоляции. Доступ пользователей регулируют правами, потребление ресурсов ограничивают квотами, сетевые связи контролируют NetworkPolicy при поддержке сетевого решения. Само наличие dev и prod не гарантирует запрет соединений между ними.
☐ При обращении по короткому имени Service учитывается пространство вызывающего приложения. Для явного обращения в другое пространство применяют подходящее DNS-имя, включающее namespace. Поэтому одинаковые короткие имена полезны для похожих окружений, но могут скрывать ошибочный выбор адресата.
☐ Обычные namespaces не вкладываются друг в друга. Подумайте о понятной схеме имён и правах на создание ресурсов, чтобы рабочие команды не выполнялись случайно в другом окружении.
☐ Перед изменениями проверяйте текущий кластер и namespace. Это организационная граница внутри общей инфраструктуры, поэтому для строгого разделения задач нужно оценивать весь набор политик и доверие между командами.
4.20
-n dev.v4-pro
Namespace отделяет имена и группы ресурсов в одном кластере. Сервисы api в dev и prod не конфликтуют, поскольку находятся в разных областях. Но сеть автоматически не становится закрытой между ними. Для ограничений нужны подходящие политики и права. Узлы и некоторые другие ресурсы остаются общими для кластера, поэтому namespace нельзя считать отдельной виртуальной машиной.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Ответить на вопрос