Дешевый VPS-хостинг

Дешевый VPS-хостинг Хостинг

Бэкап виртуальных машин Hyper-V

Ранее я уже рассказывал про программу HVBackup для бэкапа виртуальных машин. Она замечательно работает с Windows Hyper-V Server 2016, приведенная статья полностью актуальна. Для работы программы необходимо установить на гипервизоре .Net Framework 3.5 с помощью команды powershell:

Install-WindowsFeature NET-Framework-Core

А дальше все по приведенной инструкции. Если не хочется возиться с консольной программой, скриптами, планировщиком, но хочется быстро сделать бэкап виртуальной машины hyper-v, можно воспользоваться бесплатной программой Veeam Backup Free Edition. Она позволяет вручную сделать копию виртуальной машины. Основное ограничение бесплатной версии в том, что вы не сможете создавать задания для автоматического бэкапа. Только ручной режим. Это ограничение можно обойти и использовать с помощью скриптов автоматический бэкап в бесплатной veeam, но это тема отдельного разговора. Не хочется рассматривать этот вариант в рамках данной статьи. Подробнее о различиях платной и бесплатной версии можно узнать по ссылке — https://www.veeam.com/pdf/datasheet/veeam_backup_9_5_free_vs_paid_comparison_ru.pdf

Программа, конечно, монструозная, весит много, ставится долго, но зато никаких заморочек. Все настраивается легко и понятно через интерфейс программы. После установки запускаете программу. Добавляете новый сервер:

Добавление сервера hyper-v в veeam

Указываете, что это Standalone Hyper-V server, добавляете учетные данные и дожидаетесь окончания установки необходимых компонентов на hyperv сервере. После этого можно создать резервную копию виртуальной машины. Для этого выберите гипервизор, виртуальную машину, которую хотите забэкапить и жмите правой кнопкой мыши по ней. Выбираете VeeamZIP:

Бэкап виртуальной машины hyper-v

Дальше указываете место, куда будет сохранен бэкап и все. Запускаете задание и ждете окончания процесса. Бэкапить можно в любое место, куда есть доступ с машины, на которую установлен сам veeam. Можете подключить сетевой диск и бэкапить в него.

Видео

Пока я не осилил запись и монтаж видео по новой версии. Кому недостаточно текста и очень хочется посмотреть видео по установке и настройке Hyper-V, предлагаю ролик от прошлой версии. Там почти все то же самое. По крайней мере основное так точно.

https://youtube.com/watch?v=nNuihN4TJ_E%3Ffeature%3Doembed

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.

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

Помогла статья? Подписывайся на telegram канал автора

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

Настройка виртуальных коммутаторов

Перед тем, как мы приступим к установке виртуальных машин, подготовим для них сеть. Я не буду подробно рассказывать о нюансах работы сети в hyper-v. Это не тема текущего повествования. Просто создадим сетевой бридж для виртуальных машин. В оснастке управления выбираем справа «Диспетчер виртуальных коммутаторов», выбираем тип «Внешняя». Указываете имя коммутатора. Я рекомендую давать осмысленные названия, чтобы было проще потом управлять. Если это бридж в локальную сеть, то назовите виртуальный коммутатор local.

Настройка виртуального коммутатора hyper-v

Сохраняйте настройки. Вы увидите предупреждение о том, что сетевые соединения будут сброшены. Все в порядке, соглашайтесь. Будет создан новый виртуальный сетевой интерфейс с теми же настройками, что были у физического. Но здесь есть один важный нюанс. Если ваш сервер получал сетевые настройки по dhcp, то он скорее всего получит новый ip адрес. Имейте это ввиду.

Бэкап виртуальных машин Hyper-V

Ранее я уже рассказывал про программу HVBackup для бэкапа виртуальных машин. Она замечательно работает с Windows Hyper-V Server 2019, приведенная статья полностью актуальна. Для работы программы необходимо установить на гипервизоре .Net Framework 3.5 с помощью команды powershell:

Install-WindowsFeature NET-Framework-Core

А дальше все по приведенной инструкции. Если не хочется возиться с консольной программой, скриптами, планировщиком, но хочется быстро сделать бэкап виртуальной машины hyper-v, можно воспользоваться бесплатной программой Veeam Backup & Replication Community Edition. Она позволяет бэкапить до 10-ти виртуальных машин. Подробно познакомиться с функционалом и ограничениями бесплатной версии можно по ссылке.

Программа, конечно, монструозная, весит много, ставится долго, но зато никаких заморочек. Все настраивается легко и понятно через интерфейс программы. Для установки требуется .Net Framework 4.6. Можете установить заранее сами, либо инсталлятор veeam сам предложит вам это сделать.

После установки запускаете программу. Добавляете новый сервер:

Настройка бесплатного Veeam Backup & Replication

Указываете, что это Standalone Hyper-V server, добавляете учетные данные и дожидаетесь окончания установки необходимых компонентов на hyperv сервере. После этого можно создать резервную копию виртуальной машины. Для этого выбираете гипервизор, виртуальную машину и либо делаете сразу бэкап, либо создаете запланированное задание.

Бэкап виртуальной машины hyper-v

Дальше указываете различные параметры бэкапа, в том числе место, куда он будет сделан. Не буду останавливаться на этом подробно. У Veeam отличная документация и интуитивно понятный интерфейс. Пример хорошего продукта. За то, что он есть под Hyper-V, я и люблю последний. Очень не хватает аналога Veeam для KVM или Xen.

Docker

Это ещё один альтернативный вариант.

По своей сути Docker предлагает уже не виртуализацию, а создание изолированных контейнеров поверх вашей основной системы. Таких контейнеров на одной системе можно запускать множество. Приложения в каждом из них работают полностью независимо.

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

Docker предназначен для Linux и использует для создания контейнеров специфику ядра этой операционной системы. В Windows использовать Docker можно двумя способами. Во-первых, есть Boot2docker, который автоматически создаёт, опять же, в VirtualBox виртуальную машину и уже там запускает контейнеры. Во-вторых, можно самостоятельно создать виртуальную машину с Linux и там разворачивать контейнеры.

Автоматически созданная машина Boot2docker-ом:

Дешевый VPS-хостинг

Помимо уже сказанного есть ещё одна очень весомая фишка.

Мы создаём для разработки сайта один или несколько контейнеров Docker. Зависит от его сложности и масштабов. Потом, когда сайт будет готов, то мы именно эти же контейнеры просто переносим на хостинг! Получается, что сайт продолжает работать в своём родном окружении, уже на совсем другой площадке.

