创建并启动一个xen半虚拟化PV客户机
来源:互联网 发布:防蹭网软件手机版 编辑:程序博客网 时间:2024/04/28 13:38
参考文献: https://help.ubuntu.com/community/Xen
由于没百度到比较合适的安装Xen PV Guest的文章,Google搜到的也不是很完善,只有上述链接的安装半虚拟化Ubuntu客户机看起来很完整清晰,所以按照这篇文章中的步骤,来安装一个半虚拟化客户机。另外,Xen 的Wiki中http://wiki.xen.org/wiki/DomU_Install_with_Virt-Install 也可以尝试一下。
前提:Xen Hypervisor和 Dom0安装成功并启动;有关逻辑卷大小调整和创建新的逻辑卷参考另一篇博文。Host端网络的配置略。
直接开始安装手动配置和安装一个PV Guest VM。
1. 创建逻辑卷
查看逻辑卷组,选择一个有空闲空间的逻辑卷组,或者你需要压缩一个逻辑卷的空间,让所属的逻辑卷组有空闲空间从而创建新的逻辑卷。
$ vgs
在该逻辑卷组<VGNAME>中创建一个新的逻辑卷叫做lv_vm_ubuntu
$ lvcreate -L 10G -n lv_vm_ubuntu /dev/<VGNAME>
创建成功后查看
$ lvs
2. 获取网络启动的镜像Netboot Images
首先选择一个适合你的源如mirrors.163.com或者mirrors.hust.edu.cn等等。
$ mkdir -p /var/lib/xen/images/ubuntu-netboot/trusty14LTS
$ cd /var/lib/xen/images/ubuntu-netboot/trusty14LTS
$ wget http://<mirror>/ubuntu/dists/trusty/main/installer-amd64/current/images/netboot/xen/vmlinuz
$ wget http://<mirror>/ubuntu/dists/trusty/main/installer-amd64/current/images/netboot/xen/initrd.gz
3. 创建初始化客户机的配置文件
$ cd /etc/xen
$ cp xlexample.pvlinux ubud1.cfg
$ vi ubud1.cfg
配置文件参考如下:
name = "ubud1"kernel = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/vmlinuz"ramdisk = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/initrd.gz"#bootloader = "/usr/lib/xen-4.4/bin/pygrub"memory = 512vcpus = 1# Custom option for Open vSwitch,可暂时先忽略script参数,只保留bridge参数(写你自己Host上的网桥)vif = [ 'script=vif-openvswitch,bridge=virbr0' ]disk = [ '/dev/<VGNAME>/lv_vm_ubuntu,raw,xvda,rw' ]# You may also consider some other options# [[http://xenbits.xen.org/docs/4.4-testing/man/xl.cfg.5.html]
虚拟机的启动的kernel:vmlinuz和initrd.gz放在了Dom0中。这个kernel是属于半虚拟化虚拟机它自己的。
4. 创建虚拟机并网络安装、启动
$ xl create -f /etc/xen/ubud1.cfg (-c是启动客户机后直接连接到控制台,用于尽快发现客户机启动时输出的信息,调试)
查看虚拟机ID:
$ xl list
Name ID Mem VCPUs
Domain-0 0 4096 4
ubud1 2 512 1
通过控制台连上虚拟机:
$ xl console 2
按照步骤进行网络安装操作系统
安装完毕后断开虚拟机连接,然后关掉虚拟机,否则它会重新进入安装界面
$ xl shutdown 2或者ID已经变成3,注意用xl list看一下
5. 修改配置文件变成pygrub引导
避免从Dom0里放置的虚拟机启动文件来启动半虚拟化虚拟机
vim /etc/xen/ubud1.cfg
#kernel = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/vmlinuz"#ramdisk = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/initrd.gz"bootloader = "/usr/local/lib/xen/bin/pygrub" #查看一下你自己的pygrub在哪个目录
然后再重新创建虚拟机
xl create -c /etc/xen/ubud1.cfg
这里遇到的问题:
pygrub启动失败,查看它的日志,报no module named xen.lowlevel.xc错误,可以修改pygrub,注释掉import xen.lowlevel.xc即可,详细参见https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=588811里面的解释。
pygrub启动失败,查看它的日志,报no module named fsimage错误,可以locate一下fsimage,看到它在/usr/local/lib64/python2.6/site-packages目录下,所以修改pygrub,在import fsimage前面添加sys.path = ['/usr/local/lib64/python2.6/site-packages'] + sys.path 即可,详细参见http://blog.csdn.net/jcwkyl/article/details/6324140里面的解释。
0 0
- 创建并启动一个xen半虚拟化PV客户机
- linux系统下使用Xen安装半虚拟化xen客户机(paravirtualized Xen guest)
- 【求助】【xen】【ubuntu12.04】安装半虚拟化客户机中遇到的问题
- 【xen】【ubuntu12.04】安装半虚拟化客户机 Dom-U REHL6.3
- Xen中半虚拟化的创建与配置
- XEN 半虚拟化&&全虚拟化
- 浅谈Xen和半虚拟化技术
- Xen虚拟化
- XEN 虚拟化
- 读书笔记---xen虚拟化
- Xen虚拟化--介绍
- Xen虚拟化技术
- xen虚拟化实战系列(八)之xen虚拟机开机自启动配置
- 从Xen Host Kernel复制出一个半虚拟化的Guest
- Xen 半虚拟化和硬件辅助虚拟化
- xen安装ubuntu客户机
- xen安装XP客户机
- XEN虚拟化技术概论
- $(document).ready()和window.onload的区别
- Java获取文件夹中所有文件
- 实现文件按时间排序功能
- MFC EDIT控件多行滚动
- SpringMVC+MyBatis+C3P0连接池详细配置
- 创建并启动一个xen半虚拟化PV客户机
- Android 线程异常报错
- Android 4.4环境搭建——Android SDK下载与安装
- prim算法证明
- Https联网工具类
- RPC简介
- Sublime 快捷键 大全
- linux下让lighttpd支持websocket
- ANDROID STRINGS.XML的特殊字符_安卓STRING.XML添加空格或字符的方法