CentOS 7
Sponsored Link

KVM : Create a Virtual Machine#12014/07/11

 
Install GuestOS and create a Virtual Machine. This example shows to install CentOS 7.
[1] Install GuestOS on text mode via network, 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.
[root@dlp ~]#
mkdir -p /var/kvm/images
   
# create a new Storage Pool

[root@dlp ~]#
virt-install \
--name centos7 \
--ram 4096 \
--disk path=/var/kvm/images/centos7.img,size=30 \
--vcpus 2 \
--os-type linux \
--os-variant rhel7 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://ftp.iij.ad.jp/pub/linux/centos/7/os/x86_64/' \
--extra-args 'console=ttyS0,115200n8 serial'
Starting install...    
# start installation
 
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 memories of Virtual Machine
--disk path=xxx ,size=xxx
'path=' ⇒ specify the location of disks of Virtual Machine
'size=' ⇒ specify the amount of disks of Virtual Machine
--vcpus
specify the virtual CPUs
--os-type
specify the type of GuestOS
--os-variant
specify the kind of GuestOS - possible to confirm the list with the command below
# osinfo-query os
--network
specify network types 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 where from
--extra-args
specify parameters that is set in kernel

[2] Install on text mode, it's the same with common procedure of installation. After finishing installation, reboot first and then login prompt is shown like follows.
CentOS Linux 7 (Core)
Kernel 3.10.0-123.el7.x86_64 on an x86_64

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 ~]#    
# push Ctrl + ]

[root@dlp ~]#    
# Host's console
[root@dlp ~]#
virsh console centos7
   
# move to Guest

Connected to domain www
Escape character is ^]    
# Enter key
[root@localhost ~]#    
# Guest's console
[4] Because after installing GuestOS from network, it is minimum settings, so it's useful to save it as a template in order to create new virtual machines later.
[root@dlp ~]#
virt-clone --original centos7 --name template --file /var/kvm/images/template.img

Allocating 'template.img'     | 20 GB 01:44
Clone 'template' created successfully.
[root@dlp ~]#
ll /var/kvm/images/template.img
 
# disk image

-rwxr-xr-x 1 root root 32212254720 Jul 11 23:34 /var/kvm/images/template.img
[root@dlp ~]#
ll /etc/libvirt/qemu/template.xml
 
# xml file

-rw------- 1 root root 1843 Jul 11 23:32 /etc/libvirt/qemu/template.xml
Matched Content