#xen虚拟机管理命令
xm list:所有已知的虚拟机列表
xm create:启动一个非托管的虚拟机
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 block-attach:添加一块新的硬盘
xm block-detach:删除一块硬盘。
xm log 打印Xen日志
xm addlabel label dom configfile [policy]
xm addlabel label res resource [policy]
增加了名称为label的安全标签,标签名称可自定义
xm getlabel dom configfile
xm getlabel res resource
显示标准从dom的配置文件 or resource
xm labels [policy] [type=dom|res|any]
列出了所有类型的标签中所界定的策略,除特殊,默认策略是当前实施的访问控制策略。默认的类型为dom,这些标签是按字母顺序排列。
xm rmlabel dom configfile
xm rmlabel res resource
删除标签从dom的配置文件或res resource
xm migrate <Domain> [destination domain] 离线迁移guest os xm migrate one-3 192.168.70.73
xm migrate <Domain> -l [destination domain] 在线迁移guest os
xm mem-set <Domain> <Mem>
调整正在运行中的虚拟平台(Domain-0)所占存大小及虚拟操作系统所占用的内存大小,可以动态修改,如果出现Error: memory_dynamic_max must be less than or equal to memory_static_max
说明超出内存的最大限制,可以使用 xm mem-max <DomId>/<Domname> <Mem>
xm network-attach <Domain> [script=scriptname] [ip=ipaddr] [mac=macaddr] [bridge=bridge-name] [backend=bedomain-id]
在指定的domain创建一个新的网络设置(指定设备id)
script=scriptname
使用指定的脚本的名称,默认设置为xend-config.sxp中的vif-script
ip=ipaddr
mac=macaddr
bridge=bridge-name
backend=bedomain-id
xm network-detach <Domain> devid
从domain中移除指定的域ID的网络设备。 devid是虚拟接口domain内设备号
xm network-list <Domain> 列出某个域使用的所有的网络接口
xm pci-attach <Domain> <PciDev> 建立一个新的pci设备
xm pci-detach <Domain> <domain:bus:slot.func> 从domain中移除pci设备
xm pci-list <Domain> 显示domain的pci设置
xm scsi-attach <Domain> <PhysDevice> <VirtDevice> [BackDomain] 添加一个新的scsi设备
xm scsi-detach <Domain> <VirtDevice> 移除一个指定的scsi设备
xm scsi-list <Domain> [--long] 列出所有当前连接的SCSI设备。
xm uptime <Domain> 显示你的Xen环境里所有域的正常运行时间
xm usb-add <Domain> <[host:bus.addr] [host:vendor_id:product_id]> 添加usb设备到FV VM
xm usb-del <Domain> <[host:bus.addr] [host:vendor_id:product_id]> 删除FV VM的usb设备
xm vcpu-list 列出所有域的CPU对应情况
xm vcpu-pin <Domain> vcpu cpu 固定vcpu到物理cpu
例如 xm vcpu-pin domname all all 固定vcpu到所有物理cpu
xm vcpu-pin domname all 2,3,4,5 固定vcpu到物理cpu的2-5
xm vcpu-set <Domain> vcpu-num 修改虚拟机的 CPU 数量
xm vncviewer [--autopass/--vncviewer-autopass] <Domain> 使用vnc连接guest os
xm vnet-create <ConfigFile> 从配置文件创建一个vnet
xm vnet-delete <VnetId> 删除vnet
xm vnet-list Vnets的列表
xm vtpm-list [-l|--long] <Domain> 显示domain中虚拟tpm的设备。
相关命令
virt-install 、 virt-clone 、 virsh
实例
#xm list
查看正在运行的虚拟机 name就是domain的名字。
ID是domain的id号。
Men是分配给这个domain的内存大小。
VCPUS是分配给这个domain的VCPU个数。
State是domain的运行状态(参看下文)。
Time是通过Xen判断的domain运行时间。
STATES
state段能列出6中Xen Domain的状态,State为下面的其中一个。
r – 运行
Domain正在CPU里面运行
b – 阻塞
domain阻塞,意味这个domain不处于运行或者可运行的状态。导致这种状态可能是因为domain正在等待IO(a traditional wait state)或者因为闲置而已经处于sleep状态。
p – 暂停
domain处于暂停状态,通常是因为管理员运行了xm pause命令。处于暂停状态的domain依旧会占用系统资源,比如内存。但是不会被Xen hypervisor列出(but will not be eligible for scheduling by the Xen hypervisor)。
s– 关闭
guest已经被请求关闭,重启,挂起(suspended),或者domain处于即将被摧毁的进程状态。
c – 崩溃
domain崩溃,which is always a violent ending。通常这种状态只有在没有在配置文件中设置当崩溃时候重启的时候才会出现。更多信息请参照xmdomain.cfg。
d – 垂死
domain处于垂死状态,但是还没有完全被关闭,或者未崩溃。
#xm create vm1
启用vm1虚拟机
#xm -f /etc/xen/vm1
启用vm1虚拟机,/etc/xen/vm1为虚拟机配置文件。
#xm console vm1
打开控制台管理vm1虚拟机
#dd if=/dev/zero of=/data/vm1.img bs=1M count=30720
#xm block-attach vm1 tap:aio:/data/vm1.img xvdb w
添加新的30G硬盘
/usr/lib/xen/bin/qemu-dm -d 14 -domain-name one-8 -videoram 4 -vnc 0.0.0.0:8 -vcpus 1 -vcpu_avail 0x1 -boot c -acpi -watchdog-action reset -net nic,vlan=1,macaddr=02:00:c0:a8:46:6c,model=virtio,bridge=br0 -net tap,vlan=1,ifname=tap14.0,bridge=br0 -M xenfv