|
阅读:4698回复:4
Xen on Debian Etch Installing note
Xen on Debian Etch Installing note
更好的格式请参见博客原文: http://blog.color-magic.cn/174 总喜欢试验一些古怪的东西,机器的环境搞得乱七八糟的,各种配置放到一起后就是一片混乱,周末(上一个)的时候便跳出一个用虚拟机来试验的想法。周一申请到一台服务器开始试验。(这似乎是一个更大也更容易把作业系统搞到一片混乱的试验) 在互联网上找到的文档似乎是更看重如何来安装xen,但对于debian来说,安装从来都不是问题,这一次的难题出现在网络配置上,综合各方面的资料,总结出一个真正的解决方案。 主要参考资料: Xen初学者指南:http://www.linuxsir.org/main/?q=node/188 Xen v3.0手册:http://www.linuxsir.org/main/?q=node/186 Funky Routing: http://www.option-c.com/xwiki/Funky_Routing Debian wiki XEN: http://wiki.debian.org/Xen 当中参考过很多资料,这三册是最重要的,尤其是第三册Funky Routing才是解决网络问题的重点。 注:假定您和我一样有一点点linux系统和debian的使用经验 一、安装Xen 在Debian上安装一个软件简直再简单不过,就算是xen这个看起来很复杂和系统关系很密切的软件也是如此,这也是我一偏爱它的原因(懒人-_-#)。 # apt-get install xen-linux-system-2.6.18-5-xen-686 # apt-get install bridge-utils xen-tools # apt-get install libc6-xen 之后的像其它资料中说的一些复杂的Grub的配置就都已经自动给配置好了,直接重启,进入Grub菜单的第一条带有Xen字样的系统。 二、创建虚拟机 创建虚拟机有好多种方式,上面篇文档里有很详细的说明,最简单的办法是按参考资料1的说明到 http://jailtime.org 下载已经做好的系统镜像,以减小初次配置时的错误率。下载回来的文件解压后需要修改配置文件中的文件路径等配置。 直接用xm create -c config-file-name的方法将会不能启动虚拟机,出现一个 Device 0(vif) could not be connected的错误,这是网络配置的原因,接下。 三、网络配置 这里是摸索时间最长的,希望我能写的清楚点,实际上也很简单。 当然,先说一下我的需求,需要不一样的,遇到的问题也会不一样。我的虚拟机将来是要当作服务器用的,所以需要和宿主机一样具有相同的网络地位,即具有同一个子网的公网IP。如果只是希望虚拟机可以访问网络,用NAT的方式即可,这种最简单,但是你会发现你不能从其它地方ssh登录进你的虚拟机。 为了达到目的,需要使用“桥接”的方式让虚拟机接入网络。 在/etc/xen/xend-config.sxp中设置 (network-script network-bridge) (vif-script vif-bridge) 有一篇文档中说需要设置(这个应该跟网络也没什么关系,只是提到配置了说一下) (xend-http-server yes) 我照做了但是不知道原因是什么,好像是没看明白 这样,已经设定了虚拟机采用bridge方式通讯,但是还没完,如果是远程登录的话千万不要这个时间重启xend服务或重启机器 在宿主机(dom0)里设置/etc/network/interfaces allow-hotplug eth0 iface eth0 inet static address 0.0.0.0 auto xenbr0 iface xenbr0 inet static pre-up /sbin/ip link set eth0 up pre-up /usr/sbin/brctl addbr xenbr0 pre-up /usr/sbin/brctl addif xenbr0 eth0 address 59.65.196.45 netmask 255.255.255.0 network 59.65.196.0 gateway 59.65.196.1 bridge_fd 0 bridge_hello 0 bridge_stp off 在虚拟机里配置/etc/network/interfaces,这个时间虚拟机还没有启动,可以把虚拟机的磁盘文件直接mount起来再修改 auto eth0 iface eth0 inet static address 59.65.196.47 #(注:与宿主机同一网段) netmask 255.255.255.0 network 59.65.196.0 broadcast 59.65.196.255 gateway 59.65.196.1 dns-nameservers 59.65.196.10 dns-search nacta.edu.cn 重启主机,进入后用ifconfig查看是否有类似如下配置 xenbr0 Link encap:Ethernet HWaddr 00:1A:64:67:D1:C0 inet addr:59.65.196.45 Bcast:59.65.196.255 Mask:255.255.255.0 inet6 addr: fe80::21a:64ff:fe67:d1c0/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1736 errors:0 dropped:0 overruns:0 frame:0 TX packets:608 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:175240 (171.1 KiB) TX bytes:100152 (97.8 KiB) 用命令 xm create -c config-file-name 起动虚拟机,一般来说已经正常了,如果还是不行,我也不知道是为什么了 四、后记 有一种情况是虚拟机可以正常访问网络(应该是正常,我没有测试呃,原因自有说明),宿主机却不能ssh连接上,是上面一段interfaces文件中关于 xenbr0 这一段没有配置的原因,推测是因为网桥起来后,占用了eth0这个以太网端口,却没有给这个网桥指定它的ip信息,所以相当于eth0端口没有配置IP,为了这个我还另加了一根网线呢(和一个IP),但是只工作了几分钟就同样不能访问了,原因未知。后来配置好 xenbr0 后两个IP都能访问到宿主机了。 |
|
|
|
1C#
发布于:2008-02-18 18:00
Re:Xen on Debian Etch Installing note
性能差距貌似不应该那么大
话说2.6.17~2.6.24.1的内核都出了本地权限提升漏洞了~ 公开的测试代码可以直接导致内核panic~ 谁去仔细构造一下~ |
|
|
|
2C#
发布于:2008-02-18 16:05
Re:Xen on Debian Etch Installing note
2核扣肉2.33 1GB mem VS 4核XEON 8GB mem 硬件差距太大了吧 |
|
|
|
3C#
发布于:2008-02-03 18:59
Re:Xen on Debian Etch Installing note
话说为啥现在的稳定版内核都是2.6.18-5 ? |
|
|
|
4C#
发布于:2008-02-03 18:59
Re:Xen on Debian Etch Installing note
升级到debian testing 发现xen和vbox都没合适的内核...
号称2.6.22之后的内核效率提升很大 Dell 330 VS Dell PE 2950 2核扣肉2.33 1GB mem VS 4核XEON 8GB mem 2.6.23 Debian testing VS 2.6.18.5 CentOS Lighttpd + Tomcat 并发 80 : 3200 1:40的性能比例.............. |
|
|