Bug 33296 - Unable to manage bridge interfaces on 2.6.32 OpenVZ kernels
Summary: Unable to manage bridge interfaces on 2.6.32 OpenVZ kernels
Status: CLOSED WONTFIX
Alias: None
Product: Branch p8
Classification: Distributions
Component: etcnet (show other bugs)
Version: не указана
Hardware: all Linux
: P3 major
Assignee: Andrey Cherepanov
QA Contact: qa-p8@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-03-29 12:42 MSK by Nikolay A. Fetisov
Modified: 2019-12-17 11:12 MSK (History)
9 users (show)

See Also:


Attachments
Fallback to use $BRCTL if brctl config file exists (2.02 KB, patch)
2017-03-29 13:06 MSK, Nikolay A. Fetisov
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Nikolay A. Fetisov 2017-03-29 12:42:20 MSK
Начиная с 0.9.10-alt19, после перехода с использования brctl на 
ip link ... type bridge для работы с bridge-интерфейсами, была потеряна
возможность настройки bridge-интерфейсов на ядрах 2.6.32, т.е. OpenVZ.

Интерфейс ip link ... type bridge на этих ядрах может только создавать
интерфейсы, при любых настройках (как параметров, так и добавлении/удалении
интерфейсов в bridge) выдаётся ошибка
NETLINK answers: Operation not supported

Плюс, при этом ip link завершается с кодом ошибки, что прерывает дальнейшую
работу скриптов настройки интерфейса.
Comment 1 Nikolay A. Fetisov 2017-03-29 13:06:56 MSK
Created attachment 7022 [details]
Fallback to use $BRCTL if brctl config file exists

Исходя из того, что проблема затрагивает только конкретное старое ядро:

- восстанавливаются переменные BRCTL/DEFAULT_BRCTL, где они были убраны 
  (а убраны они были не везде),
- при нахождении в каталоге конфигурации интерфейса файла brctl идёт переключение
  на использование brctl,
- при отсутствии brctl - идёт работа через 'ip link ... type bridge';
- добавляется игнорирование ошибок в вызовах ip link ... type bridge; 
  shutdown-bri при этом интерфейсы из bridge'а не удалит, но работу продолжит, 
  и они в любом случае уйдут при вызове destroy-bri.
Comment 2 Vitaly Lipatov 2018-12-12 20:42:57 MSK
Вставлю сюда пример использования:

# cat /etc/net/ifaces/breth0/brctl
stp AUTO on

# cat /etc/net/ifaces/breth0/options
BOOTPROTO=static
TYPE=bri
HOST=enp4s0

Потом на этот бридж навешивается OpenVZ (из конфига):
NETIF="ifname=breth0,bridge=breth0,mac=00:18:51:6C:44:0E,host_ifname=veth210.0,host_mac=00:18:51:A7:5A:F2"

сеть настраивается так:
# cat /etc/vz/vznet.conf
EXTERNAL_SCRIPT="/usr/sbin/vznetaddbr"

Ну и там вызывается brctl:
# grep brctl /usr/sbin/vznetaddbr
    brctl addif "$bridge" "$host_ifname"

И незавершённое обсуждение в devel:
https://lists.altlinux.org/pipermail/devel/2018-November/205982.html

Для меня эта задача актуальна тем, что обновлением etcnet в «стабильном» p8 сломали настройку сети.
Comment 3 Repository Robot 2019-03-13 16:48:03 MSK
etcnet-0.9.18-alt2 -> sisyphus:

Mon Mar 11 2019 Andrey Bychkov <mrdrew@altlinux> 0.9.18-alt2
- iface status check for ifdown added (Closes: #22658)
- loading of kernel module 8021q disabled in VE (patch by Denis Yagofarov) (Closes: #13607)
- dhcpd service stop fixed (Closes: #19582)
- fixed unable to manage bridge ifaces on 2.6.32 OpenVZ kernels (patch by Nikolay A. Fetisov) (Closes: #33296)
Comment 4 Dmitry V. Levin 2019-03-17 00:48:13 MSK
В etcnet-0.9.18-alt3 код идентичен etcnet-0.9.18-alt1.
Comment 5 mrdrew@altlinux.org 2019-03-18 11:00:28 MSK
Бага висит на сизифе, а ядра 2.6.32 в сизифе нет, так почему бы ее не закрыть?
Comment 6 Anton Farygin 2019-03-18 11:11:55 MSK
Закрыта с неправильным диагнозом. 
Надо закрывать как WONTFIX, т.к. исправлять это не будем в связи с концом ovz в Sisyphus.
Comment 7 Michael Shigorin 2019-03-18 18:42:06 MSK
...или перевесить на p8.
Comment 8 Vitaly Lipatov 2019-12-16 19:43:26 MSK
После обновления etcnet в p8 к создаваемым bridge-интерфейсам перестала добавляться физическая сетевая карта, указанная в параметра HOST файла options.

etcnet-0.9.16-alt1.M80P.2

помогает откат на 0.9.11-alt2.M80P.1

Я хотел бы обратить внимание, что подобная поломка в стабильном бранче p8 недопустима: при штатном обновлении системы ломается сеть и сервер становится недоступным.
Comment 9 Anton Farygin 2019-12-17 07:00:56 MSK
На каком ядре ?
Comment 10 Nikolay A. Fetisov 2019-12-17 10:15:39 MSK
(В ответ на комментарий №8)
> После обновления etcnet в p8 к создаваемым bridge-интерфейсам перестала
> добавляться физическая сетевая карта, указанная в параметра HOST файла options.

Там ещё, как минимум, сломано создание bonding-интерфейсов - по той же причине,
на 2.6.32 у 'ip link' их настроить не получается.

Хотя всё это уже малоактуально, EOL OVZ6 был в ноябре 2019 г.
Comment 11 Vitaly Lipatov 2019-12-17 11:08:32 MSK
(В ответ на комментарий №9)
> На каком ядре ?
2.6.32-ovz-el-alt162
Comment 12 Vitaly Lipatov 2019-12-17 11:10:59 MSK
(В ответ на комментарий №10)
> (В ответ на комментарий №8)
> > После обновления etcnet в p8 к создаваемым bridge-интерфейсам перестала
> > добавляться физическая сетевая карта, указанная в параметра HOST файла options.
> 
> Там ещё, как минимум, сломано создание bonding-интерфейсов - по той же причине,
> на 2.6.32 у 'ip link' их настроить не получается.
> 
> Хотя всё это уже малоактуально, EOL OVZ6 был в ноябре 2019 г.
Это хорошая идея — ломать в  системе компоненты, по которым закончилась поддержка.
Но мне кажутся странными изменения в стабильном бранче, ломающие совместимость.
Comment 13 Anton Farygin 2019-12-17 11:12:27 MSK
на этом ядре официально не выпускалось продуктов и оно не входит в наши тестовые сценарии.

Использование такого ядра - это риски тех, кто сделал такой выбор.