Перейти к содержимому

Поддержка протокола SCTP ​

В текущей конфигурации платформы протокол SCTP отключён на уровне CNI.
По-умолчанию конфигурация Cilium имеет настройку:

yaml
enable-sctp: 'false'

Для включения поддержки SCTP требуется выполнить настройку на трёх уровнях.

1. Уровень ОС — загрузка модуля ядра ​

На каждом узле кластера должен быть загружен модуль ядра sctp. Для Astra Linux:

bash
modprobe sctp

Для сохранения после перезагрузки:

bash
echo "sctp" >> /etc/modules-load.d/sctp.conf

2. Уровень CNI — включение SCTP в Cilium ​

В конфиге Cilium параметр enable-sctp необходимо изменить на true:

yaml
enable-sctp: 'true'

После изменения конфига требуется перезапуск подов cilium на всех узлах.

3. Уровень Kubernetes ​

Начиная с Kubernetes 1.20 поддержка SCTP включена по умолчанию и не требует явного указания feature gate.
Сервисы и поды с портами протокола SCTP объявляются стандартным образом:

yaml
apiVersion: v1
kind: Service
metadata:
  name: my-sctp-service
spec:
  selector:
    app: my-app
  ports:
    - protocol: SCTP
      port: 36412
      targetPort: 36412
yaml
apiVersion: v1
kind: Pod
metadata:
  name: my-sctp-app
spec:
  containers:
    - name: app
      image: my-app:latest
      ports:
        - containerPort: 36412
          protocol: SCTP

Команда Боцман