Эмуляторы – это программные средства, которые способны имитировать поведение и функциональность других операционных систем, отличных от той, в которой установлены они сами. Они созданы для того, чтобы можно было запускать приложения, чья функциональность не предусматривает их использование в системе, на которой работает эмулятор. В статье мы обсудим процесс эмуляции Android на сервере, работающем под управлением операционной системы Windows Server с использованием виртуализации Hyper-V.
Поскольку большинство, существующих на сегодняшний день, готовых решений данной задачи, к сожалению, не поддерживают интеграцию с Hyper-V, либо зачастую характеризуются недостаточной стабильностью и избыточным функционалом, что делает их непрактичными для использования на средних конфигурациях VDS, мы попробуем развернуть чистую операционную систему Android на виртуальной машине Hyper-V внутри вашего сервера.
Подготовка VPS
В нашем примере мы будем использовать виртуальный сервер, работающий под управлением Windows Server 2019 и имеющий следующую конфигурацию:
- CPU – 4×3.4GHz;
- RAM – 6Gb;
- HDD RAID – 20Gb.

Вместе с тем, для добавления компоненты Hyper-V на заказанном сервере должна быть включена вложенная виртуализация. Включить её можно написав обращение в техническую поддержку через форму обратной связи, которая находится в разделе Поддержка
.

Кроме того, необходимо загрузить iso-образ Android, который мы будем использовать на виртуальной машине Hyper-V. Для загрузки образа перейдите по ссылке. В нашем примере мы загрузили Android-x86 64-bit
версии 9.0-r2
.
Установка компонентов
На начальном этапе настройки нужно будет в Диспетчере серверов добавить дополнительные компоненты. Для запуска диспетчера перейдите в стартовое меню и кликните на Server Manager
.

В диспетчере перейдите Manage
→ Add Roles and Features
.

В открывшемся стартовом окне мастера нажмите Next
.

Далее, выберите опцию Role-based or feature-based installation
и нажмите Next
.

В следующем окне укажите опцию Select a server from the server pool
и выберите нужный узел из пула серверов. В нашем случае пул состоит из всего одного сервера. Для продолжения нажмите Next
.

На этапе Server Roles
активируйте роли Hyper-V
и Remote Access
. После того, как вы их включите, нажмите Next
.

На следующих шагах нажимайте Next
не внося никаких изменений до этапа Role Services
. Здесь необходимо включить роль Routing
и после её активации нажать Next
.

В следующем окне нажмите Next
.

И наконец, для запуска установки выбранных компонентов нажмите Install
.

После окончания установки необходимо перезагрузить сервер.

Создание дополнительного сетевого адаптера
Для того, чтобы у создаваемой в Hyper-V виртуальной машины был доступ к сети, необходимо добавить на сервере дополнительный сетевой адаптер. Чтобы это сделать, откройте командную оболочку PowerShell. Для чего в строке поиска наберите powershell
.

Новый сетевой адаптер будет называться AdditionalNetworkAdapter и иметь IP-адрес 192.168.1.254/24. Для его создания в PowerShell выполните следующие команды:
New-VMSwitch -name AdditionalNetworkAdapter -SwitchType Internal
New-NetNat -Name LocalNat -InternalIPInterfaceAddressPrefix "192.168.1.0/24"
Get-NetAdapter "vEthernet (AdditionalNetworkAdapter)" | New-NetIPAddress -IPAddress 192.168.1.254 -AddressFamily IPv4 -PrefixLength 24
Вывод данных команд выглядит следующим образом:

Создание виртуальной машины
Теперь необходимо создать новую виртуальную машину в Hyper-V. Для открытия Диспетчера Hyper-V выполните следующие шаги: нажмите комбинацию клавиш Win
R
, введите virtmgmt.msc
в появившемся окне, затем нажмите ОК
.

В Диспетчере Hyper-V перейдите на ваш сервер и разделе Actions
нажмите New
, где выберите Virtual Machine
.

В стартовом окне менеджера нажмите Next
.

Затем в строке Name
наберите название создаваемой виртуальной машины. В нашем примере – это Android Virtual Machine
. После чего нажмите Next
.

В окне выбора поколения укажите Generation 1
и нажмите Next
.

Далее, установите объём оперативной памяти для создаваемой машины. На нашем VDS объём RAM составляет 4Гб. Исходя из этого мы указываем 2Гб.

Затем выберите добавленный ранее дополнительный сетевой адаптер и нажмите Next
.

В следующем окне укажите объём жёсткого диска. В нашем примере – это 10Гб. Для продолжения нажмите Next
.

Далее активируйте опцию Install an operating system from a bootable CD/DVD-ROM
, после чего укажите путь к загруженному ранее образу Android и нажмите Next
.

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

Установка Android
После того, как новая виртуальная машина появится в списке, при помощи правой кнопки мыши вызовите контекстное меню, где нажмите Connect
.

Для запуска виртуальной машины нажмите кнопку включения в верхней панели.

В стартовом меню Android выберите строку Installation - Install Android-x86 to harddisk
.

Затем выберите Create/Modify partitions
и нажмите Enter
на кнопке ОК
.

На вопрос Do you want to use GPT?
ответьте No
.

На следующем шаге выберите New
для создания нового раздела.

Затем выберите Primary
.

Для использования дефолтного объёма нового раздела нажмите Enter
.

Далее, нажмите Enter
на Bootable
.

После чего в графе Flags
появится надпись Boot
. Затем нажмите Enter на Write
.

На следующем шаге в качестве ответа на вопрос Are you shure you want to write the partition table to disk?
наберите yes
и нажмите Enter
.

Затем после создания раздела нажмите Enter
на Quit
, чтобы вернуться к процессу установки Android.

Новый раздел называется sda1
. Установите курсор на нём, выберите ОК
и нажмите Enter
.

В следующем окне установщик предложит отформатировать созданный раздел. Для чего укажите тип файловой системы ext4 и нажмите Enter
на ОК
.

На следующих шагах выбирайте Yes
. В результате вы запустите установку непосредственно операционной системы.




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

Запуск и первоначальная настройка виртуальной машины
При включении виртуальной машины в стартовом меню выберите Advanced options
.

Затем нажмите Enter
на строке Boot from local drive
.

В качестве способа загрузки системы выберите первую строку, а именно, Android-x86 9.0-r2
.

И наконец, в стартовом окне Android нажмите Start
для первоначальной настройки операционной системы.

На этапе подключения к Wi-Fi нажмите SKIP
.

Затем нажмите CONTINUE
.

Когда откроется графический интерфейс операционной системы, нажмите на значок настройки. Там мы продолжим настройку сетевого подключения.

Выберите Connect to open Wi-Fi network
.

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

В разделе IP settings
выберите Static
.

Здесь укажите IP-адрес из подсети дополнительного сетевого адаптера VPS, в качестве шлюза – IP-адрес дополнительного сетевого адаптера. Для сохранения внесённых изменений нажмите SAVE
.

На этом установка и первоначальная настройка завершены. На нашем сервере мы установили дополнительный сетевой адаптер и систему виртуализации, в которой создали виртуальную машину, работающую на Android. При этом созданная виртуальная машина имеет доступ в интернет через дополнительный сетевой адаптер нашего VDS.
Таким образом, следуя указанным шагам и учитывая необходимые настройки, вы можете создать виртуальную машину с Android. Возможно, это немного упростит ваш рабочий процесс, а также обеспечит доступ к разнообразным функциям Android на вашем VPS.