Проблема с правильной настройка виртуальной машины virsh + libvirt (virsh + libvirt)

Модератор: Модераторы разделов

Ответить
Institut
Сообщения: 281
ОС: mint

Проблема с правильной настройка виртуальной машины virsh + libvirt

Сообщение Institut »

Доброго дня. Пожалуйста, помогите начинающему с правильной настройкой гостевой системы. По совету уважаемого джина Bizdelnick создал через virt-install, без прав суперпользователя, гостя 2003X64, с режимом работы сетевой карты bridge:br0,
на отдельном жестком диске.
Гостевую ось запускаю скриптом
#!/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
su - ivan -c 'virsh start 2003X64'
echo
exit 0

Подправил конфиг /etc/default/libvirt-guests
ON_SHUTDOWN=shutdown
PARALLEL_SHUTDOWN=10
SHUTDOWN_TIMEOUT=30

И вот теперь появились вопросы, на которые в интернете я ответ не нашел.

1. Есть рекомендации добивать в sysctl.conf следующие строки
sysctl net.ipv4.conf.all.forwarding=1
sysctl net.ipv4.conf.all.proxy_arp=1
А зачем оно нужно, если интернет в гостевой машине и так работает?

2. Есть рекомендации, не ставить в систему с гостевой машиной,
пакет smartmontools, типа как он типа при работе снижает производительность гостевой оси.
Его действительно не надо ставить, а то я привык через него два раза в неделю, через скрипт, проверять состояние жестких дисков, на тех компьютерах, где установлен линукс ( очень удобно когда проверки жестких дисков идут сами )?

3. В гостевой системе две проблемы — два устройства отображаются (только под учетной записью администратора при RDP) с возможностью их быстрого извлечения, это сетевая карта и VirtIO ballooning driver.
Также, если зайти по vnc пользователем ivan, и потом подключится к серверу не под учетной записью администратора, а например под учетной записью простого пользователя, то можно извлечь сетевую карту, после чего сеть пропадает и гостя приходится выключать принудительно.
Можно-ли избавится, от возможности быстрого извлечения?

4. Гостевая ось не выключается правильно из под пользователя, под которым она создана.
Захожу через ssh на хостовой компьютер обычным пользователем (через которого и создавал гостя) и там пытаюсь выключить гостя командой
ivan@kvm:~$ virsh shutdown 2003X64
Завершение работы домена 2003X64
Но гостевая ось продолжает работать. Могу только выключить гостя принудительно
virsh destroy 2003X64.
Где я ошибся или как сделать, что-бы гость выключался по команде shutdown?

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

6. Пожалуйста, по возможности, посоветуйте более лучшие с точки зрения производительности, параметры гостевой машины, так как я создавал через virt-install первый раз и возможно, где-то что-то упустил.

Конфиг гостя

Код: Выделить всё

<domain type='kvm'>
  <name>2003X64</name>
  <uuid>9ca61421-f755-4c2f-8e44-9cecfad8e448</uuid>
  <memory unit='KiB'>4096000</memory>
  <currentMemory unit='KiB'>4096000</currentMemory>
  <vcpu placement='static'>4</vcpu>
  <os>
    <type arch='x86_64' machine='pc-i440fx-wily'>hvm</type>
  </os>
  <features>
    <acpi/>
    <apic/>
    <hyperv>
      <relaxed state='on'/>
      <vapic state='on'/>
      <spinlocks state='on' retries='8191'/>
    </hyperv>
  </features>
  <cpu mode='custom' match='exact'>
    <model fallback='allow'>Westmere</model>
  </cpu>
  <clock offset='localtime'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
    <timer name='hypervclock' present='yes'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <pm>
    <suspend-to-mem enabled='no'/>
    <suspend-to-disk enabled='no'/>
  </pm>
  <devices>
    <emulator>/usr/bin/kvm-spice</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/media/kvm/kvm/2003X64.qcow2'/>
      <target dev='hda' bus='ide'/>
      <boot order='1'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <target dev='hdb' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='0' target='0' unit='1'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x7'/>
    </controller>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' multifunction='on'/>
    </controller>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x1'/>
    </controller>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'/>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:5b:a0:ba'/>
      <source bridge='br0'/>
      <model type='rtl8139'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes' passwd='09876'/>
    <video>
      <model type='vga' vram='16384' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </memballoon>
  </devices>
</domain>
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Проблема с правильной настройка виртуальной машины virsh + libvirt

Сообщение Bizdelnick »

Institut писал(а):
04.08.2016 12:44
Гостевую ось запускаю скриптом

Не понял, зачем скриптом?

Institut писал(а):
04.08.2016 12:44
1. Есть рекомендации добивать в sysctl.conf следующие строки
sysctl net.ipv4.conf.all.forwarding=1
sysctl net.ipv4.conf.all.proxy_arp=1
А зачем оно нужно, если интернет в гостевой машине и так работает?

Для моста не нужно.

Institut писал(а):
04.08.2016 12:44
4. Гостевая ось не выключается правильно из под пользователя, под которым она создана.
Захожу через ssh на хостовой компьютер обычным пользователем (через которого и создавал гостя) и там пытаюсь выключить гостя командой
ivan@kvm:~$ virsh shutdown 2003X64
Завершение работы домена 2003X64
Но гостевая ось продолжает работать. Могу только выключить гостя принудительно
virsh destroy 2003X64.
Где я ошибся или как сделать, что-бы гость выключался по команде shutdown?

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

Проблема в гостевой системе и её дровах.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Institut
Сообщения: 281
ОС: mint

Re: Проблема с правильной настройка виртуальной машины virsh + libvirt

Сообщение Institut »

Не понял, зачем скриптом?

Я ещё в скрипте монтирую некоторые устройства. :rolleyes:
Проблема в гостевой системе и её дровах.
Два слова - СПАСИБО Bizdelnick :drinks:

Нашел здесь решение

Код: Выделить всё

По умолчанию Windows 2003 разрешает выключать себя единственным способом — ввести логин-пароль, выбрать Пуск => «Завершение работы», ввести примечание, нажать «OK». Разумеется, на VDS-ферме такой подход неприемлем. KVM (и QEMU) умеет эмулировать ACPI. Команда «system_powerdown» аналогична нажатию кнопки питания на физическом компьютере, но Windows её проигнорирует. Лечится следующим REG-файлом:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system]
"ShutdownWithoutLogon"=dword:00000001
"DisableCAD"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows]
"ShutdownWarningDialogTimeout"=dword:00000003


Кстати, после внесения данных строк в реестр сообщение, что система не была выключена правильно - пропало.
Думаю, что можно уменьшить время до 10 в SHUTDOWN_TIMEOUT.

Осталось решить остальные вопросы.
Спасибо сказали:
Аватара пользователя
ZugDuk
Сообщения: 342

Re: Проблема с правильной настройка виртуальной машины virsh + libvirt

Сообщение ZugDuk »

Народ, а почему может быть такое, что виртуалку с 2003ей виндой отправляешь в ребут, а она за место этого выключается?
Спасибо сказали:
Аватара пользователя
devilr
Сообщения: 3665
ОС: Mandriva => Gentoo (~amd64)
Контактная информация:

Re: Проблема с правильной настройка виртуальной машины virsh + libvirt

Сообщение devilr »

ZugDuk писал(а):
30.07.2020 23:01
Народ, а почему может быть такое, что виртуалку с 2003ей виндой отправляешь в ребут, а она за место этого выключается?
Потому, что винда. :) Форумом ошиблись.
Мудрость приходит с возрастом.
Иногда возраст приходит один.
Эхо разума
Спасибо сказали:
Ответить