Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

第 15 章 虚拟机

15.1. 虚拟机元素

vms 集合提供有关 Red Hat Virtualization 环境中虚拟机的信息。API 用户通过从入口点 URI 获取的 rel="vms" 链接访问此信息。
可以使用 All-Content: true 标头检索 GET 请求的其他信息。
下表显示了虚拟机资源表示法中包含的特定元素。

表 15.1. 虚拟机元素

元素 类型 Description Properties
link rel="applications" 关系 到虚拟机资源的 applications 子集合的链接,它显示虚拟机上安装的应用程序。 
link rel="disks" 关系 与虚拟机资源 的磁盘 子集合的链接。 
link rel="nics" 关系 到虚拟机资源的 nics 子集合的链接。 
link rel="numanodes" 关系 虚拟机资源的 numanodes 子集合的链接。 
link rel="cdroms" 关系 到虚拟机资源的 cdroms 子集合的链接。 
link rel="snapshots" 关系 到虚拟机资源 的快照 子集合的链接。 
link rel="tags" 关系 到虚拟机资源的 tags 子集合的链接。 
link rel="permissions" 关系 到虚拟机 权限权限 子集合的链接。 
link rel="statistics" 关系 到虚拟机资源 统计 子集合的链接。
link rel="reporteddevices"
关系
到虚拟机资源的 reporteddevices 子集合的链接。
 
link rel="watchdogs"
关系
到虚拟机资源的 watchdogs 子集合的链接。
 
link rel="sessions"
关系
到虚拟机资源的 sessions 子集合的链接。
 
type Enumerated 虚拟机类型。功能 中提供了枚举的值的列表。
status 请参见以下 虚拟机状态。
内存 整数 分配给客户机的内存量,以字节为单位。
cpu complex
定义虚拟机的 CPU 详情。拓扑 子元素设置可用于客户机的逻辑 套接字数量,以及 每个插槽的内核数。虚拟机可用的内核总数等于插槽的数量乘以每个插槽的内核。
cputune 子元素使用一系列 vcpupin 元素将虚拟 CPU 映射到物理主机 CPU。每个 vcpupin 元素都包含虚拟 CPU 属性(vcpu)和用于定义要使用的物理(cpuset)的属性。将 cpuset 设置为单个 CPU (cpuset="0")、多个 CPU (cpuset="0,2")、CPU 范围(cpuset="0-3")或具有排除的 CPU 范围(cpuset="0-3,^2")。
cpu_mode 子元素定义虚拟 CPU 与主机 CPU 的关系。它有三个值:如果没有给出任何模式,host_model 复制主机 CPU 的最佳值,host_passthrough 会将主机的所有方面传递给客户机,即使 libvirt 无法识别这些模式。但是,host_passthrough 将阻止迁移该虚拟机。
os type= 字符串,如 RHEL5WindowsXP 客户机操作系统类型。
OS 引导 dev= Enumerated 在引导元素中 dev 属性描述的 引导设备 列表。功能 中提供了枚举的值的列表。
OS 内核 字符串 为虚拟机配置的内核镜像的路径。这个选项支持直接引导 Linux 内核,而不是通过 BIOS 引导装载程序引导。
OS initrd 字符串 与之前指定内核一起使用的 initrd 镜像的路径。这个选项支持直接引导 Linux 内核,而不是通过 BIOS 引导装载程序引导。
OS cmdline 字符串 与定义的内核一起使用的内核命令行参数字符串。这个选项支持直接引导 Linux 内核,而不是通过 BIOS 引导装载程序引导。
high_availability complex 如果虚拟机或其主机崩溃,则设置为 true优先级 元素控制虚拟机重新启动的顺序。 
显示 complex
显示 类型 ( vncspice)、port 以及 监视器 的数量。allow_reconnect 布尔值指定客户端是否可以通过显示重新连接到机器。
smartcard_enabled 子元素是一个布尔值(truefalse),用于指定附加到客户端的智能卡是否传递到虚拟机。默认值为 false
 