На мой взгляд Docker интересен, но только если вы работаете именно в Linux. Использование контейнеров через виртуализацию трудно назвать изящным вариантом. Поэтому я, как пользователь Windows, отказался от Docker. Во всяком случае, нет пока необходимости.

Виртуалка и Debian

Скачиваем новейший образ для установки Debian. Даю ссылку на страницу с образами, предназначенными для сетевой установки. Они маленькие, не имеют ничего лишнего, хорошо подходят для веб-сервера. Я использую 64-битный образ. На момент написания статьи актуален Debian версии 8.5.

Создаём виртуальную машину:

Дешевый VPS-хостинг

Объём памяти и диска по своему усмотрению.

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

Дешевый VPS-хостинг

Машина подготовлена. Пока не включаем. Заходим в свойства машины, подключаем скаченный установочный образ на CD/DVD:

Дешевый VPS-хостинг

Пройдёмся по другим настройкам.

Число ядер процессора выбирайте сами, в зависимости от возможностей и потребностей. Обязательно установите отметку «Включить PAE/NX».

Дешевый VPS-хостинг

Можно выключить разные ненужные вещи, типа удаленного доступа по RDP, звуковой карты, порта USB стандарта 2.0 и т.д.

Дешевый VPS-хостинг

В сетевых адаптерах выбираем тип подключения «NAT», ниже тут же кликаем «Дополнительно» и заходим в «Проброс портов».

Дешевый VPS-хостинг

Здесь для SSH указываем порты 3022 и 22, для веба 80 и 80. Остальное заполнять не надо. Этого достаточно.

Дешевый VPS-хостинг

Почему именно «NAT»? Виртуальную машину сможете использовать только вы, она не будет видна в вашей локальной сети и никак на неё не повлияет. Для меня это важно.

Если вы хотите, чтобы ваша виртуальная машина полноценно добавлялась в вашу локальную сеть, то выбирайте тип подключения «Сетевой мост». Другие компьютеры в вашей локальной сети тоже смогут обращаться к вашей виртуальной машине.

В завершении добавляем общую папку:

Дешевый VPS-хостинг

Выходим из настроек.

Запускаем машину, устанавливаем Debian.

Дешевый VPS-хостинг

Процедура установки Debian ничем особо непримечательна. Выбираем вначале обычную установку, я предпочитаю с графическим интерфейсом. По ходу выбираем всякие параметры. Запасаемся терпением.

Дешевый VPS-хостинг

Ближе к концу установки надо будет выбрать компоненты, которые требуется установить. Рабочий стол и прочий мусор нам на веб-сервере не нужен, снимаем везде отметки. Оставляем только SSH-сервер и стандартные системные утилиты.

Дешевый VPS-хостинг

Предлагаемый в списке «web server»  я тоже предпочитаю не ставить, т.к. там будет Apache, который в современном мире нафиг не нужен. Лучше установить потом самому именно те программы, какие нужны.

В общем, установка завершается, машина перезапускается.

Входим под root-ом:

Дешевый VPS-хостинг

Всё ок? Небольшая рекомендация. Делайте «снимки» машины на разных этапах настройки и использования. Это полезно! Если в процессе каких-то настроек или других действий что-то пойдёт не так, то вы сможете откатиться к предыдущему состоянию.

Вот сейчас машина успешно стартовала. Выключите её, сделайте снимок. Это займет от силы минуту.

Дешевый VPS-хостинг

Чтобы выключить машину можно написать poweroff, чтобы перезапустить — reboot.

Настройка виртуальных коммутаторов

Перед тем, как мы приступим к установке виртуальных машин, подготовим для них сеть. Я не буду подробно рассказывать о нюансах работы сети в hyper-v. Это не тема текущего повествования. Просто создадим сетевой бридж для виртуальных машин. В оснастке управления выбираем справа «Диспетчер виртуальных коммутаторов», выбираем тип «Внешняя». Указываете имя коммутатора. Я рекомендую давать осмысленные названия, чтобы было проще потом управлять. Если это бридж в локальную сеть, то назовите виртуальный коммутатор local.

Создание виртуального коммутатора

Сохраняйте настройки. Вы увидите предупреждение о том, что сетевые соединения будут сброшены. Все в порядке, соглашайтесь. Будет создан новый виртуальный сетевой интерфейс с теми же настройками, что были у физического. Но здесь есть один важный нюанс. Если ваш сервер получал сетевые настройки по dhcp, то он скорее всего получит новый ip адрес. Имейте это ввиду.

Подключение к Hyper-V Server 2016 с Windows 7

После установки запускайте программу и добавляйте hyperv server.

5nine manager добавление сервера

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

Управление бесплатным hyper-v

Если нет стандартной оснастки, эта программа выручает. Сам ей частенько пользуюсь при необходимости.

Установка Hyper-V Server 2019


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

Установка Microsoft Hyper-V Server 2019

Дальше выполняете установку стандартным способом, как и любую другую Windows систему. Загружаетесь с iso образа и следуете по шагам инсталлятора. Каких-то нюансов или проблем с тем, чтобы установить hyper-v server нет, так что я не буду заострять на этом внимание. Обращу внимание только на самый конец установки. У меня появилось вот такое окно:

Первый вход в hyper-v

При этом я не мог ничего сделать или выбрать. Я нажал ctrl+alt+delete и появилось предложение задать пароль администратора. Я сделал это, установка завершилась, загрузилось окно со стандартным интерфейсом управления:

Интерфейс управления Hyper-V 2019

Если вы по какой-то причине закроете это окно, вызвать его снова можно в командной строке с помощью команды sconfig. На этом установка Windows Hyper-V server 2019 закончена. Переходим к настройке.

Читайте также:  Web hosting, cloud computing and dedicated servers | OVHcloud (ovh.ie)

Настройка Hyper-V Server 2016

Сразу же выполняем первоначальную настройку Hyper-V Server 2016 через стандартную консоль управления:

  1. Указываете рабочую группу, если вас не устраивает стандартная.
  2. Меняем имя сервера на что-то более осмысленное и понятное.
  3. Добавьте еще одного администратора. Это нужно сделать, чтобы иметь еще одну админскую учетную запись, отличную от administrator. В дальнейшем рекомендую все настройки и подключения выполнять под этой учетной записью.
  4. Разрешаем удаленное управление, в том числе ping.
  5. Автоматическое обновление оставляю на ваше усмотрение. Я обычно отключаю и все делаю вручную.
  6. Рекомендую сразу проверить обновления и установить их.
  7. Включаем Remote Desktop со всеми версиями клиента.
  8. Указываем сетевые настройки. Стандартно стоит dhcp, рекомендую установить адрес статически.
  9. Настройте время, если по-умолчанию стоит не правильное.
  10. Настройки телеметрии полностью отключить нельзя. Такой вот микрософт. Не приходится удивляться, с учетом нововведений в последних версиях системы.

