Chinaunix首页 | 论坛 | 博客
  • 博客访问: 115686
  • 博文数量: 14
  • 博客积分: 1979
  • 博客等级: 大尉
  • 技术积分: 182
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-02 21:20
文章分类
文章存档

2012年(2)

2011年(1)

2010年(2)

2009年(2)

2008年(7)

分类: 虚拟化

2012-02-24 09:24:41

Linux研发环境中虚拟管理

在研发企业的IT日常工作很大一部分就是管理Linux的虚拟开发环境,规范化的企业虚拟机的开发环境是部署在专业的1U或者2U的专业服务器上的,此类的环境是供整个的开发团队来使用和操作的。

在虚拟化产品中xen相对需要的技术水准较高,vmware商业成分都尽管用的人很多,开源的virtualbox似乎就成为首选的方式。这里说明首选virtualbox来做研发企业Linux环境的虚拟化平台,基于正规企业会在使用软件的时候考了一个版权的问题,先对与免费的vmware的产品virutalbox在某些硬件上对x86_64的支持是好于vmware的产品的,而很多企业的开发就是面向64位的应用架构的环境的。基于以上的考虑很多程度上选择virtualbox成为一个首选的方式。

virtualbox虚拟机的开启仅需要user权限就可以,这个对于在很多对权限控制严格的IT企业来说是很好的解决发方式。

显示当前用户下构件的虚拟系统
VBoxManage list vms
"CentOS-demo" {1fd48a47-45c8-4d90-b2c3-4fdd7e141edb}
"centos 5.5 -test go" {6d8f186a-adc7-4582-8afb-185cbf458dff}
"centos 5.5 -test go2" {989ffa00-19e9-4100-90d6-d252c3925d84}
"mc5" {0575f7bd-6d49-4ed1-a71f-926e26c5a826}
"mcdw-infinidb" {dd21dea9-3c6f-4b25-905b-2b38211322a4}
"test" {f69184f5-caf2-4e95-8bc7-e5b6a1fbefa7}
"deplay-test" {503f34b0-5ecb-4bbb-8ab7-6fadc6d49cbf}
"deplay-test-backup" {7f1c3eea-2524-4db4-919c-786d00cb927c}

统计当前用户在运行的虚拟机
VBoxManage list runningvms
"CentOS-demo" {1fd48a47-45c8-4d90-b2c3-4fdd7e141edb}
"centos 5.5 -test go" {6d8f186a-adc7-4582-8afb-185cbf458dff}
"test" {f69184f5-caf2-4e95-8bc7-e5b6a1fbefa7}
"deplay-test" {503f34b0-5ecb-4bbb-8ab7-6fadc6d488cbf}
 
关闭虚拟机
VBoxManage controlvm "deplay-test" poweroff
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%

启动虚拟机
VBoxManage startvm "deplay-test"  --type headless
Waiting for VM "deplay-test" to power on...
VM "deplay-test" has been successfully started.

clone 虚拟机备份状态
VBoxManage clonevm "deplay-test" --name "deplay-test-backup"  --register

傻瓜式克隆硬盘文件
VBoxManage clonevdi 原始VDI文件名 新的VDI文件名

在virtualbox使用过程中会设置多个快照,而要将VirtualBox的虚拟机连快照带设置全部迁移到另一台机器上,并不是一件轻松的事情。单纯的复制磁盘文件并不能解决问题。
第一步:找到虚拟机的定义文件,一般为虚拟机名.xml,然后用vi或其它能够编辑XML文件的编辑器打开它。
第二步:修改虚拟机文件与路径相关的信息,检查以下内容:
1.DVDDrive小节,如果有,删除其中的映像,除非另一个机器上存在相同的映像,基本上这是不可能的。

       
     

更改后为

2.Network小节,检查网络类型是否是Internal或NAT,如果不是,改正它或者直接在虚拟机的设置页中更改为二者之一。HostInterface是目标主机上未必存在,因此,尽量避免。
3.ShareFolders小节,去除共享文件夹,同样的,由于路径的原因,您的共享文件夹在目标机器上也未必存在,改后样子如下:

4.保存XML文件。
5.找到%USERPROFILE%\.Virtualbox目录下的virtualbox.xml,
小节中,找到你要迁移的虚拟机对应的MachineEntry行,复制出来。在小节中,找到你要迁移的虚拟机对应的硬盘的映像文件项目,同样复制出来。
6.复制整个虚拟机磁盘映像文件目录(含子目录及虚拟机对应的XML文件)。
首先,安装同版本的VirtualBox并启动一次,不同版本没试过。
然后,退出VirtualBox并且打开%USERPROFILE%\.Virtualbox目录下的virtualbox.xml。
小节中,找到你要迁移的虚拟机对应的MachineEntry行,将上面第5步对应的内容复制回去,注意其中src对应的目录要和你一会复制的磁盘上的虚拟机定义文件目录一致。在小节中,同样处理,一样要注意目录。
virtualbox在不同的主机中迁移也可以快速解决开发的需求应用。
阅读(2554) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~