Модуль управления сетями кластера (shturval-networking)
О сервисе
| Параметр | Значение |
|---|---|
| Название в интерфейсе | Модуль управления сетями кластера |
| Системное название (идентификатор) | shturval-networking |
| Назначение в кластере | Сетевое взаимодействие между контейнерами, подами, узлами и сервисами; CNI-плагин для кластера. |
| Критический | Да |
| Публичный репозиторий | Cilium |
| Зависимости | shturval-monitoring-crds |
| Неймспейс | kube-system |
Назначение
shturval-networking — модуль управления сетями кластера на базе Cilium CNI. Обеспечивает сетевую функциональность и взаимодействие между компонентами кластера. При совместном использовании с Multus CNI (shturval-metacni) может потребоваться ShturvalServicePatch с cni.exclusive: false.
Развёртывание и управление
shturval-networking — критический сервис платформы. В платформе «Штурвал» его включение и жизненный цикл в кластере обеспечивает cluster-manager (сервис платформы); объекты ShturvalServiceConfig (SSC) для Cilium создаются и сопровождаются как часть платформенной конфигурации. В поставке модуль опирается на CRD мониторинга: в кластере должен быть учтён компонент shturval-monitoring-crds (см. зависимости в таблице выше).
Рекомендация: не правьте ShturvalServiceConfig вручную для смены параметров Cilium, Hubble и режима cni.exclusive — объект относится к платформенной конфигурации и может быть перезаписан при обновлениях. Изменения вносите через ShturvalServicePatch (SSP), как в примерах ниже на этой странице (Multus, Hubble).
Где настраивать
Сервисы и репозитории → Установленные сервисы → shturval-networking → Управлять.
Совместное использование с Multus CNI
При одновременном использовании Cilium CNI (shturval-networking) и Multus CNI (shturval-metacni) необходимо применить ShturvalServicePatch с cni.exclusive: false:
ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: shturval-networking-cni
spec:
shturvalServiceConfigName: shturval-networking
customvalues:
cni:
exclusive: false
После применения ShturvalServicePatch перейдите в Установленные сервисы → shturval-networking → Управлять. На вкладке Примененные ShturvalServicePatch отобразится загруженный патч; когда он будет применён, на вкладке Сервис статус изменится на Patched.
Скриншоты применения патча

Cilium Hubble
Hubble обеспечивает наблюдение за сетевым взаимодействием между компонентами кластера. Для включения Hubble примените ShturvalServicePatch:
ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: shturval-networking-hubble
spec:
shturvalServiceConfigName: shturval-networking
customvalues:
hubble:
enabled: true
relay:
enabled: true
ui:
enabled: true
Для временного проброса порта к UI Hubble выполните команду:
kubectl -n kube-system port-forward services/hubble-ui 12000:80
Hubble UI будет доступен по адресу: http://127.0.0.1:12000
Скриншоты настройки Hubble

Контроллер Gateway API в Cilium
CRD Gateway API поставляет CRD Gateway API, но не обрабатывает трафик. Для маршрутизации необходим контроллер, связанный с GatewayClass. В платформе «Штурвал» вы можете включить контроллер Gateway API на базе Cilium io.cilium/gateway-controller.
Для включения контроллера в кластере примените ShturvalServicePatch:
ShturvalServicePatch
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: shturval-networking-cilium
spec:
customvalues:
gatewayAPI:
enabled: true
shturvalServiceConfigName: shturval-networking
После применения ShturvalServicePatch перейдите в Установленные сервисы → shturval-networking → Управлять. На вкладке Примененные ShturvalServicePatch отобразится загруженный ShturvalServicePatch. Когда он будет применён, Cilium развернёт контроллер Gateway API и создаст соответствующий GatewayClass с именем cilium.
Для выделения адресов Gateway создайте ресурс с пулом IP-адресов CiliumLoadBalancerIPPool или настройте CIDR или диапазон IP-адресов в ConfigMap kubevip — см. подробнее в разделе Конфигурация доступных IP-адресов.
Пример CiliumLoadBalancerIPPool:
apiVersion: "cilium.io/v2"
kind: CiliumLoadBalancerIPPool
metadata:
name: pool
spec:
blocks:
- cidr: "192.168.0.216/29"
Дополнительно
- Как управлять CustomValues сервисов — применение ShturvalServicePatch.
- CRD модуля Gateway API — установка CRD Gateway API в кластер.
- Gateway API — обзор и настройка GatewayClass, Gateway и маршрутов.
- Модуль подключения нескольких сетевых интерфейсов — Multus CNI.
- Hubble UI — просмотр сетевого взаимодействия через Hubble.