6.1 使用http方式安装虚拟机
6.1.1 配置apache
1.确认或配置apache如下参数:
#vi /etc/httpd/conf/httpd.conf
Listen 80
DocumentRoot "/var/www/html"
|
2.重启apache
6.1.2 准备系统盘
1.新建存放系统盘的目录
2.新建存放虚拟机的目录
3.将系统盘CentOS-6.6-x86_64-bin-DVD1.iso上传至/os目录
4.挂载系统盘到apache主目录
#mkdir –p /var/www/html/centos6
#mount –o loop /os/CentOS-6.6-x86_64-bin-DVD1.iso /var/www/html/centos6
6.1.3 创建虚拟机
1.虚拟机名称:g1,内存大小:512M,cpu个数:1,磁盘大小:6G
2.执行如下命令,即可进行安装界面
virt-install --connect=qemu:///system \
--name g1 \
--ram 512 \
--vcpus=1 \
--os-type=linux \
--os-variant=rhel6 \
--accelerate \
--hvm \
--disk path=/data/g1.img,size=6,bus=virtio \
--location http://192.168.100.90/centos6 \
--network bridge=br0,model=virtio \
-x "console=ttyS0"
--nographics
|
注:
1.如果安装过程中不能获取安装点位置,需要关闭或更改宿主机iptables规则.
2.安装过程中,虚拟机需要通过DHCP的方式获取IP地址.
6.2 使用本地ISO系统盘图形化安装虚拟机
6.2.1 准备系统盘
新建存放系统盘的目录
将系统盘CentOS-6.6-x86_64-bin-DVD1.iso上传至/os目录
新建存放虚拟机的目录
6.2.2 准备安装工具
安装工具采用putty和xming,Xming用于图形展现.
putty配置
1.打开putty
2.设置服务器登录地址和端口
定位到Connection->SSH->X11,按照如下设置设置
Xming配置
1.安装Xming工具
2.启动Xming
6.2.3 创建虚拟机
虚拟机名称:g1,内存大小:512M,cpu个数:1,磁盘大小:6G
执行如下命令,即可进入图形化安装界面
virt-install --connect=qemu:///system \
--name g1 \
--ram 512 \
--vcpus=1 \
--os-type=linux \
--os-variant=rhel6 \
--accelerate \
--hvm \
--disk path=/data/g1.img,size=6,bus=virtio \
--cdrom /os/CentOS-6.6-x86_64-bin-DVD1.iso \
--network bridge=br0,model=virtio \
-x "console=ttyS0"
|
Xming即可弹出安装界面.
6.3 使用kickstart安装虚拟机
6.3.1 配置apache
1. 确认或配置apache如下参数:
#vi /etc/httpd/conf/httpd.conf
Listen 80
DocumentRoot "/var/www/html"
|
2. 重启apache
6.3.2 准备系统盘
1. 新建存放系统盘的目录
2. 新建存放虚拟机的目录
3. 将系统盘CentOS-6.6-x86_64-bin-DVD1.iso上传至/os目录
4. 挂载系统盘到apache主目录
#mkdir –p /var/www/html/centos6
#mount –o loop /os/CentOS-6.6-x86_64-bin-DVD1.iso /var/www/html/centos6
6.3.3 准备ks.cfg
1. 创建存放ks.cfg的文件夹
mkdir –p /var/www/html/ks
2. 将ks.cfg文件放到/var/www/html/ks目录下
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use network installation
url --url="http://192.168.100.90/centos6"
# Root password
rootpw --iscrypted $1$fxaLCwXF$ZgkNxuea5PfLN9a1te.0i0
# System authorization information
auth --useshadow --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info
# System timezone
timezone Africa/Abidjan
# Network information
network --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --location=mbr
# Partition clearing information
clearpart --all --initlabel
#clearpart --all --drives=sda
part /boot --fstype ext4 --size 200
part swap --size 16000
part / --fstype ext4 --size 1 --grow
%packages
@basic-desktop
@chinese-support
@fonts
@x11
%end
|
6.3.4 创建虚拟机
1. 虚拟机名称:g1,内存大小:512M,cpu个数:1,磁盘大小:6G
2. 创建qcow2格式的磁盘
#qemu-img create -f qcow2 /data/g1.qcow2 6G
3. 此格式的磁盘,创建虚拟机时需要加上format=qcow2,否则安装操作系统时硬盘会显示为0MB。
4. 执行如下命令,即可进行安装界面
virt-install --connect=qemu:///system \
--name g1 \
--ram 512 \
--vcpus=1 \
--os-type=linux \
--os-variant=rhel6 \
--accelerate \
--hvm \
--disk path=/data/g1.qcow2,size=6,format=qcow2,bus=virtio \
--location=http://192.168.100.90/centos6 \
--network bridge=br0,model=virtio \
-x "ks=http://192.168.100.90/ks/ks.cfg console=tty0 console=ttyS0,115200n8"
|
6.4 使用已存在的虚拟机配置文档创建新虚拟机
配置文档只是保存虚拟机的配置信息,并不存在操作系统,需要采用cdrom、PXE等方式安装操作系统。本例以cdrom为例。
6.4.1 创建磁盘
#qemu-img create -f qcow2 /data/g1.qcow2 6G
6.4.2 创建xml文件
1.查看现有的虚拟机
2.导出虚拟机centos6的硬件配置信息为xml文件
#virsh dumpxml centos6 > centos6.xml
3.编辑xml文件
必须修改的部分:
<domain type='kvm' id='20'>
<name>g1</name>
<uuid>0edb899f-4129-9420-b817-e7559df65d75</uuid>
……
<source file='/data/g1.qcow2'/>
……
<mac address='52:54:00:9b:5b:af'/>
|
改好后的g1.xml文件
其中:
<source file='/os/CentOS-6.6-x86_64-bin-DVD1.iso'/>
为系统镜像的地址。
<domain type='kvm' id='20'>
<name>g1</name>
<uuid>0edb899f-4129-9420-b817-e7559df65d75</uuid>
<memory unit='KiB'>524288</memory>
<currentMemory unit='KiB'>524288</currentMemory>
<vcpu placement='static'>1</vcpu>
<os>
<type arch='x86_64' machine='rhel6.6.0'>hvm</type>
<boot dev='hd'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='utc'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2' cache='none'/>
<source file='/data/g1.qcow2'/>
<target dev='vda' bus='virtio'/>
<alias name='virtio-disk0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</disk>
<disk type='file' device='cdrom'>
<source file='/os/CentOS-6.6-x86_64-bin-DVD1.iso'/>
<target dev='hdb' bus='ide'/>
</disk>
<controller type='usb' index='0' model='ich9-ehci1'>
<alias name='usb0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x7'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci1'>
<alias name='usb0'/>
<master startport='0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci2'>
<alias name='usb0'/>
<master startport='2'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x1'/>
</controller>
<controller type='usb' index='0' model='ich9-uhci3'>
<alias name='usb0'/>
<master startport='4'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x2'/>
</controller>
<controller type='ide' index='0'>
<alias name='ide0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</controller>
<interface type='bridge'>
<mac address='52:54:00:9b:6b:af'/>
<source bridge='br0'/>
<target dev='vnet2'/>
<model type='virtio'/>
<alias name='net2'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<serial type='pty'>
<source path='/dev/pts/0'/>
<target port='0'/>
<alias name='serial0'/>
</serial>
<console type='pty' tty='/dev/pts/0'>
<source path='/dev/pts/0'/>
<target type='serial' port='0'/>
<alias name='serial0'/>
</console>
<input type='tablet' bus='usb'>
<alias name='input0'/>
</input>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5900' autoport='yes' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<video>
<model type='cirrus' vram='9216' heads='1'/>
<alias name='video0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<memballoon model='virtio'>
<alias name='balloon0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</memballoon>
</devices>
<seclabel type='dynamic' model='selinux' relabel='yes'>
<label>unconfined_u:system_r:svirt_t:s0:c619,c653</label>
<p_w_picpathlabel>unconfined_u:object_r:svirt_p_w_picpath_t:s0:c619,c653</p_w_picpathlabel>
</seclabel>
</domain>
|
使用xml文件创建虚拟机
# virsh define g1.xml
Domain g1 defined from g1.xml
启动虚拟机