VMADM(1M)VMADM(1M)
vmadm - 管理SmartOS虚拟机
/ usr / vm / sbin / vmadm <command> [-d] [-v] [特定于命令的参数]
vmadm工具允许您与SmartOS上的虚拟机进行交互
系统。 全部3个:OS虚拟机(SmartOS区域),LX虚拟机
可以管理机器和KVM虚拟机。 vmadm允许你
创建,检查,修改和删除本地系统上的虚拟机。
重要事项:对LX VM的支持目前有限和实验性。 这个
意味着它很有可能以主要方式改变,恕不另行通知。 还:不
所有实现的LX功能都已记录在案。 的
随着事情的稳定,文档将被更新。
虚拟机的主要参考是其UUID。 大多数命令都在VM上运行
由UUID。 在SmartOS中,包括bash选项卡完成规则
您可以选择完成UUID,而不必为每个UUID键入它们
命令。
支持以下命令和选项:
create [-f <filename>]
在系统上创建一个新的虚拟机。 引用的任何图像/数据集都必须
已经存在于目标zpool上。 输入必须是JSON您可以
使用-f参数传递文件或从某些东西重定向stdin
与JSON。 如果没有指定文件,Create将拒绝创建VM
而stdin是一个tty。
有关详细信息,请参阅下面的“属性”或“示例”部分
放入JSON有效载荷。
create-snapshot <uuid> <snapname>
支持快照目前是实验性的。 它只适用于操作系统
VMS也没有其他数据集。
<snapname>参数指定要拍摄的快照的名称
的指定VM。 快照名称必须为64个字符或更少
只能在集合中包含字母数字字符和字符
[-_.:%]以符合ZFS的限制。
您可以在将来使用删除快照或回滚快照
您使用create-snapshot创建的快照,只要该快照
还存在
有关如何使用的更多详细信息,请参阅下面的“SNAPSHOTS”部分
这些快照及其限制。
console <uuid>
连接到正在运行的虚拟机的文本控制台。 对于OS VM,这将是
区域控制台。 对于KVM虚拟机,这将是串行控制台和您的
VM将需要使用getty或类似的方式首先运行
串行设备 LX VM尚不支持。
要结束串行控制台会话CTRL-]。 对于OS VM,您需要
在一行开始时这样做,所以一般这意味着压力:
ENTER然后按CTRL-]然后一个点字符。 对于KVM虚拟机你应该只是
需要按CTRL-]本身。
删除<uuid>
用指定的UUID删除虚拟机。 VM和任何关联的
存储包括zvols和区域文件系统将被删除。
如果你设置了indestructible_zoneroot或indestructible_delegated
VM上的标志* *无法*删除,直到您取消设置这些标志
有一些像:
vmadm update <uuid> indestructible_zoneroot = false
vmadm update <uuid> indestructible_delegated = false
删除快照并保留。
注意:'vmadm delete'命令没有交互,请小心删除
右VM。
delete-snapshot <uuid> <snapname>
支持快照目前是实验性的。 它只适用于操作系统
VMS也没有其他数据集。
此命令将删除存在该名称的ZFS快照
具有指定uuid的VM的<snapname>。 您无法撤消此操作
操作,它将不再能够回滚到指定的
快照
有关如何使用的更多详细信息,请参阅下面的“SNAPSHOTS”部分
这些快照及其限制。
得到<uuid>
输出描述VM的JSON对象。 JSON对象将被转储
到stdout。 输出对象可以由json(1)进一步处理,
如果需要的话。
info <uuid> [type,...]
info命令仅运行KVM虚拟机。 它会谈到
vmadmd(1M)守护程序,并请求有关正在运行的VM的一些信息。
该信息作为具有成员的JSON对象输出到stdout
每个类型指定的对象。 如果没有指定类型,则所有信息
已经包括了。 类型值可以用逗号分隔
空格
可用的信息类型有:
所有:
明确地包括所有其他类型。
块:
关于连接到该VM的块设备的信息。
blockstats:
读/写数据块,操作次数最多
为每个块设备写入偏移量。
查尔德夫
关于附加的特殊字符设备的信息
虚拟机
cpus:
有关连接到此虚拟机的虚拟CPU的信息。
kvm:
有关此虚拟机中KVM驱动程序可用性的信息。
pci:
关于虚拟PCI总线上每个设备的信息
这个虚拟机。
香料:
我们的TCP套接字的IP,端口和VNC显示编号
监听这个虚拟机。 如果启用了香料。
版:
Qemu版本信息。
vnc:
我们的TCP套接字的IP,端口和VNC显示编号
监听这个虚拟机。 如果VNC启用
列表[-p] [-H] [-o字段,...] [-s字段,...] [field = value ...]
列表命令可以以各种方式列出系统上的虚拟机。 的
过滤器,排序和排序选项均基于虚拟机的属性。
有关允许的键列表,请参阅下面的“属性”部分。 所有
列为“listable”的那些可以用作过滤的关键字,
排序或排序。
列表命令始终对受一个限制的一组VM进行操作
过滤。 默认情况下,过滤器为空,因此列出所有虚拟机。 你添加
通过在cmdline上指定key = value对进行过滤。 你也可以
通过使用key =〜value和make来通过正则表达式匹配过滤器
值为正则表达式。 您可以添加任意数量的过滤器
并且将仅显示与所有过滤器参数匹配的VM。
输出的字段由-o选项控制
订购。 默认的顺序是'uuid,type,ram,state,alias'。 如果你
用-o选项指定你自己的顺序,这个顺序被替换了
您希望保留在输出中的默认字段
将它们添加到您的字段列表中。
输出中的行顺序通过-s选项进行控制
这决定了排序顺序。 默认排序顺序为'ram,uuid'
这意味着VM将首先按RAM排序,然后再分配VM
相同的RAM值将被uuid排序。 你也可以选择拥有
一个字段按降序排序,前缀为该字段名称
' - '字符。 因此,像'-ram,uuid'这样的命令会做同样的事情
默认除了首先用最高RAM值排序。
您可以为list命令指定的另外两个选项是
选择可解析输出的“-p” 设置此标志,输出为
用“:”字符分隔,而不是在列中排列。 这个
选项也禁用标题的打印。
如果你想禁用标题的标题打印
由于某些原因输出,可以使用'-H'选项。
你可以看到几个例子,使用顺序,排序和选择
下面的示例部分。
lookup [-j | -1] [-o field,field,..] [field = value ...]
查找命令旨在帮助您查找虚拟机。 需要一套
过滤器选项的格式与list命令相同。 这意味着你
在命令行上用key = value对指定它们,并可以使用
key =〜value格式指定正则表达式值。 这些虚拟机
匹配所有的过滤器参数将被输出。
默认输出是匹配的VM的UUID的单列列表
过滤器。 这样,您可以执行以下操作:
for vm in $(vmadm lookup type = KVM state = running); 做
echo -n“$ {vm}”
vmadm info $ {vm} vnc | json vnc.display
完成了
基于输出。 如果要将输出用作JSON,可以添加
-j参数。 设置该标志,输出将是一个JSON数组
包含与“get”命令相同的JSON数据的VM对象
每个虚拟机匹配。
当-j标志被传递时,你也可以限制对象中的字段
的输出数组。 要这样做,请使用-o选项。 例如,如果你
使用:
vmadm lookup -j -o uuid,品牌,配额
输出数组中的对象只能具有uuid,品牌和配额
会员 在可能的情况下,vmadm可以优化查找,从而不会
包括输出中的字段意味着它不必做这个潜在的事情
昂贵的操作来查找它们。 默认情况下(不含-o)所有字段
被包含在对象中。
如果传递-1参数,则lookup只能返回1个结果。 如果
多个结果匹配或0个匹配的结果,一个错误将
退回状态将不为零。
有关允许的键列表,请参阅下面的“属性”部分。 所有
那些列为“listable”的那些可以用作过滤的关键。
重启<uuid> [-F]
重新启动虚拟机。 默认重新启动将尝试正常停止VM
当VM已停止时,它将再次被引导。 这确保了
给予VM内的进程有机会正确关闭
以尽量减少数据丢失。
对于OS VM,shutdown命令将在该区域内运行
cmdline'/ usr / sbin / shutdown -y -g 0 -i 6'将导致VM
关机后重新启动
对于KVM虚拟机,vmadmd将作为这里的帮助程序重新启动
与“stop”命令相同的方式。
如果由于某种原因你不能或不想做一个优雅的
重新启动,您可以添加'-F'参数来强制重启。 这个
重新启动将会更快,但不一定会给予任何VM
时间关闭其流程。
回滚快照<uuid> <snapname>
支持快照目前是实验性的。 它只适用于操作系统
VMS也没有其他数据集。
此命令滚动以指定的方式备份VM的数据集
当使用snapname的快照时,uuid返回到其状态
被采取。
名称
vmadm - 管理SmartOS虚拟机
概要
/ usr / vm / sbin / vmadm <command> [-d] [-v] [特定于命令的参数]
描述
vmadm工具允许您与SmartOS上的虚拟机进行交互
系统。 全部3个:OS虚拟机(SmartOS区域),LX虚拟机
可以管理机器和KVM虚拟机。 vmadm允许你
创建,检查,修改和删除本地系统上的虚拟机。
重要事项:对LX VM的支持目前有限和实验性。 这个
意味着它很有可能以主要方式改变,恕不另行通知。 还:不
所有实现的LX功能都已记录在案。 的
随着事情的稳定,文档将被更新。
虚拟机的主要参考是其UUID。 大多数命令都在VM上运行
由UUID。 在SmartOS中,包括bash选项卡完成规则
您可以选择完成UUID,而不必为每个UUID键入它们
命令。
命令
支持以下命令和选项:
create [-f <filename>]
在系统上创建一个新的虚拟机。 引用的任何图像/数据集都必须
已经存在于目标zpool上。 输入必须是JSON您可以
使用-f参数传递文件或从某些东西重定向stdin
与JSON。 如果没有指定文件,Create将拒绝创建VM
而stdin是一个tty。
有关详细信息,请参阅下面的“属性”或“示例”部分
放入JSON有效载荷。
create-snapshot <uuid> <snapname>
支持快照目前是实验性的。 它只适用于操作系统
VMS也没有其他数据集。
<snapname>参数指定要拍摄的快照的名称
的指定VM。 快照名称必须为64个字符或更少
只能在集合中包含字母数字字符和字符
[-_.:%]以符合ZFS的限制。
您可以在将来使用删除快照或回滚快照
您使用create-snapshot创建的快照,只要该快照
还存在
有关如何使用的更多详细信息,请参阅下面的“SNAPSHOTS”部分
这些快照及其限制。
console <uuid>
连接到正在运行的虚拟机的文本控制台。 对于OS VM,这将是
区域控制台。 对于KVM虚拟机,这将是串行控制台和您的
VM将需要使用getty或类似的方式首先运行
串行设备 LX VM尚不支持。
要结束串行控制台会话CTRL-]。 对于OS VM,您需要
在一行开始时这样做,所以一般这意味着压力:
ENTER然后按CTRL-]然后一个点字符。 对于KVM虚拟机你应该只是
需要按CTRL-]本身。
删除<uuid>
用指定的UUID删除虚拟机。 VM和任何关联的
存储包括zvols和区域文件系统将被删除。
如果你设置了indestructible_zoneroot或indestructible_delegated
VM上的标志* *无法*删除,直到您取消设置这些标志
有一些像:
vmadm update <uuid> indestructible_zoneroot = false
vmadm update <uuid> indestructible_delegated = false
删除快照并保留。
注意:'vmadm delete'命令没有交互,请小心删除
右VM。
delete-snapshot <uuid> <snapname>
支持快照目前是实验性的。 它只适用于操作系统
VMS也没有其他数据集。
此命令将删除存在该名称的ZFS快照
具有指定uuid的VM的<snapname>。 您无法撤消此操作
操作,它将不再能够回滚到指定的
快照
有关如何使用的更多详细信息,请参阅下面的“SNAPSHOTS”部分
这些快照及其限制。
得到<uuid>
输出描述VM的JSON对象。 JSON对象将被转储
到stdout。 输出对象可以由json(1)进一步处理,
如果需要的话。
info <uuid> [type,...]
info命令仅运行KVM虚拟机。 它会谈到
vmadmd(1M)守护程序,并请求有关正在运行的VM的一些信息。
该信息作为具有成员的JSON对象输出到stdout
每个类型指定的对象。 如果没有指定类型,则所有信息
已经包括了。 类型值可以用逗号分隔
空格
可用的信息类型有:
所有:
明确地包括所有其他类型。
块:
关于连接到该VM的块设备的信息。
blockstats:
读/写数据块,操作次数最多
为每个块设备写入偏移量。
查尔德夫
关于附加的特殊字符设备的信息
虚拟机
cpus:
有关连接到此虚拟机的虚拟CPU的信息。
kvm:
有关此虚拟机中KVM驱动程序可用性的信息。
pci:
关于虚拟PCI总线上每个设备的信息
这个虚拟机。
香料:
我们的TCP套接字的IP,端口和VNC显示编号
监听这个虚拟机。 如果启用了香料。
版:
Qemu版本信息。
vnc:
我们的TCP套接字的IP,端口和VNC显示编号
监听这个虚拟机。 如果VNC启用
列表[-p] [-H] [-o字段,...] [-s字段,...] [field = value ...]
列表命令可以以各种方式列出系统上的虚拟机。 的
过滤器,排序和排序选项均基于虚拟机的属性。
有关允许的键列表,请参阅下面的“属性”部分。 所有
列为“listable”的那些可以用作过滤的关键字,
排序或排序。
列表命令始终对受一个限制的一组VM进行操作
过滤。 默认情况下,过滤器为空,因此列出所有虚拟机。 你添加
通过在cmdline上指定key = value对进行过滤。 你也可以
通过使用key =〜value和make来通过正则表达式匹配过滤器
值为正则表达式。 您可以添加任意数量的过滤器
并且将仅显示与所有过滤器参数匹配的VM。
输出的字段由-o选项控制
订购。 默认的顺序是'uuid,type,ram,state,alias'。 如果你
用-o选项指定你自己的顺序,这个顺序被替换了
您希望保留在输出中的默认字段
将它们添加到您的字段列表中。
输出中的行顺序通过-s选项进行控制
这决定了排序顺序。 默认排序顺序为'ram,uuid'
这意味着VM将首先按RAM排序,然后再分配VM
相同的RAM值将被uuid排序。 你也可以选择拥有
一个字段按降序排序,前缀为该字段名称
' - '字符。 因此,像'-ram,uuid'这样的命令会做同样的事情
默认除了首先用最高RAM值排序。
您可以为list命令指定的另外两个选项是
选择可解析输出的“-p” 设置此标志,输出为
用“:”字符分隔,而不是在列中排列。 这个
选项也禁用标题的打印。
如果你想禁用标题的标题打印
由于某些原因输出,可以使用'-H'选项。
你可以看到几个例子,使用顺序,排序和选择
下面的示例部分。
lookup [-j | -1] [-o field,field,..] [field = value ...]
查找命令旨在帮助您查找虚拟机。 需要一套
过滤器选项的格式与list命令相同。 这意味着你
在命令行上用key = value对指定它们,并可以使用
key =〜value格式指定正则表达式值。 这些虚拟机
匹配所有的过滤器参数将被输出。
默认输出是匹配的VM的UUID的单列列表
过滤器。 这样,您可以执行以下操作:
for vm in $(vmadm lookup type = KVM state = running); 做
echo -n“$ {vm}”
vmadm info $ {vm} vnc | json vnc.display
完成了
基于输出。 如果要将输出用作JSON,可以添加
-j参数。 设置该标志,输出将是一个JSON数组
包含与“get”命令相同的JSON数据的VM对象
每个虚拟机匹配。
当-j标志被传递时,你也可以限制对象中的字段
的输出数组。 要这样做,请使用-o选项。 例如,如果你
使用:
vmadm lookup -j -o uuid,品牌,配额
输出数组中的对象只能具有uuid,品牌和配额
会员 在可能的情况下,vmadm可以优化查找,从而不会
包括输出中的字段意味着它不必做这个潜在的事情
昂贵的操作来查找它们。 默认情况下(不含-o)所有字段
被包含在对象中。
如果传递-1参数,则lookup只能返回1个结果。 如果
多个结果匹配或0个匹配的结果,一个错误将
退回状态将不为零。
有关允许的键列表,请参阅下面的“属性”部分。 所有
那些列为“listable”的那些可以用作过滤的关键。
重启<uuid> [-F]
重新启动虚拟机。 默认重新启动将尝试正常停止VM
当VM已停止时,它将再次被引导。 这确保了
给予VM内的进程有机会正确关闭
以尽量减少数据丢失。
对于OS VM,shutdown命令将在该区域内运行
cmdline'/ usr / sbin / shutdown -y -g 0 -i 6'将导致VM
关机后重新启动
对于KVM虚拟机,vmadmd将作为这里的帮助程序重新启动
与“stop”命令相同的方式。
如果由于某种原因你不能或不想做一个优雅的
重新启动,您可以添加'-F'参数来强制重启。 这个
重新启动将会更快,但不一定会给予任何VM
时间关闭其流程。
回滚快照<uuid> <snapname>
支持快照目前是实验性的。 它只适用于操作系统
VMS也没有其他数据集。
此命令滚动以指定的方式备份VM的数据集
当使用snapname的快照时,uuid返回到其状态
被采取。