$cat /proc/cpuinfo
我的是AMD Turion64×2 TL-56的,显示结果如下:
processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 72
model name : AMD Turion(tm) 64 X2
stepping : 2
cpu MHz : 800000
cache size : 512 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8_legacy
bogomips : 160728
clflush size : 64
power management: ts fid vid ttp tm stc
重点就在于flags这里中的众多支持指令集和技术中要能找到svm(AMD的)和vmx(Intel的),当然为了节省眼力眼神,可以使用UNIX中的匹配文本命令egrep来帮忙:
$egrep ‘(svm|vmx)’ /proc/cpuinfo
如果屏幕返回结果,要么是svm,要么是vmx,那么就是支持虚拟化技术的CPU,否则没戏。
确定了CPU是支持硬件虚拟化技术的就可以接下来准备安装KVM的内核和管理平台了。在这里所用到的Ubuntu版本是810为例,特此说明。
$sudo apt-get install ubuntu-virt-server ubuntu-virt-mgmt
安装这两个包会分别安装kvm,libvirt-bin,openssh-server,virt-manager,python-vm-builder,virt-viewer这些包,显而易见一个是安装虚拟化技术所需要用到的内核而另外一个则是管理虚拟化技术的平台。
安装好之后接下来需要把当前用户加入虚拟化技术所用的用户组中,我的用户名是shixinyu,命令格式为:
$sudo adduser shixinyu libvirtd
如果你的用户名是别的,就替换掉上面命令中的shixinyu即可。接下来配置虚拟机中的网络,一般情况下网桥就可以满足虚拟机中的网络需求,所以接下来配置网络:
$sudo apt-get install bridge-utils
$sudo invoke-rcd networking stop
$sudo nano /etc/network/interfaces
原来的文本内容可能只有下面部分:
auto lo
iface lo inet loopback
需要添加的内容根据你的网络情况而定,如果你的网络只需要从DHCP服务器中获得IP和服务,那么则在原有文本内容下添加一部分内容变成下面内容:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet dhcp
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
可以看到配置文件中bridge_prots后是宿机网卡,由这个参数决定桥接哪个实际网卡和虚拟机网卡。如果你的网络需要手动指定IP,那么配置文件应该如下配置:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet manual
auto br0
iface br0 inet static
address 192168010
network 19216800
netmask 2552552550
broadcast 1921680255
gateway 19216801
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
具体如何来设定IP和网关,可以参考我的一篇Post:[笔记]Ubuntu简单网络配置,配置完毕之后重启Ubuntu网络组件:
$sudo /etc/initd/networking restart
现在要配置虚拟机配置模板来告诉虚拟机哪个虚拟网卡是桥接的,修改模板:
$sudo nano /etc/vmbuilder/libvirt/libvirtxmltmpl
看到的原来的内容应该是如下面所示的:
<interface type='network'>
<source network='default'/>
</interface>
把source network的赋值改为'br0',即变成下面内容:
<interface type='bridge'>
<source bridge='br0'/>
</interface>
到这里,给KVM虚拟机的网络就配置好了,这篇笔记就到此结束了。下一篇将准备来安装一个虚拟机 *** 作系统,装一个Windows XP作为Ubuntu虚拟化实践。
接上一篇,这一篇准备实践一下Ubuntu虚拟化技术,将以安装Windows XP虚拟机来实践虚拟化。安装Windows XP虚拟机至少需要准备一个Windows XP的安装镜像文件,我准备的是Windows XP with SP3简体中文版的镜像文件,已将这个ISO文件命名为WinXPiso,我将这个安装镜像文件存储在/home/shixinyu下了。
首先先建立一个虚拟机用的虚拟硬盘的镜像文件,一般WinXP系统所在分区8G足够用了,那么这里由于我的/home是独立挂载在一个足够大的分区的,就把这个虚拟硬盘镜像文件放在/home的我的个人文件夹下,命令格式如下:
$dd if=/dev/zero of=/home/shixinyu/WinXPimg bs=1024k count=8000
这是建立一个分配单元大小为1024k的8G大小的虚拟硬盘镜像文件,这个镜像文件位于/home/shixinyu/下,名为 WinXPimg。生成这个镜像文件会实际写入数据块,要花费一些时间,要耐心等待。需要注意的是千万别用sudo来执行这条命令,由sudo生成的这个镜像文件隶属于root这个用户,当前用户会无权读写这个文件,需要重新设置权限。
接下来就可以启动虚拟机来开始安装Windows XP了:
$kvm –m 512 –cdrom /home/shixinyu/WinXPiso –boot d /home/shixinyu/WinXPimg
这会创建一个内存大小为512M的,从CDROM优先启动的虚拟机,当然这里指定的CDROM是一个ISO文件。这会d出一个QEMU窗口,我们将看到Windows XP安装程序。这里为什么会有QEMU,根据KVM官方说明,KVM会使用一个经过修改的QEMU来工作,可能是由KVM来实现CPU级别的虚拟化技术的调用,而采用QEMU来仿真一些设备比如鼠标键盘什么的吧。接下来在虚拟机里的安装应该就没什么难处了,不过需要注意的是在Windows XP安装程序中的关于格式化的选项,最好选择格式化NTFS,不是快速格式化。安装程序第一次拷贝完文件之后会重启继续安装,安装完成后就可以看到 Windows XP桌面了,这里截了一幅安装完成后进入Windows XP桌面的图:
这就是KVM虚拟化技术下的虚拟机实用案例,实际上KVM支持不少 *** 作系统作为虚拟机,官方有列表给出,具体请访问下面链接:
>可以这样尝试。
1如果是通过HDM调用KVM远程控制台不显示画面,一方面有可能是HDM出问题,可以刷一下HDM固件,另一方面可能是KVM连接出问题,考虑JAVA环境是否正常,可以通过网络连接尝试。2去机房用KVM直接连接服务器,看是否能访问BIOS,如果能调用,说明是HDM出了问题,如果这样也无显示,建议通过网线连接服务器HDM口,可以先清一下BIOS,无效的话也可以进行BIOS固件刷新。1首先,我们需要登录kvm并链接上服务器
2
然后点击options旁边的磁盘图标,点
connect
iso
加载iso文件,然后正常重启服务器(windows通过远程桌面重启,linux通过ssh重启)>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)