Я и твой кот
Да нормальный у вас процесс выбора продуктов на сайте. Оставьте его в покое. Лучше интерфейс OpenStack Horizon улучшите и расширьте, там много чего стрёмного.
Илья | 😶☮️🐸
Господа, а это норм, что в openstacksdk напрочь отсутствует типизация возвращаемых значений ?
Andrey
Вот я больше за отключение, наверно
snat где делается? Openstack или на самой вм? Не понятная схема своя. Конечно можно все отключить и хотя бы понять, что все работает. Но allowed_pairs более грамотно.
Илья | 😶☮️🐸
Илья | 😶☮️🐸
Илья | 😶☮️🐸
в каких-то методах что-то просвечивается с типизацией, в некоторых пустота, красота
J
в каких-то методах что-то просвечивается с типизацией, в некоторых пустота, красота
Не очень понимаю твоё недовольство) Это ж проблема в документации, а не в языке.
Илья | 😶☮️🐸
Не очень понимаю твоё недовольство) Это ж проблема в документации, а не в языке.
Привычка после нормальных языков, где не приходится на каждый чих переключаться на доку)
J
Привычка после нормальных языков, где не приходится на каждый чих переключаться на доку)
Где приходится на каждый чих заводить новую переменную, потому что старую ты объявил с одним типом, а тебе нужен другой. Эт именно что вопрос привычки.
Pavel
Переменных что-ли жалко? Или ограничение какое, 5 переменных на разработчика в сутки?
J
Переменных что-ли жалко? Или ограничение какое, 5 переменных на разработчика в сутки?
Ваще это уже не по теме всё. В питоне строгой типизации нет, а в опенстеке некому документацию писать. Отсюда все проблемы. А выход из ситуации только один - привыкать к динамической типизации и следить за магическими превращениями данных)
Илья | 😶☮️🐸
банально когда описываешь параметры, сидишь и одним глазом на доку, а другим на IDE ощущения оооочень странные
Илья | 😶☮️🐸
но с документацией там беда, да лето будет весёлым кажись
J
но с документацией там беда, да лето будет весёлым кажись
А ты определись чо тебе нужно и, если подойдет, возьми какой-нибудь из Java SDK.
Илья | 😶☮️🐸
да придумаем что нибудь такое этакое
Artemy
Где приходится на каждый чих заводить новую переменную, потому что старую ты объявил с одним типом, а тебе нужен другой. Эт именно что вопрос привычки.
Уж лучше заводить новую переменную чем пытаться понять какого типа параметр передается в функцию dict? Объект модели? Какая-то вообще-виртуальная-сущность которой не сопоставлено даже модели (типа DriverEphemeralBlockDevice или DriverVolumeBlockDevice в нове)
Я и твой кот
И еще на scala и kotlin)
С языка сняли.
J
Единогласно постановили что на котлине переписывается поганый опенстек с завтрашнего дня)
Aleksey
Посоны, нужна помощь, есть у кого gnocchi. Мне для фикса в openstack-exporter нужен свежи output для /metrics . На сайте как я понял у них какое-то левое говно без пагинации
Aleksey
хотя нет, гоняю, на гоферклауд такая же структура
Denis
PEP 526 -- Syntax for Variable Annotations | Python.org https://www.python.org/dev/peps/pep-0526/
Dmitry
Аннотации без mypy не проверяются же...
Dmitry
Вот если бы кто поддержку mypy к openstacksdk прикрутил, цены бы ему не было. Но это дофига работы, а нас там полторы калеки.
Andrey
Не могу смигрировать вм с локальными дисками(нова) Получаю libvirt.libvirtError: Operation not supported: pre-creation of storage targets for incremental storage migration is not supported Стоит images_type = lvm Вм создаются нормально. Может кто сталкивался?
NS 🇷🇺
либо чет очень старое стоит
Andrey
либо чет очень старое стоит
Я ранее с файлами делал и миграции работали, но сейчас lvm. И это диски новы!!!!, а не циндер.
tsla
народ, в шары долблюсь, тыкните пальцем где и как назначается айпи адрес дляя router ?
tsla
я короче сча пишу terraform модули, иначе у меня нервнов не хватит в cli постоянно руками создавать
tsla
только не надо отправлять в терраформ чатиг, плиз заранее спасибо
Vyacheslav
народ, в шары долблюсь, тыкните пальцем где и как назначается айпи адрес дляя router ?
https://registry.terraform.io/providers/terraform-provider-openstack/openstack/latest/docs/resources/networking_router_v2
tsla
мне надо внутренний айпи прописать + floating
tsla
ага, это типа в openstack_networking_router_interface_v2
tsla
но вот там не могу найти, что б можно было укзаать внутренний айпи типа 192.168.6.1 и floating ip
tsla
+ есть трабла с указанием статик маршрутов , мне надо 3 статик маршрута добавить в примере только с один маршрутом если указываю за раз сразу 3 маршрута, то выдаёт ошибку, но если по очерёдно меняю и прогоняю, то он добавляет маршруты
Vyacheslav
https://registry.terraform.io/providers/terraform-provider-openstack/openstack/latest/docs/resources/networking_subnet_v2
Fedor
resource "openstack_networking_router_v2" "rtr_ops" { external_fixed_ip { ip_address = айпипа subnet_id = сабнет } } вот так назначается IP из внешней сети
tsla
resource "openstack_networking_router_route_v2" "router_route_1" { depends_on = ["openstack_networking_router_interface_v2.int_1"] router_id = openstack_networking_router_v2.router01.id destination_cidr = var.router["destination_cidr1"] destination_cidr = var.router["destination_cidr2"] destination_cidr = var.router["destination_cidr3"] next_hop = var.router["next_hop"] }
Fedor
порт внутренней сети втыкаешь через resource "openstack_networking_router_interface_v2" "int"
Vyacheslav
gateway_ip
Fedor
router_route_1 router_route_2 и router_route_3 например
tsla
бле, понял, хотел как можно меньше строк сделать, ок спс
Fedor
внешний - это там, где default gateway роутера, из той же сетки, где и флоатинги
tsla
у меня просто чуть ранее создаётся сеть = 192.168.6.0.24 для сервисов и вот в нём мне надо роутер развернуть ### create network resource "openstack_networking_network_v2" "net-internal" { name = var.net-internal["network_name"] description = var.net-internal["description"] admin_state_up = var.net-internal["admin_state_up_network"] mtu = var.net-internal["mtu"] }
tsla
ок, спасибо, мужики
Fedor
роутер создаётся сам по себе, ты потом ему указываешь external_network_id и он в неё воткнётся) а дальше создаёшь openstack_networking_router_interface_v2 с router_id = твой_роутер и subnet_id = сабнет192.168.6.0/24
Fedor
ещё рекомендую почитать про for_each, cidrhost и прочие удобные вещи в тф, будет меньше строчек в коде, но те будут сильно веселей)
tsla
ещё рекомендую почитать про for_each, cidrhost и прочие удобные вещи в тф, будет меньше строчек в коде, но те будут сильно веселей)
ну cidrhost я юзаю при создании инстансов , типа = = = private_ip = "${cidrhost( var.instance["ip"] + count.index+1)}"
tsla
а вот где про for_each найти инфу?
Vyacheslav
а вот где про for_each найти инфу?
https://www.terraform.io/docs/language/meta-arguments/for_each.html
tsla
Это атрибут у сабнет
то есть я могу костыльно сделать типа - ### create router resource "openstack_networking_router_v2" "router01" { name = var.router["router_name"] admin_state_up = var.router["admin_state_router"] external_network_id = var.external_gateway enable_snat = var.router["enable_snat"] } # configure router interface resource "openstack_networking_router_interface_v2" "router01_int1" { router_id = openstack_networking_router_v2.router01.id subnet_id = openstack_networking_subnet_v2.net-internal-subnet.id } ### тут я беру floating ip resource "openstack_networking_floatingip_v2" "router01_fip1" { pool = "public" } ### назначаю fip на интерфейс resource "openstack_networking_floatingip_associate_v2" "router01_fip1_asct" { floating_ip = openstack_networking_floatingip_v2.router01_fip1_asct port_id = "${openstack_networking_port_v2.router01_int1.id}" }
tsla
только ошибку выдаёт похоже ему не нравится - - - port_id = "${openstack_networking_port_v2.router01_int1.id}" типа нужен port_id
tsla
хммм, похоже надо ещё раз доку перечитать
Jürgen
У тебя синтаксис еще в hcl 1
tsla
$ terraform --version Terraform v0.15.3 on linux_amd64
tsla
У тебя синтаксис еще в hcl 1
ок, пошёл дальше курить, тэнкс!
Jürgen
$ terraform --version Terraform v0.15.3 on linux_amd64
${} в переменных закончились на 12 тераформе
Jürgen
port_id = openstack_networking_port_v2.router01_int1.id
tsla
ок, спасибо