博客统计信息

51cto推荐博客
用户名:Deidara
文章数:105
评论数:310
访问量:344395
无忧币:1925
博客积分:3132
博客等级:7
注册日期:2008-06-11

xen半虚拟化pygrub使用更方便
2010-01-25 10:48:32
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://deidara.blog.51cto.com/400447/270115
        在使用XEN的时候,因为编译DomU内核时,他默认很多模块都没有,所以安装服务的时候,需要在从新编译DomU内核,再这个时候,你不可能把所有的虚拟机都down掉,更新完内核在一起启动虚拟机吧。这个时候我发现官方的文档 pygrub 可以实现,虚拟grub 去读取 虚拟机里的配置文件,这样每台虚拟机器与每台虚拟机的内核可以是不一样的了,但是记住,一定要支持XEN不然一样会报错,好了不多说废话了。
环境:
xen version : 3.4.2
Dom0 : ubuntu-server 8.0.4
DomU: ubuntu-server-8.0.4
操作:
1.复制内核到虚拟机,如果你的虚拟机是开着,就可以通过网络,你也可以关闭虚拟机器,mount挂载方式,下面我通过挂载方式。
shell$> mount -o loop  /ubuntu/ubuntu.img /mnt
shell$>cp /boot/vmlinuz-2.6.18.8-xenU /mnt/boot
shell$>cp /boot/initrd.img-2.6.18.8-xenU /mnt/boot
2.在虚拟机文件系统里 创建 grub启动配置文件。
shell $> cd /mnt/boot
##创建 grub文件夹
shell$>mkdir grub
##创建配置文件因为我的是ubuntu所以我的是menu.lst
shell$>vim menu.lst
default         0
timeout         3
title           nginx
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.18.8-xenU console=tty1 root=/dev/sda1 ro
initrd          /boot/initrd.img-2.6.18.8-xenU
quiet
##创建完毕后保存退出卸载 ubuntu.img
shell $> umount /mnt
3.创建虚拟机pygrub启动配置文件。
shell $> cd  /opt/xenconf
shell $> vim ubunt.cfg
bootloader = “/usr/bin/pygrub”
memory = 512
name = “nginx”
disk = ['file:/ubuntu/ubuntu.img,sda1,w','file:/ubuntu/swap.img,sda2,w']
root = “/dev/sda1 ro”
vif = ['']
on_poweroff = ‘destroy’
on_reboot   = ‘restart’
on_crash    = ‘restart’
vcpus       = ‘2′
extra = ‘xencons=tty1′
4.启动虚拟机
shell $>xm create mdt.cfg -c
xe
 
好了,呵呵,大家快试试!!
 
本人首发:http://www.nginxs.com

本文出自 “linuxer” 博客,请务必保留此出处http://deidara.blog.51cto.com/400447/270115

分享至
更多
一键收藏,随时查看,分享好友!
0人
了这篇文章
类别:linux技术圈()┆阅读()┆评论() ┆ 推送到技术圈返回首页

文章评论

 
2010-01-26 16:29:44
试试就试试

 

发表评论            

【技术门诊】专家解析:软考重点难点及应试技巧
昵  称:
登录  快速注册
验证码:

请点击后输入验证码博客过2级,无需填写验证码

内  容: