Vmware esxi подключение к виртуальной машине

Обновлено: 07.07.2024

В одном известном хостинге арендовал сервер. Для экономии электричества и вычислительной мощности (одним словом, денег), установил на него VMWare ESXi 3.5. И вот спустя полгода работы набрал парочку полезных приемов работы с ESXi, которыми и хочу поделиться.

Приемы работы

Доступ к «скрытой» консоли

Это одна из самых распространенных тем в Сети: как попасть в «скрытую» консоль ESXi. Правда редко кто пишет, зачем это нужно. :)
Итак:

  • Нажимаем Alt+F1
  • Набираем «unsupported» и Enter (текст выводиться не будет)
  • В ответ на запрос пароля вводим наш пароль на ESXi
  • … voila!

А теперь о том, чем эта консоль может быть полезна.

Включение SSH

Та же консоль может быть доступна по SSH. Для этого достаточно раскомментировать строчку с «ssh» в файле /etc/inetd.conf. Для этого можно воспользоваться наличествующим редактором vi.

На своем сервере я проделал также небольшой грязный хак: заменил порт SSH 22 на другой в файле/etc/services. Это не совсем корректно, но SSH с порта 22 убирает, защищая систему от нагрузки от бестолкового брутфорса.

Предоставление доступа к виртуальной машине ESXi через VNC

К любой из машин можно предоставить доступ через VNC, если добавить в vmx-файл следующие строки:

Порт и пароль по вкусу. Сами файлы vmx можно найти по пути /vmfs/volumes/.

Тонкая настройка

Первым делом я столкнулся с тем, что часть машин работает очень медленно. Для анализа производительности есть прекрасная утилита, доступная из консоли — esxtop. Чем-то похожа на аналог из «обычных» ОС UNIX/Linux — top.

Подробнейшим образом показатели, отображаемые этой утилитой, описаны в этой статье.

Небольшой анализ привел меня к выводу, что виртуальным машинам выдается на 768 Мб меньше физической памяти, чем есть на самом деле, т.е. 768 Мб — зарезервированы за системными процессами ESXi. Причем большая часть — за процессом vim. Это значение можно снизить без ущерба производительности (как показывает практика многочисленных коллег по ESXiению по всей сети). Делается это следующим образом:

  • Переходим во вкладку «Configuration» VMWare Infrastructure Client
  • В блоке «Software» щелкаем на «System Resource Allocation»
  • Щелкаем «Advanced»
  • В дереве находим «vim» и устанавливаем значение «Reservation» для него в 192 Мб

После перезапуска ESXi (для верности) у нас появляются еще 300-400 Мб доступной виртуальным машинам оперативной памяти.

Автозапуск виртуальных машин

На моем сервере виртуальные машины настроены на автозапуск. Делается это несложно при помощи VMWare Infrastructure Client. Там можно как добавить машины в автозапуск, так и убрать. Это легко, если есть доступ к ESXi по сети. В моем случае получилось так, что одна из автоматически запускаемых виртуальных машин назначает себе неправильный IP-адрес, и подключать к сети ESXi хост отказались.

Имеем: доступ к KVM (т.е. к консоли сервера). Необходимо: убрать виртуальную машину из автозапуска.
Параметры автозагрузки находятся в файле /etc/vmware/hostd/vmAutoStart.xml. В нем перечислены все запускаемые виртуальные машины, а также способы их запуска и остановки.

Для отмены запуска всего, что можно, нужно привести файл к следующему виду (в вашей версии может отличаться, поэтому не забудьте сделать бэкап файла и редактировать его осторожно):

Пожалуйста, убедитесь перед началом работы, что ваш браузер позволяет запустить веб-клиент WEBUI и входит в список поддерживаемых:

  • Mozilla Firefox v. 39 или новее (для ОС Windows, Mac OS, Linux);
  • Google Chrome v. 34 или новее (для ОС Windows, Mac OS, Linux);
  • Microsoft Internet Explorer v. 10.0.19 или новее (только для ОС Windows).

Login WEB-интерфейс

При необходимости, переключите язык ввода с вашей клавиатуры.

Введите значения логин (в поле «User name») и пароль (в поле «Password»), выданные вам при активации услуги.
После входа в панель управления, в открывшемся окне слева доступен список виртуальных машин (справа находятся вкладки для управления и мониторинга).

Control panel WEB-интерфейс

Выберите виртуальную машину в панели слева, отметив строку с названием VM одним нажатием кнопки манипулятора («мышь»/«тачпад»/«трекболл» и т.д.). Далее, вы сможете использовать вкладки на правой стороне панели, для управления VM:

  • Console – выбор типа консоли для работы с VDS;
  • Monitor – использование панели мониторинга ресурсов сервера;
  • Power On/Off, Suspend, Reset – управление включением/выключением, приостановкой и перезагрузкой работы сервера;
  • Action – открытие консоли сервера, настройка параметров доступа, выполнение «снимка состояния» (Snapshot) сервера.

Открыв консоль управления сервером, вы сможете:

Console WEB-интерфейс

Для продолжения работы, вам необходимо подключить загрузочный ISO-образ диска к виртуальному приводу DVD вашей VM, одним из двух способов:

  • с использованием стандартной web-панели пользователя (WEBUI);
  • с использованием утилиты (приложения) VMware Remote Console.

2. Монтирование ISO-образа с использованием WEBUI, изменение порядка устройств при начальной загрузке VM

Чтобы подключить загрузочный образ диска к виртуальному приводу DVD, в контекстном меню вашего сервера выберите раздел «Edit setting», затем «CD/DVD Drive» и нажмите экранную кнопку «Browse» для выбора необходимого образа диска.

Монтирование ISO-образа WEB-интерфейс

Далее, в разделе настроек виртуальной машины «Edit setting» выберите вкладку «VM Options», затем меню «Boot Options».

В пункте «Firmware» установите тип BIOS и в пункте «Force BIOS setup» активируйте (отметьте «галочкой») режим «The next time the virtual machine boots, force entry into the BIOS setup screen». Выполните перезагрузку VM.

BIOS Settings WEB-интерфейс

После входа в меню системы BIOS установите требуемый вам порядок загрузки VM с виртуальных устройств (CD/DVD –Hard Disk – Network и т.д.).

3. Монтирование ISO-образа в VM с использованием «VMware Remote Console»

Для загрузки плагина «VMware Remote Console», откройте контекстное меню виртуальной машины, выберите раздел «Console», затем пункт «Download VMRC». После перенаправления на страницу загрузки, вы сможете загрузить плагин (соответственно операционной системе вашего компьютера).

VMRC download

После загрузки и установки данного пакета вы сможете запустить VMware Remote Console через раздел контекстного меню виртуальной машины «Console», пункт «Launch remote console».

Чтобы подключить ISO-образ диска в данной консоли, вызовите основное меню и перейдите в раздел «Съемные устройства». Выберите пункт «CD/DVD drive» и далее – «Настройки».

Монтирование ISO-образа VMware Remote Consol

В открывшемся окне в пункте «Расположение» выберите значение «Локальный клиент», затем тип источника – режим «Использовать файл образа ISO».

Монтирование своего ISO-образа VMware Remote Consol

Укажите путь к расположению выбранного файла-образа, используя экранную кнопку «Обзор».


В случае необходимости предоставления доступа к нескольким виртуальным машинам на одном сервере, просто поменяйте номер порта.

Теперь вы сможете подключаться с помощью VNC клиента (например, UltraVNC).



Недостатком данного метода является то, что VNC может подсоединяться к виртуальной машине только, когда та включена, и к тому же, недоступны различные операции с машиной - выключение, перезагрузка, монтирование ISO-образа.

В качестве альтернативного варианта вы можете воспользоваться VMware Remote Console, входящей в состав VMware Player. Просто запустите из командной строки:
vmplayer -h <АДРЕС_ESX> <ПУТЬ_К_VMX>


Обратите внимание на формат пути к .VMX файлу (после квадратных скобок должен быть пробел).

При подключении у вас запросят имя пользователя и пароль учетной записи ESX, у которой есть права на подключение:



Одно замечание - при попытке подключиться к ESXi 3.5 U4 с помощью Remote Console от Vmplayer 3.0, консоль закрывается без объяснения причин. В качестве решения, вы можете скачать модифицированную версию Remote Console от компании Minicom. С ESX 4.0 такой проблемы не наблюдается.

Update: если вы планируете подключаться с помощью Remote Console к ESX/ESXi версии 4.1 и выше, то вам требуется вручную создать на хосте учетную запись из-под которой производится подключение, так как доменная авторизация при интеграции с Active Directory не работает.

6 комментариев:


А RDP уже не в моде?
Работает быстро, перед подключением можно задать множество опций:


Не всегда есть возможность подключиться к виртуальной машине по RDP, например, когда она находится в изолированной сети, или когда там не Windows.

Теперь чтобы получить хеш_пароля можно воспользоваться, например VMware Workstation, где в Advanced свойствах, какой-нибудь тестовой виртуальной машины, включите опцию Remote Desktop и введите пароль, например: 1qaz@WSX

Теперь откройте vmx файл этой виртуальной машины и вы там увидите строчку:
remotedisplay.vnc.key = "JjgIBzs/EQU8KyUbGz4AFB0vBgASNRkuDTcUByYcExA7NSIZDA4JMBs+AgYdCwQ6Gi4yBis/GgA8DwAdIycsAiYPNgQ3JSQLJzERNDc0AwIvMRgYGTokHB08BjAdOQYJHhYJDC45Mwg2FwApLQciFSMaDyg9JxQgMzoRCDMuEyU="

Далее всего лишь остается в vmx файл виртуальной машины esx сервера добавить следующие строчки (виртуальная машина должна быть соот-но выключена): remotedisplay.vnc.enabled = "true"
remotedisplay.vnc.port = "5900"
remotedisplay.vnc.key = "JjgIBzs/EQU8KyUbGz4AFB0vBgASNRkuDTcUByYcExA7NSIZDA4JMBs+AgYdCwQ6Gi4yBis/GgA8DwAdIycsAiYPNgQ3JSQLJzERNDc0AwIvMRgYGTokHB08BjAdOQYJHhYJDC45Mwg2FwApLQciFSMaDyg9JxQgMzoRCDMuEyU="

Далее сделайте настройки фаервола ESX сервера, где выполните:
esxcfg-firewall -e vncServer (это только, если вы используете порт 5900 - порт по умолчанию для VNC),

или если вы например захотите использовать порт не по умолчанию, например: tcp7000, то введите следующие команды:
esxcfg-firewall -o 7000,tcp,in,vnc
esxcfg-firewall -o 7000,tcp,out,vnc

После настроек esx фаервола не каких рестартов сервисов делать не нужно, настройки применятся сразу.

Теперь к виртуальной машине ESX сервера, для которой вы делали настройки можно будет подключится с помощью VNC клиента, где перед входам надо будет ввести пароль 1qaz@WSX.

Перед внесением изменений делайте резервноую копию vmx файла виртуальной машины, так как вы его будете изменять, например: cp vm.vmx vm.vmx.ORIG

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

date

11.05.2012

directory

VMWare

comments

Комментариев пока нет

Оказывается к консоли любой виртуальной машины на сервере ESXi 5 можно подключиться удаленно с помощью клиента VNC. Такая возможность существует еще с самых ранних версий гипервизора VMWare (VMware GSX). Официально, возможность подключаться к виртуалкам с помощью VNC клиента не поддерживается VMware, однако все еще работает. Для активации VNC доступа к виртуальной машине на ESXi, в конфигурационный файл виртуальной машины (.vmx) необходимо добавить три специальных параметра (соответственно включение VNC доступа, порт подключения, пароль на VNC подключение):

  • RemoteDisplay.vnc.enabled= [true|false]
  • RemoteDisplay.vnc.port = [номер порта]
  • RemoteDisplay.vnc.password= [пароль_опционально]

Конфигурационный файл виртуальной машины можно отредактировать вручную (например, файл для виртуальной машины win2008wks находится в каталоге /vmfs/volumes/datastore2/win2008wks_1/ win2008wks_1.vmx) или же с помощью графического интерфейса VSphere Client (Edit virtual machine Settings –>Options->General->Configuration Parametrs) . Уточним, что все указанные изменения можно выполнить только на отключенной виртуальной машине.

description: esx_vmc

Кроме, того не забудьте, что в ESXi 5 появился новый файервол и нам нужно настроить специальные правила, разрешающие входящий трафик на указанные VNC порты.

Пример такого правила для файервола ESXi, открывающего порты 5901 и 5902, может выглядеть так:

Подробнее о настройках собственных правил для файервола в ESXi можно почитать тут.

Для подключения к консоли виртуальной машины необходимо запустить VNC клиент и указать ip адрес ESXi и порт, заданный для виртуальной машины, например 192.168.0.2:5901.


В том случае, если вы хотите открыть VNC доступ к консолям нескольких виртуальных машин, придется для каждой из них указать уникальный порт и, соответственно, открыть доступ к ним в файерволе.

Естественно, VNC доступ это не совсем стандартный (и безопасный!) способ попасть на консоль виртуальной машины, и если в нем нет необходимости, его лучше закрыть, и пользоваться стандартными способами доступа к консоли гостевой ОС (например, VMware Remote Console или же обычными RDP/SSH).

Читайте также: