Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление
maxLevel23

Требования к системе виртуализации

Для установки и функционирования vESBC установленная версия Xen в режиме HVM должна быть не ниже 4.16.

Использование командной строки XEN (xl)

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

Шаг 1. Создайте виртуальный диск, на котором будет храниться vESBC, используя утилиту dd:

Блок кода
dd if=/dev/zero of=<путь_к_образу_диска> bs=1M count=1024

Пример создания диска с названием vesbc_xen.img в домашнем каталоге пользователя xenadmin, размером 10Gb:

dd if=/dev/zero of=vesbc_xen.img bs=1M count=
1024
Блок кода
xenadmin@xen:~$ 
Информация
titleПример
Блок кода

В итоге должен быть создан пустой файл размером 1 ГБ.

10240
10240+0 records in
10240+0 records out
10737418240 bytes (11 GB, 10 GiB) copied, 22,1395 s, 485 MB/s

Шаг 2. Создайте конфигурационный файл виртуальной машины vESBC:

Блок кода
xenadmin@xen:~$ sudo nano vESBC1.cfg

со следующим содержимым:

Блок кода
type =' "hvm'"
name='vesbc_xen' = "vESBC1"
memory = 4096
vcpus ='4' 4
device_model_version = "qemu-xen"
disk = [
    '<полный_путь_к_виртуальному_диску>,raw,hdchda,wrw',
    '<полный_путь_к_установочному_образу>,raw,hdc,hdb:devtype=cdrom,r'
]
boot='d' = "dc"
serial = "pty"

где:

type — тип домена виртуальной машины. Для vESBC необходим тип домена HVM, который указывает на то, что данная виртуальная машина является полностью виртуализированным компьютером с эмулируемым BIOS, дисковой и сетевой периферией и т. д.;

...

vcpus — количество виртуальных ядер;

device_model_version — версия эмулятора QEMU;

disk — список дисков:

  • <полный_путь_к_виртуальному_диску> — путь к файлу диска, начиная с корневого каталога "/". 
  • hdc — гостевой диск.
  • raw — формат диска.
  • hda — эмуляция IDE-диска (Primary Master).
  • rw w — уровень доступа. Диск доступен как для чтения, так и для записи.
  • <полный_путь_к_установочному_образу> — путь к файлу  файлу ISO-образа, начиная  начиная с  корневого каталога "/". 
  • cdrom — указатель на тип устройства CD-ROM.
  • hdc — эмуляция IDE-диска (Secondary Master).

boot — тип загрузочного дискаприоритет загрузки . Тип "ddc" означает загрузку с сначала CD-ROM

...

, а затем HDD;

serial — создает виртуальный последовательный порт (COM-порт)  в режиме псевдотерминала.

Пример:

...

Блок кода
type =
'
 "hvm
'
"
name
='vesbc_xen'
 = "vESBC1"
memory = 4096
vcpus =
'4'
 4
device_model_version = "qemu-xen"
disk = [
    '/
root
home/
vesbc
xenadmin/vesbc_xen.img,raw,
hdc
hda,
w
rw',
    '/
root/vesbc
var/lib/libvirt/images/vesbc-1.
35
41.0-
build4
build19.
firmware
iso,hdc,
hdb:
devtype=cdrom,r'
]

boot
='d'
 = "dc"
serial = "pty"

Scroll Pagebreak

Установка vESBC

Шаг 1. Для начала установки запустите виртуальную машину, передав в качестве параметра её конфигурацию:

...

Блок кода
xenadmin@xen:~$ sudo xl create 
/root/vesbc/vesbc_xen.conf
vESBC1.cfg

Шаг 2. После запуска виртуальной машины подключитесь к консоли средствами Xen:

...

Блок кода
xenadmin@xen:~$ sudo xl console 
vesbc_xen
vESBC1

Дальнейшие действия по установке vESBC описаны vESBC описаны в разделе разделе Процесс установки vESBC. 

