RSS订阅
RSS订阅TT服务器

Xen虚拟机的管理选项

2008-9-12  选择字号:  | |
打印本文章

导读:本文学习Xen虚拟机的管理工具xm命令。

关键词:Xen 虚拟机 xm

正在加载数据... 【TechTarget中国原创】在这系列的前一篇文章中,我们学习了如何创建Xen虚拟机。现在,TechTarget中国的特约虚拟化专家Sander van Vugt将探究xm工具提供的管理选项。

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

【TechTarget中国原创】在这系列的前一篇文章中,我们学习了如何创建Xen虚拟机。现在,TechTarget中国的特约虚拟化专家Sander van Vugt将探究xm工具提供的管理选项。

  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命令进行硬件管理。

  关于作者:Sander van Vugt是一位作者和独立技术培训师,从1994起专攻Linux。Vugt也是一位高可用性集群和性能优化技术顾问,同样是SLED 10管理方面的专家。


Xen虚拟化
 什么是Xen?
 Xen的工作原理
 Xen:为虚拟化准备SUSE Linux Enterprise Server 10
 如何创建Xen虚拟机?
 Xen虚拟机的管理选项

还没有登录? 阅读全文请先登录或注册
用户名:(请填写您的E-mail做为登录账号)
  • 获取最新的IT业界资讯、市场动态、行业趋势等独家原创内容。
  • 分享国内外技术专业人士提供的技巧经验。
  • 利用专注IT的技术资源中心,不断更新专业知识。
  • 享受白皮书、Webcast等系列特色增值服务。
  • 免费参加TT中国举办的各种会员活动。
  • 更多的精彩服务,在不断开发中……
用户名:(请填写您的E-mail)
密 码:
 永久登录
请输入您的登录email:
当谈及Xen时,我会听到如准虚拟化、hypervisor和HVM。这些术语到底是什么意思?简而言之,它们是描述Xen如何运行的结构条款。不像……
如何区分Xen与其他虚拟化产品?Xen的工具是轻量级的,并且能够植入子操作系统,未来还可以支持本地操作系统。
VMware公司一直希望公众认为它是虚拟化之争中理所当然的胜利者。但遗憾的是,这场战争并未停止,基于Xen的虚拟化平台以价格优势发起了一场新的战争……
如何描述有虚拟化功能的芯片?对于英特尔,这项技术称为Virtualization Technology(即VT),以前的代号为“Vanderpool”。对于AMD……
思杰近日宣布,公司已被指定为Alatum项目的服务器虚拟化基础架构提供商。XenServer如何推动网格计算?提供了哪些企业虚拟基础架构功能?
ESX是性能比较稳定的虚拟化产品,但是也存在一些安全漏洞。ESXi是VMware免费嵌入式hypervisor,它也存在安全缺陷。对于这两款产品,我们该如何安全地管理它们?本指南将从网络和管理方面入手,提供一些实用技巧。
在前面的专题“Hyper-V指南”中,我们探讨了Hyper-V的虚拟架构、系统要求及与其他产品之间的竞争。在本指南中,我们将具体描述如何管理Hyper-V、如何对Hyper-V备份以及如何进行性能优化等。
在之前的专题里,我们学习了如何运行ESX Server以及它与免费的VMware Server的比较。在本专题中,我们将详细描述VMware ESX Server子操作系统性能的技巧。
最新更新
专家答疑
技巧
Anil Desai
你推荐使用虚拟机优化器吗?使用的时候需要注意哪些情况呢?我没有你所提的虚拟机优化器产品的任何经验,我询问了……
Joe Foran
当谈及Xen时,我会听到如准虚拟化、hypervisor和HVM。这些术语到底是什么意思?简而言之,它们是描述Xen如何运行的结构条款。不像……
Serdar Yegulalp
无论何时我使用Virtual Server的虚拟机远程控制客户端,都会碰到许多问题,如远程机滞后或重复击键或不响应。我该怎么办?