cluster id= GUID 对虚拟机的主机集群的引用。
template id= GUID 对此虚拟机所基于的模板的引用。
domain id= GUID 对虚拟机域的引用。
start_time xsd:dateTime 格式: YYYY-MM-DDTh:mm:ss 此虚拟机启动的日期和时间。
stop_time xsd:dateTime 格式: YYYY-MM-DDTh:mm:ss 此虚拟机停止的日期和时间。
creation_time xsd:dateTime 格式: YYYY-MM-DDTh:mm:ss 创建此虚拟机的日期和时间。
origin rhev,ovirt,vmwarexen之一 此虚拟机源自的系统。
无状态 布尔值: true 或 false 如果虚拟机无状态,则为 true。无状态虚拟机包含在启动时获取的磁盘镜像的快照,并在关机时删除。这意味着状态更改在重启后不会保留。 
delete_protected 布尔值: true 或 false 如果设置为 true,则无法删除虚拟机。 
sso 字符串 对虚拟机单点登录方法的引用。包括带有 ip 属性 的方法 元素。 
placement_policy complex 为虚拟机迁移设置放置策略。需要默认的 host=关联性 (一个可 migratableuser_migratable固定)。将 host 元素留空,以设置任何首选主机。使用多个主机元素来指定集群中首选主机的子集。 
memory_policy complex 为虚拟机设置内存策略。定义主机上 保证的 最小内存量,以便虚拟机运行。 
quota id= GUID 为虚拟机设置配额。 
custom_properties complex 一组用户定义的环境变量,作为参数传递给自定义脚本。每个 custom_property 都包含 namevalue 属性。功能 中提供了枚举的值的列表。 
usb complex 定义虚拟机的 USB 策略。要求将 enabled 元素设置为布尔值,并且 type 元素设为 nativelegacy
重要
Legacy USB 选项已弃用,并将在 Red Hat Virtualization 4.1 中删除。
 
migration_downtime 整数 代表虚拟机在实时迁移期间可以停机的最大毫秒数。值 0 表示将使用 VDSM 默认值。 
cpu_profile id= GUID 对虚拟机的 cpu 配置集的引用。 
next_run_configuration 布尔值: true 或 false 如果虚拟机下次重启时将应用对虚拟机的配置进行更改,则为 true 
numa_tune_mode 字符串 引用主机 NUMA 节点的内存分配模式(交集严格首选)。 
guest_info complex 对客户机客户端信息的引用。包含带有 address= 属性的 ip 元素。
vmpool complex 对虚拟机池的引用。这个元素仅针对池的虚拟机部分出现。
timezone tz 数据库格式: Area/Location Windows 虚拟机的 Sysprep 时区设置。 
domain complex Windows 虚拟机的 Sysprep 域设置。需要 集合中的 名称 
初始化 complex
定义在启动时应用于虚拟机的值列表,使用 Cloud-Init 用于基于 Linux 的虚拟机,或 Sysprep 为基于 Windows 的虚拟机。

Cloud-Init

  • HOST_NAME :虚拟机的主机名
  • timezone :虚拟机的时区。
  • user_name :虚拟机的用户名。
  • root_password :用户的密码,如果未指定用户,则为 root 密码。
  • authorized_ssh_keys :添加到虚拟机的授权密钥文件中的SSH 密钥。您可以通过用换行符分隔每个 SSH 密钥来输入多个 SSH 密钥。
  • regenerate_ssh_keys :是否为虚拟机重新生成 SSH 密钥。可能的值为 truefalse
  • dns_serversDNS 服务器以空格分隔的列表。
  • dns_searchDNS 搜索域以空格分隔的列表。
  • nic_configurations :为虚拟机定义网络接口控制器。网络接口控制器在这个集合下被定义为 nic_configuration 对象,每个对象都指定名称、ipboot_protocolon_boot
  • custom_script :在启动时在虚拟机上运行的自定义脚本。

Sysprep

  • HOST_NAME :虚拟机的主机名
  • :虚拟机所属的域。
  • authorized_ssh_keys :添加到虚拟机的授权密钥文件中的SSH 密钥。您可以通过用换行符分隔每个 SSH 密钥来输入多个 SSH 密钥。
  • regenerate_ssh_keys :是否为虚拟机重新生成 SSH 密钥。可能的值为 truefalse
  • timezone :虚拟机的时区。
  • root_password :虚拟机的 admin 用户的密码。
  • custom_script :在启动时在虚拟机上运行的自定义脚本。
  • input_locale :用户输入的区域设置。
  • ui_language :用于用户界面元素的语言,如按钮和菜单。
  • system_locale :整个系统的区域设置。
  • user_locale :用户的区域设置。
  • active_directory_ou :虚拟机所属的 Active Directory 域中的组织单元。
  • org_name :虚拟机所属组织的名称。
有效负载 complex
定义一组 有效负载 元素,以便在引导时向虚拟机提供内容。每个 有效负载 都需要 type 属性,可以是 cdromfloppy,以及一组文件元素。各个文件元素都是 name 元素,用于指定文件的名称和位置,以及定义要发送到该文件的内容的内容。
payloads 元素供 cloud-init 功能使用。当使用 cloud-init 配置虚拟机时,会自动创建一个有效负载,并将 type 属性设置为 cd-rom,以及两个文件子元素,openstack/latest/meta_data.jsonopenstack/latest/user_data,它将配置参数传递给虚拟机。
 
status 包含以下枚举的值之一: 未分配,down,up,powering_up,powered_down,paused,migrate_from,migrate_to,unknown,not_responding,wait_for_launch,reboot_in_progress, saving_state,restoring_state , suspended ,image_illegal,image_lockedpowering_down.这些状态列在 capabilities 下的 vm_states 中。