понимаю, что, в отличии от kvm, сделать простой редирект консоли (com-порта) виртуалки на telnet-сессию в openstack нельзя и вариантов, кроме как через spice или vns нет, а там, соответственно, нужна авторизация, c добавлением пользователя и прочими телодвижениями?
Стикер
vnc, само-собой.
Вопрос не тупой, но спросил не очень понятно, судя по ответам) Можно вот так: https://docs.openstack.org/nova/latest/cli/nova-serialproxy.html
Спасибо за ответ! Попробую покопать в эту сторону. Я пока что нашёл только вот такой вариант - https://docs.openstack.org/newton/user-guide/cli-access-instance-through-a-console.html Но, это не com-порт, само-собой.
А тебе для чего удаленный доступ к serial консоли?
Есть виртуалка, на ней крутится какой-то виртуальный роутер, который иногда требует (пере)настройки. У него есть mgmt0, понятное дело, но, если вдруг отвалился, или его испортили - надо как-то либо к локальной консоли (по аналогии с vmware) - напрямую присоединиться, либо к com-порту. Раньше это работало на kvm, там всё просто - либо virsh console, либо telnet на заранее перенаправленный порт. Теперь поднимают это же в openstack, хотелось бы понимать, можно ли сделать это с минимальными кастомизациями и, желательно, без двойной авторизации (сначала в openstack - потом в самой vm).
Ну если консольный порт незапароленным держать, то без двойной.
Да, но тогда авторизация на openstack делаться будет, а это дополнительный геморрой - не технический, организационный.
А как ты без авторизации хочешь доступ получать?
изначально не правильный подход, вы уж простите меня за мое хамство, но это пистец. Первое mgmt можно перенаправить на admin vlan, и настроить все по уму. Консоль она и есть консоль, она у вас и останется при virsh console из компьют ноды
в идеале - чтобы была только внутренняя авторизация самой виртуалки. Ну и да, роутер плюётся и в графическую консоль и в com-порт.
А графическая консоль чем тогда плоха?
я не думаю, что команду, которая админит роутер впустят в кишки опенстака :).
При чем тут это?
чтобы набрать virsh console - надо для начала залогиниться по ssh на compute node, не так ли?
Ну вот. Этого и не дадут сделать, скорее всего.
Зачем в кишки? Через политики или app credentials команде сетевиков можно оставить минимум прав
А в браузере открыть novnc консоль тоже не дадут?)
Я думаю, сам факт локального логина по ssh вызовет паранойю. Тем более, если надо будет что-то крутить, чтобы virsh заработал для их юзера. А если ещё и виртуалка мигрирует между compute хостами - ещё сложнее становится.
Ну, это, вроде как, выглядит чуть менее подозрительным (я пытаюсь заранее представить аргументы), но - если есть техническая возможность вообще не прикасаться к openstack - было бы неплохо. Ну, если нет - значит нет.
Тебе не надо никуда логиниться. Тебе надо как обычному пользователю через api или консольным клиентом получить ссылку на novnc консоль и дальше в браузере ее открыть.
Ну вот, чтобы ссылку получить - надо же для начала пройти авторизацию в самом openstack, я же правильно понимаю?
Да. Но там же гибкие политики и можно пользователю вообще все запретить кроме получения ссылки на консоль.
Ну, значит, если нет других вариантов - остаётся этот. А он, кстати, только на гуёвую консоль умеет редиректить, или на com-порт тоже?
Для того что бы получить ссылку, тебе надо использовать openstack-cli, авторизоваться и получить ссылку, url ссылки отдать безопасникам/сетевикам(или кто там рулит) и все. Если у них не получается(бывают случаи:рукажопаголова), это их проблемы. Ты инженер, а не разраб и выдумывать всякую дичь через апи это разработка, которая стоит деняг(тебе их не заплатят).
Ну штош... Будем думать :). Спасибо за подсказку!
не за что, обращайтесь. Если нужно компетентно разъ***ь этих безобразников тоже обращайтесь..
Ссылка на serial консоль будет через websocket. Нужна какая-то реализация websocket клиента, как в ссылке что я кидал. Терминальным эмулятором напрямую по ней не цепанешься. Смотри. Вот про app credentials: https://docs.openstack.org/keystone/latest/user/application_credentials.html Можно сгенерировать себе типа промежуточный токен, не давая доступ к пользователю в опенстеке напрямую. И через access rules разрешить только получать доступ к консолям. https://docs.openstack.org/api-ref/compute/#get-serial-console-os-getserialconsole-action-deprecated https://docs.openstack.org/api-ref/compute/?expanded=get-serial-console-os-getserialconsole-action-deprecated-detail#show-console-connection-information
И можно дергать вызов к api с app credential хоть из батника и в ответ выплевывать ссылку. А можно вашим ребятам сляпать простенькое веб приложение которое будет само ссылку получать и вы когда его будете открывать, там будет уже готовая к работе консолька.
Ну или типа вот такого можно сляпать) https://github.com/lafikl/telsocket
Ох. Надеюсь, им будет хватать гуёвой консоли...
Я же тебе вот, сообщением выше скинул реализацию клиента)
Да это понятно, я просто хочу обойтись минимальным количеством сущностей. Хрен его знает, откуда они будут пытаться ломиться на эту консоль и с какими локальными правами... Как бы то ни было - спасибо за наводку :)
virsh console с гипервизора так и продолжает работать, пользуйтесь ею, если нравится
Там безобразники(с мозолью на пальце)
Это, скорее всего, не выйдет по административным соображениям.
Небумажепасно. Такие вот доводят до зла и когда регуляторы приходят и выписывают штрафу или останавливают деятельность вылетают нахер. Дежурные жопы короче
Та черт с ними) Решений полдюжины точно можно придумать, которые ваще с опенстеком не связаны и при этом безопасны с практической точки зрения.
я выше написал. Обычно делают отделеную сетку в той же сертифицированной стойке, обмазывают криптошлюзами и до офицера безопасности тянется
Ради одного хоста такое городить не будут, скорее просто в задницу пошлют сходу.
Если там какая нить s-terra или что нить такое будут.
Обсуждают сегодня