Быстренько пробежались по основным настройкам hyper-v server 2016. Теперь бы сразу начать установку виртуальных машин, но, к сожалению, пока это не получится сделать. Нам надо каким-то образом подключиться к серверу с помощью панели управления. Пока нам доступен только rdp доступ, но этого не достаточно.

Удаленное подключение и управление Hyper-V Server 2016

Подключаемся по rdp к серверу, чтобы было удобно копировать и вставлять длинные команды в командную строку. В консоли cmd переходим в powershell, просто введя команду:

powershell

Вводим команды для настройки разрешений на фаерволе для удаленного управления:

Set-NetFirewallRule -DisplayGroup 'Windows Management Instrumentation (WMI)' -Enabled true -PassThru
Set-NetFirewallRule -DisplayGroup 'Remote Event Log Management' -Enabled true -PassThru
Set-NetFirewallRule -DisplayGroup 'Remote Volume Management' -Enabled true -PassThru

Теперь переходим на клиентскую систему. Напоминаю, что в моем случае это Windows 10 Корпоративная. Заходить на нее нужно под учетной записью с теми же параметрами, что создана на гипервизоре. Добавьте такого же пользователя и работайте под ним. Это обязательное условие для подключения к управлению непосредственно сервером, его службам, дисковой подсистемой и т.д. Для подключения только для управления ролью hyper-v иметь одинаковую с сервером учетку не обязательно, в конце я расскажу, как это сделать.

Первым делом создадим запись в файле hosts с именем сервера hyperv. В моем случае эта запись выглядит так:

192.168.1.100 hyperv2016

Убедитесь, что с клиентской машины вы пингуете гипервизор по имени. Теперь нам нужно проверить, чтобы в настройках сетевого адаптера текущее сетевое подключение было указано, как подключенное к частной сети. Это нужно для того, чтобы было включено сетевое обнаружение устройств. Речь вот о чем:

Сетевое обнаружение windows

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

Изменение домашней группы

Я не сразу смог найти, где это сделать, поэтому подсказываю вам. Продолжаем настройку хоста для подключения к hyper-v server 2016. Запускаем cmd от администратора и переходим в powershell. Выполняем команду:

winrm quickconfig

Настройка службы winrm

Обязательно жмите Y и продолжайте. Вводим следующую команду, которая разрешает управление удаленными системами:

winrm set winrm/config/client '@{TrustedHosts="hyperv2016"}'

В данном примере, hyperv2016 — имя моего гипервизора.


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

Добавление хоста в TrustedHosts

Теперь нам нужно изменить еще один параметр. Запускаем оснастку dcomcnfg.exe, выполнив эту команду в cmd. Открывается оснастка управления службой компонентов.

Настройка dcomcnfg для подключения к hyperv

Выполняем последовательность действий, указанных на картинке. Дальше надо установить стандартную оснастку для управления hyperv. Для этого идем в Панель управления -> Программы -> Включение или отключение компонентов Windows. Выбираем там Средства управления Hyper-V и устанавливаем их. Дожидаемся окончания установки и пробуем подключиться к удаленному серверу:

Установка средства управления hyper-v

Если все сделали правильно, вы подключитесь к серверу и у вас появится возможность им управлять.

Расскажу еще об одном нюансе. Вы можете подключиться к удаленному hyper-v серверу, даже если работаете не под той учетной записью, что имеет административные права на гипервизоре. При подключении есть возможность ввести параметры другого пользователя. Но чтобы эта возможность заработала, необходимо выполнить ряд действий как на сервере, так и на клиенте. Для начала надо изменить один параметр в локальной политике компьютера. Для этого выполняем в cmd команду gpedit. Откроется оснастка управления локальными политиками компьютера. Идем по пути: Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных -> Разрешить передачу новых учетных данных с проверкой подлинности сервера «только NTLM». Включаем ее и добавляем запись:

wsman/hyperv2016

Разрешить передачу новых учетных данных с проверкой подлинности сервера "только NTLM"

Далее выполняем команды в powershell. Не забудьте запустить консоль от имени администратора:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value "hyperv2016"
Enable-WSManCredSSP -Role client -DelegateComputer "hyperv2016"

Теперь надо внести некоторые изменения на самом гипервизоре. Подключаемся к нему по rdp, переходим в cmd, запускаем powershell и выполняем команды:

Enable-PSRemoting
Enable-WSManCredSSP -Role server

После этого можете работать под привычным пользователем компьютера, но при этом подключаться к hyper-v server 2016 под другой учетной записью и управлять им.

Подключение к удаленному hyper-v серверу

Самое трудное сделали. Теперь мы можем свободно подключаться и управлять гипервизором. Забыл упомянуть о том, как подключиться к управлению самим сервером, то есть как посмотреть список дисков, службы, почитать логи и т.д. Делается это очень просто. Заходите на компьютер под той же учетной записью, что является администратором на гипервизоре. Запускаете стандартную оснастку «Управление компьютером», выбираете локальный компьютер, жмете правой правой кнопкой мыши и выбираете подключиться к другому компьютеру:

Управление hyper-v

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

Веб-сервер

Переходим к настройке веб-сервера:

apt-get install nginx
apt-get install php5-fpm php5-cgi

В общей папке создадим папку первого сайта: /media/sf_Webdev/site.loc.

Соответственно она появится и на основной машине. В эту папку поместим тестовый файл index.php с кодом:

<?php phpinfo(); ?>

Не имеет значения, как именно вы создаёте папки и файлы в общей папке. Можете всё это делать уже из вашей основной системы.

Создадим символическую ссылку для каталога сайта:

ln -s /media/sf_Webdev/site.loc /var/www

Создадим для сайта файл настроек Nginx /etc/nginx/sites-available/site.loc.

server { listen 80; server_name site.loc; root /var/www/site.loc; index index.php; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php5-fpm.sock; } access_log /var/log/nginx/site.loc_access.log; error_log /var/log/nginx/site.loc_error.log;
}

Подключим файл настроек:

ln -s /etc/nginx/sites-available/site.loc /etc/nginx/sites-enabled/site.loc
/etc/init.d/nginx restart

Теперь в основной системе отредактируем hosts-файл c:\Windows\System32\drivers\etc\hosts.

В него надо добавить строчку:

127.0.0.1 site.loc

Всё! Настало время в веб-браузере основной системы попробовать открыть сайт http://site.loc. Если всё в порядке, то вы увидите информацию по PHP виртуальной машины.

Если сайт не открылся, вы получили белую страницу, то скорее всего у вас в основной системе уже используется каким-то приложением порт 80. Соответственно проброс этого порта из виртуальной системы в основную не удался и ничего не работает.

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

cmd

Выполняем в ней:

netstat -an -p tcp -o | findstr 80

Получим примерно такое:

C:\Users\kodmg>netstat -an -p tcp -o | findstr 80 TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 5684 TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING 1000 TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING 580 TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING 980 TCP 192.168.1.210:56543 77.234.45.61:80 ESTABLISHED 1736 TCP 192.168.1.210:56793 5.45.58.148:80 CLOSE_WAIT 1736 TCP 192.168.1.210:56800 52.20.134.145:443 CLOSE_WAIT 7036 TCP 192.168.1.210:57180 95.213.255.17:443 ESTABLISHED 8616 TCP 192.168.1.210:57288 188.43.75.80:80 TIME_WAIT 0 TCP 192.168.1.210:57309 104.27.186.197:80 ESTABLISHED 8616 TCP 192.168.1.210:57340 23.43.134.135:80 TIME_WAIT 0

Здесь первая строка с адресом 0.0.0.0:80 – это признак, что 80-ый порт в настоящее время используется. В конце этой строки цифры, в примере это 5684. Данный номер — это ID процесса приложения.

Чтобы узнать, что это за приложение, открываем диспетчер задач:

Дешевый VPS-хостинг

На вкладке «Подробности» делаем сортировку по колонке «ИД процесса» и ищем нужный номер. В моём случае это оказался Skype.

По умолчанию Skype использует именно 80-ый порт для соединений, но это можно изменить в его настройках. Убираем галочку «Для дополнительных входящих соединений следует использовать порты 80 и 443». Выходим из настроек, перезапускаем Skype.

Дешевый VPS-хостинг

Той же командой в консоли ещё раз делаем проверку:

C:\Users\kodmg>netstat -an -p tcp -o | findstr 80 TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING 1000 TCP 0.0.0.0:49664 0.0.0.0:0 LISTENING 580 TCP 0.0.0.0:49665 0.0.0.0:0 LISTENING 980 TCP 192.168.1.210:56543 77.234.45.61:80 ESTABLISHED 1736 TCP 192.168.1.210:56793 5.45.58.148:80 CLOSE_WAIT 1736 TCP 192.168.1.210:56800 52.20.134.145:443 CLOSE_WAIT 7036 TCP 192.168.1.210:57180 95.213.255.17:443 ESTABLISHED 8616 TCP 192.168.1.210:57309 104.27.186.197:80 ESTABLISHED 8616 TCP 192.168.1.210:57340 23.43.134.135:80 TIME_WAIT 0

Теперь 80-ый порт никем не используется. Запускаем обратно виртуальную машину и снова пробуем открывать сайт. Теперь, если вы всё делали по инструкции, то он точно должен открыться!

Настройки

Пока продолжаем работать с созданной машиной через окно VirtualBox. К подключению по SSH вернёмся чуть позже.

В процессе установки Debian, кроме root, обязательно создаётся дополнительный пользователь. Если он совсем вам не нужен, то его можно удалить:

userdel -r имя_пользователя

Дополнительный пользователь иногда полезен. Например, когда вы будете работать с Composer. Этот менеджер пакетов считает, что работа под root небезопасна и выдаёт предупреждение, хотя и продолжает исправно работать.

По умолчанию Debian не позволяет подключиться по SSH, используя пользователя root. Выглядит это так:

login as: root
root@127.0.0.1's password:
Access denied

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

Чтобы по SSH можно было зайти root-ом редактируем файл /etc/ssh/sshd_config.

PermitRootLogin without-password
PermitRootLogin yes

Чтобы изменения вступили в силу перезагружаем машину.

Для подключений по SSH в Windows удобно использовать PuTTY. Адрес машины 127.0.0.1, порт 3022:

Дешевый VPS-хостинг

Теперь уже можно большую часть времени работать с виртуальной машиной через SSH. Оно удобнее, чем через окно VirtualBox. Окно PuTTY можно свободно растягивать и его содержимое будет под это подстраиваться. В вашем распоряжении буфер обмена и даже мышь.

Чтобы работала общая папка требуется установить дополнения гостевой ОС.

Для начала подключаем образ:

Дешевый VPS-хостинг

Теперь монтируем его:

mount /dev/cdrom /media/cdrom

Предварительно устанавливаем требуемые пакеты:

apt-get install build-essential module-assistant
m-a prepare

Теперь сама установка дополнений:

sh /media/cdrom/VBoxLinuxAdditions.run

Результат успешной установки:

root@webdev:~# sh /media/cdrom/VBoxLinuxAdditions.run
Verifying archive integrity... All good.
Uncompressing VirtualBox 5.1.2 Guest Additions for Linux...........
VirtualBox Guest Additions installer
Copying additional installer modules ...
Installing additional modules ...
vboxadd.sh: Building Guest Additions kernel modules.
update-initramfs: Generating /boot/initrd.img-3.16.0-4-amd64
vboxadd.sh: Starting the VirtualBox Guest Additions.
Could not find the X.Org or XFree86 Window System, skipping.
root@webdev:~#

Перезапускаем машину и радуемся. Теперь у нас заработала общая папка. В виртуальной машине в моём случае это: /media/sf_Webdev. На основной машине она соответствует: c:\VirtualDub\Folders\Webdev.

Работа с общей папкой в виртуальной машине осуществляется из под пользовательской группы vboxsf. Это означает, что если пользователь (под которым вы работаете) не входит в эту пользовательскую группу, то он не сможет записывать в общую папку. Для него в папке по умолчанию режим «readonly».

Чтобы добавить пользователя в эту группу выполняем:

usermod -aG vboxsf имя_пользователя
usermod -aG vboxsf root
usermod -aG vboxsf www-data

Пользователь www-data по умолчанию используется Nginx.

Создание виртуальных машин

Мы почти закончили настройку Windows Hyper-V Server 2016 и готовы приступить к установке виртуальных машин. Надо только загрузить iso образ на гипервизор. Тут все очень просто. Открываем в проводнике на управляющей машине удаленный диск через стандартную возможность windows машин, создаем папку iso и загружаем нужный образ.

