Открою Америку :)

Возникла необходимость дать пользователю прямой доступ к консоли виртуальной машины.
Гугление выдало утилиту vmware-vmrc.exe. Опытным путем выяснил строку запуска утилиты, но сразу заметил и косяк – утилита подключается только к хосту ESX(i), работать с vCenter она отказалась. Собрался писать грустный пост, но решил заранее проверить, не отписался ли кто-то из коллег по этому поводу 🙂
Миша Михеев пару лет назад уже писал адекватный совет, а на VMware Communities делятся тем, как заставить работать эту штуку не под рутом.
Но все равно неудобно – создавать учетки на хостах. Как быть с vMotion? 🙂

И тут я открыл для себя Америку. Оказывается, если подключиться по адресу https://vcenter/ui, можно поставить плагин для подключения к консоли через браузер (для установки плагина нужны права локального администратора).
А на вкладке Summary для виртуальной машины есть Generate Virtual Machine Shortcut. С его помощью вы можете выдать пользователю линк, через который он и будет подключаться к консоли этой машины.

Теперь идем в vCenter через vClient, выбираем нужную виртуальную машину и открываем вкладку Permissions.
На ней добавляем нашего пользователя (я сделал его доменным) с правами Virtual machine user (sample).
P.S. Прости, Миша. Видимо, я плохо у тебя учился, раз не смог сразу вспомнить про веб-интерфейс к vCenter.
UPD: Mr.Aloof советует:
У меня под виндой утилита vmware-vmrc от vClient 4.1 подключается к виртуальной машине через vCenter, если обращаться к ней по MOID!
То есть, запускать примерно так:
vmware-vmrc.exe -h “vcenter-01:443″ -M “vm-47″
Единственный нюанс, не нужно указывать параметры “-u” и “-p”, а пользоваться окном аутентификации. Потому что при подключении через vCenter требуется тикет а не логин/пароль.

16 thoughts on “Открою Америку :)”

  1. Нет, Миша, не удалил.
    Просто как-то неудобно надоедать с вопросами, ответ на которые находится в гугле :))
    Правда, полдня на поиск и тесты убил (с учетом прочих заявок)…
    Ага, спасибо, Денис.
    Аналогичная ссылка от VMware – http://labs.vmware.com/flings/vgc.

    Просто изначально мне был нужен другой функционал:
    1) Монтирование дисковода пользователя в виртуальную машину;
    2) Изоляция пользователя от работы с другими машинами (защита от дурака и кривых ручек).

    Сразу обеих фич по ссылкам я не нашел (хотя, может, плохо искал).

  2. Все больше убеждаюсь в том, что постить стоит даже самые очевидные вещи, т.к. то что очевидно одному, может быть не очевидно многим.
    Пост очень полезный. Помню, что тоже много времени этому вопросу посвятил.

  3. Недавно тоже откопал эту фишку.. А также один косяк.. Если есть права на весь vCenter, то в веб-интерфейсе есть косяк с обновлением страницы – не отображаются все машинки, при клике на любой пункт в дереве слева – справа ничего не меняется.. У меня сейчас около 40 машинок..
    При этом если права только на пару машиной – то все работает отлично.
    PS vCenter 4.1

  4. мой опыт подсказывает что этот веб интерфейс довольно тормозная штука.
    если им активно пользоваться (или просто пользоваться), надо чтобы у vcenter было достаточно памяти.

  5. Ха! А вот тут для пользователей Windows облом.
    vmware-vmrc под линукс это поддерживает. Его можно запустить без параметров, и он спросит хост/имя/пароль для подключения, причем хостом может быть и vCenter. А после подключения покажет список всех виртуальных машин на хосте и (при наличии прав конечно) к ним можно подключиться.
    К сожалению подключиться сразу к виртуалке указав в параметрах vCenter и конфиг не получится (покрайней мере в версии vmrc 2.5.0) – ошибка “неизвестный ответ”. Причина в том, что консоль должна подключиться к конкретному хосту. При выборе из списка виртуалок, происходит перенаправление на нужный хост. К сожалению, при указании конфига VM механизм перенаправления не действует (консоль сразу пытается подключиться к нужной VM).

  6. Кстати, в vClient 4.1 обновился vmware-vmrc. Теперь он 3.0.0 build-252576

    Ну и хочу задать резонный вопрос – почему бы пользователю не дать работать чз vClient?

  7. Добавлю еще один интересный факт! =)
    Лично у меня под виндой утилита vmware-vmrc от vClient 4.1 отлично подключается к виртуальной машине через vCenter, если обращаться к ней по MOID!
    Тоесть запускать примерно так:
    vmware-vmrc.exe -h “vcenter-01:443” -M “vm-47”

    Единственный нюанс, не нужно указывать параметры “-u” и “-p”, а пользоваться окном аутентификации. Потому что при подключении чз vCenter требуется тикет а не логин/пароль.

  8. А я тренировался без опции Moid и на VMRC (от vClient 4.0).
    Почему не vClient? Минимизируем поле для заявок типа “ой, я нажала, а там…”.
    Кстати, Mr.Aloof подал еще пару светлых идей:
    – для монтирования физического дисковода в виртуалку использовать RDP;
    – использовать на этом рабочем месте тонкого клиента (раз уж у нас наступает будущее и используется веб-интерфейс).

    Первое – мысль интересная, но пусть пока будет веб-интерфейс.
    Возможно, одновременно будет использоваться несколько виртуальных машин. Подключить/отключить дисковод в консоли проще, чем надеяться, что RDP это разрулит.
    Второе – мысль вообще интересная, но у нас пока не используются терминальные сервера (да и с компа сервисы перетаскивать надо будет).

  9. В vSphere 5/5.1 тоже работает вариант с генерацией ярлыка, но есть нюанс. Так как WebClient стал кроссплатформенным, то перестала использоваться утилита vmware-vmrc (плагин к Internet Explorer). В результате, из полученного окна нельзя подключить дискету, компакт-диск или USB-устройство, как это было возможно в vSphere 4.1. Для подключения необходимо заходить в свойства виртуальной машины, что крайне неудобно. Или воспользоваться плагином от предыдущей версии 🙂

  10. Как раз сейчас не нужно заходить в свойства ВМ 😉
    Делаем ярлык, закладку или что-угодно сразу на summary нужной ВМ и видим всю необходимую информацию, в разделе VM Hardware удобные кнопочки для монтирования устройств (в т.ч. USB клиента) ну и можем “Launch Console” =)

    И никаких тебе больше сложностей – сквозная авторизация отлично работает…
    Выставляем права доступа, и пользователь видит/делает только то что ему позволено.

Leave a Reply

Your email address will not be published. Required fields are marked *