硬件检查
1.Cpu 检查
物理CPU个数:是指physical id(的值)的数量
#cat /proc/cpuinfo|grep "physical id"|sort|uniq|wc -l
逻辑CPU个数:是指cat/proc/cpuinfo所显示的processor的个数
#cat /proc/cpuinfo|grep "processor"|wc -l
支持虚拟化技术
#cat /proc/cpuinfo(或#grep -E '(vmx|svm)' /proc/cpuinfo)命令,找到flags部分,如果其中输出有VMX或SVM,即表明支持虚拟化技术。
2.硬盘检查
查看硬盘的型号信息
#cat /proc/scsi/scsi
查看硬盘容量
#df -lh
3.内存检查
#free -m
KVM虚拟化
kvm支持的镜像很多,常用的是原始镜像(*.img),还有支持动态大小扩张的qocw2格式(首选)。更优的选择是系统盘如C盘用img格式,数据盘用qcow2格式以减少服务器磁盘闲置空间。
查看是否支持虚拟化:egrep '(vmx|svm)' --color=always /proc/cpuinfo
1.Linux查看网卡芯片型号
用命令lspci:
$ lspci | grep Ethernet
2调整 qemu-kvm 默认网卡
如果不指定虚拟网络设备模块时,默认的客户机网络模块是 rtl8029 。这是一块老式的 10M 全双工网卡。客户机上网络连接不稳定,从千兆网络通过 scp 下载速度最高才 300KB/s 。
VirtIO paravirtual 是 Linux 虚拟机平台上统一的虚拟 IO 接口驱动。通常主机为了让客户机像在真实环境中一样运行,需要为客户机创建各式各样的虚拟设备,如磁盘,网卡,显卡,时钟,USB 等。这些虚拟设备大大降低了客户机的性能。如果客户机不关注这些硬件设备,就可以用统一的虚拟设备代替他们,这样可以大大提高虚拟机的性能。这个统一的标准化接口在 Linux 上就是 VirtIO 。需要注意的是 VirtIO 运行在 kernel 2.6.24 以上的版本中才能发挥它的性能优势。另外 KVM 项目组也发布了 Windows 平台上的 VirtIO 驱动,这样 windows 客户机的网络性能也可以大大提高了。
虚拟网络模块的性能差异
虚拟网络模块
网络传输速度(ssh)
客户机操作系统
网络状态
rtl8029
200-300KB/s
SLES10SP2 (kernel 2.6.16-60)
不稳定
e1000
4.8-5.4MB/s
SLES10SP2 (kernel 2.6.16-60)
稳定
virtio
10.6-11.1MB/s
SLES11 (kernel 2.6.27-19)
稳定
qemu-kvm 的参数说明
qemu-kvm 参数
参数说明
参数实例
-mmegs
分配给客户机的内存 (MB 为单位 )
0
-smpn
模拟包含 n 个处理器的 SMP system(对称多处理器系统)
4
-hdafile
指定 file 文件作为客户机的存储镜像 hard disk 0这里 file 可以是一个文件名,也可以是硬盘分区。区别见 Tips:调整客户机的镜像文件
/home/kvm.img
-net nic[,vlan=n][,macaddr=addr][,model=type]
为客户机创建虚拟的 NIC(Netowrk Interface Card 网络接口设备), 设置 MAC 地址,虚拟网卡类型等
model=e1000,macaddr=00:16:3e:51:fb:ce
-net tap[,vlan=n][,fd=h][,ifname=name][,script=file]
为客户机设置 TAP 网络连接,具体见 客户机网络设置
-net tap
-cdrom
挂载 ISO 镜像到客户机,光盘启动客户机时必须加载
/mnt/SLES10SP2.iso
-boot [a|c|d|n]
设置客户机的启动选项(软盘 a,硬盘 c,光盘 d,网络 n),默认从硬盘镜像启动
d
-vncdisplay
通过 VNC 的方式远程安装
9.123.99.34:3
3.关闭 virbr0
安装 Xen 或安装 KVM 后都会发现网络接口里多了一个叫做 virbr0 的虚拟网络接口:
# ifconfig
...
virbr0 Link encap:Ethernet HWaddr d2:91:97:b8:3d:fc
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.2