Chinaunix首页 | 论坛 | 博客
  • 博客访问: 436112
  • 博文数量: 95
  • 博客积分: 7012
  • 博客等级: 少将
  • 技术积分: 1127
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-13 22:49
文章存档

2010年(5)

2009年(43)

2008年(47)

我的朋友

分类: LINUX

2009-07-18 11:32:44

xm工具提供了一个命令行,允许你使用虚拟机做你所需的任何事。图形工具也可用,不过它们没有xm命令行工具好用。

  使用xm工具通常用xm list命令开始。这个命令显示了可用的虚拟机清单及其设置:

xm list

  在xm list输出里,你能看见运营虚拟机的最重要信息的概要。第一列里是虚拟机的名字,随后是状态信息,包括机器的ID、内存分配、CPU配置和当前状态。在上面列出的信息中,你能看见只有domain-0是活动的。

  为了激活虚拟机,你需要xm create。根据命令xm help,能显示xm命令的使用时期信息,xm create命令“creates a domain based on ”。通常,这样能启动你所需的虚拟机:

  lin:~ # xm create main
  Using config file "/etc/xen/vm/main".

  Started domain main

  现在有趣的是在控制台你看不到任何说明机器已经启动的信息。只有xm list的结果显示你实际上已经有两台机器是活动的。新虚拟机现在有一个ID,并且它目前的状态也有说明。

  如果你确实想看见虚拟机做了什么,我能推荐xm top命令。像Linux top命令,这个命令给出了虚拟机所做事情的非常详细的概貌。

  ***xmtop.tif With xm top you’ll get a detailed overview of what your virtual machines are doing.

  不要担心你所看见的结果窗口里指示至少一个机器不是活动的。这一点不成问题。不活动的机器仅是一台CPU上没有任何动作的机器。这是你能经常看见的,例如,一台不是很繁忙的web服务器。

  你能通过在虚拟机的CPU使用百分比和全部内存使用上找到特别有趣的信息。你能看见全部内存使用与MAXMEM参数有关。这是虚拟机能使用的最大内存数量(能快速增长,稍后我们见谈论)。

  这时候你能启动并运行虚拟机,不过没有附属于它的控制台。如果你想看虚拟机做了什么的话,你能使用xm console命令。从这里,你能执行所有机器上你所需的管理任务。

  ***xmconsole.tif The xm console command gives access to the text based console of your virtual machine.

  准备好在虚拟机的控制台上工作了吗?使用ctrl-] keysequence 回到domain-0机器的控制台。

  到现在为止,我们已经谈论了你应该在一个非托管环境里使用的命令。现在的Linux版本,如Red Hat Advanced Server和SUSE Linux Enterprise Server,它们与Xen一起使用,是一个托管型的环境,叫做Xenstore。这意味着xm命令行工具以及Virtual Machine Manager这样的图形工具使用了一个数据库。如果你想要你的虚拟机出现在托管环境,那你需要知道一些额外的xm命令。

  首先,创建虚拟机后,需要xm new命令添加机器到托管环境。完成后,使用xm start启动域。这个命令的结果与xm创建命令的结果一样,也有例外,依赖于托管环境的工具也能正确地与虚拟机相互作用。最后,你能使用xm删除命令从托管环境移除虚拟机。

  停止或暂停一个域

  当使用Xen虚拟机时,有许多方式告诉虚拟机停止活动。最难的方式之一是使用xm destroy命令。这会立即终止虚拟机,相当于从物理服务器拉断电源。使用xm destroy命令停止虚拟机是一个比较极端的方法。你可能会想:当前你正使用的文件是打开的,使用这个命令在不能保存文件的情况下关闭了文件,因此会丢 失数据。所以更好的是使用xm shutdown命令。这能能好地关闭域,如在Linux环境里使用shutdown命令。你也能使用xm reboot命令重新启动虚拟机。

  在Xen环境里,暂停虚拟机也是有可能的。想要暂停虚拟机,你需要使用xm pause命令。这能停止机器,不过能在内存里保持机器。如果你现在不需要使用虚拟机,不过稍后需要的话,那么使用这个命令。暂停一个域之后,使用xm unpause命令激活虚拟机。

  保存虚拟机有一点困难。在这种情况下,保存意味着目前存在于内存中的状态被写入文件。在那之后,虚拟机就不在内存里了。这有超过xm pause命令的两个优势:你能把物理的内存使用到其他事物上,移动或复制虚拟机到另一台机器上更容易。使用xm save命令保存虚拟机之后,能使用xm restore命令恢复。当使用xm restore时,也应该涉及到保存机器时所创建的文件。

  本文里的命令概述

  xm list:所有已知的虚拟机列表
  xm create:启动一个非托管的虚拟机
  xm help:所有可用的xm命令概述
  xm top:提供所有虚拟机的状态概貌
  xm console:打开控制台管理虚拟机
  xm new:添加虚拟机到Xenbase托管环境
  xm start:从Xenbase托管环境启动虚拟机
  xm destroy:像关掉电源那样关闭虚拟机
  xm shutdown:正确地关掉虚拟机
  xm reboot:重新启动虚拟机
  xm pause:暂停虚拟机的活动而不释放使用的内存资源
  xm unpause:激活使用xm pause命令暂停的虚拟机
  xm save:保存虚拟机状态到一个文件
  xm restore:重新启动已经保存在文件里的虚拟机

  总结

  现在,我们了解了如何使用xm命令执行基本的Xen虚拟机管理。中,我们将学习如何执行更多高级的任务,例如使用xm命令进行硬件管理。

阅读(2014) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~