Шаг 3. После завершения установки выключите vESBC:

Информация
titleПример
Блок кода
xenadmin@xen:~$ sudo xl destroy 
vesbc_xen
-f vESBC1

где:

-f — немедленное выключение виртуальной машины.

Шаг 4. В конфигурационном файле необходимо сменить значение параметра поменять местами параметры "boot" с 'd' на 'c', таким образом загрузка будет осуществляться с жёсткого диска, на который был установлен vESBC.   Scroll Pagebreak  

Блок кода
boot = "cd"

Шаг 5. Запустите виртуальную машину, передав в качестве параметра изменённую конфигурацию:

Блок кода
xenadmin@xen:

...

~$ sudo xl create vESBC1.cfg

Scroll Pagebreak

Подключение сетевых интерфейсов
Якорь
xen_netplan
xen_netplan

Перед подключением сетевых интерфейсов в vESBC, например на базе Linux Bridge необходимо предварительно настроить их в хостовой операционной системе.

Пример конфигурации файла config.yaml при конфигурировании через netplan для ОС Ubuntu:

Блок кода
network:
  version: 2
  ethernets:
    eno1:                               // eno1 - физический интерфейс хоста, который будет использоваться для подключения виртуальной машины vESBC к сети передачи данных.
      dhcp4: no
      dhcp6: no
    eno2:
      dhcp4: no
      dhcp6: no
    enp24s0f0:
      dhcp4: no
    enp24s0f1:
      dhcp4: no
  bridges:
    br0:                                // br0 - создание бриджа br0.
      interfaces:
        - eno1                          // добавление интерфейса eno1 в бридж.
      addresses:
        - 192.168.113.140/20            // настройка IP-адреса хоста (если необходима IP-связность между хостом и виртуальными машинами).
      routes:
        - to: default                   // настройка шлюза по умолчанию.
          via: 192.168.112.1
      nameservers:                    
        addresses:
          - 8.8.8.8                     // настройка DNS-сервера.
      parameters:
        stp: false
      dhcp4: no
    br1:                               // br1 - создание бриджа br0 без привязки фичеческого интерфейса гипервизора. Такой интерфейс может понадобиться для организации кластерного интерфейса между двумя vESBC.
      interfaces: []
      parameters:
        stp: false
      dhcp4: no

Scroll Pagebreak

...

titleПример
Блок кода
sudo xl create /root/vesbc/vesbc_xen.conf

...

Шаг 1. Выключите vESBC:

Информация
titleПример
Блок кода
xenadmin@xen:~$ sudo xl destroy 
vesbc_xen
-f vESBC1

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

