Контейнеры и оркестрация

Пространство имён Linux

Определение

Пространство имён Linux — это механизм ядра, который даёт входящим в него процессам отдельное представление определённого системного ресурса. Тип пространства задаёт, что именно разделено: список процессов, сетевые интерфейсы или дерево подключённых файловых систем.

Также ищут: Linux namespace · пространство имён ядра · изоляция представления процессов

Зачем это знать

Два приложения могут слушать один и тот же порт в разных сетевых пространствах имён. Но отдельная сеть не выделяет им процессор и память. При выборе контейнерной платформы проверяйте и видимость системных объектов, и ограничения потребления: это разные настройки.

Связи из словаря

Карта понятия

Пространство имён Linux
Доказательная часть

Что подтверждено

  1. Пространство имён представляет определённый системный ресурс отдельным экземпляром для входящих в него процессов. Сетевая изоляция и изоляция списка процессов задаются разными типами пространств.

    Граница применимости: Механизм пространств имён Linux; набор доступных типов зависит от ядра.

  2. Пространства имён разделяют видимость объектов, а cgroup учитывает и ограничивает потребление ресурсов. Отдельный список процессов не задаёт лимит памяти или процессорного времени.

    Граница применимости: Сопоставление пространств имён Linux и cgroup v2.

  3. Два процесса в разных сетевых пространствах имён Linux могут слушать один номер порта без конфликта: у каждого пространства свой набор сетевых сокетов. При общей сети такой изоляции портов уже нет.

    Граница применимости: Разные сетевые пространства имён; проброс порта на основной системе — отдельная настройка.

  4. Один процесс может иметь разные PID внутри своего пространства имён и в родительских пространствах. Поэтому PID 1 в контейнере не означает PID 1 основной системы.

    Граница применимости: Иерархические пространства имён PID в Linux.

  5. Пространство подключений разделяет дерево подключённых файловых систем. Оно само по себе не шифрует файлы и не отменяет права доступа к данным, которые доступны процессу.

    Граница применимости: Пространства подключений Linux; права доступа проверяются отдельно.

  6. Конфигурация среды выполнения может создать новое пространство имён или присоединить контейнер к существующему. Слово «контейнер» не доказывает отдельную сеть или отдельный список процессов.

    Граница применимости: Настройка пространств имён контейнера Linux по OCI.

Граница терминов

Не путать

Пространство имён Linux Группа управления ресурсами

Пространство имён отвечает за видимость системных объектов. Cgroup отвечает за потребление ресурсов. Если контейнер не видит процессы соседей, это ещё не означает, что он не сможет занять общую память.

Перед спецификацией

Что проверить

  1. Перечислите, что нужно разделить: процессы, сеть, подключения файловых систем, пользователей.
  2. Проверьте, какие пространства создаются, а какие контейнер разделяет с основной системой или соседями.
  3. Сопоставьте PID процесса внутри контейнера и на узле при разборе журналов.
  4. Отдельно проверьте порты внутри контейнера и порты, опубликованные на узле.
  5. Проверьте доступные каталоги и права записи в них.
  6. Задайте ограничения CPU и RAM через cgroup: пространства имён их не заменяют.
Открытые основания

Первоисточники

  • Стандарт1
  • Документация2
  • Официальная документация
    namespaces(7) — Linux manual page Linux man-pages project · Linux man-pages 6.18 · проверено

    Описывает отдельные представления системных ресурсов в пространствах имён Linux и перечисляет изолируемые классы объектов.

    Утверждения: 01 · 02 · 03 · 04 · 05 · 06

  • Официальная документация
    Control Group v2 The Linux Kernel documentation · Linux kernel latest documentation · проверено

    Описывает иерархическое распределение ресурсов, контроллеры, ограничения, учёт потребления и пространство имён cgroup.

    Утверждения: 02

  • Первичная спецификация
    Open Container Initiative Runtime Specification Open Container Initiative · OCI Runtime Specification, November 2025 · проверено

    Определяет подготовленный пакет контейнера, config.json, окружение процесса и операции жизненного цикла.

    Утверждения: 06

Карта знаний

Связанные понятия

Из знания — в навык

Курсы по теме

Подтвердите действие