一 实验说明
CentOS 7的KVM虚拟机推荐使用qcow2磁盘格式,本实验在KVM中安装CentOS 6.8 64虚拟机。
二 命令部署过程
2.1 上传镜像
使用winscp上传至/data/iso/
2.2 格式化磁盘
virt-install --network bridge=br0,model=virtio --name=vm01-centos6.8 --ram=1024 --vcpus=2 --disk path=/data/images/vm01-centos6.8.img,size=20,bus=virtio --cdrom /data/iso/CentOS-6.8-x86_64-bin-DVD1.iso --vnc --vncport=5902 --vnclisten=0.0.0.0 --noautoconsole --accelerate
参数说明:
--name:指定虚拟机名称
--ram:分配内存大小。
--vcpus:分配CPU核心数,最大与实体机CPU核心数相同。
--disk:指定虚拟机镜像,size指定分配大小单位为G。
--network:网络类型,此处用的是默认,一般用的应该是bridge桥接。
--accelerate:加速
--cdrom:指定安装镜像iso。
--vnc:启用VNC远程管理,一般安装系统都要启用。
--vncport:指定VNC监控端口,默认端口为5900,端口不能重复。
--vnclisten:指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.0。
--os-type=linux,windows:常见操作系统类型。
--os-variant=
win7:MicrosoftWindows7
vista:MicrosoftWindowsVista
winxp64:MicrosoftWindowsXP(x86_64)
winxp:MicrosoftWindowsXP
win2k8:MicrosoftWindowsServer2008
win2k3:MicrosoftWindowsServer2003
freebsd8:FreeBSD8.x
generic:Generic
debiansqueeze:DebianSqueeze
debianlenny:DebianLenny
fedora16:Fedora16
fedora15:Fedora15
fedora14:Fedora14
mes5.1:MandrivaEnterpriseServer5.1andlater
mandriva2010:MandrivaLinux2010andlater
rhel6:RedHatEnterpriseLinux6
rhel5.4:RedHatEnterpriseLinux5.4orlater
rhel4:RedHatEnterpriseLinux4
sles11:SuseLinuxEnterpriseServer11
sles10:SuseLinuxEnterpriseServer
ubuntuoneiric:Ubuntu11.10(OneiricOcelot)
ubuntunatty:Ubuntu11.04(NattyNarwhal)
ubuntumaverick:Ubuntu10.10(MaverickMeerkat)
ubuntulucid:Ubuntu10.04(LucidLynx)
ubuntuhardy:Ubuntu8.04LTS(HardyHeron)
2.3 kvm虚拟机安装
[root@kvm-host qemu]# virt-manager
安装过程略
三 登录虚机
3.1 启动虚机
[root@kvm-host ~]# virsh list --all
Id Name State
----------------------------------------------------
- vm01-centos6.8 shut off
[root@kvm-host ~]# virsh start vm01-centos6.8
3.1 Virtual Machine Manager登录
图形界面中,使用virt-manager从图形界面登录。
3.2 命令行登录
[root@kvm-host ~]# virsh console vm01-centos6.8
四 其他注意
4.1 kvm虚机网络
有可能kvm虚机登录后只有lo网卡,却没有eth0.
需要在kvm虚机里执行——
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=52:54:00:cd:4e:34 #需要和kvm的xml配置文件中一直,全局唯一。
ONBOOT=yes #开机启动
NM_CONTROLLED=yes
BOOTPROTO=dhcp
提示:若局域网内存在DHCP可开启,若不存在,可配置和宿主机同网段的静态IP。
#ifconfig eth0 up
#dhclient eth0 #开启eth0网卡。
4.2 无法console连接kvm虚机
出现卡死,需要在kmv虚拟机里修改相关文件,CentOS7的kvm虚拟机中可通过以下方式解决——
[root@kvm-host ~]# grubby --update-kernel=ALL --args="console=ttyS0"
CentOS6中可通过以下方式解决——
[root@kvm-host ~]# echo ssyS0 >> /etc/securetty #宿主机/etc/securetty添加ttyS0
[root@kvm-host ~]# echo "S0:12345:respawn:/sbin/agetty/ ttyS0 115200" >> /etc/inittab
[root@kvm-host ~]# vi /etc/grub.conf
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root …… rhgb quiet console=ttyS0 #最后加上console=ttyS0