Загрузка iso образа

Так же я рекомендую сразу загрузить какой-нибудь файловый менеджер для удобной навигации по папкам на самом гипервизоре. Лучше использовать портированную версию. Запустить этот менеджер можно будет через командную строку, подключившись по rdp

Запуск total commander

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

Простое управление Hyper-V Server 2019 через 5nine Manager

Есть еще один способ управлять гипервизором Hyper-V Server 2019 — использовать бесплатную версию 5nine Cloud Manager Free. Сразу скажу, что начал описывать этот способ по инерции, так как давно знаком с продуктами от 5nine и они мне нравились. Но то, что я увидел в этот раз, мне не очень понравилось, но тем не менее, решил поделиться с вами, так как изучил продукт.

Читайте также:  Повысьте безопасность своих веб-сайтов: получите SSL-сертификат от MCHost

Раньше программа 5nine Manager для управления Hyper-V была другой. Я рассказывал о ней в отдельной статье. Сейчас этой программы вообще нет, а вместо нее 5nine Cloud Manager. Он более громоздкий и тормозной. Для установки требует sql сервер. Подойдет бесплатная редакция express. Нужно отдельно ставить серверную часть, отдельно консоль для управления, отдельно агент на hyper-v сервер.

Все стало намного сложнее по структуре, но в целом, если вам не хочется заморачиваться с описанными выше действиями, то можно попробовать с 5nine. В целом, процесс простой и выполняется все мышкой и визардами с кликанием далее — делее — делее. Чтобы все было понятно, расскажу по этапам.

  1. Скачиваете и устанавливаете Microsoft SQL Server Express ни гипервизор.
  2. Скачиваете 5nine Cloud Manager. Устанавливаете на гипервизор серверную часть приложения, которая работает с sql базой, на машину управления ставите консоль для подключения к серверной части.
  3. Подключаетесь консолью и устанавливаете бесплатную лицензию, которая придет в письме после регистрации на сайте программы. Лицензия сроком на год, потом не знаю, что с ней делать, придется продлевать или будет и так работать. На прошлых версиях программы работала и так, продлевать было не обязательно.
  4. Ставите консоль на гипервизор и подключаетесь теперь напрямую с гипервизора через rdp. Сразу так не сделал, потому что с гипервизора нельзя было добавить лицензию. Выскакивала ошибка. Наверно связано с тем, что гипервизор без gui, а визарду по добавлении лицензии он нужен. Могли бы это как-то исправить, было бы проще. Раньше все можно было сразу делать на гипервизоре.

Теперь подробнее и с картинками. Скачиваем и устанавливаем на Hyper-V Microsoft SQL Server Express с сайта Microsoft. Выбирайте тот же язык, что и в гипервизоре. Установка подойдет дефолтная. Установщик можно передать так же, как я показывал раньше, через \\hyperv2019\c$.

Дальше ставите 5nine Cloud Manager, серверную часть. В установщике она называется 5nine Management Service.

Установка 5nine Cloud Manager на Hyper-V 2019

Установщик сам найдет установленную локально базу. В качестве авторизации в базе используйте системную учетную запись windows пользователя, от которого вы ставили SQL Server Express. Все остальные настройки установщика я оставлял дефолные.

Теперь переходите на любую клиентскую систему windows, с которой есть доступ к гипервизору и устанавливайте туда консоль управления.

Установка 5nine Cloud Manager Console

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

Подключение к Hyper-V через 5nine Cloud Manager Console

Далее нужно добавить гипервизор в панель и дождаться, пока установится агент.

Управление Hyper-V через 5nine Cloud Manager

После установки агента, гипервизор с виртуальными машинами появится в панели.

Список виртуальных машин в Hyper-V

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

Видео

https://youtube.com/watch?v=nNuihN4TJ_E%3Ffeature%3Doembed

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, научиться непрерывной поставке ПО, мониторингу и логированию web приложений, рекомендую познакомиться с онлайн-курсом «DevOps практики и инструменты» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям и установке Linux на виртуалку. Обучение длится 5 месяцев, после чего успешные выпускники курса смогут пройти собеседования у партнеров.

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

Помогла статья? Подписывайся на telegram канал автора

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

Установка Hyper-V Server 2016

Дальше выполняете установку стандартным способом, как и любую другую систему. Загружаетесь с iso образа и следуете по шагам инсталлятора. Каких-то нюансов или проблем с тем, чтобы установить hyper-v server нет, так что я не буду заострять на этом внимание. Обращу внимание только на самый конец установки. У меня появилось вот такое окно:

Установка Windows Hyper-V Server 2016

При этом я не мог ничего сделать или выбрать. Я нажал ctrl+alt+delete и появилось предложение задать пароль администратора. Я сделал это, установка завершилась, загрузилось окно со стандартным интерфейсом управления:

Окно настройки Hyper-V Server 2016

Если вы по какой-то причине закроете это окно, вызвать его снова можно в командной строке с помощью команды sconfig.

Создание виртуальных машин

Мы почти закончили настройку Windows Hyper-V Server 2019 и готовы приступить к установке виртуальных машин. Надо только загрузить iso образ на гипервизор. Тут все очень просто. Открываем в проводнике на управляющей машине удаленный диск через стандартную возможность windows машин, создаем папку iso и загружаем нужный образ.

Копирование iso образа на hyper-v

Так же я рекомендую сразу загрузить какой-нибудь файловый менеджер для удобной навигации по папкам на самом гипервизоре. Лучше использовать портированную версию. Запустить этот менеджер можно будет через командную строку, подключившись по rdp.

Файловый менеджер в бесплатном hyper-v

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

Workbench

Приложение MySQL Workbench — это удобный инструмент для работы с базой. Устанавливать его нужно на основной машине. Для подключения к базе MySQL на виртуальной машине можно использовать SSH. При создании подключения просто устанавливаем параметр «Connection Method» в состояние «Standard TCP/IP over SSH» и далее вписываем уже знакомые параметры:

Дешевый VPS-хостинг

Vagrant

Это такая вспомогательная программа для VirtualBox. Хотя, работает и с другими системами виртуализации. Позволяет легко и быстро автоматизированно создавать виртуальные машины. Можно создать наподобие той, которую мы уже создали. Работать с Vagrant необходимо из командной строки.

Пишу это здесь просто для информации, что такое есть.

