Azure VM Serial Console. Первый взгляд
Пару дней назад Microsoft анонсировала появление нового функционала для Azure VM - Serial Console. Лично я давно ждал, что появится возможность получить прямой доступ к консоли виртуальной машины. Данный функционал был всегда доступен в облаках публичных провайдеров, которые строили решения на базе Windows Azure Pack, Apache CloudStack, Openstack и других. Посмотрим, что получилось у Microsoft.На портале Azure меню "Support + Troubleshooting" появился пункт "Serial Console". Как видим, пока функционал находится в стадии "Preview":
Отлично, посмотрим, на что она способна. Переходим в консоль и сразу получаем ошибку:
The serial console connection to the VM encountered an error: 'Not Found'
(404) - Unable to retrieve boot diagnostics settings for 'Win2k16'. To use serial console, ensure that boot diagnostics is enabled for this VM. For more information see https://aka.ms/serialconsolehelp.
Ок, без проблем. Переходим в меню "Boot diagnostics" (есть на скриншоте выше) и активируем её. Как видим, для этого нам потребуется указать Storage Account:
Но и теперь мы подключиться не сможем. Дело в том, что вначале надо включить возможность использования "Accessing Serial Console" в нашей Windows Server (десктопные ОС не поддерживаются). Вроде всё доступно описано в документации, но там закралась одна ошибка. При выполнении команды bcdedit получаем ошибку:
PS C:\Users\tema> bcdedit /ems {current} on
The specified EMS settings are not valid.
Run "bcdedit /?" for command line assistance.
The parameter is incorrect.
На самом деле указывать парамерт {current} не надо. Достаточно выполнить "bcdedit /ems on". Итого получается:
bcdedit /ems on
bcdedit /emssettings EMSPORT:1 EMSBAUDRATE:115200
После выполняем рестарт виртуальной машины любым удобным для нас способом. Увы, иначе пока нельзя, но оно того стоит!
Подключившись к консоли снова, увидим приглашение командной строки:
SOC>
Теперь попробуем выполнить простейшую команду PowerShell для теста. Для этого нам придется создать канал cmd, зайти в него и залогиниться. Это выглядит примерно так:
SAC>cmd
The Command Prompt session was successfully launched.
SAC>
EVENT: A new channel has been created. Use "ch -?" for channel help.
Channel: Cmd0002
SAC>ch
Channel List
(Use "ch -?" for information on using channels)
# Status Channel Name
0 (AV) SAC
1 (AV) Cmd0002
SAC>ch -si 1
После этого мы перейдем в канал Cmd0002, где надо будет залогиниться. Дальше увидим до боли знакомое приглашение консоли:
Осталось только перейти в PowerShell (понятно, что выполнить единичную команду PS можно и из CMD) с помощью команды... powershell :) После этого мы сможем выполнить командлет, например, Get-ComputerInfo.
Заключение.
Microsoft наконец-то сделала в своем облаке инструмент, с помощью которого, например, можно поправить настройки сети, если системный администратор накосячил. Это действительно очень здорово, так как раньше в таком случае нужно было выполнять рестарт виртуальной машины. Увы, и это помогало не всегда (если пользователь отключил сервисы Windows Azure внутри ВМ, например). Да, GUI нам все еще недоступен. Он мог бы пригодиться, если необходимо запустить виртуальную машину в безопасном режиме (F8 при загрузке). Я очень надеюсь, что Microsoft работает над расширением функционала консоли. Но и то, что есть сегодня, уже большой шаг вперед.
Комментариев нет:
Отправить комментарий