Даниил
Для будущих поколений, публикуем рецепт, который сработал (на основании доки): https://docs.openstack.org/nova/latest/admin/troubleshooting/rebuild-placement-db.html
Дроп базы плейсмента и пересоздание в итоге помогли. Было несколько неочевидных моментов, прежде чем удалось заставить работать плейсмент заново. Ну и в целом неочевидно, что за хрень с плейсментом произошла и почему, так что гифка вполне отражает )))
Aleksander baltazor
Приветствую , с вашего позволения не много глупый вопрос. Поднял опенстек, соединил его с тестовым цеф кластером через cinder . Все работает но задался вопрос. Нормальным ли подходом считается , что если нужен доп диск у инстанса нужно идти и руками создавать сперва volume а потом добавлять его к инстансу ?
DDR
Дроп базы плейсмента и пересоздание в итоге помогли. Было несколько неочевидных моментов, прежде чем удалось заставить работать плейсмент заново. Ну и в целом неочевидно, что за хрень с плейсментом произошла и почему, так что гифка вполне отражает )))
Вот у меня сегодня не хотела виртуалка создаваться на определенном гипере - Remote.NoValidHost_Remote: No valid host was found, я уже агенты по перезапускал и тд, только не ребутил, добавил вот эту строчку и в итоге чего то оно заработало. Это может быть связано или магия ?)))
Artemy
Подключение диска которого не существует - первый шаг к сексу с нарисованной женщиной!
Aleksander baltazor
а как ты можешь добавить то, чего еще не существует?
Тут скорее вопрос был как сделано в прохмох что ли, что просто добавляешь диск новый а он уже под капотом создает volume наверное , но давно не ковырял прохмох по этому могу ошибаться
Aleksander baltazor
Я без притензий если что , просто интересно :)
Artemy
При создании инстанса можно указать block_device_mapping в котором указать требования к волюму который будет создан автоматически. Но мне почему-то кажется, что ты путаешь фронтовую хотелку и API. В майловском облаке например это реализовано на фронте - при создании волюма можно сразу указать инстанс к которому он подключится после создания.
J
Тут скорее вопрос был как сделано в прохмох что ли, что просто добавляешь диск новый а он уже под капотом создает volume наверное , но давно не ковырял прохмох по этому могу ошибаться
Ну proxmox эт коробочное решение для домашних экспериментаторов и энтерпрайзных админов. Там всё что происходит под капотом от тебя скрыто. А тут все относительно прозрачно, но нет готовых удобств. Чтобы добавить новый диск, его нужно создать сначала. Поэтому сначала создается диск. А чтобы диск не просто висел, его надо прицепить к вм, вот тебе и второй вызов. Если хочешь одним действием, можешь себе баш скрипт или кастомный метод в openstackclient сделать, там будет две строчки.
J
То есть, сам вопрос вызван тем что подходишь к опенстеку не как к фреймворку, а как к волшебному коробочному решению, где всё за тебя продумали и предусмотрели.
Ivan
А разве в ванильном horizon нельзя дополнительный диск, в меню создания ВМ, создать и добавить?
Aleksander baltazor
В целом я понял , спасибо
NS 🇷🇺
Aleksander baltazor
Спасибо ☺️
Danila
Умеет ли Glance загружать образы из хранилищ, где для скачивания нужна авторизация ?
Danila
есть ли какие-то плагины ?
J
Умеет ли Glance загружать образы из хранилищ, где для скачивания нужна авторизация ?
Издалека начинаешь) Ты скажи конкретно какое хранилище интересует.
J
Artifactory/Harbor
И там прям у вас хранятся образы для виртуалок?
J
То есть, нет.
J
Тогда вопрос что за задача стоит?
Илья | 😶☮️🐸
Хочу тоже накинуть! Как проводить синхронизацию всех образов, если количество регионов постоянно растёт ? Есть наработки с терраформом, но там какая-то упоротая механика итерации по спискам (в списках регионы)
Danila
То есть, нет.
то есть да
Danila
в артифкатори лежат образа
Илья | 😶☮️🐸
Среда - малая пятница, да?)
А четверг- подготовка к пятнице!
J
в артифкатори лежат образа
И нужно чтобы glance с учетом всех политик получал доступ к образам?
J
да
То есть, в keystone проекты и пользователи, они должны мапиться в аналогичные сущности в artifactory и glance должен дергать api artifactory, в заголовках передавая artifactory токены?
Danila
То есть, в keystone проекты и пользователи, они должны мапиться в аналогичные сущности в artifactory и glance должен дергать api artifactory, в заголовках передавая artifactory токены?
не совсем я это представляю себе примерно следующим образом - я могу по прямой ссылке на файл образа загрузить из Artifactory этот образ в хранилище Glance
Danila
загрузить - значит выполнить импорт образа, аналогично тому, как я могу импортировать образ, передав публичную ссылку на какой-нибудь qcow2 файлик
J
пока вроде получается что страдать)
Я б на базе торрента замутил кастомную синхронизацию.
Илья | 😶☮️🐸
пока вроде получается что страдать)
Да там как бы реализуемо это, но местами из-за терраформа приходится какие-то тупые костыли делать
Илья | 😶☮️🐸
Синхронизация- в плане что при добавлении нового образа на S3 - его добавлять в список всех образов и запускать terraform apply, чтобы образ загрузился сразу на всех регионах параллельно. Благо гланс умеет с http импортировать
Slava I.
а ну если просто вопрос типа а как грузить одновременно в N глансов
Slava I.
то тут наверное много вариантов можно придумать
Илья | 😶☮️🐸
а ну если просто вопрос типа а как грузить одновременно в N глансов
Не совсем просто грузить, а ещё и хранить стейт. Технически для этого терраформ идеален, но.... Там даже подкрадывается вопрос не только как грузить одни образы, а например ещё и флейворы (для каждого проекта отдельные) и доступы проектов для флейворов
J
Ну, web-download, вроде как, не поддерживает ни в каком виде аутентификацию.
Я б сляпал скорее скрипт-обертку, который качал бы образ из artifactory и лил в glance.
Илья | 😶☮️🐸
Илья | 😶☮️🐸
Индивидуальное, конечно, имеет место быть, но оно не сильно требуется, чтобы было описано в терраформе. Индивидуальное проще создать и прописать в api руками
Slava I.
я понимаю ну в целом да терраформ норм еще для квот проектов можно его же
Илья | 😶☮️🐸
я понимаю ну в целом да терраформ норм еще для квот проектов можно его же
именно, он норм, но когда встаёт вопрос с тем, как проходится по списку регионов и в каждом выполнять одни и те же процессы- уже не ок происходит
Илья | 😶☮️🐸
Тк как показала практика, там требуется куча костылей, чтобы ресурсы терраформ учитывал индивидуально под каждый регион
Илья | 😶☮️🐸
Напишите свою балалайку. )
Да сразу свой опенстак и учёт образов в 1С:Предприятие/Склад, а хуле нет ?)
NS 🇷🇺
Да сразу свой опенстак и учёт образов в 1С:Предприятие/Склад, а хуле нет ?)
Ну для флейворов я балалайку писал, образы можно было тоже принести )
NS 🇷🇺
Я не знаю пофиксили ли последние релизы терраформ провайдера, но там прям сука если ты не передал квоту какого то ресурса, они вместо дефолта хуярили ноль
Slava I.
хм не замечал такого
Slava I.
хотя последний раз это гонял месяца 4 назад
NS 🇷🇺
хм не замечал такого
Я замечал, и очень плакал
Fedor
именно, он норм, но когда встаёт вопрос с тем, как проходится по списку регионов и в каждом выполнять одни и те же процессы- уже не ок происходит
написать для тераформа модуль, дальше написать пиплайн в гитлаб, который катает модуль в регионы по списку, радоваться жизни https://docs.gitlab.com/ee/user/infrastructure/iac/
Илья | 😶☮️🐸
написать для тераформа модуль, дальше написать пиплайн в гитлаб, который катает модуль в регионы по списку, радоваться жизни https://docs.gitlab.com/ee/user/infrastructure/iac/
но там выходит, что ему нужно будет отдельный файл под стейт для каждого региона (можно через переменные окружения сделать, да), так ?
Slava I.
и все для того чтоб грузить пяток дисков)
Fedor
гитлаб умеет хранить стейт
Илья | 😶☮️🐸
и все для того чтоб грузить пяток дисков)
20-30 образов + с пяток проектов раскатывать
Fedor
хоть в себе хоть в амазоновском s3
Slava I.
стейты для каждого региона будут свои
Илья | 😶☮️🐸
Fedor
ну под это уже c3
не обязательно
Илья | 😶☮️🐸
звучит прикольно, оставил заметку, новый регион уже буду таким образом раскатывать, спасибо!
NS 🇷🇺
гитлаб умеет хранить стейт
Ну как бы сразу кол в сердце тем, кто хранит стейты в гите
Slava I.
я хз если один раз - проще руками это запустить
Slava I.
даже если есть ТФ
NS 🇷🇺
он не в гите хранит
В артефактах? А смысл?