Я пробовал Vagrant. Да, действительно программа делает своё дело. Но мне показалось это лишним и не совсем тем, что надо. Мои соображения на этот счёт:

  • Такое полезно тому, кто создаёт виртуальные машины пачками. Не мой случай. Возможно, пока.
  • Виртуальные машины при помощи Vagrant создаются на основе готовых образов (боксов), список которых есть на официальном сайте. Они в случае необходимости автоматически загружаются. Честно говоря, я не сильно доверяю этим боксам. Считаю, что безопаснее создать своё. Тем более это не сложно.

В принципе, боксы для Vagrant — это созданные и специально настроенные виртуальные машины VirtualBox. Мы, вот, создали свою виртуальную машину. Её, в теории, можно немного допилить, чтобы использовать в качестве бокса Vagrant. Бокс может быть локальным.

Я когда начал изучать информацию по Vagrant, то меня напугали все эти инструкции в интернете. В каждой автор начинает разбирать конфигурационный файл виртуальной машины, и это поначалу выглядит дико и совсем непросто. Спешу успокоить новичков! Этот файл создается автоматически самим Vagrant-ом. Вы (при желании) можете внести в него дополнительные параметры, а можете и не вносить! Машина просто получит настройки по умолчанию. Часто этого достаточно.

Далее простой пример, как можно создать с помощью Vagrant тот же веб-сервер на базе Debian 8.

Перед тем как начать скачиваем Vagrant с официального сайта и устанавливаем его в любую папку. Важно, чтобы в пути к этой папке не было русских символов.

Открываем консоль в Windows:

cmd

Скачиваем нужный бокс и убеждаемся, что он попал в список доступных локально боксов:

vagrant box add cimmwolf/jessie64-lemp
vagrant box list

Для первой команды название бокса я нашёл в списке по запросу «debian 8 lemp». Вот информация по нему, где автор советует перед использованием бокса выполнить установку плагина:

vagrant plugin install vagrant-vbguest

Такая команда выполняется единожды, если ранее данный плагин ещё не инсталлировался. Плагин позволяет автоматически устанавливать в виртуальную машину дополнения гостевой ОС.

Создаём каталог и переходим в него, например:

mkdir c:\VMs\Deb8lemp
cd c:\VMs\Deb8lemp

Инициализация виртуальной машины:

vagrant init cimmwolf/jessie64-lemp

При этом у нас появляется в этом каталоге файл Vagrantfile. Он содержит конфигурацию будущей машины. Как я уже сказал, настройки можно оставить по умолчанию. Устанавливаем виртуальную машину:

vagrant up

Всё! Через некоторое время машина будет готова.

При установке машины автоматически устанавливаются все актуальные обновления Debian. При каждом старте монтируется общая папка.

Для входа по SSH используем адрес 127.0.0.1, порт 2222, пользователя vagrant, пароль vagrant.

Таким образом, всего несколько команд в консоли и у нас готовая для работы виртуальная машина.

Последующий запуск машины из консоли происходит быстро:

C:\VMs\Deb8lemp>vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Checking if box 'cimmwolf/jessie64-lemp' is up to date...
==> default: Clearing any previously set forwarded ports...
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat
==> default: Forwarding ports... default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key
==> default: Machine booted and ready!
[default] GuestAdditions 5.1.2 running --- OK.
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders... default: /vagrant => C:/VMs/Deb8lemp
==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision`
==> default: flag to force provisioning. Provisioners marked to run always will still run.

В VirtualBox машину тоже видно:

Дешевый VPS-хостинг

База

Вместо обычного MySQL я предпочитаю Percona Server. Многие рекомендуют этот продукт, благодаря скорости и дополнительным фичам. Я использую Percona Server не менее 2 лет и тоже могу его рекомендовать. Для сайта, для любого сайтового движка — это будет просто MySQL, они не увидят разницы.

Я не делал сравнений. Просто однажды перешел на Percona Server и все. Никаких проблем никогда не было. Если при этом есть хоть небольшой прирост скорости, оно стоит того.

Установка Percona Server:

wget https://repo.percona.com/apt/percona-release_0.1-4.$(lsb_release -sc)_all.deb
dpkg -i percona-release_0.1-4.$(lsb_release -sc)_all.deb
apt-get update
apt-get install percona-server-server-5.7

В процессе установки потребуется указать пароль для root-пользователя базы. Не путайте с root-пользователем системы.

cd /usr/src
apt install curl
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

Для рабочего софта лучше создать отдельный локальный сайт, пример webdev.loc. Это будет каталог /var/www/webdev.loc. Настройка Nginx аналогична той, что была выше. Пробрасывать этот каталог в основную систему не нужно.

cd /var/www/webdev.loc
composer create-project phpmyadmin/phpmyadmin --repository-url=https://www.phpmyadmin.net/packages.json --no-dev

Nginx

При подобном использовании веб-сервера внутри VirtualBox есть одна особенность с Nginx. Файлы сайтов получается будут лежать и модифицироваться в общей папке. Система внутри VirtualBox не будет знать, когда файлы в этой папке были модифицированы, отсюда проблема. Nginx думает, что файлы не менялись и добросовесно отдаёт старые их версии, закешированные.

Очень многие сталкиваются с этими граблями. Типичный случай: вы изменили файл CSS или JS, а на сайте не видно этих изменений, файл используются старый.

Мне помогло решить проблему включение в конфиг Nginx параметра:

if_modified_since off;

Некоторым помогает ещё этот дополнительный параметр:

sendfile off;

Поскольку проблема может быть актуальна для всех сайтов, работающих на веб-сервере виртуальной машины, то правильнее включить эти параметры в общем файле /etc/nginx/nginx.conf.

Дополнительная информация по теме.

Настройка Hyper-V Server 2019

Сразу же выполняем первоначальную настройку Hyper-V Server 2019 через стандартную консоль управления:

  1. Указываете рабочую группу, если вас не устраивает стандартная.
  2. Меняем имя сервера на что-то более осмысленное и понятное.
  3. Добавьте еще одного администратора. Это нужно сделать, чтобы иметь еще одну админскую учетную запись, отличную от administrator. В дальнейшем рекомендую все настройки и подключения выполнять под этой учетной записью.
  4. Разрешаем удаленное управление, в том числе ping.
  5. Автоматическое обновление оставляю на ваше усмотрение. Я обычно отключаю и все делаю вручную.
  6. Рекомендую сразу проверить обновления и установить их.
  7. Включаем Remote Desktop со всеми версиями клиента.
  8. Указываем сетевые настройки. Стандартно стоит dhcp, рекомендую установить адрес статически.
  9. Настройте время, если по-умолчанию стоит не правильное.
  10. Настройки телеметрии полностью отключить нельзя. Такой вот микрософт. Не приходится удивляться, с учетом нововведений в последних версиях системы.
Читайте также:  Руководство для начинающих: простая настройка Mikrotik Firewall

Быстренько пробежались по основным настройкам hyper-v server 2019. Теперь бы сразу начать установку виртуальных машин, но, к сожалению, пока это не получится сделать. Наверно можно как-то через консоль powershell, но это слишком муторно и сложно. Нам надо каким-то образом подключиться к серверу с помощью удобной панели управления. Пока нам доступен только rdp доступ, но этого не достаточно.

У нас есть несколько вариантов управления Hyper-V. Я сначала рассмотрю 2 наиболее удобных из них:

  1. Установка Windows Admin Center для управления сервером через браузер.
  2. Установка стандартных системных оснасток на компьютер под управлением Windows 10 для подключения к Hyper-V 2019.

Задача

Есть компьютер с Windows 10, где установлен VirtualBox. Создадим виртуальную машину в VirtualBox, установим на неё Debian. Затем настроим на этой машине веб-сервер и установим некоторый софт, необходимый для веб-разработки. Дополнительно настроим общую папку, чтобы удобно работать в ней с кодом сайтов в любимом редакторе под Windows. Открываться сайты тоже будут под Windows.

Установка Windows Admin Center для управления Hyper-V 2019

Скачать Windows Admin Center

Теперь нам надо передать скачанный файл на гипервизор и установить панель управления. Ранее мы разрешили подключение к Windows Hyper-V Server 2019 по rdp. Подключимся к нему, чтобы было удобно выполнять команды на самом гипервизоре.

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

netsh advfirewall set currentprofile state off
netsh advfirewall set currentprofile state on

Либо разрешить некоторые команды удаленного управления, которые позволят в том числе передавать файлы на гипервзиор по smb. Следующие команды нужно вводить не в обычной консоли, а powershell. Для этого наберите команду powershell в стандартной консоли, которая загружается после подключения по rdp, а потом сами команды.

powershell
Set-NetFirewallRule -DisplayGroup 'Windows Management Instrumentation (WMI)' -Enabled true -PassThru
Set-NetFirewallRule -DisplayGroup 'Remote Event Log Management' -Enabled true -PassThru
Set-NetFirewallRule -DisplayGroup 'Remote Volume Management' -Enabled true -PassThru

Эти разрешения нам понадобятся позже, когда мы будем подключаться стандартными системными останстками для управления Hyper-V Server 2019.

Копирование установщика Windows Admin Center

Возвращаемся на гипервизор, идем в паеку C:/Soft и запускаем переданный файл.

Запуск инсталлятора

Установка Windows Admin Center

Подключение к Admin Center

В разделе Виртуальные машины, можно создать виртуалку и запустить ее. Единственное, не забудьте установочный iso образ загрузить на гипервизор. Можно в ту же папку, куда загружали установщик админ центра. Единственное, вот на чем остановлюсь. Давайте создадим виртуальный коммутатор, для того, чтобы виртуальная машина получила доступ к сети.

Для этого идем в раздел Виртуальные коммутаторы и жмем на кнопку Создать.

Создание виртуального коммутатора в hyper-v 2019 с помощью admin center

  1. Личный (private) для связи только между виртуальными машинами, без доступа к гипервизору и сетью за ним.
  2. Внутренний (internal) — почти то же самое, что и личный, только доступ к коммутатору может иметь и гипервизор, но по прежнему нет доступа к внешней сети.
  3. Внешний (external) по сути это обычный сетевой бридж, куда входит реальный сетевой интерфейс гипервизора. Этот тип коммутатора используется для доступа виртуальных машин во внешнюю сеть.

В моем примере у меня только один сетевой интерфейс на гипервизоре. Я создам один коммутатор типа Внешний (External).

Параметры виртуального коммутатора

Получилось вот так.

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

Теперь этот коммутатор можно использовать в виртуальных машинах для доступа во внешнюю сеть.

Я предпочитаю использовать классические оснастки для управления гипервизором. Если вы так же как и я, предпочитаете их, переходим к следующему способу подключения и управления Hyper-V Server 2019. Для этого нам понадобится компьютер или виртуальная машина с Windows 10. Можно ее установить прямо на этом же гипервизоре. Иногда я так делаю для удобства. Получается автономный гипервизор со всем необходимым для управления.

Удаленное подключение и управление Hyper-V Server 2019 через оснастки

Отправляемся по rdp на гипервизор и настраиваем правила firewall, если не сделали это ранее. Можете любо полностью отключить его через cmd:

netsh advfirewall set currentprofile state off

либо разрешить только то, что нужно через powershell:

Set-NetFirewallRule -DisplayGroup 'Windows Management Instrumentation (WMI)' -Enabled true -PassThru
Set-NetFirewallRule -DisplayGroup 'Remote Event Log Management' -Enabled true -PassThru
Set-NetFirewallRule -DisplayGroup 'Remote Volume Management' -Enabled true -PassThru

Теперь переходим на клиентскую систему. Напоминаю, что в моем случае это Windows 10 Корпоративная. Заходить на нее нужно под учетной записью с теми же параметрами, что создана на гипервизоре. Добавьте такого же пользователя и работайте под ним. Это обязательное условие для подключения к управлению непосредственно сервером, его службам, дисковой подсистемой и т.д. Для подключения только для управления ролью hyper-v иметь одинаковую с сервером учетку не обязательно, в конце я расскажу, как это сделать.

Первым делом создадим запись в файле hosts с именем сервера hyperv. В моем случае эта запись выглядит так:

192.168.175.19 hyperv2019

Убедитесь, что с клиентской машины вы пингуете гипервизор по имени. Продолжаем настройку хоста для подключения к hyper-v server 2019. Запускаем cmd от администратора и переходим в powershell. Выполняем команду:

winrm quickconfig

ошибка winrm quickconfig

Если, как и я, получили ошибку:

Код ошибки: -2144108183 0x80338169
Исключение брандмауэра WinRM не будет работать, поскольку одно из сетевых подключений, установленных для этого компьютера, является общим. Измените тип сетевого подключения либо на доменное, либо на частное и повторите попытку.

Значит у вас одно из сетевых подключений имеет статус общедоступной, что недопустимо.

Список сетевых подключений

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

Изменение типа сети в windows

После того, как не останется общедоступных сетей, выполняйте команду еще раз. Все должно быть в порядке.

winrm quickconfig

winrm quickconfig

Вводим следующую команду, которая разрешает управление удаленными системами:

winrm set winrm/config/client '@{TrustedHosts="hyperv2019"}'

В данном примере, hyperv2019 — имя моего гипервизора.


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

Настройка подключения к Hyper-V 2019

Теперь нам нужно изменить еще один параметр. Запускаем оснастку dcomcnfg.exe, выполнив эту команду в cmd. Открывается оснастка управления службой компонентов.

Изменение параметров через dcomcnfg

Выполняем последовательность действий, указанных на картинке. Дальше надо установить стандартную оснастку для управления hyperv. Для этого идем в Панель управления -> Программы -> Включение или отключение компонентов Windows. Выбираем там Средства управления Hyper-V и устанавливаем их. Дожидаемся окончания установки и пробуем подключиться к удаленному серверу:

Установка оснастки управления Windows Hyper-V 2019

Если все сделали правильно, вы подключитесь к серверу и у вас появится возможность им управлять.

Подключение к Windows Hyper-V 2019

Расскажу еще об одном нюансе. Вы можете подключиться к удаленному hyper-v серверу, даже если работаете не под той учетной записью, что имеет административные права на гипервизоре. При подключении есть возможность ввести параметры другого пользователя. Но чтобы эта возможность заработала, необходимо выполнить ряд действий как на сервере, так и на клиенте. Для начала надо изменить один параметр в локальной политике компьютера. Для этого выполняем в cmd команду gpedit. Откроется оснастка управления локальными политиками компьютера. Идем по пути: Конфигурация компьютера -> Административные шаблоны -> Система -> Передача учетных данных -> Разрешить передачу новых учетных данных с проверкой подлинности сервера «только NTLM». Включаем ее и добавляем запись:

wsman/hyperv2019

Разрешить передачу новых учетных данных с проверкой подлинности сервера «только NTLM»

Далее выполняем команды в powershell. Не забудьте запустить консоль от имени администратора:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value "hyperv2019"
Enable-WSManCredSSP -Role client -DelegateComputer "hyperv2019"

Теперь надо внести некоторые изменения на самом гипервизоре. Подключаемся к нему по rdp, переходим в cmd, запускаем powershell и выполняем команды:

Enable-PSRemoting
Enable-WSManCredSSP -Role server

После этого можете работать под привычным пользователем компьютера, но при этом подключаться к hyper-v server 2019 под другой учетной записью и управлять им.

Подключение к Hyper-V под произвольным пользователем

Самое трудное сделали. Теперь мы можем свободно подключаться и управлять гипервизором. Забыл упомянуть о том, как подключиться к управлению самим сервером, то есть как посмотреть список дисков, службы, почитать логи и т.д. Делается это очень просто. Заходите на компьютер под той же учетной записью, что является администратором на гипервизоре. Запускаете стандартную оснастку «Управление компьютером», выбираете локальный компьютер, жмете правой правой кнопкой мыши и выбираете подключиться к другому компьютеру:

Управление сервером Microsoft Windows Hyper-V 2019

Рабочий софт

Установка Composer уже была выше. Остальное по желанию.

curl -sL https://deb.nodesource.com/setup_6.x | bash -
apt-get install nodejs
apt-get install npm
npm i -g gulp

Если будут предупреждения:

a RegExp DoS issue
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.

Тогда надо установить предложенное, пример далее. В вашем случае версии могут быть другие, обратите на это внимание.

npm install -g minimatch@3.0.2
npm install -g graceful-fs@^4.0.0
npm install -g less

Плюсы и минусы Hyper-V

Расскажу немного, почему я постоянно пользуюсь hyper-v наравне с другими гипервизорами (в основном KVM). В общем и целом мне нравится этот гипервизор, поэтому я и решил внимательно проработать вопрос установки и первоначальной настройки для дальнейшего использования по мере необходимости. К плюсам hyper-v в целом и бесплатной версии в частности я отношу следующие моменты:

  1. Поддержка всех популярных ОС. Нет никаких проблем с совместимостью, нет необходимости отдельно ставить какие-то драйвера или тулсы. Поддержка hyper-v присутствует во всех windows системах, в ядре линукс, не помню точно с какой версии, но все современные системы ее имеют, в ядре freebsd, начиная с 10-й версии. То есть вы просто берете установочный диск и ставите систему на hyper-v, больше от вас ничего не требуется.
  2. Много различных способов бэкапа виртуальных машин. Это могут быть простые скрипты, бесплатные программы, либо полноценные платные версии крупных компаний, специализирующихся на программном обеспечении для бэкапа. Обращаю на это особое внимание. По мне так это самый существенный плюс Hyper-v.
  3. Стандартная панель управления гипервизором, которую можно установить на компьютер под управлением windows. К ней прибавился web доступ через windows admin center. Расскажу об этом далее подробнее.
  4. В основе Hyper-V Server популярная серверная система, с которой понятно и удобно работать. К примеру, чтобы загрузить или забрать файл с гипервизора, вам достаточно расшарить на нем папку стандартным образом, как вы это делаете в любой windows системе.
  5. Hyper-V можно установить на псевдорейды, такие как встроенный рейд контроллер от intel, или собрать софтовый рейд средствами самой ОС Windows.
  6. Полнофункциональная бесплатная версия, правда без удобных средств управления.
  7. Удобная работа со снепшотами из коробки. Не надо думать над форматами файлов, как в KVM. В Hyper-V он один и отлично поддерживает снепшоты.

Это мое личное мнение, основанное на опыте работы с малыми и средними компаниями, где нет каких-то особенных требований к надежности и доступности сервисов. Где используются несколько серверов с виртуальными машинами, не всегда есть домен windows. Конечно, помимо плюсов, есть и минусы. Первый и главный для меня минус — первоначальная настройка. Нельзя просто взять, установить Hyper-V Server и начать им пользоваться. Необходимо производить какие-то непонятные и не очевидные действия на хосте и управляемой машине. Дальше вы поймете, что я имею ввиду. Но преодолев это препятствие, можно спокойно использовать виртуальную инфраструктуру, основанную на бесплатном гипервизоре от microsoft.

Второй минус — нет никакой возможности пробросить USB в виртуальную машину. Подчас это очень неудобно и вынуждает использовать что-то другое, вместо Hyper-V. Не понимаю, почему в Microsoft за столько лет не могут это исправить. Запрос очень актуальный и злободневный, особенно у нас, где повсеместно используется 1С с USB ключами.

Оцените статью
Хостинги