Модуль подключения несколько сетевых интерфейсов к модулям в Kubernetes (shturval-metacni)

О сервисе

Параметр Значение
Название в интерфейсе Модуль подключения несколько сетевых интерфейсов к модулям в Kubernetes
Системное название (идентификатор) shturval-metacni
Назначение в кластере Подключение нескольких сетевых интерфейсов к подам; мультисетевая конфигурация поверх основной CNI (например, Cilium).
Критический Нет
Публичный репозиторий Multus CNI
Зависимости shturval-metacni-crds, shturval-networking
Неймспейс kube-system

Назначение

shturval-metacni — модуль подключения нескольких сетевых интерфейсов к модулям в Kubernetes на базе Multus. Multus выступает мета-плагином CNI: он подключает к поду один или несколько дополнительных сетевых плагинов поверх основной кластерной CNI (shturval-networking). Позволяет подам использовать дополнительные сети (например, для изоляции или специализированных интерфейсов). Для назначения IP на интерфейсах Multus используется shturval-metacni-ipam (Whereabouts).

Установка из каталога: Сервисы и репозиторииДоступные чарты → вкладка репозитория shturval → чарт shturval-metacni → выберите версию, при необходимости задайте customvalues в блоке спецификации → Установить. Подробнее — Как развернуть новый сервис.

Где настраивать

Сервисы и репозиторииУстановленные сервисы → shturval-metacni → Управлять. При необходимости переопределения параметров чарта, примените изменения через ShturvalServicePatch.

Обратите внимание! Требуется установка в неймспейс kube-system.

Для использования SR-IOV интерфейсов в графическом интерфейсе в кластере дополнительно должны быть установлены:

  • shturval-sriov-crds

Создание дополнительных сетевых интерфейсов

Для подключения дополнительных интерфейсов к подам необходимо создать ресурс NetworkAttachmentDefinition, определяющий конфигурацию CNI для интерфейса, и затем указать его в аннотациях пода:

Пример пода с подключёнными дополнительными интерфейсами
apiVersion: v1
kind: Pod
metadata:
  name: podname
  annotations:
    k8s.v1.cni.cncf.io/networks: macvlan-conf, name-conf
spec:
  containers:
  - name: containername
    command: ["/bin/ash", "-c", "trap : TERM INT; sleep infinity & wait"]
    image: alpine

Где macvlan-conf и name-conf — имена созданных NetworkAttachmentDefinitions.

Для организации мультисетей с разными IP-адресами используйте shturval-metacni-ipam (Whereabouts).


Как развернуть этот сервис — Как развернуть новый сервис.