Yuriy
Убунту там прометеус с графаной делают.
Yuriy
Даже тот же мониторинг с OpenStack.
Yuriy
Но если писать свой чарм, то и ELK в принципе можно запилить. 😁
Yuriy
В отличие от Ansible там чистый python, со всеми вытекающими.
Yuriy
Чармы это по сути проект на питоне.
Yuriy
Каждый чарм.
Yuriy
Сам Juju на Go написан.
Yuriy
Тут зависит от криворукости разработчика чарма, как показала практика.
Yuriy
Иногда слишком замудренные.
Yuriy
Поэтому мы свои пишем.
Yuriy
А если всё правильно написать, то той же БД можно управлять через juju, вообще не заходя в БД.
Yuriy
Иногда не пишут защиту от дураков, сделал не тот релейшен, у тебя все скривело...
Yuriy
Тут больше вопросов не к самой juju а к разработчикам чармов.
Yuriy
Замудренная. С этим я согласен.
Yuriy
Не обязательно yaml. Ты можешь в баш скрипте все описать, и на машинке с juju клиентом его запустить... 😁
Yuriy
Только много придется писать ...--config... 😁
Yuriy
Время будет, хочу к ней Debian прикрутить и на него чармы писать.
Yuriy
Можно без MaaS. Достаточно juju научить с Debian работать. Но да, это млин тонна работы.
Yuriy
Получится по факту уже свой форк.
Yuriy
Juju напрямую работает с тем же OpenStack без MaaS
Nikolay
У кого есть айроник свежий? Эта козлина не хочет bond в network_config, валидацию не проходит
Nikolay
При этом, я ошибся циферкой в mode и так кушает
Nikolay
это как понимать
Nikolay
ironic/tests/json_samples/network_data.json: "bond_mode": "802.1ad",
Nikolay
серьезно?
Nikolay
ironic/api/controllers/v1/network-data-schema.json
Nikolay
"bond_mode": {
"$id": "#/definitions/bond/properties/bond_mode",
"type": "string",
"title": "Port bonding type",
"enum": [
"802.1ad",
"balance-rr",
"active-backup",
"balance-xor",
"broadcast",
"balance-tlb",
"balance-alb"
],
"examples": [
"802.1ad"
]
},
Nikolay
это в какой автошколе или курсе поваров?
J
Что не так?
J
Возмущен что не циферками?
Slava
Nikolay
google 802.1ad
J
Так что не так?
Slava
:)
Nikolay
еще один двоечник:)
Nikolay
lacp vlan - совпадает же и там и там 4 буквы
Petr
Тут правильно
https://docs.openstack.org/nova/latest/_downloads/9119ca7ac90aa2990e762c08baea3a36/network_data.json
Возможно в ironic ошибка
J
А
Nikolay
а я кому пишу пути исходников?
J
Ну перепутали одну цифру
J
Штош
Nikolay
git remote -v
origin https://github.com/openstack/ironic.git (fetch)
Nikolay
пойду немного патчить
Slava
Nikolay
ну я же не просто так на это воткнулся
Slava
Petr
У меня на йога не аффектило....
Проверяю всегда получившийся network_data.json вот такой коммандой
cloud-init devel net-convert
J
Так а в валидация тоже 802.1 вместо 802 3? Или ток в тестах?
Slava
Скорее всего в коде есть отдельная схема
Nikolay
Invalid network_data: 'bond' is not one of ['bridge', 'dvs', 'hw_veb', 'hyperv', 'ovs', 'tap', 'vhostuser', 'vif', 'phy'] (HTTP 400)
Petr
Можно кусок network_data.json, где обьявляется bond
У меня это выглядит так
"links": [
{
"ethernet_mac_address": "MAC1",
"id": "eth0",
"type": "phy",
"mtu": "9000"
},
{
"ethernet_mac_address": "MAC2",
"id": "eth1",
"type": "phy",
"mtu": "9000"
},
{
"id": "bond0",
"type": "bond",
"mtu": "9000",
"bond_mode": "802.3ad",
"bond_xmit_hash_policy": "layer3+4",
"bond_links": [
"eth0",
"eth1"
]
},
Nikolay
так я такой скармливаю и оно отфутболивает
Petr
Такое ощущение, что не срабатывает фильтр на definitions/l2_bond, там как раз массив с обьявлениями интерфейсов. Там же и Вланы прописываются....
Slava
Slava
Как я понял, надо в l2_bond
Slava
Nikolay
{
"id": "bond0",
"type": "bond",
"bond_links": [
"interface0",
"interface1"
],
"ethernet_mac_address": "b4:96:91:a3:52:10",
"bond_mode": "lacp",
"bond_xmit_hash_policy": "layer3+4",
"bond_miimon": 100
}
Nikolay
ну это с lacp я эксперементирвал
Petr
Вот это убери ethernet_mac_address - там нет такого ключа :)
Nikolay
это какой mac навялит от интерфеса или сам придумает
Slava
Nikolay
{
"links": [
{
"id": "interface0",
"type": "phy",
"ethernet_mac_address": "b4:96:91:a3:52:10",
"mtu": 9138
},
{
"id": "interface1",
"type": "phy",
"ethernet_mac_address": "b4:96:91:a3:52:12",
"mtu": 9138
},
{
"id": "bond0",
"type": "bond",
"bond_links": [
"interface0",
"interface1"
],
"bond_mode": "802.3ad",
"bond_xmit_hash_policy": "layer3+4",
"bond_miimon": 100
}
],
Nikolay
Invalid network_data: 'bond' is not one of ['bridge', 'dvs', 'hw_veb', 'hyperv', 'ovs', 'tap', 'vhostuser', 'vif', 'phy'] (HTTP 400)
Nikolay
поставлю 802.1ad проглотит
Nikolay
а в котором месте эта валидация проиходит?
Petr
Там по всему коду размазано.....
Как раз валидирует по ironic/ironic/api/controllers/v1
/network-data-schema.json
Petr
Но это работает, только если применена опция [--network-data <network data>]
Nikolay
это понятно, скорее все контенер api
Nikolay
ну а я то как еще могу такой отлуп получить
Nikolay
baremetal node set --network-data network.json
Petr
Попробуй этот json подменить https://docs.openstack.org/nova/latest/_downloads/9119ca7ac90aa2990e762c08baea3a36/network_data.json
Nikolay
я руками пробежался пропатчил
Nikolay
api контенер не сработл
Nikolay
нова не может подтягивать это?
Petr
Смотри - этот файл можно обьявить в конфиге
cfg.StrOpt(
'network_data_schema',
default='$pybasedir/api/controllers/v1/network-data-schema.json',
help=_("Schema for network data used by this deployment.")),
и не менять код
Nikolay
это контенеры, его туда еще затащить надо
Nikolay
мне проверить побырому
Slava