Fedora 31
Sponsored Link

KVM : Create Virtual Machine2019/11/18

 
Install GuestOS and Create a Virtual Machine. This example shows to create VM with installing Fedora 31.
[1] Install GuestOS on text mode, it's OK on console or remote connection with Putty and so on.
Furthermore, Virtual Machine's images are placed at [/var/lib/libvirt/images] by default as a Storage Pool, but this example shows to create and use a new Storage Pool.(use any place you like)
# create a Storage Pool directory

[root@dlp ~]#
mkdir -p /var/kvm/images

[root@dlp ~]#
virt-install \
--name fedora31 \
--ram 4096 \
--disk path=/var/kvm/images/fedora31.img,size=30 \
--vcpus 2 \
--os-type linux \
--os-variant fedora30 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://ftp.iij.ad.jp/pub/linux/Fedora/fedora/linux/releases/31/Server/x86_64/os/' \
--extra-args 'console=ttyS0,115200n8 serial'
Starting install...  
# installation starts
 
The example of options above means like follows. There are many options for others, make sure with [man virt-install].
--name
specify the name of Virtual Machine
--ram
specify the amount of memory of Virtual Machine
--disk path=xxx ,size=xxx
[path=] specify the location of disks of Virtual Machine (default is [/var/lib/libvirt/images])
[size=] specify the amount of disk of Virtual Machine
--vcpus
specify the virtual CPUs
--os-type
specify the type of GuestOS
--os-variant
specify the kind of GuestOS
possible to show the list of OS with follows
[# osinfo-query os]
--network
specify network type of Virtual Machine
--graphics
specify the kind of graphics. if set [none], it means nographics
--console
specify the console type
--location
specify the location of installation source where from
--extra-args
specify parameters that are set in Kernel

[2] For installing on text mode, it's the same with common procedure of installation. After finishing installation, restart computer and then login prompt is shown like follwos.
Fedora 31 (Server Edition)
Kernel 5.3.7-301.fc31.x86_64 on an x86_64 (ttyS0)

Web console: https://localhost:9090/

localhost login:
[3] Move to GuestOS to HostOS with Ctrl + ] key.
Move to HostOS to GuestOS with a command [virsh console (name of virtual machine)].
[root@localhost ~]#    
# Ctrl + ] key

[root@dlp ~]#    
# Host's console
[root@dlp ~]#
virsh console fedora31
   
# switch to Guest's console

Connected to domain fedora31
Escape character is ^]    
# Enter key
[root@localhost ~]#    
# Guest's console
[4] It's easy to replicate a copy VM from current VM with a command below.
[root@dlp ~]#
virt-clone --original fedora31 --name template --file /var/kvm/images/template.img

Allocating 'template.img'                                   |  30 GB  00:02

Clone 'template' created successfully.

# disk image

[root@dlp ~]#
ll /var/kvm/images/template.img

-rw-------. 1 root root 1875443712 Nov 17 19:41 /var/kvm/images/template.img
# configuration file

[root@dlp ~]#
ll /etc/libvirt/qemu/template.xml

-rw-------. 1 root root 4744 Nov 17 19:41 /etc/libvirt/qemu/template.xml
Matched Content