Блок кода
vif = [ 'mac=<MAC-адрес>, model=<модель_сетевой_карты>, bridge=<название_моста>'bridge=br0,model=e1000,mac=00:16:3e:42:8f:c6', 'bridge=br1,model=e1000,mac=00:16:3e:60:d3:aa' ]

где:

vif — список эмулируемых сетевых интерфейсов.

Задаётся в виде списка виртуальных интерфейсов:

Блок кода
vif = [ 'vifspec', 'vifspec', ... ]

mac — MAC-адрес сетевой карты. Данный параметр является обязательным. Xen автоматически выдаст MAC-адрес в случае, если не указать его явно.

model — модель эмулируемой сетевой карты. Необязательный параметр. Xen автоматически выставит этот параметр в случае, если не указать его явно.

bridge — имя сетевого моста, к которому нужно подключить виртуальную машину.

...

;

bridge — виртуальный мост в хостовой ОС, к которому подключается интерфейс vESBC;

mac — cтатический MAC-адрес. Рекомендуется использовать префикс 00:16:3e (зарезервирован для Xen);

Примечание

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

В результате будет потеряна IP-связность с vESBC. 

model — тип эмулируемой сетевой карты:

  • netfront — высокопроизводительный драйвер виртуализации. Данный драйвер используется по умолчанию в XEN;
    Предупреждение

    Данный драйвер не поддерживается в vESBC. Такой интерфейс будет иметь статус Unknown.

  • e1000 — эмуляция гигабитной сетевой карты Intel (82540EM);
  • rtl8139 — эмуляция 100-мегабитной сетевой карты Realtek.

Шаг 3. Запустите виртуальную машину, передав в качестве параметра изменённую конфигурацию:

Информация
titleПример
Блок кода
xenadmin@xen:~$ sudo xl create 
/root/vesbc/vesbc_xen.conf

Подключение последовательного порта

Шаг 1. Выключите vESBC:

vESBC1.cfg

Scroll Pagebreak

Использование приложения Менеджер виртуальных машин (Virtual Machine Manager)

Virtual Machine Manager — это приложение для управления виртуальными машинами в операционных системах Linux при помощи графического интерфейса (GUI).

Создание виртуальной машины и установка vESBC

 Шаг 1. Запустите "Менеджер виртуальных машин". Для создания виртуальной машины нажмите кнопку "Создать виртуальную машину" в главном меню:

Image Added

Шаг 2. В окне "Новая виртуальная машина" оставьте метод установки — "Локальный ISO или CDROM" и нажмите кнопку "Forward":

Image Added

Scroll Pagebreak

Шаг 3. Нажмите кнопку "Обзор":

Image Added

В открывшемся окне выберите образ ISO vESBC, затем нажмите кнопку "Choose Volume":

Примечание

Перед выбором образа ISO поместите его в каталог /var/lib/libvirt/images/

Image Added

Scroll Pagebreak

Шаг 4. Деактивируйте чек-бокс "Автоматически определять по носителю/источнику пакетов для установки".Вполе "Выберите операционную систему для установки" укажите "Generic  or unknown OS. Usage is not recommended" и нажмите кнопку "Forward":

Image Added

Шаг 5. Укажите количество ядер CPU и количество RAM в соответствующих полях, нажмите кнопку "Forward":

Image Added

Scroll Pagebreak

Шаг 6. Укажите объем HDD и нажмите кнопку "Forward":

Image Added

Шаг 7. Укажите название виртуальной машины и нажмите кнопку "Готово". Также можно сразу указать сетевой адаптер или настроить сеть позже.

Image Added

Scroll Pagebreak

Шаг 8. После создания виртуальной машины откроется окно установки vESBC. Дальнейшие действия по установке vESBC описаны в разделе Процесс установки vESBC.

Image Added

Шаг 9. Если требуется донастройка (добавить/изменить сетевой адаптер, количество CPU, RAM и т. д.) виртуальной машины vESBC, выключите ее и откройте окно настроек кнопкой "Показать виртуальное оборудование"

Scroll Pagebreak

Подключение сетевых интерфейсов

Перед изменением конфигурации виртуальной машины она должна быть выключена.

Шаг 1. Запустите "Менеджер виртуальных машин", выберите нужную виртуальную машину и нажмите кнопку "Открыть".

Image Added

Scroll Pagebreak

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

    Изменение адаптера выполняется в настройке "Создать на базе". Доступны следующие режимы работы адаптера:

  • Устройство моста. Данный режим доступен в случае, когда бридж был предварительно сконфигурирован в хостовой ОС. В этом режиме интерфейс vESBC будет подключен к бриджу хостовой ОС.
    • В поле "Название устройства" указывается название бриджа хостовой ОС, к которому будет подключен интерфейс vESBC.
    • В поле "Модель устройства" указывается драйвер сетевого адаптера. Доступные драйвера:
      • netfront — высокопроизводительный драйвер виртуализации. Данный драйвер используется по умолчанию в XEN.
        Предупреждение

        Данный драйвер на поддерживается в vESBC. Такой интерфейс будет иметь статус Unknown.

      • e1000 — эмуляция гигабитной сетевой карты Intel (82540EM).
      • rtl8139 — эмуляция 100-мегабитной сетевой карты Realtek.

Image Added

Scroll Pagebreak

  • Устройство macvtap. Это способ подключения виртуальной машины к сети, при котором она получает свой собственный MAC-адрес и IP-адрес прямо из вашей физической локальной сети, к которой подключен физический интерфейс хоста. 
    • В поле "Название устройства" указывается сетевой интерфейс хоста, на базе которого будет создан интерфейс vESBC;
    • В поле "Модель устройства" указывается драйвер сетевого адаптера. Доступные драйвера: 
      • netfront — высокопроизводительный драйвер виртуализации. Данный драйвер используется по умолчанию в XEN.
        Предупреждение

        Данный драйвер на поддерживается в vESBC. Такой интерфейс будет иметь статус Unknown.

      • e1000 — эмуляция гигабитной сетевой карты Intel (82540EM).
      • rtl8139 — эмуляция 100-мегабитной сетевой карты Realtek.
Примечание

В режиме macvtap связи межу хостовой ОС и виртуальной машиной нет. Также данный режим не подходит для организации кластера vESBC (за исключением режима Passthrough), т. к. при использовании протокола VRRP MAC-адрес vESBC будет отличаться отMAC-адреса сетевого интерфейса, и трафик не будет передаваться в виртуальную машину из-за особенностей реализации драйвера macvtap.

Image Added

Scroll Pagebreak

Шаг 3. Для добавления дополнительных сетевых адаптеров нажмите кнопку "Добавить оборудование" в нижнем левом углу (cм. скрин выше). В открывшемся окне выберете раздел "Сеть", укажите параметры адаптера и нажмите кнопку "Готово". Добавленный адаптер появится в списке оборудования виртуальной машины.

Image Added

Scroll Pagebreak

Подключение последовательного порта

Использование командной строки XEN (xl)

Для подключения к консоли vESBC, в конфигурационном файле требуется указать

...

titleПример
Блок кода
sudo xl destroy vesbc_xen

Шаг 2. В конфигурационном файле добавьте новый параметр:

Блок кода
serial=<pty>

где:

pty — псевдотерминал в хост-системе, выделяется автоматически.

После запуска виртуальной машины подключитесь к консоли средствами Xen:

Блок кода
xenadmin@xen:~$ sudo xl console vESBC1

Для выхода из консоли нажмите комбинацию клавиш Ctrl + ].

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

