retspen / webvirtcloud

WebVirtCloud is virtualization web interface for admins and users
1.7k stars 372 forks source link

Some problems with creating Instances on ARM server(Huawei Taishan 200) #533

Open smallpize opened 2 years ago

smallpize commented 2 years ago

Server environment: Huawei Taishan 200, ARM server libvirt: 6.2.0 qemu.aarch64: 4.1.0

  1. create instance error : Firmware: Ensure this value has at most 50 characters (it has 57). modify instances/models.py file:

firmware = models.CharField(max_length=50) change to firmware = models.CharField(max_length=60)

  1. set instance video model must be "virtro" image

  2. cdrom default bus='sata', not work:

set1:

<disk type='file' device='cdrom'>
  ...
  <target dev='sda' bus='sata'/>   **change to**  <target dev='sda' bus='scsi'/>
  ...
</disk>

set2:

<controller type='sata' index='0'>   **change to**  <controller type='scsi' index='0' model='virtio-scsi'>
  <address type='pci' domain='0x0000' bus='0x03' slot='0x01' function='0x0'/>
</controller>
  1. mouse and keyboard defaule bus='virtio' , not work:

set1: add usb controller

<controller type='usb' index='0' model='qemu-xhci' ports='15'>
  <address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
</controller>

set2: change mouse and keyboard setting to these

<input type='tablet' bus='usb'>
  <address type='usb' bus='0' port='1'/>
</input>
<input type='keyboard' bus='usb'>
  <address type='usb' bus='0' port='2'/>
</input>

Suggestion:

  1. add some options to set these.
  2. I saw Settings for VM Architecture Type no option: arm64 , Is it possible to modify the default template when choosing to use arm64?
catborise commented 2 years ago

i think you are using debian based operating system, isnt it?(my environment is rhel based because of that arm support is missing. i should install deb derivative) i never used arm based instance because of that my knownledge is missing. it think when you create an arm instance you must also choose boot image init file? it is easy to add arm support. i can work on it...

smallpize commented 2 years ago

i think you are using debian based operating system, isnt it?(my environment is rhel based because of that arm support is missing. i should install deb derivative) i never used arm based instance because of that my knownledge is missing. it think when you create an arm instance you must also choose boot image init file? it is easy to add arm support. i can work on it...

I use rhel based, OS: Kylin server SP2, (like openEuler-20.03-LTS-SP1), I think some problems are related to hardware. For example: I test arm vm can't snapshot, the reason: KVM Does Not Support Internal Snapshots

catborise commented 2 years ago

i want to ask about your feedback;

  1. why do you not want to use virtio input type. is it causes some problems?
  2. you can change video model while you are creating instance. would you like to make its default value "virtio"?
  3. after libvirt 8.5 we can make external snapshots. it is released but not compiled yet.
catborise commented 2 years ago

@smallpize #538 changes made happen. bus for cdrom and input devices can be changeable. usb controller addition is done. length of firmware size is increased. default options for arm are added.

smallpize commented 2 years ago

i want to ask about your feedback;

  1. why do you not want to use virtio input type. is it causes some problems?
  2. you can change video model while you are creating instance. would you like to make its default value "virtio"?
  3. after libvirt 8.5 we can make external snapshots. it is released but not compiled yet.

@catborise

  1. On taishan 200 server(arch: arm64),when I use virtio input type , the mouse and keyboard cannot be operated on the VNC interface.
  2. On taishan 200 server(arch: arm64), Only virtio video model can be selected to open vnc.
  3. I use the libvirt version that comes with the OS yum source, Looking forward to the version with external snapshot. I will test the new version in order to add the default options for arm.