Kubernetes — пространства имен

Опубликовано: 18 Февраля, 2023

Предварительное условие: - Kubernetes

Пространство имен Kubernetes — это механизм, который позволяет вам организовывать ресурсы. Это как виртуальный кластер внутри кластера. Пространство имен изолирует ресурсы от ресурсов других пространств имен. Например, у вас должны быть разные имена для развертываний/служб в пространстве имен, но вы можете иметь одно и то же имя для развертывания в двух разных пространствах имен.

По умолчанию Kubernetes имеет 4 пространства имен.

  • kube-system: системные процессы, такие как процессы Master и kubectl, развертываются в этом пространстве имен; таким образом, рекомендуется НЕ СОЗДАВАТЬ ИЛИ ИЗМЕНЯТЬ НИЧЕГО пространства имен.
  • kube-public: это пространство имен содержит общедоступные данные, такие как configMap, содержащий информацию о кластере.
  • kube-node-lease: это пространство имен является сердцебиением узлов. Каждый узел имеет связанный с ним объект аренды. Он определяет доступность узла.
  • default: это пространство имен, которое вы используете для создания ресурсов по умолчанию.

Хотя любые ресурсы, которые вы создаете, будут созданы в пространстве имен по умолчанию, но вы также можете создать свое собственное новое пространство имен и создавать там ресурсы.

Примечание. Избегайте создания пространств имен с префиксом kube-, так как он зарезервирован для системных пространств имен Kubernetes, а также вам не следует пытаться изменять эти пространства имен.

Создание пространства имен:

Вы можете создать свое пространство имен с помощью команды

$ kubectl create namespace your-namespace

Как видите, мы успешно создали пространство имен gfg.

Создание компонента в пространстве имен:

Чтобы создать компонент в пространстве имен, вы можете указать флаг –namespace или указать пространство имен в файле конфигурации.

Способ 1: Использование флага –namespace

$ kubectl apply -f your_config.yaml --namespace=your-namespace

затем вы можете проверить ресурсы в своем пространстве имен, используя kubectl get и указать пространство имен, используя -n

Способ 2: добавление пространства имен в файл конфигурации

Вместо того, чтобы указывать пространство имен с помощью флага –namespace, вы можете изначально указать свое пространство имен только в файле конфигурации.

а затем используйте команду.

$ kubectl apply -f your_config_file.yaml

Следовательно, мы успешно создали компонент в желаемом пространстве имен.