Nikolay
https://docs.openstack.org/ironic/latest/admin/multitenancy.html#multitenancy-physnets
J
это мултитеннси
Ааа, у тебя нету.
Nikolay
на хосте есть привзяка к физнету, ты тупо не воткнешь его в другйю провайдер сеть
Nikolay
хотя у меня вот странное говно происходит
Nikolay
ок, пусть будет neutron
Nikolay
какие ему звезды нужны
Nikolay
сеть может и плоская, а аттрибуты должны быть
Nikolay
еще раз
Nikolay
If any port in a port group has a physical network, then all ports in that port group must have the same physical network.
Nikolay
можно выкинуть порт групп
Nikolay
и что то тут намекает, что у порта должен быть --physical-network physnet2
Nikolay
или это опять трудности перевода
Nikolay
из default нейтрон создает порт как для вм
Nikolay
может быть это нормально, и когда нода станет актив ей айроник в нейтроне порт заапдейтит
J
на хосте есть привзяка к физнету, ты тупо не воткнешь его в другйю провайдер сеть
А для чего тебе нейтрон тогда? Не важно мултитенанси или нет, но для ml2 плагина нужен вроде как baremetal механизм какой-нибудь. Тогда нейтрон и айроник сами там будут мутить прописывание physical_network и будет у тебя корректное отображение baremetal портов в нейтрон порты. Эт значит что надо либо networking-baremetal либо networking-generic-switch механизм использовать.
Nikolay
Включен baremetal в ml2
J
В ml2_conf.ini ты в mechanism_drivers прописал, наверное, mechanism_drivers = ...., baremetal.
Nikolay
Ага
J
Ну и дальше, видимо, чтоб работало, тебе надо networking-baremetal настроить. Добавить конфиг со свитчами которыми он должен рулить и все такое. А без этого, вероятно, чо-то будет ломаться. С networking-baremetal проблема в том что он умеет пока, вроде, только netconf. А netconf на стареньких свитчах нету.
J
С твоих слов получается что тебе нейтрон нужен только чтобы конфиги бондов генерить и адреса раздавать?
Nikolay
да, но я думал и в flat должно работать
Nikolay
хорошо, как это работает в случае neutron
J
да, но я думал и в flat должно работать
Я когда разбирался, вроде, выходило что не работает.
Nikolay
переключил на neutron
Nikolay
при запуске инстанса идет сразу networking, потом spawn
J
переключил на neutron
Порты которые тебе щас нейтрон создает с каким binding_vnic_type получаются? Есть ли там в binding_host_id uuid ironic ноды?
Nikolay
а в коде апдейт порта когда она станет active
Nikolay
VNIC Type Normal
J
VNIC Type Normal
А должен быть baremetal. Стало быть, интеграция и не работает.
Nikolay
так я по маку вижу что не работает
Nikolay
/etc/kolla/neutron-server/ml2_conf.ini:mechanism_drivers = openvswitch,baremetal,l2population
Nikolay
вот похоже оно не ходит в baremetal
J
А не работает она потому что нейтрон считает что не надо порт настраивать. Он ваще не понимает что это baremetal порт. Потому что ему нужен local_link_connection, я думаю.
Nikolay
а что в нем должно быть
Nikolay
ну а что туда рисовать
Nikolay
https://docs.openstack.org/ironic/latest/admin/multitenancy.html#multitenancy-physnets
Nikolay
вот по мурзилке там от свича заполняют, тут что затычку ставить?
J
Обязательные два поля. switch_id и port_id. switch_id эт мак свитча. https://docs.openstack.org/ironic/latest/admin/multitenancy.html Но как только туда впишешь свитч, нейтрон начнет пытаться настроить порт, дергая ironic-neutron-agent. А он у тебя небось даже не установлен)
Nikolay
вот именно
Nikolay
а не стоит
Nikolay
только в логах у него пустовато
J
затычка не прокатит, смотри выше. Я тебе предлагаю взять networking-generic-switch вместо networking-baremetal. Но и с ним придется повозиться слегка) Если не хочешь трогать реальные свитчи, надо будет править класс GenericSwitchDevice и ставить затычки на методы в NGS.
J
Ну или искать еще какую-то реализацию baremetal механизма-фальшивки.
J
Но проще звучит альтернатива вручную создавать в нейтроне порты для ironic нод.
Nikolay
т.е. тупо задеплоить ноду на сети flat/vlan на интерфейсе physnetX нет?
Nikolay
а как порт должен выглядеть?
J
Вот, в принципе, в этом древнем багрепорте рассказывается чо происходит. https://bugs.launchpad.net/nova/+bug/1599836
Nikolay
присадил на ноду network neutron
Nikolay
стало ломатся на этапе network - Failure prepping block device
Nikolay
пойду почитаю этот анекдот
Nikolay
в создаваемый порт кроме type baremetal еще что набивать?
J
стало ломатся на этапе network - Failure prepping block device
Он пытается, видимо, сменить сеть на cleaning network или проверить чо-то и из-за того что networkibg-baremetal не настроен получается что невозможно задеплоить. Ну или просто из-за того что у тебя в конфиге ironic cleaning network не прописан.
Nikolay
провижен и клин прописал с id целевой сети
Nikolay
вы прям про меня плохо думаете
Nikolay
но спасибо, лучше перебдеть
J
в создаваемый порт кроме type baremetal еще что набивать?
binding_vif_type = other binding_host_id = uuid ironic ноды mac_address = мак физического порта
J
Наверное, хватит.
Nikolay
Vif type не baremetal?
Nikolay
Не я не помню
Nikolay
Надо писать в конфлюенс
J
Vif type не baremetal?
Нет) baremetal в vnic type
Nikolay
Unable to attach VIF 016c2ede-9d28-40f1-9ae6-a71d91ae7695, not enough free physical ports
Nikolay
выше взрыв трейса ironic
Nikolay
уже хоть чтото
J
Unable to attach VIF 016c2ede-9d28-40f1-9ae6-a71d91ae7695, not enough free physical ports
ЧО там в трейсе? physical_network прописан у baremetal порта?
Nikolay
+-----------------------+--------------------------------------+ | Field | Value | +-----------------------+--------------------------------------+ | address | b4:96:91:a3:52:10 | | created_at | 2023-08-15T16:09:56+00:00 | | extra | {} | | internal_info | {} | | is_smartnic | False | | local_link_connection | {} | | node_uuid | af42cbf6-257e-47c0-9400-3059ce2344ba | | physical_network | physnet2 | | portgroup_uuid | 7de5ea3e-c707-4d40-9315-06598d82ed46 | | pxe_enabled | False | | updated_at | 2023-08-15T16:14:08+00:00 | | uuid | 7e7ea89d-fc44-42a0-b18c-b5697c38499b | +-----------------------+--------------------------------------+
Nikolay
ironic clinet api не смог
Nikolay
пойду рядлм логи посмотрю
J
Ты для начала без портгруппы попробуй хотя б)
Nikolay
ну кстати да
Nikolay
тоже самое
Konstantin
тоже самое
Место проклято, попробуй в другом ЦОДе развернуть :)
Nikolay
да я уже сидром заливаю, обычно помогает, а тут нет
J
А теперь попробуй с network_interface == flat чтоль)
Nikolay
подхватило
Nikolay
я на один из интерфейсов pxe еще накинул
Nikolay
таки надо port group
J
я на один из интерфейсов pxe еще накинул
А, ну сорян что не помог) Я сразу с ngs делал, потому не сильно успел углубиться.
Nikolay
Завелось вроде с бондом
Nikolay
Осталось понять как я сложил пазл