jmgomez-IAA / loogbook

Personal web page
0 stars 0 forks source link

Posts Ideas: Virtualizacion #32

Open jmgomez-IAA opened 5 years ago

jmgomez-IAA commented 5 years ago

Virtualizacion moderna Red Hat

jmgomez-IAA commented 5 years ago

Manejo de maquinas virtuales KVM

Convertir imagen OVA a QCOW2

Convierte la maquina virtual en formato QCOW2 muchas veces hay que reajustar la configuración del monitor para que las interfaces de red funcionen. En la conversion crea el pool de almancemiento y la incluye en la maquina virtual. ~]# virt-v2v -i ova ISE_S6_VM.ova -o libvirt -of qcow2 -os default

jmgomez-IAA commented 5 years ago

Emular RPI con qemu-system-arm

Paquetes requeridos

Instalacion

En primer lugar tenemos que instalar el emulador qemu ARM.

~]$ sudo yum install qemu-system-arm

Raspbian

La version actual es Buster y deberemos tenerlo en cuenta a la hora de compilar nuestro kernel. No necesitamos la interfaz grafica nos quedamos con la version lite.

~]$ wget https://downloads.raspberrypi.org/raspbian_lite_latest
~]$ mv raspbian_lite_latest 2019-09-26-raspbian-buster-lite.zip
~]$ 7za x 2019-09-26-raspbian-buster-lite.zip
~]$ qemu-img convert -f raw -O qcow2 2019-09-26-raspbian-buster-lite.img 2019-09-26-raspbian-buster-lite.qcow
~]$ qemu-img resize 2019-09-26-raspbian-buster-lite.qcow +6G
~]$ qemu-img info 2019-09-26-raspbian-buster-lite.qcow 

Ahora tenemos la imagen en formato qcow2, mucho mas eficiente que el raw original, preparada para emplearla como guest de nuestro qemu o virsh.

Preparar el kernel

Clonamos el repositorio con el codigo fuente del kernel:

~]$ wk
~]$ cd rpi3_qemu_emulation
~]$ git clone git@github.com:dhruvvyas90/qemu-rpi-kernel.git

Los archivos de configuration de la virtualizacion para qemu seria cat << EOF | tee launch_rpi_qemu.sh

! /bin/bash

qemu-system-arm \ -kernel ./qemu-rpi-kernel/kernel-qemu-4.19.50-buster \ -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" \ -hda 2019-09-26-raspbian-buster-lite.qcow \ -cpu arm1176 -m 256 \ -M versatilepb \ -no-reboot \ -serial stdio \ -net nic -net user \ -net tap,ifname=vnet0,script=no,downscript=no

EOF

O bien para virt cat << EOF | tee launch_rpi_virsh.sh

! /bin/bash

virt-install \ --name rpi3-base \ --arch armv61 \ --machine versatilepb \ --cpu arm1176 \ --vcpus 1 \ --memory 256 \ --import \ --disk raspbian-buster-lite.qcow,format=qcow,bus=virtio \ --network user,model=virtio \ --video vga \ --graphics spice \ --rng device=/dev/urandom,model=virtio \ --boot 'dtb=./qemu-rpi-kernel/versatile-pb.dtb,kernel=./qemu-rpi-kernel/kernel-qemu-4.19.50-buster,kernel_args=root=/dev/vda2 panic=1' \ --events on_reboot=destroy

Links

https://github.com/dhruvvyas90/qemu-rpi-kernel Using QEMU to emulate a Raspberry Pi 2017