Пример
Блок кода
/var/log/xen/qemu-dm-<название машины>вм>.log
Информация
title

Номер псевдотерминала указан в строке:

Блок кода
char device redirected to /dev/pts/3 (label serial0)

Пример:

Блок кода
esr@esr
xenadmin@xen:
#
~$ cat /var/log/xen/qemu-dm-
vesbc
vESBC1.log

char device redirected to /dev/pts/
6
3 (label serial0)
VNC server running on 127.0.0.1:5900
qemu-system-i386: terminating on signal 1 from pid 47254 (/usr/lib/xen-4.16/bin/xl)

Подключение через MinicomНомер псевдотерминала указан в строке:

Блок кода
charxenadmin@xen:~$ devicesudo redirectedminicom to-D /dev/pts/6 (label serial0)

Шаг 3. Запустите виртуальную машину, передав в качестве параметра изменённую конфигурацию:

3

Scroll Pagebreak

Использование приложения Менеджер виртуальных машин (Virtual Machine Manager)

При создании виртуальной машины виртуальная консоль pty создается автоматически:

Image Added

Scroll Pagebreak

Для подключения к консоли запустите виртуальную машину, посмотрите номер pty:

Image Added

Команда для подключения к pty с помощью minicom:

Блок кода
sudo 
Информация
titleПример
Блок кода
sudo xl create /root/vesbc/vesbc_xen.conf
Информация
titleПример подключения через minicom
Блок кода
minicom -D /dev/pts/
6
4