REST API 指南
使用红帽虚拟化 REST 应用程序编程接口
摘要
ovirt-engine-api-model
代码中的文档注释生成,目前已完成。随着新内容可用,此文档的更新版本将会发布。
第 1 章 简介
Red Hat Virtualization Manager 提供表述性状态转移(REST)API。API 为软件开发人员和系统管理员提供控制标准 Web 界面之外的红帽虚拟化环境。API 有助于开发人员和管理员将红帽虚拟化环境的功能与通过标准 Hypertext 传输协议(HTTP)访问 API 的自定义脚本或外部应用程序集成。
API 的优点是:
- 广泛的客户端支持 - 任何支持 HTTP 协议的编程语言、框架或系统都可以使用 API。
- 自描述性 - 客户端应用程序需要最少了解虚拟化基础架构,因为运行时会发现许多细节。
- 基于资源的模式 - 基于资源的 REST 模式提供了管理虚拟化平台的自然方法。
这使开发人员和管理员能够:
- 与企业 IT 系统集成.
- 与第三方虚拟化软件集成.
- 执行自动维护或错误检查任务。
- 使用脚本在红帽虚拟化环境中自动执行重复任务。
本文档可用作 Red Hat Virtualization API 的参考。它旨在为开发人员和管理员提供相关说明和示例,以帮助通过 API(直接或使用提供的 SDK)利用其红帽虚拟化环境的功能。
1.1. 表述状态传输
表述性状态转移(REST) 是一种设计架构,侧重于特定服务及其表示法的资源。资源表示是对应于服务器上一个特定受管元素的重要信息抽象。客户端向位于统一资源标识符(URI)的服务器元素发送请求,并使用标准 HTTP 方法(如 GET
、POST
、PUT
和 DELETE
)执行操作。这在客户端和服务器之间提供无状态通信,每个请求都独立于任何其他请求,并且包含完成请求所需的所有信息。
1.2. API 先决条件
使用 Red Hat Virtualization API 的先决条件:
- Red Hat Virtualization Manager 联网安装,其中包括 API。
启动和接收来自 API 服务器的 HTTP 请求的客户端或编程库。例如:
- oVirt Python SDK.
- oVirt Java SDK.
- cURL 命令行工具.
- RESTClient,RESTful Web 服务的调试器.
- Hypertext 传输协议(HTTP)知识,这是用于 REST API 交互的协议。Internet 工程任务组提供注释请求(RFC),解释 Hypertext 传输协议(http://www.ietf.org/rfc/rfc2616.txt )。
- 具备可扩展标记语言(XML)或 JavaScript 对象表示法(JSON)的知识,API 用于构建资源表示。W3C 提供了 XML 的完整规范,地址为 http://www.w3.org/TR/xml。ECMA 国际提供 JSON 的免费出版物,地址为 http://www.ecma-international.org。
第 2 章 身份验证和安全
2.1. TLS/SSL 认证
红帽虚拟化 API 需要 Hypertext 传输协议安全(HTTPS) [1] 用于与客户端软件(如 SDK 和 CLI 组件)进行安全交互。这包括获取服务器使用的 CA 证书,并将其导入到客户端的证书存储中。
2.1.1. 获取 CA 证书
您可以从 Red Hat Virtualization Manager 获取 CA 证书,并使用以下方法之一将其传送到客户端机器:
- 方法 1
获取 CA 证书的首选方法是使用
openssl s_client
命令行工具与服务器执行真正的 TLS 握手,然后提取它所提供的证书。运行类似如下的命令:$ openssl s_client \ -connect myengine.example.com:443 \ -showcerts \ < /dev/null
这个命令将连接到服务器并显示类似如下的输出:
CONNECTED(00000003) depth=1 C = US, O = Example Inc., CN = myengine.example.com.23416 verify error:num=19:self signed certificate in certificate chain --- Certificate chain 0 s:/C=US/O=Example Inc./CN=myengine.example.com i:/C=US/O=Example Inc./CN=myengine.example.com.23416 -----BEGIN CERTIFICATE----- MIIEaTCCA1GgAwIBAgICEAQwDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCVVMx FTATBgNVBAoTDEV4YW1wbGUgSW5jLjEjMCEGA1UEAxMaZW5naW5lNDEuZXhhbXBs SVlJe7e5FTEtHJGTAeWWM6dGbsFhip5VXM0gfqg= -----END CERTIFICATE----- 1 s:/C=US/O=Example Inc./CN=myengine.example.com.23416 i:/C=US/O=Example Inc./CN=myengine.example.com.23416 -----BEGIN CERTIFICATE----- MIIDxjCCAq6gAwIBAgICEAAwDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCVVMx FTATBgNVBAoTDEV4YW1wbGUgSW5jLjEjMCEGA1UEAxMaZW5naW5lNDEuZXhhbXBs Pkyg1rQHR6ebGQ== -----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
和-----END CERTIFICATE-----
之间的文本显示服务器提供的证书。第一个是服务器本身的证书,最后一个是 CA 的证书。将 CA 证书(包括标记)复制到ca.crt
文件中。结果应如下所示:-----BEGIN CERTIFICATE----- MIIDxjCCAq6gAwIBAgICEAAwDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UEBhMCVVMx FTATBgNVBAoTDEV4YW1wbGUgSW5jLjEjMCEGA1UEAxMaZW5naW5lNDEuZXhhbXBs Pkyg1rQHR6ebGQ== -----END CERTIFICATE-----
重要这是获取服务器使用的 CA 证书的最可靠方法。此处描述的其余方法将在大多数情形中可用,但是如果被服务器管理员手动替换,它们将无法获得正确的 CA 证书。
- 方法 2
如果无法使用上述
的openssl s_client
方法,您可以使用命令行工具从 Red Hat Virtualization Manager 下载 CA 证书。命令行工具示例包括
curl
和wget
,它们都可在多个平台上使用。如果使用
curl
:$ curl \ --output ca.crt \ 'http://myengine.example.com/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA'
如果使用
wget
:$ wget \ --output-document ca.crt \ 'http://myengine.example.com/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA'
- 方法 3
使用 Web 浏览器导航到位于以下位置的证书:
https://myengine.example.com/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA
根据所选的浏览器,证书下载或导入浏览器的密钥存储。
-
如果浏览器下载证书 :将文件保存为
ca.crt
。 -
如果浏览器导入证书 :从浏览器的认证选项导出它,并将其保存为
ca.crt
。
-
如果浏览器下载证书 :将文件保存为
- 方法 4
登录 Red Hat Virtualization Manager,从信任存储导出证书,并将其复制到您的客户端计算机。
-
以 root 用户身份登录 Red Hat Virtualization Manager 机器
。
使用 Java
密钥工具管理
实用程序从信任存储导出证书:# keytool \ -keystore /etc/pki/ovirt-engine/.truststore \ -storepass mypass \ -exportcert \ -alias cacert \ -rfc \ -file ca.crt
这会创建一个名为
ca.crt
的证书文件。使用
scp
命令将证书复制到客户端机器:$ scp ca.crt myuser@myclient.example.com:/home/myuser/.
-
以 root 用户身份登录 Red Hat Virtualization Manager 机器
每个方法都会在您的客户端机器上产生名为 ca.crt
的证书文件。然后,您必须将此文件导入到客户端的证书存储中。
2.1.2. 将证书导入到客户端
将证书导入到客户端取决于客户端如何存储和解释证书。有关导入证书的更多信息,请参阅您的客户端文档。
2.2. Authentication
具有 Red Hat Virtualization Manager 帐户的任何用户都可以访问该 API。所有请求都必须使用 OAuth 或基本身份验证进行身份验证,如下所述。
2.2.1. OAuth 身份验证
自 Red Hat Virtualization 版本 4.0 起,首选身份验证机制为 OAuth 2.0,如 RFC 6749 所述。
OAuth 是一种复杂的协议,具有多种获取授权和访问令牌的机制。与 Red Hat Virtualization API 一起使用,唯一支持的是 Resource Owner Password Credentials Grant,如 RFC 6749 的 4.3 节所述。
您必须首先获取令牌,将用户名和密码发送到 Red Hat Virtualization Manager 单点登录服务:
POST /ovirt-engine/sso/oauth/token HTTP/1.1 Host: myengine.example.com Content-Type: application/x-www-form-urlencoded Accept: application/json
请求正文必须包含 grant_type
、scope
、username 和
password
参数:
表 2.1. OAuth 令牌请求参数
名称 | 值 |
---|---|
|
|
|
|
|
|
|
|
这些参数必须经过 URL 编码。例如,用户名中的 @
字符需要编码为 %40
。生成的请求正文将类似如下:
grant_type=password&scope=ovirt-app-api&username=admin%40internal&password=mypassword
在 OAuth RFC 中,scope
参数被描述为可选,但在将它与 Red Hat Virtualization API 搭配使用时,它的值必须是 ovirt-app-api
。
如果用户名和密码有效,Red Hat Virtualization Manager 单点登录服务将使用类似本文档的 JSON 文档进行响应:
{ "access_token": "fqbR1ftzh8wBCviLxJcYuV5oSDI=", "token_type": "bearer", "scope": "...", ... }
出于 API 身份验证目的,唯一相关的名称/值对是 access_token
。不要以任何方式操作;使用它与 SSO 服务提供的完全相同。
获取令牌后,它可用于通过在 HTTP 授权
标头中包含和使用 Bearer
方案来对 API 执行请求。例如,要获取虚拟机列表,请发送如下请求:
GET /ovirt-engine/api/vms HTTP/1.1 Host: myengine.example.com Accept: application/xml Authorization: Bearer fqbR1ftzh8wBCviLxJcYuV5oSDI=
该令牌可以多次用于多个请求,但它最终会过期。当它过期时,服务器将使用 401 HTTP 响应代码拒绝请求:
HTTP/1.1 401 Unauthorized
当发生这种情况时,需要一个新的令牌,因为 Red Hat Virtualization Manager 单点登录服务目前不支持刷新令牌。可以使用上述相同方法请求新的令牌。
2.2.2. 基本身份验证
基本身份验证只支持向后兼容,自 Red Hat Virtualization 版本 4.0 起已弃用,并将在以后的中删除。
每个请求使用 HTTP 基本身份验证 [2] 对凭据进行编码:如果请求没有包含适当的 授权
标头,服务器会发送 401 Authorization Required
响应:
HEAD /ovirt-engine/api HTTP/1.1 Host: myengine.example.com HTTP/1.1 401 Authorization Required
请求通过指定域 的授权
标头发出。使用 username@domain:password
约定在提供的凭证中对适当的 Red Hat Virtualization Manager 域和用户进行编码。
下表显示了 Base64 中编码凭据的流程。
表 2.2. 编码凭证用于 API 访问
项 | 值 |
---|---|
用户名 |
|
域 |
|
密码 |
|
未编码凭证 |
|
Base64 编码的凭证 |
|
提供 Base64 编码的凭证,如下所示:
HEAD /ovirt-engine/api HTTP/1.1 Host: myengine.example.com Authorization: Basic YWRtaW5AaW50ZXJuYWw6bXlwYXNzd29yZA== HTTP/1.1 200 OK
基本身份验证涉及潜在的敏感信息,如密码,以纯文本形式发送。API 需要 Hypertext 传输协议安全(HTTPS)进行纯文本请求的传输级别的加密。
有些 Base64 库将结果分为多行,并使用换行字符终止每行。这会破坏标头,并导致出现错误的请求。Authorization
标头需要在标头内一行上编码的凭据。
2.2.3. 身份验证会话
API 也提供身份验证会话支持。使用身份验证详细信息发送初始请求,然后使用会话 Cookie 发送所有后续请求进行身份验证。
2.2.3.1. 请求经过身份验证的会话
使用
Authorization
和Prefer: persistent-auth
标头发送请求:HEAD /ovirt-engine/api HTTP/1.1 Host: myengine.example.com Authorization: Basic YWRtaW5AaW50ZXJuYWw6bXlwYXNzd29yZA== Prefer: persistent-auth HTTP/1.1 200 OK ...
这会返回一个带有以下标头的响应:
Set-Cookie: JSESSIONID=5dQja5ubr4yvI2MM2z+LZxrK; Path=/ovirt-engine/api; Secure
记录
JSESSIONID=
值。在本例中,值为5dQja5ubr4yvI2MM2z+LZxrK
。使用
JSESSIONID=
值的Prefer: persistent-auth
和Cookie
标头发送随后的所有请求。使用经过身份验证的会话时,不再需要Authorization
标头。HEAD /ovirt-engine/api HTTP/1.1 Host: myengine.example.com Prefer: persistent-auth Cookie: JSESSIONID=5dQja5ubr4yvI2MM2z+LZxrK HTTP/1.1 200 OK ...
当不再需要会话时,请在没有
Prefer: persistent-auth
标头的情况下对服务器执行请求。HEAD /ovirt-engine/api HTTP/1.1 Host: myengine.example.com Authorization: Basic YWRtaW5AaW50ZXJuYWw6bXlwYXNzd29yZA== HTTP/1.1 200 OK ...
第 3 章 常见概念
3.1. 类型
API 使用类型概念来描述接受和返回的不同对象类型。
有三种相关的类型:
- 原语类型
- 描述简单对象种类,如字符串或 整数。
- 枚举类型
- 描述有效值列表,如 VmStatus 或 DiskFormat。
- 结构化类型
- 描述结构化对象,具有多个属性和链接,如 Vm 或 Disk。
3.2. 识别的类型
API 使用的许多类型都代表有标识的对象,它们具有唯一标识符并且独立于其他对象。用于描述这些对象的类型扩展了 Identified 类型,其中包含以下常用属性集合:
属性 | 类型 | 描述 |
---|---|---|
|
虚拟化基础架构中的每个对象包含一个 | |
| 对象的规范位置作为绝对路径。 | |
|
用户提供的对象的人类可读名称。 | |
| 免费的用户提供对象的人类可读描述。 |
目前,对于大多数类型的对象,id
属性实际上是一个随机生成的 UUID,但这是一个实施细节,用户不应依赖它,因为它将来可能会有所变化。相反,用户应该假定这些标识符只是字符串。
3.3. 对象(object)
对象是 API 支持的类型的单独实例。例如,标识符为 123 的虚拟机 是
Vm 类型的对象。
3.4. 集合
集合是一组同类型的对象。
3.5. 表示
在客户端和服务器之间传输对象时,需要表示对象的状态。该 API 支持 XML 和 JSON 作为对象状态的一种表示,包括用于输入和输出的对象。
3.5.1. XML 表述
对象的 XML 表示法包含与对象类型对应的 XML 元素、id
和 href
属性的 XML 属性,以及其余属性的嵌套 XML 元素。例如,虚拟机的 XML 表述如下:
<vm id="123" href="/ovirt-engine/api/vms/123"> <name>myvm</name> <description>My VM</description> <memory>1073741824</memory> ... </vm>
对象集合的 XML 表示由 XML 元素组成,以对象类型命名,以复数表示。这包含集合对象的表示。例如,虚拟机集合的 XML 表述如下:
<vms> <vm id="123" href="/ovirt-engine/api/vms/123"> <name>yourvm</name> <description>Your VM</description> <memory>1073741824</memory> ... </vm> <vm id="456" href="/ovirt-engine/api/vms/456"> <name>myname</name> <description>My description</description> <memory>2147483648</memory> ... </vm> ... </vms>
在对象 XML 表示中,id
和 href
属性是唯一以 XML 属性表示的属性,其余则表示为嵌套的 XML 元素。
3.5.2. JSON 表示
对象的 JSON 表示形式包含含有各个属性(包括 id
和 href
)的名称/值对的 JSON 文档。例如,虚拟机的 JSON 表示形式如下:
{ "id": "123", "href": "/ovirt-engine/api/vms/123", "name": "myvm", "description": "My VM", "memory": 1073741824, ... }
对象集合的 JSON 表示形式包含一个 JSON 文档,包含一个名称/值对(以单数形式命名对象类型),后者包含一个数组,其中包含集合对象的表示形式。例如,虚拟机集合的 JSON 代表形式如下:
{ "vm": [ { "id": "123", "href": "/ovirt-engine/api/vms/123", "name": "myvm", "description": "My VM", "memory": 1073741824, ... }, { "id": "456", "href": "/ovirt-engine/api/vms/456", "name": "yourvm", "description": "Your VM", "memory": 2147483648, ... }, ] }
3.6. 服务
服务是负责检索、添加更新、删除和执行 API 支持的对象操作的服务器的一部分。
有两种相关的服务:
每一服务都可通过服务器中的特定路径访问。例如,可以通过路径 /vms
在 中管理系统中可用的虚拟机集合的服务,以及管理虚拟机 123 的服务可通过路径 /vms/123
获取
。
所有类型的服务都具有一组方法,表示它们可以执行的操作。管理对象集合的服务通常具有 列表
和 添加
方法。管理特定对象的服务通常具有 get
、update和
remove
方法。此外,服务也可能具有代表较少常见操作的操作方法。例如,Vm 服务具有一个用于启动虚拟机的 start 方法。
对于更常用的方法,方法名称和 HTTP 方法名称之间存在直接映射:
方法名称 | HTTP 方法 |
---|---|
| POST |
| GET |
| GET |
| PUT |
| 删除 |
HTTP 请求中使用的路径是服务的路径,其前缀为 /ovirt-engine/api
。
例如,列出
虚拟机的请求应如下所示,使用 HTTP GET
方法和路径 /vms
:
GET /ovirt-engine/api/vms
对于操作方法,HTTP 方法始终为 POST
,方法的名称作为后缀添加到路径中。例如,启动虚拟机 123 的请求 应
如下所示,使用 HTTP POST
方法和路径 /vms/123/start
:
POST /ovirt-engine/api/vms/123/start
每种方法具有一组参数。
参数分为两类:
- main 参数
-
main 参数对应检索、添加或更新的对象或集合。这只适用于
add
、get
、列表
和更新
方法,每个方法正好有一个这样的主参数。 - 辅助参数
- 其余的参数.
例如,添加虚拟机的操作(请参阅 此处)具有三个参数:vm 、
克隆和 clone
_permissions
。主要参数是 vm
,因为它描述了要添加的对象。clone
和 clone_permissions
参数是辅助参数。
用于输入的主要参数必须包含在 HTTP 请求的正文中。例如,在添加虚拟机时,类型为 Vm 的 vm
参数必须包含在请求正文中。因此,添加虚拟机的完整请求(包括所有 HTTP 详情)必须如下所示:
POST /ovirt-engine/api/vms HTTP/1.1 Host: myengine.example.com Authorization: Bearer fqbR1ftzh8wBCviLxJcYuV5oSDI= Content-Type: application/xml Accept: application/xml <vm> <name>myvm</name> <description>My VM</description> <cluster> <name>Default</name> </cluster> <template> <name>Blank</name> </template> </vm>
当用于输出时,主要参数包含在响应正文中。例如,添加虚拟机时,vm
参数将包含在响应正文中。因此,完整的响应正文如下所示:
HTTP/1.1 201 Created Content-Type: application/xml <vm href="/ovirt-engine/api/vms/123" id="123"> <name>myvm</name> <description>My VM</description> ... </vm>
辅助参数仅允许进行输入(操作方法除外,稍后介绍),且必须作为查询参数包含。例如,当添加将 clone
参数设置为 true
的虚拟机时,完整的请求必须如下所示:
POST /ovirt-engine/api/vms?clone=true HTTP/1.1 Host: myengine.example.com Authorization: Bearer fqbR1ftzh8wBCviLxJcYuV5oSDI= Content-Type: application/xml Accept: application/xml <vm> <name>myvm</name> <description>My VM</description> <cluster> <name>Default</name> </cluster> <template> <name>Blank</name> </template> </vm>
操作方法仅具有次要参数。它们可用于输入和输出,并且它们应包含在请求正文中,并用 action
元素打包。例如,用于启动虚拟机的操作方法(请参阅 此处)有一个 vm
参数,用于描述应当如何启动虚拟机,以及用于指定是否应使用 cloud-init 参数来配置客户机操作系统 的 use_cloud_ init
参数。因此,在使用 XML 时,使用 cloud-init 启动虚拟机 123
的完整请求将如下所示:
POST /ovirt-engine/api/vms/123/start HTTP/1.1 Host: myengine.example.com Authorization: Bearer fqbR1ftzh8wBCviLxJcYuV5oSDI= Content-Type: application/xml Accept: application/xml <action> <use_cloud_init>true</use_cloud_init> <vm> <initialization> <nic_configurations> <nic_configuration> <name>eth0</name> <on_boot>true</on_boot> <boot_protocol>static</boot_protocol> <ip> <address>192.168.0.100</address> <netmask>255.255.255.0</netmask> <gateway>192.168.0.1</netmask> </ip> </nic_configuration> </nic_configurations> <dns_servers>192.168.0.1</dns_servers> </initialization> </vm> </action>
3.7. 搜索
某些服务的列表
方法有一个 搜索
参数,可用于指定搜索条件。使用时,服务器将仅返回满足这些条件的集合中的对象。例如,以下请求将仅返回名为 myvm
的虚拟机:
GET /ovirt-engine/api/vms?search=name%3Dmyvm
3.7.1. 最大结果参数
使用 max
参数限制返回的对象数量。例如,无论系统中有多少可用的虚拟机,以下请求将仅返回一个虚拟机:
GET /ovirt-engine/api/vms?max=1
没有 max
参数的搜索请求将返回所有对象。建议指定 max
参数,以减少请求对系统整体性能的影响。
3.7.2. 问题单敏感度
默认情况下,查询不区分大小写。例如,以下请求将返回名为 myvm
、MyVM 和
的虚拟机:
MYVM
GET /ovirt-engine/api/vms?search=name%3Dmyvm
可选的 区分大小写
的布尔值参数可用于更改此冲突。例如,要完全获取名为 myhost
的虚拟机,而不是 MyHost
或 MYHOST
,请发送如下请求:
GET /ovirt-engine/api/vms?search=name%3D=myvm&case_sensitive=true
3.7.3. 搜索语法
搜索
参数使用与 Red Hat Virtualization 查询语言相同的语法:
(criteria) [sortby (element) asc|desc]
sortby 子
句是可选的,仅当对结果进行排序时才需要。
搜索查询示例:
集合(Collection) | 标准 | 结果 |
---|---|---|
|
|
返回正在运行虚拟机的所有主机的列表 |
|
| 返回在指定域上运行的所有虚拟机的列表。 |
|
|
返回属于用户名为 name |
|
|
返回所有严重级别高于 |
|
|
返回所有严重级别高于 |
搜索
参数的值必须经过 URL 编码,才能翻译保留的字符,如 operators 和空格。例如,等号应编码为 %3D
:
GET /ovirt-engine/api/vms?search=name%3Dmyvm
3.7.4. 通配符
星号可用作值的一部分,以指示任何字符串匹配,包括 emtpy 字符串。例如,以下请求将返回名称以 myvm 开头的所有虚拟机,如
myvm
、myvm2、myvm
a 或
myvm-webserver
:
GET /ovirt-engine/api/vms?search=name%3Dmyvm*
3.7.5. 分页
有些 Red Hat Virtualization 环境包含大量对象。通过一个请求检索所有这些请求并不实际,会损害性能。为了允许通过页面检索它们,搜索
参数支持可选 page 子
句。这与 max
参数相结合,是分页的基础。例如,要获得虚拟机的第一页,页面大小为 10 个虚拟机,请按如下所示发送请求:
GET /ovirt-engine/api/vms?search=page%201&max=10
搜索参数是 URL 编码的,搜索
参数的实际值在编码前是第 1 页
,因此这实际上正在请求第一页。
增加 页面
值以检索下一页:
GET /ovirt-engine/api/vms?search=page%202&max=10
page
子句可以和 search
参数内的其他子句搭配使用。例如,以下请求将返回虚拟机的第二页,但按名称排序:
GET /ovirt-engine/api/vms?search=sortby%20name%20page%202&max=10
API 是无状态的;不能在不同请求之间保留状态,因为所有请求都是相互独立的。因此,如果您的请求之间发生状态更改,则页面结果可能会不一致。
例如,如果您从虚拟机列表中请求特定页面,并且在请求下一页之前创建或删除虚拟机,您的结果可能缺失,或者包含重复项。
3.8. 以下链接
API 返回对相关对象的引用作为链接。例如,当检索虚拟机时,它包含到其磁盘附加和网络接口卡的链接:
<vm id="123" href="/ovirt-engine/api/vms/123"> ... <link rel="diskattachments" href="/ovirt-engine/api/vms/123/diskattachments"/> <link rel="nics" href="/ovirt-engine/api/vms/123/nics"/> ... </vm>
这些链接对象的完整描述可通过发送单独的请求来检索 :
GET /ovirt-engine/api/vms/123/diskattachments GET /ovirt-engine/api/vms/123/nics
但在某些情况下,使用 API 检索同一请求中链接的信息更为方便。例如,当额外的网络往返会带来不便的开销时,或者当多个请求以不接受的方式使应用代码变得复杂时,这很有用。对于这些用例,API 提供了一个 以下参数
,它允许应用仅使用一个请求来检索链接的信息。
以下 参数的值
是由逗号分隔的字符串列表。这些字符串各自是链接的对象的路径。例如,要检索磁盘附件和上例中的 NIC,请求应类似如下:
GET /ovirt-engine/api/vms/123?follow=disk_attachments,nics
这将返回类似如下的响应:
<vm id="123" href="/ovirt-engine/api/vms/123"> ... <disk_attachments> <disk_attachment id="456" href="/ovirt-engine/api/vms/123/diskattachments/456"> <active>true</active> <bootable>true</bootable> <interface>virtio_scsi</interface> <pass_discard>false</pass_discard> <read_only>false</read_only> <uses_scsi_reservation>false</uses_scsi_reservation> <disk id="789" href="/ovirt-engine/api/disks/789"/> </disk_attachment> ... </disk_attacments> <nics> <nic id="234" href="/ovirt-engine/api/vms/123/nics/234"> <name>eth0</name> <interface>virtio</interface> <linked>true</linked> <mac> <address>00:1a:4a:16:01:00</address> </mac> <plugged>true</plugged> </nic> ... </nics> ... </vm>
链接对象的路径可以是单个词语,如上例中所示,也可以是一系列词语(用点分隔)来请求嵌套数据。例如,上例使用 disk_attachments
来检索磁盘附加的完整描述,但每个磁盘附加包含一个指向磁盘的链接,而这并未 遵循。要追踪到磁盘的链接,可以使用以下请求:
GET /ovirt-engine/api/vms/123?follow=disk_attachments.disk
这将产生以下响应:
<vm id="123" href="/ovirt-engine/api/vms/123"> <disk_attachments> <disk_attachment id="456" href="/ovirt-engine/api/vms/123/diskattachments/456"> <active>true</active> <bootable>true</bootable> <interface>virtio_scsi</interface> <pass_discard>false</pass_discard> <read_only>false</read_only> <uses_scsi_reservation>false</uses_scsi_reservation> <disk id="789" href="/ovirt-engine/api/disks/789"> <name>mydisk</name> <description>My disk</description> <actual_size>0</actual_size> <format>raw</format> <sparse>true</sparse> <status>ok</status> <storage_type>image</storage_type> <total_size>0</total_size> ... </disk> </disk_attachment> ... </disk_attachments> ... </vm>
路径可根据需要深层进行。例如,也要获取磁盘统计信息:
GET /ovirt-engine/api/vms/123?follow=disk_attachments.disk.statistics
可以组合多个路径元素和多个路径。例如,要获取磁盘附件和网络接口卡,以及它们的统计信息:
GET /ovirt-engine/api/vms/123?follow=disk_attachments.disk.statistics,nics.statistics
几乎所有检索对象的操作都支持 以下参数
,但确保明确检查参考文档,因为某些操作可能不支持它,或者可能会提供有关如何使用它来获取最佳性能的建议。
使用以下 参数
,将开销从客户端移到服务器端。当您请求其他数据时,服务器必须获取并将其与基本数据合并。这在服务器端消耗 CPU 和内存,并且大部分情况下需要额外的数据库查询。这可能会对服务器的性能造成负面影响,特别是在大规模环境中。确保在真实的环境中测试您的应用程序,并且仅
在合理时才使用以下参数。
3.9. 权限
管理单个对象的许多服务都提供对 权限
服务的引用,该服务管理分配给该对象的权限。每个权限包含指向用户或组、角色和对象的链接。例如,可以检索分配给特定虚拟机的权限来发送如下请求:
GET /ovirt-engine/api/vms/123/permissions
响应正文如下所示:
<permissions> <permission id="456" href="/ovirt-engien/api/vms/123/permissions/456"> <user id="789" href="/ovirt-engine/api/users/789"/> <role id="abc" href="/ovirt-engine/api/roles/abc"/> <vm id="123" href="/ovirt-engine/api/vms/123"/> </permission> ... </permissions>
向发送 POST
请求的对象添加权限,并将权限表示给此服务。每个新权限都需要一个角色和用户。
3.10. 处理错误
某些错误需要在标准 HTTP 状态代码之外做进一步的说明。例如,API 报告 响应
正文中失败的对象状态更新或操作失败。此错误包含 原因和
详细信息
属性。例如,当服务器收到在没有强制 name
属性的情况下创建虚拟机的请求时,它将使用以下 HTTP 响应行响应:
HTTP/1.1 400 Bad Request
和以下响应正文:
<fault> <reason>Incomplete parameters</reason> <detail>Vm [name] required for add</detail> </fault>
第 4 章 快速入门示例
本节中的示例演示了如何使用 REST API 设置基本红帽虚拟化环境并创建虚拟机。除了标准先决条件外,这些示例还需要以下内容:
- 联网和配置红帽虚拟化安装。
- 包含您要安装的虚拟机操作系统的 ISO 文件。本章使用 CentOS 7 作为安装 ISO 示例。
API 示例使用 curl
来演示客户端应用的 API 请求。您可以使用任何发送 HTTP 请求的应用。
本例中的 HTTP 请求标头省略 Host
和 Authorization
标头。但是,这些字段是必需的,需要特定于 Red Hat Virtualization 安装的数据。
curl
示例使用 admin@internal
作为用户名,my password 作为密码
,/etc/pki/ovirt-engine/ca.pem
用作证书位置,myengine.example.com
作为主机名。您必须将它们替换为您的环境的正确值。
Red Hat Virtualization 会为每个资源生成唯一标识符,用于 id
属性。本例中的标识符代码将与 Red Hat Virtualization 环境中的标识符代码不同。
在许多示例中,为了简洁起见,API 返回的结果的一些属性已被省略。例如,请参阅集群引用来获取属性的完整列表。
4.1. 访问 API 入口点
以下请求检索 API 版本 4 的主要入口点表示:
GET /ovirt-engine/api HTTP/1.1 Version: 4 Accept: application/xml
同一请求,但使用 /v4
URL 前缀而不是 Version
标头:
GET /ovirt-engine/api/v4 HTTP/1.1 Accept: application/xml
同一个请求,使用 curl
命令:
curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --request GET \ --header 'Version: 4' \ --header 'Accept: application/xml' \ --user 'admin@internal:mypassword' \ https://myengine.example.com/ovirt-engine/api
结果是一个类型为 Api 的对象:
<api> <link href="/ovirt-engine/api/clusters" rel="clusters"/> <link href="/ovirt-engine/api/datacenters" rel="datacenters"/> ... <product_info> <name>oVirt Engine</name> <vendor>ovirt.org</vendor> <version> <build>0</build> <full_version>4.0.0-0.0.el7</full_version> <major>4</major> <minor>0</minor> <revision>0</revision> </version> </product_info> <special_objects> <blank_template href="..." id="..."/> <root_tag href="..." id="..."/> </special_objects> <summary> <hosts> <active>23</active> <total>30</total> </hosts> <storage_domains> <active>5</active> <total>6</total> </storage_domains> <users> <active>12</active> <total>102</total> </users> <vms> <active>253</active> <total>545</total> </vms> </summary> <time>2016-10-06T15:38:18.548+02:00</time> </api>
如果未使用标头和 URL 前缀,服务器将自动选择版本。默认为版本 4
。您可以使用 ENGINE_API_DEFAULT_VERSION
配置参数更改默认版本:
# echo "ENGINE_API_DEFAULT_VERSION=3" > \ /etc/ovirt-engine/engine.conf.d/99-set-default-version.conf # systemctl restart ovirt-engine
更改此参数会影响未明确指定版本的 API 的所有用户。
入口点为用户提供虚拟环境中集合的链接。每个集合链接的 Therel 属性
都会为每个链接提供一个参考点。本例中的下一步将检查数据中心集合,该集合可通过 datacenters
链接使用。
入口点还包含其他数据,如 product_info、special_objects 和 summary。本例之外的章节将对此数据进行阐述。
4.2. 列出数据中心
Red Hat Virtualization 在安装时创建一个默认
数据中心。本例使用 Default
数据中心作为虚拟环境的基础。
以下请求检索数据中心的表示法:
GET /ovirt-engine/api/datacenters HTTP/1.1 Accept: application/xml
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --request GET \ --header 'Version: 4' \ --header 'Accept: application/xml' \ --user 'admin@internal:mypassword' \ https://myengine.example.com/ovirt-engine/api/datacenters
结果将是 DataCenter 类型的对象列表:
<data_centers> <data_center href="/ovirt-engine/api/datacenters/001" id="001"> <name>Default</name> <description>The default Data Center</description> <link href="/ovirt-engine/api/datacenters/001/clusters" rel="clusters"/> <link href="/ovirt-engine/api/datacenters/001/storagedomains" rel="storagedomains"/> ... <local>false</local> <quota_mode>disabled</quota_mode> <status>up</status> <supported_versions> <version> <major>4</major> <minor>0</minor> </version> </supported_versions> <version> <major>4</major> <minor>0</minor> </version> </data_center> ... </data_centers>
请注意您的 Default
数据中心的 ID
。它相对于虚拟环境的其他资源标识此数据中心。
数据中心还包含指向管理附加到数据中心的存储域的服务的链接 :
<link href="/ovirt-engine/api/datacenters/001/storagedomains" rel="storagedomains"/>
该服务用于从主 storagedomains
集合中附加存储域,本例稍后将对此进行阐述。
4.3. 列出主机集群
Red Hat Virtualization 在安装时创建一个默认
主机集群。本例使用 Default
集群对 Red Hat Virtualization 环境中的资源进行分组。
以下请求检索集群集合的表示形式:
GET /ovirt-engine/api/clusters HTTP/1.1 Accept: application/xml
同一个请求,使用 curl
命令:
curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --request GET \ --header 'Version: 4' \ --header 'Accept: application/xml' \ --user 'admin@internal:mypassword' \ https://myengine.example.com/ovirt-engine/api/clusters
结果将是类型为 Cluster 的对象列表:
<clusters> <cluster href="/ovirt-engine/api/clusters/002" id="002"> <name>Default</name> <description>The default server cluster</description> <link href="/ovirt-engine/api/clusters/002/networks" rel="networks"/> <link href="/ovirt-engine/api/clusters/002" rel="permissions"/> ... <cpu> <architecture>x86_64</architecture> <type>Intel Nehalem Family</type> </cpu> <version> <major>4</major> <minor>0</minor> </version> <data_center href="/ovirt-engine/api/datacenters/001" id="001"/> </cluster> ... </clusters>
请注意 默认
主机集群的 id
。它根据虚拟环境的其他资源标识此主机集群。
Default
集群通过使用 data_center 链接的
关联:
id
和 href
属性的关系,与 Default
数据中心
<data_center href="/ovirt-engine/api/datacenters/001" id="001"/>
网络
链接是对管理与此集群关联的网络的 服务的 引用。下一节将更详细地阐述网络集合。
4.4. 列出逻辑网络
Red Hat Virtualization 在安装时创建一个默认的 ovirtmgmt
网络。此网络充当红帽虚拟化管理器访问主机的管理网络。
此网络与 Default
集群关联,是 Default
数据中心的成员。本例使用 ovirtmgmt
网络来连接虚拟机。
以下请求检索逻辑网络列表:
GET /ovirt-engine/api/networks HTTP/1.1 Accept: application/xml
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --request GET \ --header 'Version: 4' \ --header 'Accept: application/xml' \ --user 'admin@internal:mypassword' \ https://myengine.example.com/ovirt-engine/api/networks
<networks> <network href="/ovirt-engine/api/networks/003" id="003"> <name>ovirtmgmt</name> <description>Management Network</description> <link href="/ovirt-engine/api/networks/003/permissions" rel="permissions"/> <link href="/ovirt-engine/api/networks/003/vnicprofiles" rel="vnicprofiles"/> <link href="/ovirt-engine/api/networks/003/networklabels" rel="networklabels"/> <mtu>0</mtu> <stp>false</stp> <usages> <usage>vm</usage> </usages> <data_center href="/ovirt-engine/api/datacenters/001" id="001"/> </network> ... </networks>
ovirtmgmt
网络通过利用数据中心的 ID 的关系附加到 Default
数据中心
。
ovirtmgmt
网络还通过集群网络子集合中的关系附加到 Default
集群。
4.5. 列出主机
本示例检索主机列表,并显示在虚拟环境中注册的名为 myhost
的主机:
GET /ovirt-engine/api/hosts HTTP/1.1 Accept: application/xml
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --request GET \ --header 'Version: 4' \ --header 'Accept: application/xml' \ --user 'admin@internal:mypassword' \ https://myengine.example.com/ovirt-engine/api/hosts
<hosts> <host href="/ovirt-engine/api/hosts/004" id="004"> <name>myhost</name> <link href="/ovirt-engine/api/hosts/004/nics" rel="nics"/> ... <address>node40.example.com</address> <cpu> <name>Intel Core Processor (Haswell, no TSX)</name> <speed>3600</speed> <topology> <cores>1</cores> <sockets>2</sockets> <threads>1</threads> </topology> </cpu> <memory>8371830784</memory> <os> <type>RHEL</type> <version> <full_version>7 - 2.1511.el7.centos.2.10</full_version> <major>7</major> </version> </os> <port>54321</port> <status>up</status> <cluster href="/ovirt-engine/api/clusters/002" id="002"/> </host> ... </hosts>
请注意主机的 id
。它根据虚拟环境的其他资源标识此主机。
此主机是 Default
集群的成员,访问 nics
子集合显示此主机已连接到 ovirtmgmt
网络。
4.6. 创建 NFS 数据存储
NFS 数据存储域是连接到数据中心的 NFS 共享,为虚拟 guest 映像提供存储。创建新存储域需要 POST 请求
,其中包含存储域表示法,并发送到存储域集合的 URL。
在存储域上,您可以默认启用 wipe 后删除选项。要配置此功能,请在 POST 请求中指定 wipe_after_delete
。可以在创建域后编辑此选项,但是这样做不会在删除已存在的磁盘属性后更改擦除。
请求应类似如下:
POST /ovirt-engine/api/storagedomains HTTP/1.1 Accept: application/xml Content-type: application/xml
请求正文应类似如下:
<storage_domain> <name>mydata</name> <type>data</type> <description>My data</description> <storage> <type>nfs</type> <address>mynfs.example.com</address> <path>/exports/mydata</path> </storage> <host> <name>myhost</name> </host> </storage_domain>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <storage_domain> <name>mydata</name> <description>My data</description> <type>data</type> <storage> <type>nfs</type> <address>mynfs.example.com</address> <path>/exports/mydata</path> </storage> <host> <name>myhost</name> </host> </storage_domain> ' \ https://myengine.example.com/ovirt-engine/api/storagedomains
服务器使用主机 myhost
创建名为 my data
的 NFS 数据存储域,其导出路径为 mynfs.example.com:/exports/mydata
。该 API 还返回以下表示新创建的存储域资源(类型为 StorageDomain):
<storage_domain href="/ovirt-engine/api/storagedomains/005" id="005"> <name>mydata</name> <description>My data</description> <available>42949672960</available> <committed>0</committed> <master>false</master> <status>unattached</status> <storage> <address>mynfs.example.com</address> <path>/exports/mydata</path> <type>nfs</type> </storage> <storage_format>v3</storage_format> <type>data</type> <used>9663676416</used> </storage_domain>
4.7. 创建 NFS ISO 存储
NFS ISO 存储域是连接到数据中心的已挂载 NFS 共享,为 DVD/CD-ROM ISO 和虚拟软盘(VFD)镜像文件提供存储。创建新存储域需要 POST 请求
,其中包含存储域表示法,并将其发送到存储域集合的 URL:
请求应类似如下:
POST /ovirt-engine/api/storagedomains HTTP/1.1 Accept: application/xml Content-type: application/xml
请求正文应类似如下:
<storage_domain> <name>myisos</name> <description>My ISOs</description> <type>iso</type> <storage> <type>nfs</type> <address>mynfs.example.com</address> <path>/exports/myisos</path> </storage> <host> <name>myhost</name> </host> </storage_domain>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <storage_domain> <name>myisos</name> <description>My ISOs</description> <type>iso</type> <storage> <type>nfs</type> <address>mynfs.example.com</address> <path>/exports/myisos</path> </storage> <host> <name>myhost</name> </host> </storage_domain> ' \ https://myengine.example.com/ovirt-engine/api/storagedomains
服务器使用主机 myhost
创建名为 myisos
的 NFS ISO 存储域,其导出路径为 mynfs.example.com:/exports/myisos
。该 API 还返回以下表示新创建的存储域资源(类型为 StorageDomain):
<storage_domain href="/ovirt-engine/api/storagedomains/006" id="006"> <name>myiso</name> <description>My ISOs</description> <available>42949672960</available> <committed>0</committed> <master>false</master> <status>unattached</status> <storage> <address>mynfs.example.com</address> <path>/exports/myisos</path> <type>nfs</type> </storage> <storage_format>v1</storage_format> <type>iso</type> <used>9663676416</used> </storage_domain>
4.8. 将存储域附加到数据中心
以下示例将 mydata
和 myisos
存储域附加到 Default
数据中心。
要附加 mydata
存储域,请发送类似如下的请求:
POST /ovirt-engine/api/datacenters/001/storagedomains HTTP/1.1 Accept: application/xml Content-type: application/xml
这样的请求正文:
<storage_domain> <name>mydata</name> </storage_domain>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <storage_domain> <name>mydata</name> </storage_domain> ' \ https://myengine.example.com/ovirt-engine/api/datacenters/001/storagedomains
要附加 myisos
存储域,请发送类似如下的请求:
POST /ovirt-engine/api/datacenters/001/storagedomains HTTP/1.1 Accept: application/xml Content-type: application/xml
这样的请求正文:
<storage_domain> <name>myisos</name> </storage_domain>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <storage_domain> <name>myisos</name> </storage_domain> ' \ https://myengine.example.com/ovirt-engine/api/datacenters/001/storagedomains
4.9. 创建虚拟机
以下示例使用虚拟环境的空白模板为基础,在 Default
集群上创建一个名为 myvm
的虚拟机。该请求还将虚拟机的内存定义为 512 MiB,并将启动设备设置为虚拟硬盘。
请求应包含类型为 Vm 的对象,用于描述要创建的虚拟机:
POST /ovirt-engine/api/vms HTTP/1.1 Accept: application/xml Content-type: application/xml
请求正文应类似如下:
<vm> <name>myvm</name> <description>My VM</description> <cluster> <name>Default</name> </cluster> <template> <name>Blank</name> </template> <memory>536870912</memory> <os> <boot> <devices> <device>hd</device> </devices> </boot> </os> </vm>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <vm> <name>myvm</name> <description>My VM</description> <cluster> <name>Default</name> </cluster> <template> <name>Blank</name> </template> <memory>536870912</memory> <os> <boot> <devices> <device>hd</device> </devices> </boot> </os> </vm> ' \ https://myengine.example.com/ovirt-engine/api/vms
响应正文将是 Vm 类型的对象:
<vm href="/ovirt-engine/api/vms/007" id="007"> <name>myvm</name> <link href="/ovirt-engine/api/vms/007/diskattachments" rel="diskattachments"/> <link href="/ovirt-engine/api/vms/007/nics" rel="nics"/> ... <cpu> <architecture>x86_64</architecture> <topology> <cores>1</cores> <sockets>1</sockets> <threads>1</threads> </topology> </cpu> <memory>1073741824</memory> <os> <boot> <devices> <device>hd</device> </devices> </boot> <type>other</type> </os> <type>desktop</type> <cluster href="/ovirt-engine/api/clusters/002" id="002"/> <status>down</status> <original_template href="/ovirt-engine/api/templates/000" id="00"/> <template href="/ovirt-engine/api/templates/000" id="000"/> </vm>
4.10. 创建虚拟机 NIC
以下示例创建一个虚拟网络接口,将示例虚拟机连接到 ovirtmgmt
网络。
请求应类似如下:
POST /ovirt-engine/api/vms/007/nics HTTP/1.1 Content-Type: application/xml Accept: application/xml
请求正文应包含类型 Nic 描述要创建的 NIC 的对象:
<nic> <name>mynic</name> <description>My network interface card</description> </nic>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <nic> <name>mynic</name> <description>My network interface card</description> </nic> ' \ https://myengine.example.com/ovirt-engine/api/vms/007/nics
4.11. 创建虚拟机磁盘
以下示例为示例虚拟机创建一个 8 GiB 写时复制磁盘。
请求应类似如下:
POST /ovirt-engine/api/vms/007/diskattachments HTTP/1.1 Content-Type: application/xml Accept: application/xml
请求正文应该是类型为 DiskAttachment 的对象,描述磁盘以及如何将其附加到虚拟机:
<disk_attachment> <bootable>false</bootable> <interface>virtio</interface> <active>true</active> <disk> <description>My disk</description> <format>cow</format> <name>mydisk</name> <provisioned_size>8589934592</provisioned_size> <storage_domains> <storage_domain> <name>mydata</name> </storage_domain> </storage_domains> </disk> </disk_attachment>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <disk_attachment> <bootable>false</bootable> <interface>virtio</interface> <active>true</active> <disk> <description>My disk</description> <format>cow</format> <name>mydisk</name> <provisioned_size>8589934592</provisioned_size> <storage_domains> <storage_domain> <name>mydata</name> </storage_domain> </storage_domains> </disk> </disk_attachment> ' \ https://myengine.example.com/ovirt-engine/api/vms/007/diskattachments
storage_domains
属性告知 API 将磁盘存储在 mydata
存储域中。
4.12. 将 ISO 镜像附加到虚拟机
下面的虚拟机的引导介质需要一个 CD-ROM 或者 DVD ISO 镜像进行操作系统安装。这个示例使用 CentOS 7 镜像。
ISO 映像必须在 myisos
ISO 域中提供,供虚拟机使用。您可以使用 第 6.124 节 “ImageTransfers” 创建镜像传输,使用 第 6.123 节 “ImageTransfer” 上传 ISO 镜像。
上传 ISO 镜像后,API 可用于从 ISO 存储域请求文件列表:
GET /ovirt-engine/api/storagedomains/006/files HTTP/1.1 Accept: application/xml
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request GET \ --header 'Version: 4' \ --header 'Accept: application/xml' \ https://myengine.example.com/ovirt-engine/api/storagedomains/006/files
服务器返回以下 File 类型的对象列表,每个可用 ISO(或软盘)镜像一个对象:
<files> <file href="..." id="CentOS-7-x86_64-Minimal.iso"> <name>CentOS-7-x86_64-Minimal.iso</name> </file> ... </files>
API 用户将 CentOS-7-x86_64-Minimal.iso
附加到示例虚拟机。连接 ISO 映像等同于在管理或用户门户应用程序中使用 Change CD 按钮。
请求应类似如下:
PUT /ovirt-engine/api/vms/007/cdroms/00000000-0000-0000-0000-000000000000 HTTP/1.1 Accept: application/xml Content-type: application/xml
请求正文应该是类型为 Cdrom 的对象,它包含一个内 文件
属性,以指示 ISO(或软盘)镜像的标识符:
<cdrom> <file id="CentOS-7-x86_64-Minimal.iso"/> </cdrom>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request PUT \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <cdrom> <file id="CentOS-7-x86_64-Minimal.iso"/> </cdrom> ' \ https://myengine.example.com/ovirt-engine/api/vms/007/cdroms/00000000-0000-0000-0000-000000000000
如需了解更多详细信息,请参阅管理虚拟机 CD-ROMS 的服务文档。
4.13. 启动虚拟机
虚拟环境已经完成,虚拟机包含运行所需的所有组件。本例使用 start 方法启动虚拟机。
请求应类似如下:
POST /ovirt-engine/api/vms/007/start HTTP/1.1 Accept: application/xml Content-type: application/xml
请求正文应类似如下:
<action> <vm> <os> <boot> <devices> <device>cdrom</device> </devices> </boot> </os> </vm> </action>
同一个请求,使用 curl
命令:
# curl \ --cacert '/etc/pki/ovirt-engine/ca.pem' \ --user 'admin@internal:mypassword' \ --request POST \ --header 'Version: 4' \ --header 'Content-Type: application/xml' \ --header 'Accept: application/xml' \ --data ' <action> <vm> <os> <boot> <devices> <device>cdrom</device> </devices> </boot> </os> </vm> </action> ' \ https://myengine.example.com/ovirt-engine/api/vms/007/start
额外请求正文将虚拟机的引导设备设置为 CD-ROM 仅用于此启动。这可让虚拟机从附加的 ISO 镜像安装操作系统。引导设备恢复为磁盘以进行以后的所有引导。
第 5 章 Requests
本节枚举 API 中提供的所有请求。
- POST /affinitylabels
- GET /affinitylabels
- GET /affinitylabels/{label:id}
- PUT /affinitylabels/{label:id}
- DELETE /affinitylabels/{label:id}
- POST /affinitylabels/{label:id}/hosts
- GET /affinitylabels/{label:id}/hosts
- DELETE /affinitylabels/{label:id}/hosts/{host:id}
- GET /affinitylabels/{label:id}/hosts/{host:id}
- POST /affinitylabels/{label:id}/vms
- GET /affinitylabels/{label:id}/vms
- DELETE /affinitylabels/{label:id}/vms/{vm:id}
- GET /affinitylabels/{label:id}/vms/{vm:id}
- POST/书签
- GET/书签
- GET /书签/{bookmark:id}
- PUT/书签 /{bookmark:id}
- DELETE /书签/{bookmark:id}
- GET /clusterlevels
- GET /clusterlevels/{level:id}
- GET /clusterlevels/{level:id}/clusterfeatures
- GET /clusterlevels/{level:id}/clusterfeatures/{feature:id}
- POST/集群
- GET /cluster
- GET /cluster/{cluster:id}
- PUT /集群/{cluster:id}
- DELETE /集群/{cluster:id}
- POST /集群/{cluster:id}/affinitygroups
- GET /cluster/{cluster:id}/affinitygroups
- GET /cluster/{cluster:id}/affinitygroups/{group:id}
- PUT /集群/{cluster:id}/affinitygroups/{group:id}
- DELETE /集群/{cluster:id}/affinitygroups/{group:id}
- POST /集群/{cluster:id}/affinitygroups/{group:id}/hostlabels
- GET /cluster/{cluster:id}/affinitygroups/{group:id}/hostlabels
- DELETE /集群/{cluster:id}/affinitygroups/{group:id}/hostlabels/{label:id}
- POST /集群/{cluster:id}/affinitygroups/{group:id}/hosts
- GET /cluster/{cluster:id}/affinitygroups/{group:id}/hosts
- DELETE /集群/{cluster:id}/affinitygroups/{group:id}/hosts/{host:idorname}
- POST /集群/{cluster:id}/affinitygroups/{group:id}/vmlabels
- GET /cluster/{cluster:id}/affinitygroups/{group:id}/vmlabels
- DELETE /集群/{cluster:id}/affinitygroups/{group:id}/vmlabels/{label:id}
- POST /集群/{cluster:id}/affinitygroups/{group:id}/vms
- GET /cluster/{cluster:id}/affinitygroups/{group:id}/vms
- DELETE /集群/{cluster:id}/affinitygroups/{group:id}/vms/{vm:id}
- POST /cluster/{cluster:id}/cpuprofiles
- GET /cluster/{cluster:id}/cpuprofiles
- GET /cluster/{cluster:id}/cpuprofiles/{profile:id}
- DELETE /集群/{cluster:id}/cpuprofiles/{profile:id}
- GET /cluster/{cluster:id}/enabledfeatures
- POST /集群/{cluster:id}/enabledfeatures
- GET /cluster/{cluster:id}/enabledfeatures/{feature:id}
- DELETE /集群/{cluster:id}/enabledfeatures/{feature:id}
- GET /cluster/{cluster:id}/externalnetworkproviders
- GET /cluster/{cluster:id}/glusterhooks
- GET /cluster/{cluster:id}/glusterhooks/{hook:id}
- DELETE /集群/{cluster:id}/glusterhooks/{hook:id}
- POST /cluster/{cluster:id}/glusterhooks/{hook:id}/disable
- POST /cluster/{cluster:id}/glusterhooks/{hook:id}/enable
- POST /cluster/{cluster:id}/glusterhooks/{hook:id}/resolve
- POST /集群/{cluster:id}/glustervolumes
- GET /cluster/{cluster:id}/glustervolumes
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}
- DELETE /集群/{cluster:id}/glustervolumes/{volume:id}
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/getprofilestatistics
- POST /集群/{cluster:id}/glustervolumes/{volume:id}/glusterbricks
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks
- DELETE /集群/{cluster:id}/glustervolumes/{volume:id}/glusterbricks
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/activate
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/migrate
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/stopmigrate
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}
- DELETE /集群/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}
- POST /集群/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}/replace
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}/statistics
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}/statistics/{statistic:id}
- POST /集群/{cluster:id}/glustervolumes/{volume:id}/rebalance
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/resetalloptions
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/resetoption
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/setoption
- POST /集群/{cluster:id}/glustervolumes/{volume:id}/start
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/startprofile
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}/statistics
- GET /cluster/{cluster:id}/glustervolumes/{volume:id}/statistics/{statistic:id}
- POST /集群/{cluster:id}/glustervolumes/{volume:id}/stop
- POST /cluster/{cluster:id}/glustervolumes/{volume:id}/stopprofile
- POST /集群/{cluster:id}/glustervolumes/{volume:id}/stoprebalance
- GET /cluster/{cluster:id}/networkfilters
- GET /cluster/{cluster:id}/networkfilters/{networkfilter:id}
- POST /集群/{cluster:id}/网络
- GET /cluster/{cluster:id}/network
- GET /cluster/{cluster:id}/network/{network:id}
- DELETE /集群/{cluster:id}/network/{network:id}
- PUT /集群/{cluster:id}/network/{network:id}
- POST/集群 /{cluster:id}/权限
- GET /cluster/{cluster:id}/permissions
- GET /cluster/{cluster:id}/permissions/{permission:id}
- DELETE /集群/{cluster:id}/permissions/{permission:id}
- POST /集群/{cluster:id}/refreshglusterhealstatus
- POST /集群/{cluster:id}/resetemulatedmachine
- POST /集群/{cluster:id}/syncallnetworks
- POST /cluster/{cluster:id}/upgrade
- POST /cpuprofiles
- GET /cpuprofiles
- GET /cpuprofiles/{profile:id}
- PUT /cpuprofiles/{profile:id}
- DELETE /cpuprofiles/{profile:id}
- POST /cpuprofiles/{profile:id}/permissions
- GET /cpuprofiles/{profile:id}/permissions
- GET /cpuprofiles/{profile:id}/permissions/{permission:id}
- DELETE /cpuprofiles/{profile:id}/permissions/{permission:id}
- POST/数据中心
- GET /datacenters
- GET /datacenters/{datacenter:id}
- PUT /datacenters/{datacenter:id}
- DELETE /datacenters/{datacenter:id}
- POST /datacenters/{datacenter:id}/cleanfinishedtasks
- POST /datacenters/{datacenter:id}/cluster
- GET /datacenters/{datacenter:id}/cluster
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}
- PUT /datacenters/{datacenter:id}/cluster/{cluster:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}
- PUT /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/affinitygroups/{group:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/hostlabels
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/hostlabels
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/affinitygroups/{group:id}/hostlabels/{label:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/hosts
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/hosts
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/affinitygroups/{group:id}/hosts/{host:idname}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/vmlabels
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/vmlabels
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/affinitygroups/{group:id}/vmlabels/{label:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/vms
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/affinitygroups/{group:id}/vms
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/affinitygroups/{group:id}/vms/{vm:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/cpuprofiles
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/cpuprofiles
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/cpuprofiles/{profile:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/cpuprofiles/{profile:id}
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/enabledfeatures
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/enabledfeatures
- GET /datacenters/{datacenter:id}/cluster /{cluster:id}/ enabledfeature:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/ enabledfeature:id}
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/externalnetworkproviders
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glusterhooks
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glusterhooks/{hook:id}
- DELETE /datacenters/{datacenter:id}/cluster/{cluster:id}/glusterhooks/{hook:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glusterhooks/{hook:id}/disable
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glusterhooks/{hook:id}/enable
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glusterhooks/{hook:id}/resolve
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/glustervolumes/{volume:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/getprofilestatistics
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks
- DELETE /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/activate
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/migrate
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/stopmigrate
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}
- DELETE /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}/replace
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}/statistics
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/glusterbricks/{brick:id}/statistics/{statistic:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/rebalance
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/resetalloptions
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/resetoption
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/setoption
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/start
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/startprofile
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/statistics
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/statistics/{statistic:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/stop
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/stopprofile
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/glustervolumes/{volume:id}/stoprebalance
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/networkfilters
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/networkfilters/{networkfilter:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/network
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/network
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/network/{network:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/网络/{network:id}
- PUT /datacenters/{datacenter:id}/cluster/{cluster:id}/network/{network:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/权限
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/权限
- GET /datacenters/{datacenter:id}/cluster/{cluster:id}/permissions/{permission:id}
- DELETE /datacenters/{datacenter:id}/集群/{cluster:id}/permissions/{permission:id}
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/refreshglusterhealstatus
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/resetemulatedmachine
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/syncallnetworks
- POST /datacenters/{datacenter:id}/cluster/{cluster:id}/upgrade
- POST /datacenters/{datacenter:id}/iscsibonds
- GET /datacenters/{datacenter:id}/iscsibonds
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}
- PUT /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}
- POST /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}
- PUT /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/网络/{network:id}
- POST /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/networklabels
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/networklabels
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/networklabels/{label:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/networklabels/{label:id}
- POST /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/permissions
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/permissions
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/permissions/{permission:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/permissions/{permission:id}
- POST /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles/{profile:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles/{profile:id}
- POST /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles/{profile:id}/permissions
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles/{profile:id}/permissions
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles/{profile:id}/permissions/{permission:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/network/{network:id}/vnicprofiles/{profile:id}/permissions/{permission:id}
- POST /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/storageserverconnections
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/storageserverconnections
- GET /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/storageserverconnections/{storageconnection:id}
- PUT /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/storageserverconnections/{storageconnection:id}
- DELETE /datacenters/{datacenter:id}/iscsibonds/{iscsibond:id}/storageserverconnections/{storageconnection:id}
- POST /datacenters/{datacenter:id}/network
- GET /datacenters/{datacenter:id}/network
- GET /datacenters/{datacenter:id}/network/{network:id}
- DELETE /datacenters/{datacenter:id}/network/{network:id}
- PUT /datacenters/{datacenter:id}/network/{network:id}
- POST /datacenters/{datacenter:id}/permissions
- GET /datacenters/{datacenter:id}/permissions
- GET /datacenters/{datacenter:id}/permissions/{permission:id}
- DELETE /datacenters/{datacenter:id}/permissions/{permission:id}
- POST /datacenters/{datacenter:id}/qoss
- GET /datacenters/{datacenter:id}/qoss
- GET /datacenters/{datacenter:id}/qoss/{qos:id}
- PUT /datacenters/{datacenter:id}/qoss/{qos:id}
- DELETE /datacenters/{datacenter:id}/qoss/{qos:id}
- POST /datacenters/{datacenter:id}/quota
- GET /datacenters/{datacenter:id}/quota
- GET /datacenters/{datacenter:id}/quota/{quota:id}
- PUT /datacenters/{datacenter:id}/quota/{quota:id}
- DELETE /datacenters/{datacenter:id}/quota/{quota:id}
- POST /datacenters/{datacenter:id}/quota/{quota:id}/权限
- GET /datacenters/{datacenter:id}/quota/{quota:id}/权限
- GET /datacenters/{datacenter:id}/quota/{quota:id}/permissions/{permission:id}
- DELETE /datacenters/{datacenter:id}/quota/{quota:id}/permissions/{permission:id}
- POST /datacenters/{datacenter:id}/ quota/{quota:id}/quotaclusterlimits
- GET /datacenters/{datacenter:id}/ quota/{quota:id}/quotaclusterlimits
- GET /datacenters/{datacenter:id}/ quota/{quota:id}/quotaclusterlimits/{limit:id}
- DELETE /datacenters/{datacenter:id}/ quota/{quota:id}/quotaclusterlimits/{limit:id}
- POST /datacenters/{datacenter:id}/ quota/{quota:id}/quotastoragelimits
- GET /datacenters/{datacenter:id}/ quota/{quota:id}/quotastoragelimits
- GET /datacenters/{datacenter:id}/ quota/{quota:id}/quotastoragelimits/{limit:id}
- DELETE /datacenters/{datacenter:id}/ quota/{quota:id}/quotastoragelimits/{limit:id}
- POST /datacenters/{datacenter:id}/setmaster
- POST /datacenters/{datacenter:id}/storagedomains
- GET /datacenters/{datacenter:id}/storagedomains
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}
- DELETE /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/activate
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/deactivate
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/磁盘
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/磁盘
- PUT /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}
- DELETE /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/copy
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/export
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/move
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/permissions
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/permissions
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/permissions/{permission:id}
- DELETE /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/permissions/{permission:id}
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/register
- POST /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/sparsify
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/statistics
- GET /datacenters/{datacenter:id}/storagedomains/{storagedomain:id}/disk/{disk:id}/statistics/{statistic:id}
- POST /diskprofiles
- GET /diskprofiles
- GET /diskprofiles/{diskprofile:id}
- PUT /diskprofiles/{diskprofile:id}
- DELETE /diskprofiles/{diskprofile:id}
- POST /diskprofiles/{diskprofile:id}/permissions
- GET /diskprofiles/{diskprofile:id}/permissions
- GET /diskprofiles/{diskprofile:id}/permissions/{permission:id}
- DELETE /diskprofiles/{diskprofile:id}/permissions/{permission:id}
- POST /磁盘
- GET /磁盘
- PUT /磁盘/{disk:id}
- GET /disk/{disk:id}
- DELETE /磁盘/{disk:id}
- POST /磁盘/{disk:id}/convert
- POST /磁盘/{disk:id}/copy
- GET /disk/{disk:id}/disksnapshots
- GET /disk/{disk:id}/disksnapshots/{snapshot:id}
- DELETE /disk/{disk:id}/disksnapshots/{snapshot:id}
- POST /磁盘/{disk:id}/export
- POST /磁盘/{disk:id}/move
- POST /磁盘/{disk:id}/权限
- GET /disk/{disk:id}/permissions
- GET /disk/{disk:id}/permissions/{permission:id}
- DELETE /disk/{disk:id}/permissions/{permission:id}
- POST /磁盘/{disk:id}/reduce
- POST /磁盘/{disk:id}/refreshlun
- POST /磁盘/{disk:id}/sparsify
- GET /disk/{disk:id}/statistics
- GET /disk/{disk:id}/statistics/{statistic:id}
- GET /domain
- GET /domain/{domain:id}
- GET /domain/{domain:id}/groups
- GET /domain/{domain:id}/groups/{group:id}
- GET /domain/{domain:id}/用户
- GET /domain/{domain:id}/用户/{user:id}
- POST/事件
- GET/事件
- POST /事件/取消删除
- GET /events/{event:id}
- DELETE /事件/{event:id}
- POST /externalhostproviders
- GET /externalhostproviders
- GET /externalhostproviders/{provider:id}
- PUT /externalhostproviders/{provider:id}
- DELETE /externalhostproviders/{provider:id}
- GET /externalhostproviders/{provider:id}/certificate
- GET /externalhostproviders/{provider:id}/certificate/{certificate:id}
- GET /externalhostproviders/{provider:id}/computeresources
- GET /externalhostproviders/{provider:id}/computeresources/{resource:id}
- GET /externalhostproviders/{provider:id}/discoveredhosts
- GET /externalhostproviders/{provider:id}/discoveredhosts/{host:id}
- GET /externalhostproviders/{provider:id}/hostgroups
- GET /externalhostproviders/{provider:id}/hostgroups/{group:id}
- GET /externalhostproviders/{provider:id}/hosts
- GET /externalhostproviders/{provider:id}/hosts/{host:id}
- POST /externalhostproviders/{provider:id}/importcertificates
- POST /externalhostproviders/{provider:id}/testconnectivity
- POST /externaltemplateimports
- POST /externalvmimports
- POST/组
- GET /groups
- GET /groups/{group:id}
- DELETE /groups/{group:id}
- POST /groups/{group:id}/权限
- GET /groups/{group:id}/权限
- GET /groups/{group:id}/permissions/{permission:id}
- DELETE /groups/{group:id}/permissions/{permission:id}
- GET /groups/{group:id}/roles
- GET /groups/{group:id}/roles/{role:id}
- DELETE /groups/{group:id}/roles/{role:id}
- PUT /groups/{group:id}/roles/{role:id}
- POST /groups/{group:id}/roles/{role:id}/allow
- GET /groups/{group:id}/roles/{role:id}/allow
- GET /groups/{group:id}/roles/{role:id}/allow/{permit:id}
- DELETE /groups/{group:id}/roles/{role:id}/allow/{permit:id}
- POST /groups/{group:id}/tags
- GET /groups/{group:id}/tags
- GET /groups/{group:id}/tags/{tag:id}
- DELETE /groups/{group:id}/tags/{tag:id}
- POST/主机
- GET /hosts
- GET /hosts/{host:id}
- PUT /hosts/{host:id}
- DELETE /hosts/{host:id}
- POST /hosts/{host:id}/activate
- POST /hosts/{host:id}/affinitylabels
- GET /hosts/{host:id}/affinitylabels
- GET /hosts/{host:id}/affinitylabels/{label:id}
- DELETE /hosts/{host:id}/affinitylabels/{label:id}
- POST /hosts/{host:id}/批准
- POST /hosts/{host:id}/commitnetconfig
- POST /hosts/{host:id}/copyhostnetworks
- GET /hosts/{host:id}/cpuunits
- POST /hosts/{host:id}/deactivate
- GET /hosts/{host:id}/devices
- GET /hosts/{host:id}/devices/{device:id}
- POST /hosts/{host:id}/discoveriscsi
- POST /hosts/{host:id}/registrationlcertificate
- GET /hosts/{host:id}/externalnetworkproviderconfigurations
- GET /hosts/{host:id}/externalnetworkproviderconfigurations/{configuration:id}
- POST /hosts/{host:id}/fence
- POST /hosts/{host:id}/fenceagents
- GET /hosts/{host:id}/fenceagents
- GET /hosts/{host:id}/fenceagents/{agent:id}
- PUT /hosts/{host:id}/fenceagents/{agent:id}
- DELETE /hosts/{host:id}/fenceagents/{agent:id}
- POST /hosts/{host:id}/forceelectspm
- GET /hosts/{host:id}/hook
- GET /hosts/{host:id}/hooks/{hook:id}
- POST /hosts/{host:id}/install
- POST /hosts/{host:id}/iscsidiscover
- POST /hosts/{host:id}/iscsilogin
- GET /hosts/{host:id}/katelloerrata
- GET /hosts/{host:id}/katelloerrata/{katelloerratum:id}
- POST /hosts/{host:id}/网络连接
- GET /hosts/{host:id}/网络连接
- GET /hosts/{host:id}/networkattachments/{attachment:id}
- PUT /hosts/{host:id}/networkattachments/{attachment:id}
- DELETE /hosts/{host:id}/网络连接/{attachment:id}
- GET /hosts/{host:id}/nics
- GET /hosts/{host:id}/nics/{nic:id}
- GET /hosts/{host:id}/nics/{nic:id}/linklayerdiscoveryprotocolements
- POST /hosts/{host:id}/nics/{nic:id}/networkattachments
- GET /hosts/{host:id}/nics/{nic:id}/networkattachments
- GET /hosts/{host:id}/nics/{nic:id}/networkattachments/{attachment:id}
- PUT /hosts/{host:id}/nics/{nic:id}/networkattachments/{attachment:id}
- DELETE /hosts/{host:id}/nics/{nic:id}/networkattachments/{attachment:id}
- POST /hosts/{host:id}/nics/{nic:id}/networklabels
- GET /hosts/{host:id}/nics/{nic:id}/networklabels
- GET /hosts/{host:id}/nics/{nic:id}/networklabels/{label:id}
- DELETE /hosts/{host:id}/nics/{nic:id}/networklabels/{label:id}
- GET /hosts/{host:id}/nics/{nic:id}/statistics
- GET /hosts/{host:id}/nics/{nic:id}/statistics/{statistic:id}
- POST /hosts/{host:id}/nics/{nic:id}/updatevirtualfunctionsconfiguration
- POST /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowedlabels
- GET /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowedlabels
- GET /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowedlabels/{label:id}
- DELETE /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowedlabels/{label:id}
- POST /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowednetworks
- GET /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowednetworks
- GET /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowednetworks/{network:id}
- DELETE /hosts/{host:id}/nics/{nic:id}/virtualFeaturelowednetworks/{network:id}
- GET /hosts/{host:id}/numanodes
- GET /hosts/{host:id}/numanodes/{node:id}
- GET /hosts/{host:id}/numanodes/{node:id}/statistics
- GET /hosts/{host:id}/numanodes/{node:id}/statistics/{statistic:id}
- POST /hosts/{host:id}/权限
- GET /hosts/{host:id}/permissions
- GET /hosts/{host:id}/permissions/{permission:id}
- DELETE /hosts/{host:id}/permissions/{permission:id}
- POST /hosts/{host:id}/refresh
- POST /hosts/{host:id}/setupnetworks
- GET /hosts/{host:id}/statistics
- GET /hosts/{host:id}/statistics/{statistic:id}
- GET /hosts/{host:id}/storage
- GET /hosts/{host:id}/storage/{storage:id}
- POST /hosts/{host:id}/storageconnectionextensions
- GET /hosts/{host:id}/storageconnectionextensions
- GET /hosts/{host:id}/storageconnectionextensions/{storageconnectionextension:id}
- PUT /hosts/{host:id}/storageconnectionextensions/{storageconnectionextension:id}
- DELETE /hosts/{host:id}/storageconnectionextensions/{storageconnectionextension:id}
- POST /hosts/{host:id}/syncallnetworks
- POST /hosts/{host:id}/tags
- GET /hosts/{host:id}/tags
- GET /hosts/{host:id}/tags/{tag:id}
- DELETE /hosts/{host:id}/tags/{tag:id}
- GET /hosts/{host:id}/非受管网络
- GET /hosts/{host:id}/非受管网络/{unmanagednetwork:id}
- DELETE /hosts/{host:id}/非受管网络/{unmanagednetwork:id}
- POST /hosts/{host:id}/unregisteredstoragedomainsdiscover
- POST /hosts/{host:id}/upgrade
- POST /hosts/{host:id}/upgradecheck
- GET /图标
- GET /图标/{icon:id}
- POST/imagetransfers
- GET /imagetransfers
- GET /imagetransfers/{imagetransfer:id}
- POST /imagetransfers/{imagetransfer:id}/cancel
- POST /imagetransfers/{imagetransfer:id}/Extended
- POST /imagetransfers/{imagetransfer:id}/finalize
- POST /imagetransfers/{imagetransfer:id}/pause
- POST /imagetransfers/{imagetransfer:id}/restore
- POST/instancetypes
- GET /instancetypes
- GET /instancetypes/{instancetype:id}
- PUT /instancetypes/{instancetype:id}
- DELETE /instancetypes/{instancetype:id}
- POST /instancetypes/{instancetype:id}/graphicsconsoles
- GET /instancetypes/{instancetype:id}/graphicsconsoles
- GET /instancetypes/{instancetype:id}/graphicsconsoles/{console:id}
- DELETE /instancetypes/{instancetype:id}/graphicsconsoles/{console:id}
- POST /instancetypes/{instancetype:id}/nics
- GET /instancetypes/{instancetype:id}/nics
- GET /instancetypes/{instancetype:id}/nics/{nic:id}
- PUT /instancetypes/{instancetype:id}/nics/{nic:id}
- DELETE /instancetypes/{instancetype:id}/nics/{nic:id}
- POST /instancetypes/{instancetype:id}/watchdogs
- GET /instancetypes/{instancetype:id}/watchdogs
- GET /instancetypes/{instancetype:id}/watchdogs/{watchdog:id}
- PUT /instancetypes/{instancetype:id}/watchdogs/{watchdog:id}
- DELETE /instancetypes/{instancetype:id}/watchdogs/{watchdog:id}
- POST /任务
- GET /Job
- GET /jobs/{job:id}
- POST /jobs/{job:id}/clear
- POST /job/{job:id}/end
- POST /job/{job:id}/steps
- GET /jobs/{job:id}/steps
- GET /jobs/{job:id}/steps/{step:id}
- POST /job/{job:id}/steps/{step:id}/end
- GET /jobs/{job:id}/steps/{step:id}/statistics
- GET /jobs/{job:id}/steps/{step:id}/statistics/{statistic:id}
- GET /katelloerrata
- GET /katelloerrata/{katelloerratum:id}
- POST /macpools
- GET /macpools
- GET /macpools/{macpool:id}
- PUT /macpools/{macpool:id}
- DELETE /macpools/{macpool:id}
- POST /macpools/{macpool:id}/权限
- GET /macpools/{macpool:id}/permissions
- GET /macpools/{macpool:id}/permissions/{permission:id}
- DELETE /macpools/{macpool:id}/permissions/{permission:id}
- GET /networkfilters
- GET /networkfilters/{networkfilter:id}
- POST/网络
- GET /network
- GET /network/{network:id}
- PUT /网络/{network:id}
- DELETE /网络/{network:id}
- POST /network/{network:id}/networklabels
- GET /network/{network:id}/networklabels
- GET /network/{network:id}/networklabels/{label:id}
- DELETE /network/{network:id}/networklabels/{label:id}
- POST /网络/{network:id}/权限
- GET /network/{network:id}/permissions
- GET /network/{network:id}/permissions/{permission:id}
- DELETE /网络/{network:id}/permissions/{permission:id}
- POST /network/{network:id}/vnicprofiles
- GET /network/{network:id}/vnicprofiles
- GET /network/{network:id}/vnicprofiles/{profile:id}
- DELETE /network/{network:id}/vnicprofiles/{profile:id}
- POST /network/{network:id}/vnicprofiles/{profile:id}/permissions
- GET /network/{network:id}/vnicprofiles/{profile:id}/permissions
- GET /network/{network:id}/vnicprofiles/{profile:id}/permissions/{permission:id}
- DELETE /network/{network:id}/vnicprofiles/{profile:id}/permissions/{permission:id}
- POST/openstackimageproviders
- GET /openstackimageproviders
- GET /openstackimageproviders/{provider:id}
- PUT /openstackimageproviders/{provider:id}
- DELETE /openstackimageproviders/{provider:id}
- GET /openstackimageproviders/{provider:id}/certificate
- GET /openstackimageproviders/{provider:id}/certificate/{certificate:id}
- GET /openstackimageproviders/{provider:id}/images
- GET /openstackimageproviders/{provider:id}/images/{image:id}
- POST /openstackimageproviders/{provider:id}/images/{image:id}/import
- POST /openstackimageproviders/{provider:id}/importcertificates
- POST /openstackimageproviders/{provider:id}/testconnectivity
- POST/openstacknetworkproviders
- GET /openstacknetworkproviders
- GET /openstacknetworkproviders/{provider:id}
- PUT /openstacknetworkproviders/{provider:id}
- DELETE /openstacknetworkproviders/{provider:id}
- GET /openstacknetworkproviders/{provider:id}/certificate
- GET /openstacknetworkproviders/{provider:id}/certificate/{certificate:id}
- POST /openstacknetworkproviders/{provider:id}/importcertificates
- GET /openstacknetworkproviders/{provider:id}/network
- GET /openstacknetworkproviders/{provider:id}/network/{network:id}
- POST /openstacknetworkproviders/{provider:id}/network/{network:id}/import
- POST /openstacknetworkproviders/{provider:id}/network/{network:id}/subnets
- GET /openstacknetworkproviders/{provider:id}/network/{network:id}/subnets
- GET /openstacknetworkproviders/{provider:id}/network/{network:id}/subnets/{subnet:id}
- DELETE /openstacknetworkproviders/{provider:id}/network/{network:id}/subnets/{subnet:id}
- POST /openstacknetworkproviders/{provider:id}/testconnectivity
- POST /openstackvolumeproviders
- GET /openstackvolumeproviders
- GET /openstackvolumeproviders/{provider:id}
- PUT /openstackvolumeproviders/{provider:id}
- DELETE /openstackvolumeproviders/{provider:id}
- POST /openstackvolumeproviders/{provider:id}/authenticationkeys
- GET /openstackvolumeproviders/{provider:id}/authenticationkeys
- GET /openstackvolumeproviders/{provider:id}/authenticationkeys/{key:id}
- PUT /openstackvolumeproviders/{provider:id}/authenticationkeys/{key:id}
- DELETE /openstackvolumeproviders/{provider:id}/authenticationkeys/{key:id}
- GET /openstackvolumeproviders/{provider:id}/certificate
- GET /openstackvolumeproviders/{provider:id}/certificate/{certificate:id}
- POST /openstackvolumeproviders/{provider:id}/importcertificates
- POST /openstackvolumeproviders/{provider:id}/testconnectivity
- GET /openstackvolumeproviders/{provider:id}/volumetypes
- GET /openstackvolumeproviders/{provider:id}/volumetypes/{type:id}
- GET /操作系统
- GET /操作系统/{operatingsystem:id}
- GET /options/{option:id}
- POST /权限
- GET /permissions
- GET /permissions/{permission:id}
- DELETE /permissions/{permission:id}
- POST/角色
- GET/角色
- GET /roles/{role:id}
- DELETE /roles/{role:id}
- PUT /角色/{role:id}
- POST /角色/{role:id}/允许
- GET /roles/{role:id}/allow
- GET /roles/{role:id}/allow/{permit:id}
- DELETE /roles/{role:id}/allow/{permit:id}
- POST /schedulingpolicies
- GET /schedulingpolicies
- GET /schedulingpolicies/{policy:id}
- PUT /schedulingpolicies/{policy:id}
- DELETE /schedulingpolicies/{policy:id}
- POST /schedulingpolicies/{policy:id}/balance
- GET /schedulingpolicies/{policy:id}/balance
- GET /schedulingpolicies/{policy:id}/balance/{balance:id}
- DELETE /schedulingpolicies/{policy:id}/balance/{balance:id}
- POST /schedulingpolicies/{policy:id}/filter
- GET /schedulingpolicies/{policy:id}/filter
- GET /schedulingpolicies/{policy:id}/filter/{filter:id}
- DELETE /schedulingpolicies/{policy:id}/filter/{filter:id}
- POST /schedulingpolicies/{policy:id}/weights
- GET /schedulingpolicies/{policy:id}/weights
- GET /schedulingpolicies/{policy:id}/weights/{weight:id}
- DELETE /schedulingpolicies/{policy:id}/weights/{weight:id}
- GET /schedulingpolicyunits
- GET /schedulingpolicyunits/{unit:id}
- DELETE /schedulingpolicyunits/{unit:id}
- POST/存储连接
- GET /storageconnections
- GET /storageconnections/{storageconnection:id}
- PUT/存储连接/ {storageconnection:id}
- DELETE /storageconnections/{storageconnection:id}
- POST /storagedomains
- GET /storagedomains
- GET /storagedomains/{storagedomain:id}
- PUT /storagedomains/{storagedomain:id}
- DELETE /storagedomains/{storagedomain:id}
- POST /storagedomains/{storagedomain:id}/diskprofiles
- GET /storagedomains/{storagedomain:id}/diskprofiles
- GET /storagedomains/{storagedomain:id}/diskprofiles/{profile:id}
- DELETE /storagedomains/{storagedomain:id}/diskprofiles/{profile:id}
- POST /storagedomains/{storagedomain:id}/磁盘
- GET /storagedomains/{storagedomain:id}/磁盘
- PUT /storagedomains/{storagedomain:id}/disk/{disk:id}
- GET /storagedomains/{storagedomain:id}/disk/{disk:id}
- DELETE /storagedomains/{storagedomain:id}/disk/{disk:id}
- POST /storagedomains/{storagedomain:id}/disk/{disk:id}/copy
- POST /storagedomains/{storagedomain:id}/disk/{disk:id}/export
- POST /storagedomains/{storagedomain:id}/disk/{disk:id}/move
- POST /storagedomains/{storagedomain:id}/disk/{disk:id}/permissions
- GET /storagedomains/{storagedomain:id}/disk/{disk:id}/permissions
- GET /storagedomains/{storagedomain:id}/disk/{disk:id}/permissions/{permission:id}
- DELETE /storagedomains/{storagedomain:id}/disk/{disk:id}/permissions/{permission:id}
- POST /storagedomains/{storagedomain:id}/disk/{disk:id}/reduce
- POST /storagedomains/{storagedomain:id}/disk/{disk:id}/sparsify
- GET /storagedomains/{storagedomain:id}/disk/{disk:id}/statistics
- GET /storagedomains/{storagedomain:id}/disk/{disk:id}/statistics/{statistic:id}
- GET /storagedomains/{storagedomain:id}/disksnapshots
- GET /storagedomains/{storagedomain:id}/disksnapshots/{snapshot:id}
- DELETE /storagedomains/{storagedomain:id}/disksnapshots/{snapshot:id}
- GET /storagedomains/{storagedomain:id}/文件
- GET /storagedomains/{storagedomain:id}/files/{file:id}
- GET /storagedomains/{storagedomain:id}/images
- GET /storagedomains/{storagedomain:id}/images/{image:id}
- POST /storagedomains/{storagedomain:id}/images/{image:id}/import
- POST /storagedomains/{storagedomain:id}/isattached
- POST /storagedomains/{storagedomain:id}/权限
- GET /storagedomains/{storagedomain:id}/permissions
- GET /storagedomains/{storagedomain:id}/permissions/{permission:id}
- DELETE /storagedomains/{storagedomain:id}/permissions/{permission:id}
- POST /storagedomains/{storagedomain:id}/reduceluns
- POST /storagedomains/{storagedomain:id}/refreshluns
- POST /storagedomains/{storagedomain:id}/storageconnections
- GET /storagedomains/{storagedomain:id}/storageconnections
- GET /storagedomains/{storagedomain:id}/storageconnections/{connection:id}
- DELETE /storagedomains/{storagedomain:id}/storageconnections/{connection:id}
- GET /storagedomains/{storagedomain:id}/templates
- GET /storagedomains/{storagedomain:id}/templates/{template:id}
- DELETE /storagedomains/{storagedomain:id}/templates/{template:id}
- GET /storagedomains/{storagedomain:id}/templates/{template:id}/disk
- GET /storagedomains/{storagedomain:id}/templates/{template:id}/disk/{disk:id}
- POST /storagedomains/{storagedomain:id}/templates/{template:id}/import
- POST /storagedomains/{storagedomain:id}/templates/{template:id}/register
- POST /storagedomains/{storagedomain:id}/updateovfstore
- GET /storagedomains/{storagedomain:id}/vms
- GET /storagedomains/{storagedomain:id}/vms/{vm:id}
- DELETE /storagedomains/{storagedomain:id}/vms/{vm:id}
- GET /storagedomains/{storagedomain:id}/vms/{vm:id}/diskattachments
- GET /storagedomains/{storagedomain:id}/vms/{vm:id}/diskattachments/{attachment:id}
- GET /storagedomains/{storagedomain:id}/vms/{vm:id}/磁盘
- GET /storagedomains/{storagedomain:id}/vms/{vm:id}/disk/{disk:id}
- POST /storagedomains/{storagedomain:id}/vms/{vm:id}/import
- POST /storagedomains/{storagedomain:id}/vms/{vm:id}/register
- POST /标签
- GET /tags
- GET /tags/{tag:id}
- PUT /tags/{tag:id}
- DELETE /tags/{tag:id}
- POST/模板
- GET /模板
- GET /templates/{template:id}
- PUT /templates/{template:id}
- DELETE /templates/{template:id}
- GET /templates/{template:id}/cdroms
- GET /templates/{template:id}/cdroms/{cdrom:id}
- GET /templates/{template:id}/diskattachments
- GET /templates/{template:id}/diskattachments/{attachment:id}
- DELETE /templates/{template:id}/diskattachments/{attachment:id}
- POST /templates/{template:id}/export
- POST /templates/{template:id}/graphicsconsoles
- GET /templates/{template:id}/graphicsconsoles
- GET /templates/{template:id}/graphicsconsoles/{console:id}
- DELETE /templates/{template:id}/graphicsconsoles/{console:id}
- POST /templates/{template:id}/mediateddevices
- GET /templates/{template:id}/mediateddevices
- GET /templates/{template:id}/mediateddevices/{device:id}
- PUT /templates/{template:id}/mediateddevices/{device:id}
- DELETE /templates/{template:id}/mediateddevices/{device:id}
- POST /templates/{template:id}/nics
- GET /templates/{template:id}/nics
- GET /templates/{template:id}/nics/{nic:id}
- PUT /templates/{template:id}/nics/{nic:id}
- DELETE /templates/{template:id}/nics/{nic:id}
- POST /templates/{template:id}/权限
- GET /templates/{template:id}/permissions
- GET /templates/{template:id}/permissions/{permission:id}
- DELETE /templates/{template:id}/permissions/{permission:id}
- POST /templates/{template:id}/tags
- GET /templates/{template:id}/tags
- GET /templates/{template:id}/tags/{tag:id}
- DELETE /templates/{template:id}/tags/{tag:id}
- POST /templates/{template:id}/watchdogs
- GET /templates/{template:id}/watchdogs
- GET /templates/{template:id}/watchdogs/{watchdog:id}
- PUT /templates/{template:id}/watchdogs/{watchdog:id}
- DELETE /templates/{template:id}/watchdogs/{watchdog:id}
- POST/用户
- GET/用户
- GET /users/{user:id}
- PUT/用户 /{user:id}
- DELETE /用户/{user:id}
- POST /users/{user:id}/eventsubscriptions
- GET /users/{user:id}/eventsubscriptions
- GET /users/{user:id}/eventsubscriptions/{eventsubscription:id}
- DELETE /用户/{user:id}/eventsubscriptions/{eventsubscription:id}
- GET /users/{user:id}/groups
- POST /users/{user:id}/选项
- GET /users/{user:id}/options
- GET /users/{user:id}/options/{option:id}
- DELETE /用户/{user:id}/options/{option:id}
- POST /用户/{user:id}/权限
- GET /users/{user:id}/permissions
- GET /users/{user:id}/permissions/{permission:id}
- DELETE /用户/{user:id}/permissions/{permission:id}
- GET /users/{user:id}/roles
- GET /users/{user:id}/roles/{role:id}
- DELETE /用户/{user:id}/roles/{role:id}
- PUT /用户/{user:id}/roles/{role:id}
- POST /users/{user:id}/roles/{role:id}/allow
- GET /users/{user:id}/roles/{role:id}/allow
- GET /users/{user:id}/roles/{role:id}/allow/{permit:id}
- DELETE /用户/{user:id}/roles/{role:id}/allow/{permit:id}
- POST /users/{user:id}/sshpublickeys
- GET /users/{user:id}/sshpublickeys
- GET /users/{user:id}/sshpublickeys/{key:id}
- PUT /用户/{user:id}/sshpublickeys/{key:id}
- DELETE /用户/{user:id}/sshpublickeys/{key:id}
- POST /users/{user:id}/tags
- GET /users/{user:id}/tags
- GET /users/{user:id}/tags/{tag:id}
- DELETE /用户/{user:id}/tags/{tag:id}
- POST /vmpools
- GET /vmpools
- GET /vmpools/{pool:id}
- pUT /vmpools/{pool:id}
- DELETE /vmpools/{pool:id}
- POST /vmpools/{pool:id}/allocatevm
- POST /vmpools/{pool:id}/权限
- GET /vmpools/{pool:id}/permissions
- GET /vmpools/{pool:id}/permissions/{permission:id}
- DELETE /vmpools/{pool:id}/permissions/{permission:id}
- POST /vms
- GET /vms
- GET /vms/{vm:id}
- PUT /vms/{vm:id}
- DELETE /vms/{vm:id}
- POST /vms/{vm:id}/affinitylabels
- GET /vms/{vm:id}/affinitylabels
- GET /vms/{vm:id}/affinitylabels/{label:id}
- DELETE /vms/{vm:id}/affinitylabels/{label:id}
- GET /vms/{vm:id}/应用程序
- GET /vms/{vm:id}/applications/{application:id}
- POST /vms/{vm:id}/autopincpuandnumanodes
- POST /vms/{vm:id}/backups
- GET /vms/{vm:id}/backups
- GET /vms/{vm:id}/backups/{backup:id}
- GET /vms/{vm:id}/backups/{backup:id}/disks
- GET /vms/{vm:id}/backups/{backup:id}/disk/{disk:id}
- POST /vms/{vm:id}/backups/{backup:id}/finalize
- POST /vms/{vm:id}/cancelmigration
- POST /vms/{vm:id}/cdroms
- GET /vms/{vm:id}/cdroms
- GET /vms/{vm:id}/cdroms/{cdrom:id}
- PUT /vms/{vm:id}/cdroms/{cdrom:id}
- GET /vms/{vm:id}/checkpoints
- GET /vms/{vm:id}/checkpoints/{checkpoint:id}
- DELETE /vms/{vm:id}/checkpoints/{checkpoint:id}
- GET /vms/{vm:id}/checkpoints/{checkpoint:id}/磁盘
- GET /vms/{vm:id}/checkpoints/{checkpoint:id}/disk/{disk:id}
- POST /vms/{vm:id}/clone
- POST /vms/{vm:id}/commitsnapshot
- POST /vms/{vm:id}/detach
- POST /vms/{vm:id}/diskattachments
- GET /vms/{vm:id}/diskattachments
- GET /vms/{vm:id}/diskattachments/{attachment:id}
- DELETE /vms/{vm:id}/磁盘附件/{attachment:id}
- PUT /vms/{vm:id}/diskattachments/{attachment:id}
- POST /vms/{vm:id}/export
- POST /vms/{vm:id}/freezefilesystems
- POST /vms/{vm:id}/graphicsconsoles
- GET /vms/{vm:id}/graphicsconsoles
- GET /vms/{vm:id}/graphicsconsoles/{console:id}
- DELETE /vms/{vm:id}/graphicsconsoles/{console:id}
- POST /vms/{vm:id}/graphicsconsoles/{console:id}/proxyticket
- POST /vms/{vm:id}/graphicsconsoles/{console:id}/remoteviewerconnectionfile
- POST /vms/{vm:id}/graphicsconsoles/{console:id}/ticket
- POST /vms/{vm:id}/hostdevices
- GET /vms/{vm:id}/hostdevices
- GET /vms/{vm:id}/hostdevices/{device:id}
- DELETE /vms/{vm:id}/hostdevices/{device:id}
- GET /vms/{vm:id}/katelloerrata
- GET /vms/{vm:id}/katelloerrata/{katelloerratum:id}
- POST /vms/{vm:id}/logon
- POST /vms/{vm:id}/maintenance
- POST /vms/{vm:id}/mediateddevices
- GET /vms/{vm:id}/mediateddevices
- GET /vms/{vm:id}/mediateddevices/{device:id}
- PUT /vms/{vm:id}/mediateddevices/{device:id}
- DELETE /vms/{vm:id}/mediateddevices/{device:id}
- POST /vms/{vm:id}/migrate
- POST /vms/{vm:id}/nics
- GET /vms/{vm:id}/nics
- GET /vms/{vm:id}/nics/{nic:id}
- PUT /vms/{vm:id}/nics/{nic:id}
- DELETE /vms/{vm:id}/nics/{nic:id}
- POST /vms/{vm:id}/nics/{nic:id}/activate
- POST /vms/{vm:id}/nics/{nic:id}/deactivate
- GET /vms/{vm:id}/nics/{nic:id}/networkfilterparameters
- POST /vms/{vm:id}/nics/{nic:id}/networkfilterparameters
- GET /vms/{vm:id}/nics/{nic:id}/networkfilterparameters/{parameter:id}
- PUT /vms/{vm:id}/nics/{nic:id}/networkfilterparameters/{parameter:id}
- DELETE /vms/{vm:id}/nics/{nic:id}/networkfilterparameters/{parameter:id}
- GET /vms/{vm:id}/nics/{nic:id}/reporteddevices
- GET /vms/{vm:id}/nics/{nic:id}/reportdevices/{reporteddevice:id}
- GET /vms/{vm:id}/nics/{nic:id}/statistics
- GET /vms/{vm:id}/nics/{nic:id}/statistics/{statistic:id}
- POST /vms/{vm:id}/numanodes
- GET /vms/{vm:id}/numanodes
- GET /vms/{vm:id}/numanodes/{node:id}
- PUT /vms/{vm:id}/numanodes/{node:id}
- DELETE /vms/{vm:id}/numanodes/{node:id}
- POST /vms/{vm:id}/权限
- GET /vms/{vm:id}/permissions
- GET /vms/{vm:id}/permissions/{permission:id}
- DELETE /vms/{vm:id}/permissions/{permission:id}
- POST /vms/{vm:id}/previewsnapshot
- POST /vms/{vm:id}/reboot
- POST /vms/{vm:id}/reordermacaddresses
- GET /vms/{vm:id}/reporteddevices
- GET /vms/{vm:id}/reporteddevices/{reporteddevice:id}
- POST /vms/{vm:id}/reset
- POST /vms/{vm:id}/screenshot
- GET /vms/{vm:id}/sessions
- GET /vms/{vm:id}/sessions/{session:id}
- POST /vms/{vm:id}/shutdown
- POST /vms/{vm:id}/快照
- GET /vms/{vm:id}/快照
- GET /vms/{vm:id}/快照/{snapshot:id}
- DELETE /vms/{vm:id}/快照/{snapshot:id}
- GET /vms/{vm:id}/snapshot/{snapshot:id}/cdroms
- GET /vms/{vm:id}/快照/{snapshot:id}/cdroms/{cdrom:id}
- GET /vms/{vm:id}/snapshot/{snapshot:id}/disks
- GET /vms/{vm:id}/快照/{snapshot:id}/disk/{disk:id}
- GET /vms/{vm:id}/snapshot/{snapshot:id}/nics
- GET /vms/{vm:id}/snapshot/{snapshot:id}/nics/{nic:id}
- POST /vms/{vm:id}/snapshot/{snapshot:id}/restore
- POST /vms/{vm:id}/start
- GET /vms/{vm:id}/statistics
- GET /vms/{vm:id}/statistics/{statistic:id}
- POST /vms/{vm:id}/stop
- POST /vms/{vm:id}/suspend
- POST /vms/{vm:id}/tags
- GET /vms/{vm:id}/tags
- GET /vms/{vm:id}/tags/{tag:id}
- DELETE /vms/{vm:id}/tags/{tag:id}
- POST /vms/{vm:id}/thawfilesystems
- POST /vms/{vm:id}/ticket
- POST /vms/{vm:id}/undosnapshot
- POST /vms/{vm:id}/watchdogs
- GET /vms/{vm:id}/watchdogs
- GET /vms/{vm:id}/watchdogs/{watchdog:id}
- PUT /vms/{vm:id}/watchdogs/{watchdog:id}
- DELETE /vms/{vm:id}/watchdogs/{watchdog:id}
- POST /vnicprofiles
- GET /vnicprofiles
- GET /vnicprofiles/{profile:id}
- PUT /vnicprofiles/{profile:id}
- DELETE /vnicprofiles/{profile:id}
- POST /vnicprofiles/{profile:id}/permissions
- GET /vnicprofiles/{profile:id}/permissions
- GET /vnicprofiles/{profile:id}/permissions/{permission:id}
- DELETE /vnicprofiles/{profile:id}/permissions/{permission:id}
第 6 章 服务
本节枚举 API 中提供的所有服务。
6.1. AffinityGroup
此服务管理单个关联性组。
表 6.1. 方法概述
名称 | 概述 |
---|---|
| 检索关联性组详细信息。 |
| 移除 affinity 组。 |
| 更新 affinity 组。 |
6.1.1. 获取 GET
检索关联性组详细信息。
<affinity_group id="00000000-0000-0000-0000-000000000000"> <name>AF_GROUP_001</name> <cluster id="00000000-0000-0000-0000-000000000000"/> <positive>true</positive> <enforcing>true</enforcing> </affinity_group>
表 6.2. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 关联性组。 |
6.1.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.1.2. 删除 DELETE
移除 affinity 组。
DELETE /ovirt-engine/api/clusters/000-000/affinitygroups/123-456
表 6.3. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.1.3. 更新 PUT
更新 affinity 组。
表 6.4. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 关联性组。 |
6.2. AffinityGroupHost
此服务管理单个主机与关联性组分配。
表 6.5. 方法概述
名称 | 概述 |
---|---|
| 从 affinity 组移除主机。 |
6.2.1. 删除 DELETE
从 affinity 组移除主机。
表 6.6. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.3. AffinityGroupHostLabel
此服务管理分配至关联性组的单一主机标签。
表 6.7. 方法概述
名称 | 概述 |
---|---|
| 从 affinity 组移除此标签。 |
6.3.1. 删除 DELETE
从 affinity 组移除此标签。
表 6.8. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.4. AffinityGroupHostLabels
此服务管理分配到关联性组的所有主机标签的集合。
表 6.9. 方法概述
名称 | 概述 |
---|---|
| 将主机标签添加到 affinity 组。 |
| 列出分配到此关联性组的所有主机标签。 |
6.4.1. 添加 POST
将主机标签添加到 affinity 组。
例如,要将 label 789
添加到集群 123
的关联性组 456
中,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/123/affinitygroups/456/hostlabels
使用以下机构:
<affinity_label id="789"/>
表 6.10. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加到关联性组中的 AffinityLabel 对象。 |
6.4.2. 列出 GET
列出分配到此关联性组的所有主机标签。
返回标签的顺序不受保证。
表 6.11. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 分配给 affinity 组的主机标签。 | |
| in | 设置要返回的最大主机标签数。 |
6.4.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.4.2.2. Max
设置要返回的最大主机标签数。如果没有指定,则返回所有标签。
6.5. AffinityGroupHosts
此服务管理分配到关联性组的所有主机的集合。
表 6.12. 方法概述
名称 | 概述 |
---|---|
| 将主机添加到关联性组。 |
| 列出分配到此关联性组的所有主机。 |
6.5.1. 添加 POST
将主机添加到关联性组。
例如,要将 host 789
添加到集群 123
的关联性组 456
中,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/123/affinitygroups/456/hosts
使用以下机构:
<host id="789"/>
表 6.13. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加到关联性组中的主机。 |
6.5.2. 列出 GET
列出分配到此关联性组的所有主机。
返回的主机的顺序不受保证。
6.5.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.5.2.2. Max
设置要返回的最大主机数。如果未指定,则返回所有主机。
6.6. AffinityGroupVm
此服务管理单个虚拟机与组分配关联。
表 6.15. 方法概述
名称 | 概述 |
---|---|
| 从关联性组中移除此虚拟机。 |
6.6.1. 删除 DELETE
从关联性组中移除此虚拟机。
表 6.16. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.7. AffinityGroupVmLabel
此服务管理分配至关联性组的单一虚拟机标签。
表 6.17. 方法概述
名称 | 概述 |
---|---|
| 从 affinity 组移除此标签。 |
6.7.1. 删除 DELETE
从 affinity 组移除此标签。
表 6.18. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.8. AffinityGroupVmLabels
此服务管理分配到关联性组的所有虚拟机标签的集合。
表 6.19. 方法概述
名称 | 概述 |
---|---|
| 向关联性组添加虚拟机标签。 |
| 列出分配到此关联性组的所有虚拟机标签。 |
6.8.1. 添加 POST
向关联性组添加虚拟机标签。
例如,要将 label 789
添加到集群 123
的关联性组 456
中,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/123/affinitygroups/456/vmlabels
使用以下机构:
<affinity_label id="789"/>
表 6.20. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加到关联性组中的 AffinityLabel 对象。 |
6.8.2. 列出 GET
列出分配到此关联性组的所有虚拟机标签。
返回标签的顺序不受保证。
表 6.21. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 分配给关联性组的虚拟机标签。 | |
| in | 设置要返回的最大虚拟机标签数。 |
6.8.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.8.2.2. Max
设置要返回的最大虚拟机标签数。如果没有指定,则返回所有标签。
6.9. AffinityGroupVms
此服务管理分配到关联性组的所有虚拟机的集合。
表 6.22. 方法概述
名称 | 概述 |
---|---|
| 将虚拟机添加到关联性组。 |
| 列出分配到此关联性组的所有虚拟机。 |
6.9.1. 添加 POST
将虚拟机添加到关联性组。
例如,要将虚拟机 789
添加到集群 123
的关联性组 456
中,请发送如下请求:
POST /ovirt-engine/api/clusters/123/affinitygroups/456/vms
使用以下机构:
<vm id="789"/>
表 6.23. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.9.2. 列出 GET
列出分配到此关联性组的所有虚拟机。
返回的虚拟机的顺序无法保证。
6.9.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.9.2.2. Max
设置要返回的最大虚拟机数量。如果未指定,则返回所有虚拟机。
6.10. AffinityGroups
关联性组服务管理虚拟机关系和依赖项。
表 6.25. 方法概述
名称 | 概述 |
---|---|
| 创建新的关联性组。 |
| 列出现有的关联性组。 |
6.10.1. 添加 POST
创建新的关联性组。
在下例中发布一个请求以创建新关联性组:
POST /ovirt-engine/api/clusters/000-000/affinitygroups
并在正文中使用以下示例:
<affinity_group> <name>AF_GROUP_001</name> <hosts_rule> <enforcing>true</enforcing> <positive>true</positive> </hosts_rule> <vms_rule> <enabled>false</enabled> </vms_rule> </affinity_group>
表 6.26. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要创建的关联性组对象。 |
6.10.2. 列出 GET
列出现有的关联性组。
关联组结果的顺序不受保证。
表 6.27. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 现有关联性组的列表。 | |
| in | 设置要返回的关联性组的最大数量。 |
6.10.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.10.2.2. Max
设置要返回的关联性组的最大数量。如果未指定,则返回所有关联性组。
6.11. AffinityLabel
单个关联性标签的详细信息。
表 6.28. 方法概述
名称 | 概述 |
---|---|
| 检索标签的详细信息。 |
| 从系统中删除标签并清除已删除标签的所有分配。 |
| 更新标签。 |
6.11.1. 获取 GET
检索标签的详细信息。
表 6.29. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.11.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.11.2. 删除 DELETE
从系统中删除标签并清除已删除标签的所有分配。
6.11.3. 更新 PUT
更新标签。此调用将更新所有元数据,如名称或描述。
表 6.30. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.12. AffinityLabelHost
此服务表示在通过 affinitylabels/hosts 子集合访问时具有特定标签的主机。
表 6.31. 方法概述
名称 | 概述 |
---|---|
| 检索分配了此标签的主机的详细信息。 |
| 从主机中删除标签。 |
6.12.1. 获取 GET
检索分配了此标签的主机的详细信息。
6.12.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.12.2. 删除 DELETE
从主机中删除标签。
6.13. AffinityLabelHosts
此服务代表通过 affinitylabels/hosts 子集合访问时具有特定标签的主机列表。
表 6.33. 方法概述
名称 | 概述 |
---|---|
| 向主机添加标签。 |
| 列出具有 标签的所有主机。 |
6.13.1. 添加 POST
向主机添加标签。
表 6.34. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.13.2. 列出 GET
列出具有 标签的所有主机。
返回的主机的顺序不受保证。
6.13.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.14. AffinityLabelVm
此服务代表 vm,它在通过 affinitylabels/vms 子集合访问时具有特定标签。
表 6.36. 方法概述
名称 | 概述 |
---|---|
| 检索分配了此标签的 vm 的详细信息。 |
| 从 vm 中删除标签。 |
6.14.1. 获取 GET
检索分配了此标签的 vm 的详细信息。
6.14.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.14.2. 删除 DELETE
从 vm 中删除标签。
6.15. AffinityLabelVms
此服务代表通过 affinitylabels/vms 子集合访问时具有特定标签的 vms 列表。
表 6.38. 方法概述
名称 | 概述 |
---|---|
| 向 vm 添加标签。 |
| 列出所有具有 标签的虚拟机。 |
6.15.1. 添加 POST
向 vm 添加标签。
表 6.39. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.15.2. 列出 GET
列出所有具有 标签的虚拟机。
返回的虚拟机的顺序无法保证。
6.15.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.16. AffinityLabels
管理系统中可用的关联性标签。
表 6.41. 方法概述
名称 | 概述 |
---|---|
| 创建新标签。 |
| 列出系统中存在的所有标签。 |
6.16.1. 添加 POST
创建新标签。标签自动附加到 vms 或 hosts 列表中提及的所有实体。
表 6.42. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.16.2. 列出 GET
列出系统中存在的所有标签。
返回标签的顺序不受保证。
表 6.43. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大标签数。 |
6.16.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.16.2.2. Max
设置要返回的最大标签数。如果没有指定,则返回所有标签。
6.17. 区域
此注释旨在指定与以下内容相关的带注释概念的 oVirt 区域:目前,以下领域正在使用中,它们与 oVirt 团队紧密相关,但不一定是相同的:
- 基础架构
- Network
- SLA
- 存储
- 虚拟化
概念可以与多个区域相关联,或者与任何区域相关联。
此注解的值仅用于报告,它不会影响生成的所有代码或模型的有效性
6.18. AssignedAffinityLabel
此服务表示在使用实体/关联性标签子集合访问时,实体分配的一个标签。
表 6.44. 方法概述
名称 | 概述 |
---|---|
| 检索所附加标签的详细信息。 |
| 从实体中删除该标签。 |
6.18.1. 获取 GET
检索所附加标签的详细信息。
表 6.45. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.18.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.18.2. 删除 DELETE
从实体中删除该标签。请勿接触标签本身。
6.19. AssignedAffinityLabels
此服务用于列出和操作在使用实体/关联性标签访问时分配给支持的实体的关联性标签。
表 6.46. 方法概述
名称 | 概述 |
---|---|
| 将标签附加到实体。 |
| 列出附加到实体的所有标签。 |
6.19.1. 添加 POST
将标签附加到实体。
表 6.47. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.19.2. 列出 GET
列出附加到实体的所有标签。
返回实体的顺序不受保证。
表 6.48. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.19.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.20. AssignedCpuProfile
表 6.49. 方法概述
名称 | 概述 |
---|---|
| |
|
6.20.1. 获取 GET
表 6.50. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.20.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.20.2. 删除 DELETE
表 6.51. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.21. AssignedCpuProfiles
表 6.52. 方法概述
名称 | 概述 |
---|---|
| 为集群添加新 cpu 配置集。 |
| 列出分配给集群的 CPU 配置集。 |
6.21.1. 添加 POST
为集群添加新 cpu 配置集。
表 6.53. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.21.2. 列出 GET
列出分配给集群的 CPU 配置集。
返回的 CPU 配置文件的顺序不受保证。
表 6.54. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大配置集数。 | |
| out |
6.21.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.21.2.2. Max
设置要返回的最大配置集数。如果没有指定,则返回所有配置集。
6.22. AssignedDiskProfile
表 6.55. 方法概述
名称 | 概述 |
---|---|
| |
|
6.22.1. 获取 GET
表 6.56. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.22.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.22.2. 删除 DELETE
表 6.57. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.23. AssignedDiskProfiles
表 6.58. 方法概述
名称 | 概述 |
---|---|
| 为存储域添加新磁盘配置文件。 |
| 返回分配给存储域的磁盘配置文件列表。 |
6.23.1. 添加 POST
为存储域添加新磁盘配置文件。
表 6.59. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.23.2. 列出 GET
返回分配给存储域的磁盘配置文件列表。
返回的磁盘配置文件的顺序无法保证。
表 6.60. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大配置集数。 | |
| out |
6.23.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.23.2.2. Max
设置要返回的最大配置集数。如果没有指定,则返回所有配置集。
6.24. AssignedPermissions
表示权限子集合,按用户、组或某些实体类型的范围。
表 6.61. 方法概述
名称 | 概述 |
---|---|
| 为特定实体为用户或组分配新权限。 |
| 列出特定实体的所有权限。 |
6.24.1. 添加 POST
为特定实体为用户或组分配新权限。
例如,要为 ID 为 123
的虚拟机分配 UserVmManager
角色给 ID 为 456
的用户发送类似如下的请求:
POST /ovirt-engine/api/vms/123/permissions
这样的请求正文:
<permission> <role> <name>UserVmManager</name> </role> <user id="456"/> </permission>
要将 SuperUser
角色分配给 ID 为 456
的用户,请发送如下请求:
POST /ovirt-engine/api/permissions
这样的请求正文:
<permission> <role> <name>SuperUser</name> </role> <user id="456"/> </permission>
如果要为组而不是用户分配权限,请将 user
元素替换为 组
元素的适当 ID
。例如,将 UserRole
角色分配给 ID 为 123
的集群,将 id 789
的组分配如下:
POST /ovirt-engine/api/clusters/123/permissions
这样的请求正文:
<permission> <role> <name>UserRole</name> </role> <group id="789"/> </permission>
表 6.62. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 权限。 |
6.24.2. 列出 GET
列出特定实体的所有权限。
例如,列出 ID 为 123 的集群的所有权限 发送
如下请求:
GET /ovirt-engine/api/clusters/123/permissions
<permissions> <permission id="456"> <cluster id="123"/> <role id="789"/> <user id="451"/> </permission> <permission id="654"> <cluster id="123"/> <role id="789"/> <group id="127"/> </permission> </permissions>
返回的权限顺序不受保证。
表 6.63. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 权限列表。 |
6.24.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.25. AssignedRoles
代表子集合的角色,如用户作用域。
表 6.64. 方法概述
名称 | 概述 |
---|---|
| 返回分配给权限的角色。 |
6.25.1. 列出 GET
返回分配给权限的角色。
返回角色的顺序不受保证。
6.25.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.25.1.2. Max
设置要返回的角色的最大数量。如果未指定,则返回所有角色。
6.26. AssignedTag
种服务,用于管理为系统中特定实体分配特定标签的服务。
表 6.66. 方法概述
名称 | 概述 |
---|---|
| 获取关于分配标签的信息。 |
| 从系统中的特定实体取消分配标签。 |
6.26.1. 获取 GET
获取关于分配标签的信息。
例如,要检索 ID 为 456
的标签信息,该标签分配给 id 123
的虚拟机,发送如下请求:
GET /ovirt-engine/api/vms/123/tags/456
<tag href="/ovirt-engine/api/tags/456" id="456"> <name>root</name> <description>root</description> <vm href="/ovirt-engine/api/vms/123" id="123"/> </tag>
6.26.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.26.2. 删除 DELETE
从系统中的特定实体取消分配标签。
例如,要从 ID 123 的虚拟机中取消分配 ID 为 456
的标签,发送
类似如下的请求:
DELETE /ovirt-engine/api/vms/123/tags/456
表 6.68. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.27. AssignedTags
此服务用于管理向系统中特定实体分配标签的服务。
表 6.69. 方法概述
名称 | 概述 |
---|---|
| 为系统中的特定实体分配标签。 |
| 列出分配给特定实体的所有标签。 |
6.27.1. 添加 POST
为系统中的特定实体分配标签。
例如,将标签 mytag
分配给 ID 为 123
的虚拟机发送如下请求:
POST /ovirt-engine/api/vms/123/tags
这样的请求正文:
<tag> <name>mytag</name> </tag>
表 6.70. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 分配的标签。 |
6.27.2. 列出 GET
列出分配给特定实体的所有标签。
例如,要列出 ID 为 123 的虚拟机的所有标签,发送
如下请求:
GET /ovirt-engine/api/vms/123/tags
<tags> <tag href="/ovirt-engine/api/tags/222" id="222"> <name>mytag</name> <description>mytag</description> <vm href="/ovirt-engine/api/vms/123" id="123"/> </tag> </tags>
返回标签的顺序不受保证。
6.27.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.27.2.2. Max
设置要返回的最大标签数。如果未指定,则返回所有标签。
6.28. AssignedVnicProfile
表 6.72. 方法概述
名称 | 概述 |
---|---|
| |
|
6.28.1. 获取 GET
表 6.73. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.28.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.28.2. 删除 DELETE
表 6.74. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.29. AssignedVnicProfiles
表 6.75. 方法概述
名称 | 概述 |
---|---|
| 为网络添加新的虚拟网络接口卡配置文件。 |
| 将 VNIC 配置集列表返回给网络。 |
6.29.1. 添加 POST
为网络添加新的虚拟网络接口卡配置文件。
表 6.76. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.29.2. 列出 GET
将 VNIC 配置集列表返回给网络。
返回的 VNIC 配置集的顺序无法保证。
表 6.77. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大配置集数。 | |
| out |
6.29.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.29.2.2. Max
设置要返回的最大配置集数。如果没有指定,则返回所有配置集。
6.30. AttachedStorageDomain
表 6.78. 方法概述
名称 | 概述 |
---|---|
| 此操作将激活已连接的存储域。 |
| 此操作将停用已连接的存储域。 |
| |
|
6.30.1. 激活 POST
此操作将激活已连接的存储域。激活存储域后,该存储域就已准备好用于数据中心。
POST /ovirt-engine/api/datacenters/123/storagedomains/456/activate
激活操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
表 6.79. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行激活。 |
6.30.2. 取消激活 POST
此操作将停用已连接的存储域。存储域被停用后,该存储域将不会与数据中心一起使用。例如,要停用存储域 456
,请发送以下请求:
POST /ovirt-engine/api/datacenters/123/storagedomains/456/deactivate
这样的请求正文:
<action/>
如果 force
参数为 true
,则操作将成功,即使取消激活存储域失败前进行 OVF 更新也是如此。如果 force
参数为 false
,OVF 更新失败,则存储域的停用也将失败。
表 6.80. 参数摘要
6.30.2.1. force
指明操作是否应该成功,并且存储域应移到停用的状态,即使存储域的 OVF 更新失败。例如,要使用 force 标志停用存储域 456
,请发送以下请求:
POST /ovirt-engine/api/datacenters/123/storagedomains/456/deactivate
这样的请求正文:
<action> <force>true</force> <action>
此参数是可选的,默认值为 false
。
6.30.3. 获取 GET
表 6.81. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.30.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.30.4. 删除 DELETE
表 6.82. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.31. AttachedStorageDomainDisk
管理附加到数据中心的存储域中的单个磁盘。
由于引擎版本 4.2 旨在仅列出存储域中可用的磁盘,并注册未注册的磁盘。所有其他操作(如复制磁盘、移动磁盘等)已被弃用,并将在以后的中删除。要执行这些操作,请使用管理系统所有磁盘的服务 ,或者使用管理特定磁盘的服务。
表 6.83. 方法概述
名称 | 概述 |
---|---|
| 将磁盘复制到指定的存储域. |
| 将磁盘导出到导出存储域. |
| 检索磁盘的描述。 |
| 将磁盘移动到其他存储域. |
| 注册未注册的磁盘。 |
| 删除磁盘. |
| 稀疏磁盘。 |
| 更新磁盘. |
6.31.1. 复制 POST
将磁盘复制到指定的存储域.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要复制磁盘,请使用管理该磁盘的服务的副本操作。
表 6.84. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 生成磁盘的描述。 | |
| in | 创建新磁盘的存储域。 |
6.31.2. 导出 POST
将磁盘导出到导出存储域.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。若要导出磁盘,可使用管理该磁盘的服务的导出操作。
表 6.85. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 磁盘应导出到的导出存储域。 |
6.31.3. 获取 GET
检索磁盘的描述。
6.31.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.31.4. 移动 POST
将磁盘移动到其他存储域.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要移动磁盘,请使用管理该磁盘的服务的移动操作。
表 6.87. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移动。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 磁盘将移动到的存储域。 |
6.31.5. 注册 POST
注册未注册的磁盘。
6.31.6. 删除 DELETE
删除磁盘.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要删除磁盘,请使用管理该磁盘的服务的 remove 操作。
6.31.7. 稀疏 POST
稀疏磁盘。
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要删除磁盘,请使用管理该磁盘的服务的 remove 操作。
6.31.8. 更新 PUT
更新磁盘.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。若要更新磁盘,可使用管理该磁盘的服务的更新操作。
表 6.88. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 应用到磁盘的更新。 |
6.32. AttachedStorageDomainDisks
管理附加到数据中心的存储域中可用磁盘的集合。
表 6.89. 方法概述
名称 | 概述 |
---|---|
| 添加或注册磁盘。 |
| 检索存储域中可用的磁盘的列表。 |
6.32.1. 添加 POST
添加或注册磁盘。
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要添加新磁盘,请使用管理系统磁盘的服务的 add 操作。要注册一个未注册的磁盘,请使用管理该磁盘的服务注册操作。
6.32.1.1. unregistered
指明是否应添加新磁盘,或者是否应注册现有的未注册磁盘。如果值为 true
,则需要提供要注册的磁盘标识符。例如,使用 id 456
注册磁盘会发送如下请求:
POST /ovirt-engine/api/storagedomains/123/disks?unregistered=true
这样的请求正文:
<disk id="456"/>
如果值为 false
,则会在存储域中创建新磁盘。在这种情况下,provisioning _size
、格式和
name
属性是必需的。例如:要在 1 GiB 的写入磁盘上创建新副本,请发送如下请求:
POST /ovirt-engine/api/storagedomains/123/disks
这样的请求正文:
<disk> <name>mydisk</name> <format>cow</format> <provisioned_size>1073741824</provisioned_size> </disk>
默认值为 false
。
6.32.2. 列出 GET
检索存储域中可用的磁盘的列表。
6.32.2.1. 磁盘
检索的磁盘列表。
返回的磁盘的顺序无法保证。
6.32.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.32.2.3. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.33. AttachedStorageDomains
管理附加到数据中心的存储域。
表 6.92. 方法概述
名称 | 概述 |
---|---|
| 将现有存储域附加到数据中心. |
| 返回附加到数据中心的存储域的列表。 |
6.33.1. 添加 POST
将现有存储域附加到数据中心.
表 6.93. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要连接到数据中心的存储域。 |
6.33.2. 列出 GET
返回附加到数据中心的存储域的列表。
返回的存储域的顺序不受保证。
表 6.94. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的存储域的最大数量。 | |
| out | 附加到数据中心的存储域的列表。 |
6.33.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.33.2.2. Max
设置要返回的存储域的最大数量。如果没有指定,则返回所有存储域。
6.34. balance
表 6.95. 方法概述
名称 | 概述 |
---|---|
| |
|
6.34.1. 获取 GET
6.34.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.34.2. 删除 DELETE
表 6.97. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.35. 平衡
表 6.98. 方法概述
名称 | 概述 |
---|---|
| 向指定的用户定义的调度策略中添加 balance 模块。 |
| 返回调度策略使用的平衡模块列表。 |
6.35.1. 添加 POST
向指定的用户定义的调度策略中添加 balance 模块。
表 6.99. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.35.2. 列出 GET
返回调度策略使用的平衡模块列表。
返回的平衡模块的顺序无法保证。
表 6.100. 参数摘要
6.35.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.35.2.2. Max
设置返回的最大平衡数。如果未指定,将返回所有平衡。
6.36. 书签
用于管理书签的服务。
表 6.101. 方法概述
名称 | 概述 |
---|---|
| 获取书签. |
| 删除书签. |
| 更新书签. |
6.36.1. 获取 GET
获取书签.
获取书签的示例:
GET /ovirt-engine/api/bookmarks/123
<bookmark href="/ovirt-engine/api/bookmarks/123" id="123"> <name>example_vm</name> <value>vm: name=example*</value> </bookmark>
6.36.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.36.2. 删除 DELETE
删除书签.
删除书签的示例:
DELETE /ovirt-engine/api/bookmarks/123
表 6.103. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.36.3. 更新 PUT
更新书签.
更新书签的示例:
PUT /ovirt-engine/api/bookmarks/123
使用请求正文:
<bookmark> <name>new_example_vm</name> <value>vm: name=new_example*</value> </bookmark>
6.37. 书签
用于管理书签的服务。
表 6.105. 方法概述
名称 | 概述 |
---|---|
| 添加新书签. |
| 列出所有可用的书签。 |
6.37.1. 添加 POST
添加新书签.
添加书签示例:
POST /ovirt-engine/api/bookmarks
<bookmark> <name>new_example_vm</name> <value>vm: name=new_example*</value> </bookmark>
表 6.106. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 添加的书签. |
6.37.2. 列出 GET
列出所有可用的书签。
列出书签示例:
GET /ovirt-engine/api/bookmarks
<bookmarks> <bookmark href="/ovirt-engine/api/bookmarks/123" id="123"> <name>database</name> <value>vm: name=database*</value> </bookmark> <bookmark href="/ovirt-engine/api/bookmarks/456" id="456"> <name>example</name> <value>vm: name=example*</value> </bookmark> </bookmarks>
返回的书签的顺序无法保证。
6.37.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.37.2.2. Max
设置要返回的最大书签数。如果没有指定,则返回所有书签。
6.38. Cluster
管理特定集群的服务。
表 6.108. 方法概述
名称 | 概述 |
---|---|
| 获取有关集群的信息。 |
| 刷新集群中所有卷的 Gluster 修复信息。 |
| 从系统中删除集群。 |
| |
| 同步集群中的所有网络。 |
| 更新有关集群的信息。 |
| 根据操作值启动、更新或完成集群的升级过程。 |
6.38.1. 获取 GET
获取有关集群的信息。
获取集群的示例:
GET /ovirt-engine/api/clusters/123
<cluster href="/ovirt-engine/api/clusters/123" id="123"> <actions> <link href="/ovirt-engine/api/clusters/123/resetemulatedmachine" rel="resetemulatedmachine"/> </actions> <name>Default</name> <description>The default server cluster</description> <link href="/ovirt-engine/api/clusters/123/networks" rel="networks"/> <link href="/ovirt-engine/api/clusters/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/clusters/123/glustervolumes" rel="glustervolumes"/> <link href="/ovirt-engine/api/clusters/123/glusterhooks" rel="glusterhooks"/> <link href="/ovirt-engine/api/clusters/123/affinitygroups" rel="affinitygroups"/> <link href="/ovirt-engine/api/clusters/123/cpuprofiles" rel="cpuprofiles"/> <ballooning_enabled>false</ballooning_enabled> <cpu> <architecture>x86_64</architecture> <type>Intel Nehalem Family</type> </cpu> <error_handling> <on_error>migrate</on_error> </error_handling> <fencing_policy> <enabled>true</enabled> <skip_if_connectivity_broken> <enabled>false</enabled> <threshold>50</threshold> </skip_if_connectivity_broken> <skip_if_sd_active> <enabled>false</enabled> </skip_if_sd_active> </fencing_policy> <gluster_service>false</gluster_service> <ha_reservation>false</ha_reservation> <ksm> <enabled>true</enabled> <merge_across_nodes>true</merge_across_nodes> </ksm> <memory_policy> <over_commit> <percent>100</percent> </over_commit> <transparent_hugepages> <enabled>true</enabled> </transparent_hugepages> </memory_policy> <migration> <auto_converge>inherit</auto_converge> <bandwidth> <assignment_method>auto</assignment_method> </bandwidth> <compressed>inherit</compressed> </migration> <required_rng_sources> <required_rng_source>random</required_rng_source> </required_rng_sources> <scheduling_policy href="/ovirt-engine/api/schedulingpolicies/456" id="456"/> <threads_as_cores>false</threads_as_cores> <trusted_service>false</trusted_service> <tunnel_migration>false</tunnel_migration> <version> <major>4</major> <minor>0</minor> </version> <virt_service>true</virt_service> <data_center href="/ovirt-engine/api/datacenters/111" id="111"/> </cluster>
表 6.109. 参数摘要
6.38.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.38.2. refreshglusterhealstatus POST
刷新集群中所有卷的 Gluster 修复信息。
例如,Cluster 123
,发送类似如下的请求:
POST /ovirt-engine/api/clusters/123/refreshglusterhealstatus
6.38.3. 删除 DELETE
从系统中删除集群。
DELETE /ovirt-engine/api/clusters/00000000-0000-0000-0000-000000000000
表 6.110. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.38.4. resetemulatedmachine POST
表 6.111. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行重置。 |
6.38.5. syncallnetworks POST
同步集群中的所有网络。
POST /ovirt-engine/api/clusters/123/syncallnetworks
这样的请求正文:
<action/>
表 6.112. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.38.6. 更新 PUT
更新有关集群的信息。
只有指定的字段会被更新,其他字段保持不变。
例如,更新集群的 CPU:
PUT /ovirt-engine/api/clusters/123
这样的请求正文:
<cluster> <cpu> <type>Intel Haswell-noTSX Family</type> </cpu> </cluster>
6.38.7. 升级 POST
根据操作值启动、更新或完成集群的升级过程。此操作将集群标记为升级,更新进度,或者根据 启动
值、停止或 update_progress
的值来清除在集群中运行的升级标志。
POST /ovirt-engine/api/clusters/123/upgrade
使用这个请求正文来标记集群进行升级:
<action> <upgrade_action> start </upgrade_action> </action>
在开始升级后,请使用请求正文将进度更新为 15%:
<action> <upgrade_action> update_progress </upgrade_action> <upgrade_percent_complete> 15 </upgrade_percent_complete> </action>
表 6.114. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 | |
| in | 明确设置升级相关性标识符。 | |
| in | 要执行的操作。 | |
| in | 将升级的过程作为总过程的百分比更新。 |
6.38.7.1. correlation_id
明确设置升级相关性标识符。使用 将详细说明集群升级的事件与升级本身相关联。如果不指定,则使用来自 Correlation-Id
http 标头的关联 ID。
6.39. ClusterEnabledFeature
代表为集群启用的功能。
表 6.115. 方法概述
名称 | 概述 |
---|---|
| 提供有关启用集群功能的信息。 |
| 禁用集群功能。 |
6.39.1. 获取 GET
提供有关启用集群功能的信息。
例如,要查找集群 123
启用的功能 456
的详细信息,请发送如下请求:
GET /ovirt-engine/api/clusters/123/enabledfeatures/456
这将返回包含名称的 ClusterFeature 对象:
<cluster_feature id="456"> <name>libgfapi_supported</name> </cluster_feature>
表 6.116. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索启用的集群功能。 | |
| in | 指明应遵循哪些内联链接。 |
6.39.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.39.2. 删除 DELETE
禁用集群功能。
例如,要禁用集群 123
的功能 456
,发送如下请求:
DELETE /ovirt-engine/api/clusters/123/enabledfeatures/456
6.40. ClusterEnabledFeatures
提供有关为此集群启用的其他功能的信息。启用的功能是集群级别的可用功能
表 6.117. 方法概述
名称 | 概述 |
---|---|
| 为集群启用额外功能。 |
| 列出为集群启用的其他功能。 |
6.40.1. 添加 POST
为集群启用额外功能。
例如,要在集群 123
上启用功能 456
,请发送如下请求:
POST /ovirt-engine/api/clusters/123/enabledfeatures
请求正文应类似如下:
<cluster_feature id="456"/>
表 6.118. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.40.2. 列出 GET
列出为集群启用的其他功能。
例如,要为集群 123
启用功能,请发送类似如下的请求:
GET /ovirt-engine/api/clusters/123/enabledfeatures
这将返回一个功能列表:
<enabled_features> <cluster_feature id="123"> <name>test_feature</name> </cluster_feature> ... </enabled_features>
表 6.119. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索的功能. | |
| in | 指明应遵循哪些内联链接。 |
6.40.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.41. ClusterExternalProviders
此服务列出了外部提供程序。
表 6.120. 方法概述
名称 | 概述 |
---|---|
| 返回外部提供程序列表。 |
6.41.1. 列出 GET
返回外部提供程序列表。
无法保证返回的供应商列表的顺序。
表 6.121. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.41.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.42. ClusterFeature
代表为集群级别启用的功能
表 6.122. 方法概述
名称 | 概述 |
---|---|
| 提供有关集群级别支持的集群功能的信息。 |
6.42.1. 获取 GET
提供有关集群级别支持的集群功能的信息。
例如,要查找集群级别 4.1 的集群功能 456
的详情,请发送类似如下的请求:
GET /ovirt-engine/api/clusterlevels/4.1/clusterfeatures/456
这将返回包含名称的 ClusterFeature 对象:
<cluster_feature id="456"> <name>libgfapi_supported</name> </cluster_feature>
表 6.123. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索的集群功能。 | |
| in | 指明应遵循哪些内联链接。 |
6.42.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.43. ClusterFeatures
提供有关集群级别支持的集群功能的信息。
表 6.124. 方法概述
名称 | 概述 |
---|---|
| 列出集群级别支持的集群功能。 |
6.43.1. 列出 GET
列出集群级别支持的集群功能。
GET /ovirt-engine/api/clusterlevels/4.1/clusterfeatures
这将返回集群级别支持的集群功能列表:
<cluster_features> <cluster_feature id="123"> <name>test_feature</name> </cluster_feature> ... </cluster_features>
表 6.125. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索的功能. | |
| in | 指明应遵循哪些内联链接。 |
6.43.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.44. ClusterLevel
提供有关特定集群级别的信息。如需更多信息,请参阅 ClusterLevels 服务。
表 6.126. 方法概述
名称 | 概述 |
---|---|
| 提供有关此服务管理的特定集群级别功能的信息。 |
6.44.1. 获取 GET
提供有关此服务管理的特定集群级别功能的信息。
例如,要查找级别 3.6 支持哪些 CPU 类型,您可以发送类似如下的请求:
GET /ovirt-engine/api/clusterlevels/3.6
这将返回一个包含支持的 CPU 类型的 ClusterLevel 对象,以及描述集群级别的其他信息:
<cluster_level id="3.6"> <cpu_types> <cpu_type> <name>Intel Nehalem Family</name> <level>3</level> <architecture>x86_64</architecture> </cpu_type> ... </cpu_types> <permits> <permit id="1"> <name>create_vm</name> <administrative>false</administrative> </permit> ... </permits> </cluster_level>
表 6.127. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | Retreived 集群级别. |
6.44.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.45. ClusterLevels
提供有关引擎支持的不同集群级别功能的信息。引擎的版本 4.0 支持级别 4.0 和 3.6。每个级别都支持不同的 CPU 类型集,例如:此服务提供该信息。
表 6.128. 方法概述
名称 | 概述 |
---|---|
| 列出系统支持的集群级别。 |
6.45.1. 列出 GET
列出系统支持的集群级别。
GET /ovirt-engine/api/clusterlevels
这将返回可用集群级别的列表。
<cluster_levels> <cluster_level id="4.0"> ... </cluster_level> ... </cluster_levels>
返回的集群级别的顺序不受保证。
表 6.129. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 检索的集群级别。 |
6.45.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.46. ClusterNetwork
管理特定集群网络的服务。
表 6.130. 方法概述
名称 | 概述 |
---|---|
| 检索集群网络详情。 |
| 从集群中取消分配网络。 |
| 更新集群中的网络。 |
6.46.1. 获取 GET
检索集群网络详情。
6.46.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.46.2. 删除 DELETE
从集群中取消分配网络。
6.46.3. 更新 PUT
更新集群中的网络。
表 6.132. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 集群网络。 |
6.47. ClusterNetworks
用于管理集群网络的服务。
表 6.133. 方法概述
名称 | 概述 |
---|---|
| 将网络分配给集群。 |
| 列出分配到集群的网络。 |
6.47.1. 添加 POST
将网络分配给集群。
在以下示例中发布一个将网络分配给集群的请求:
POST /ovirt-engine/api/clusters/123/networks
在正文中使用以下示例:
<network id="123" />
表 6.134. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要分配给集群的网络对象。 |
6.47.2. 列出 GET
列出分配到集群的网络。
返回的集群的顺序不受保证。
表 6.135. 参数摘要
6.47.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.47.2.2. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.48. 集群
用于管理集群的服务。
表 6.136. 方法概述
名称 | 概述 |
---|---|
| 创建新群集. |
| 返回系统群集列表。 |
6.48.1. 添加 POST
创建新群集.
这需要 name
、cpu.type
和 data_center
属性。使用 id
或 name
属性识别数据中心。
POST /ovirt-engine/api/clusters
这样的请求正文:
<cluster> <name>mycluster</name> <cpu> <type>Intel Nehalem Family</type> </cpu> <data_center id="123"/> </cluster>
要创建具有外部网络供应商的集群,请在添加到集群中的每个主机上部署,请发送如下请求:
POST /ovirt-engine/api/clusters
使用一个请求正文,其中包含对所需供应商的引用:
<cluster> <name>mycluster</name> <cpu> <type>Intel Nehalem Family</type> </cpu> <data_center id="123"/> <external_network_providers> <external_provider name="ovirt-provider-ovn"/> </external_network_providers> </cluster>
表 6.137. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.48.2. 列出 GET
返回系统群集列表。
只有 search
参数中包含 sortby
子句时,才会保证返回的集群的顺序。
表 6.138. 参数摘要
6.48.2.1. case_sensitive
指明是否应该在考虑大小写的情况下执行搜索。默认值为 true
,这意味着会考虑这个情况。要搜索忽略大小写,将其设置为 false
。
6.48.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.48.2.3. Max
设置要返回的最大集群数量。如果没有指定,则会返回所有集群。
6.49. Copyable
表 6.139. 方法概述
名称 | 概述 |
---|---|
|
6.49.1. 复制 POST
表 6.140. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明复制应异步执行。 |
6.50. CpuProfile
表 6.141. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新系统中指定的 cpu 配置集。 |
6.50.1. 获取 GET
表 6.142. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.50.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.50.2. 删除 DELETE
表 6.143. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.50.3. 更新 PUT
更新系统中指定的 cpu 配置集。
表 6.144. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.51. CpuProfiles
表 6.145. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新 cpu 配置集。 |
| 返回系统的 CPU 配置文件列表。 |
6.51.1. 添加 POST
向系统添加新 cpu 配置集。
表 6.146. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.51.2. 列出 GET
返回系统的 CPU 配置文件列表。
CPU 配置文件返回列表的顺序是随机的。
表 6.147. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大配置集数。 | |
| out |
6.51.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.51.2.2. Max
设置要返回的最大配置集数。如果没有指定,则会返回所有配置集。
6.52. DataCenter
用于管理数据中心的服务。
表 6.148. 方法概述
名称 | 概述 |
---|---|
| 目前,如果 SPM 不参与任务,存储池管理器(SPM)无法切换到其他主机。 |
| 获取数据中心. |
| 移除数据中心. |
| 用于将数据中心中的存储域手动设置为主域。 |
| 更新数据中心. |
6.52.1. 清理finishedtasks POST
目前,如果 SPM 不参与任务,存储池管理器(SPM)无法切换到其他主机。清除所有已完成的任务可启用 SPM 切换。
例如,要清理 ID 为 123 的数据中心中的所有已完成任务,请 发送
类似如下的请求:
POST /ovirt-engine/api/datacenters/123/cleanfinishedtasks
这样的请求正文:
<action/>
表 6.149. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.52.2. 获取 GET
获取数据中心.
获取数据中心的示例:
GET /ovirt-engine/api/datacenters/123
<data_center href="/ovirt-engine/api/datacenters/123" id="123"> <name>Default</name> <description>The default Data Center</description> <link href="/ovirt-engine/api/datacenters/123/clusters" rel="clusters"/> <link href="/ovirt-engine/api/datacenters/123/storagedomains" rel="storagedomains"/> <link href="/ovirt-engine/api/datacenters/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/datacenters/123/networks" rel="networks"/> <link href="/ovirt-engine/api/datacenters/123/quotas" rel="quotas"/> <link href="/ovirt-engine/api/datacenters/123/qoss" rel="qoss"/> <link href="/ovirt-engine/api/datacenters/123/iscsibonds" rel="iscsibonds"/> <local>false</local> <quota_mode>disabled</quota_mode> <status>up</status> <storage_format>v3</storage_format> <supported_versions> <version> <major>4</major> <minor>0</minor> </version> </supported_versions> <version> <major>4</major> <minor>0</minor> </version> <mac_pool href="/ovirt-engine/api/macpools/456" id="456"/> </data_center>
表 6.150. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 |
6.52.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.52.3. 删除 DELETE
移除数据中心.
DELETE /ovirt-engine/api/datacenters/123
如果不使用任何特殊参数,附加到数据中心的存储域将被分离,然后从存储中删除。如果执行此操作时出现问题,例如没有主机可用于从存储中删除存储域,则完整的操作将失败。
如果 force
参数为 true
,则操作将始终成功,即使某些操作在删除一个存储域时也会失败,例如:故障只是被忽略,数据中心仍然从数据库中删除。
6.52.3.1. force
指明操作是否应该成功,并且存储域从数据库中删除,即使操作期间出现问题。
此参数是可选的,默认值为 false
。
6.52.4. setmaster POST
用于将数据中心中的存储域手动设置为主域。例如,若要在 ID 为 '123' 的数据中心上将 ID 为"456"的存储域设置为 master,请发送类似如下的请求:
POST /ovirt-engine/api/datacenters/123/setmaster
这样的请求正文:
<action> <storage_domain id="456"/> </action>
也可以通过其名称来指定新的主存储域。
表 6.152. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 | |
| in | 数据中心的新主存储域. |
6.52.5. 更新 PUT
更新数据中心.
name
、description、storage
_type
、version
、storage_format
和 mac_pool
元素是 updatable 后创建。例如,要更改数据中心 123
的名称和描述,请发送如下请求:
PUT /ovirt-engine/api/datacenters/123
这样的请求正文:
<data_center> <name>myupdatedname</name> <description>An updated description for the data center</description> </data_center>
表 6.153. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 正在更新的数据中心。 |
6.53. DataCenterNetwork
用于管理特定数据中心网络的服务。
表 6.154. 方法概述
名称 | 概述 |
---|---|
| 检索数据中心网络详细信息。 |
| 移除网络。 |
| 更新数据中心中的网络。 |
6.53.1. 获取 GET
检索数据中心网络详细信息。
6.53.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.53.2. 删除 DELETE
移除网络。
6.53.3. 更新 PUT
更新数据中心中的网络。
表 6.156. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 数据中心网络. |
6.54. DataCenterNetworks
用于管理数据中心网络的服务。
表 6.157. 方法概述
名称 | 概述 |
---|---|
| 在数据中心中创建新网络。 |
| 列出数据中心中的网络. |
6.54.1. 添加 POST
在数据中心中创建新网络。
在下例中发出一个请求,以在 ID 为 123 的数据中心中创建一个新网络 。
POST /ovirt-engine/api/datacenters/123/networks
在正文中使用以下示例:
<network> <name>mynetwork</name> </network>
表 6.158. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要在数据中心中创建的网络对象。 |
6.54.2. 列出 GET
列出数据中心中的网络.
网络返回列表的顺序无法保证。
表 6.159. 参数摘要
6.54.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.54.2.2. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.55. DataCenters
用于管理数据中心的服务。
表 6.160. 方法概述
名称 | 概述 |
---|---|
| 创建新的数据中心. |
| 列出数据中心. |
6.55.1. 添加 POST
创建新的数据中心.
创建新数据中心需要 名称和
本地
元素。例如,要创建名为 mydc
的数据中心,它使用共享存储(NFS、iSCSI 或光纤通道)发送如下的请求:
POST /ovirt-engine/api/datacenters
这样的请求正文:
<data_center> <name>mydc</name> <local>false</local> </data_center>
表 6.161. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 正在添加的数据中心。 |
6.55.2. 列出 GET
列出数据中心.
以下请求检索数据中心的表示法:
GET /ovirt-engine/api/datacenters
以上请求通过 curl
执行:
curl \ --request GET \ --cacert /etc/pki/ovirt-engine/ca.pem \ --header "Version: 4" \ --header "Accept: application/xml" \ --user "admin@internal:mypassword" \ https://myengine.example.com/ovirt-engine/api/datacenters
以下是响应示例:
<data_center href="/ovirt-engine/api/datacenters/123" id="123"> <name>Default</name> <description>The default Data Center</description> <link href="/ovirt-engine/api/datacenters/123/networks" rel="networks"/> <link href="/ovirt-engine/api/datacenters/123/storagedomains" rel="storagedomains"/> <link href="/ovirt-engine/api/datacenters/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/datacenters/123/clusters" rel="clusters"/> <link href="/ovirt-engine/api/datacenters/123/qoss" rel="qoss"/> <link href="/ovirt-engine/api/datacenters/123/iscsibonds" rel="iscsibonds"/> <link href="/ovirt-engine/api/datacenters/123/quotas" rel="quotas"/> <local>false</local> <quota_mode>disabled</quota_mode> <status>up</status> <supported_versions> <version> <major>4</major> <minor>0</minor> </version> </supported_versions> <version> <major>4</major> <minor>0</minor> </version> </data_center>
注意您的 Default
数据中心的 id
代码。此代码相对于虚拟环境的其他资源标识此数据中心。
数据中心还包含指向存储域集合的链接。数据中心使用此集合从存储域主集合中附加存储域。
只有 search
参数中包含 sortby
子句时,才会保证返回的数据中心列表的顺序。
表 6.162. 参数摘要
6.55.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.55.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.55.2.3. Max
设置要返回的数据中心的最大数量。如果没有指定,则会返回所有数据中心。
6.56. Disk
管理单个磁盘.
表 6.163. 方法概述
名称 | 概述 |
---|---|
| 转换磁盘格式和/或预分配模式。 |
| 此操作将磁盘复制到指定的存储域。 |
| 将磁盘导出到导出存储域. |
| 检索磁盘的描述。 |
| 将磁盘移动到其他存储域. |
| 减少磁盘镜像的大小。 |
| 使用存储中的最新信息刷新直接 LUN 磁盘。 |
| 删除磁盘. |
| 稀疏磁盘。 |
| 更新指定磁盘的参数。 |
6.56.1. 转换 POST
转换磁盘格式和/或预分配模式。
例如,要将磁盘格式从预分配转换为稀疏镜像,请发送如下请求:
POST /ovirt-engine/api/disks/123/convert
使用以下请求正文:
<action> <disk> <sparse>true</sparse> <format>raw</format> </disk> </action>
6.56.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.56.2. 复制 POST
此操作将磁盘复制到指定的存储域。
例如,可使用以下请求复制磁盘:
POST /ovirt-engine/api/disks/123/copy
这样的请求正文:
<action> <storage_domain id="456"/> <disk> <name>mydisk</name> </disk> </action>
如果没有为新存储域定义磁盘配置文件或磁盘当前使用的配额,则可以明确指定它们。如果没有指定它们,则使用第一个可用磁盘配置文件和默认配额。
例如,要指定磁盘配置集 987
和配额 753
,请发送如下请求正文:
<action> <storage_domain id="456"/> <disk_profile id="987"/> <quota id="753"/> </action>
表 6.165. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明复制应异步执行。 | |
| in | ||
| in | 新存储域中磁盘的磁盘配置文件。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 新存储域中的磁盘配额。 | |
| in | 创建新磁盘的存储域。 |
6.56.2.1. disk_profile
新存储域中磁盘的磁盘配置文件。
为存储域定义磁盘配置文件,因此旧磁盘配置文件不会存在于新存储域中。如果未使用此参数,则将向磁盘分配用户具有权限的新存储域中的第一个磁盘配置文件。
6.56.2.2. quota
新存储域中的磁盘配额。
此可选参数可用于指定磁盘的新配额,因为可能不会为新存储域定义当前的配额。如果未为新存储域定义此参数,并且未为新存储域定义旧配额,则将向磁盘分配默认(无限)配额。
6.56.2.3. storage_domain
创建新磁盘的存储域。这可以使用 id
或 name 属性指定
。例如,要将磁盘复制到名为 mydata
的存储域,请发送类似如下的请求:
POST /ovirt-engine/api/storagedomains/123/disks/789
这样的请求正文:
<action> <storage_domain> <name>mydata</name> </storage_domain> </action>
6.56.3. 导出 POST
将磁盘导出到导出存储域.
表 6.166. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行导出。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 磁盘要导出到的导出存储域。 |
6.56.4. 获取 GET
检索磁盘的描述。
表 6.167. 参数摘要
6.56.4.1. all_content
指明是否应将磁盘的所有属性包含在响应中。
默认情况下,排除以下磁盘属性:
-
vms
例如,要检索磁盘 '123' 的完整表示法:
GET /ovirt-engine/api/disks/123?all_content=true
6.56.4.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.56.5. 移动 POST
将磁盘移动到其他存储域.
例如,要将标识符为 123
的磁盘移动到标识符 456
的存储域中,发送以下请求:
POST /ovirt-engine/api/disks/123/move
使用以下请求正文:
<action> <storage_domain id="456"/> </action>
如果没有为新存储域定义磁盘配置文件或当前磁盘使用的配额,则可以明确指定它们。如果没有,则使用第一个可用磁盘配置文件和默认配额。
例如,要显式使用磁盘 profile 987
,配额 753
会发送如下请求正文:
<action> <storage_domain id="456"/> <disk_profile id="987"/> <quota id="753"/> </action>
表 6.168. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移动。 | |
| in | 新存储域中磁盘的磁盘配置文件。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 新存储域中的磁盘配额。 | |
| in | 磁盘将移动到的存储域。 |
6.56.5.1. disk_profile
新存储域中磁盘的磁盘配置文件。
为存储域定义磁盘配置文件,因此旧磁盘配置文件不会存在于新存储域中。如果未使用此参数,则将向磁盘分配用户具有权限的新存储域中的第一个磁盘配置文件。
6.56.5.2. quota
新存储域中的磁盘配额。
此可选参数可用于指定磁盘的新配额,因为可能不会为新存储域定义当前的配额。如果未为新存储域定义此参数,并且未为新存储域定义旧配额,则将向磁盘分配默认(无限)配额。
6.56.6. 减少 POST
减少磁盘镜像的大小。
在逻辑卷中调用 less(即,这仅适用于块存储域)。这适用于附加到未运行虚拟机的浮动磁盘和磁盘。无需指定大小,因为会自动计算最佳大小。
表 6.169. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.56.7. refreshlun POST
使用存储中的最新信息刷新直接 LUN 磁盘。
在以下情况下刷新直接 LUN 磁盘非常有用:
- LUN 在没有 host 参数的情况下使用 API 添加,因此不包含存储中的任何信息(请参阅 DisksService::add)。
- 有关 LUN 的新信息可在存储中获取,您希望使用它更新 LUN。
要使用主机 456
刷新直接 LUN 磁盘 123
,请发送以下请求:
POST /ovirt-engine/api/disks/123/refreshlun
使用以下请求正文:
<action> <host id='456'/> </action>
表 6.170. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 用于刷新直接 LUN 磁盘的主机。 |
6.56.8. 删除 DELETE
删除磁盘.
表 6.171. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.56.9. 稀疏 POST
稀疏磁盘。
解析可在其文件系统不使用的磁盘映像中释放空间。因此,镜像会在存储中占用较少的空间。
目前稀疏仅适用于没有快照的磁盘。也不允许有派生磁盘的磁盘。
6.56.10. 更新 PUT
更新指定磁盘的参数。
此操作允许更新以下浮动磁盘属性:
-
对于映像磁盘:
provisioned_size
、alias
、description
、wipe_after_delete
、可共享
、备份
和disk_profile
。 -
LUN 磁盘:
别名
、说明
和可共享.
- Cinder 集成已被 Managed Block Storage 替代。
-
对于 Managed Block 磁盘:
provisioned_size
、别名
和描述
。 -
对于虚拟机附加的磁盘,也可更新
qcow_version
。
例如,可以使用以下请求完成磁盘的更新:
PUT /ovirt-engine/api/disks/123
这样的请求正文:
<disk> <qcow_version>qcow2_v3</qcow_version> <alias>new-alias</alias> <description>new-desc</description> </disk>
由于后端操作是异步的,返回给用户的磁盘元素可能无法与更改的属性同步。
表 6.172. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 应用到磁盘的更新。 |
6.57. DiskAttachment
此服务管理磁盘附加到虚拟机。
表 6.173. 方法概述
名称 | 概述 |
---|---|
| 返回附加的详细信息,包括可引导标志和磁盘链接。 |
| 删除磁盘附加。 |
| 更新磁盘附加及其中的磁盘属性。 |
6.57.1. 获取 GET
返回附加的详细信息,包括可引导标志和磁盘链接。
获取磁盘附加的示例:
GET /ovirt-engine/api/vms/123/diskattachments/456
<disk_attachment href="/ovirt-engine/api/vms/123/diskattachments/456" id="456"> <active>true</active> <bootable>true</bootable> <interface>virtio</interface> <disk href="/ovirt-engine/api/disks/456" id="456"/> <vm href="/ovirt-engine/api/vms/123" id="123"/> </disk_attachment>
表 6.174. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.57.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.57.2. 删除 DELETE
删除磁盘附加。
这只会将磁盘从虚拟机分离,但不会将其从系统中删除,除非 detach_only
参数为 false
。
删除磁盘附加的示例:
DELETE /ovirt-engine/api/vms/123/diskattachments/456?detach_only=true
表 6.175. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明磁盘是否应该从虚拟机分离,但不应从系统中删除。 |
6.57.2.1. detach_only
指明磁盘是否应该从虚拟机分离,但不应从系统中删除。默认值为 true
,这不会从系统中删除磁盘。
6.57.3. 更新 PUT
更新磁盘附加及其中的磁盘属性。
PUT /vms/{vm:id}/disksattachments/{attachment:id} <disk_attachment> <bootable>true</bootable> <interface>ide</interface> <active>true</active> <disk> <name>mydisk</name> <provisioned_size>1024</provisioned_size> ... </disk> </disk_attachment>
表 6.176. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.58. DiskAttachments
此服务管理附加到虚拟机的磁盘集合。每个附加的磁盘都由 DiskAttachment 表示,其中包含可引导标志、磁盘接口和磁盘引用。
表 6.177. 方法概述
名称 | 概述 |
---|---|
| 将新磁盘附加添加到虚拟机。 |
| 列出附加到虚拟机的磁盘。 |
6.58.1. 添加 POST
将新磁盘附加添加到虚拟机。如果磁盘已存在,附加
参数可以只包含一个引用:
<disk_attachment> <bootable>true</bootable> <pass_discard>true</pass_discard> <interface>ide</interface> <active>true</active> <disk id="123"/> </disk_attachment>
或者,如果磁盘还不存在,它可以包含磁盘的完整表示法:
<disk_attachment> <bootable>true</bootable> <pass_discard>true</pass_discard> <interface>ide</interface> <active>true</active> <disk> <name>mydisk</name> <provisioned_size>1024</provisioned_size> ... </disk> </disk_attachment>
在这种情况下,将创建磁盘并附加到虚拟机。
在这两种情况下,为 ID 为 345
的虚拟机使用以下 URL:
POST /ovirt-engine/api/vms/345/diskattachments
服务器接受不包含 active
属性但效果未定义的请求。在某些情况下,磁盘将被自动激活,在其他情况下则不会激活。为避免出现问题,强烈建议始终使用所需值包含 active
属性。
表 6.178. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加到虚拟机的磁盘附件。 |
6.58.2. 列出 GET
列出附加到虚拟机的磁盘。
无法保证返回的磁盘附件列表的顺序。
表 6.179. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 附加到虚拟机的磁盘附件列表。 | |
| in | 指明应遵循哪些内联链接。 |
6.58.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.59. DiskProfile
表 6.180. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新系统中指定的磁盘配置文件。 |
6.59.1. 获取 GET
表 6.181. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.59.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.59.2. 删除 DELETE
表 6.182. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.59.3. 更新 PUT
更新系统中指定的磁盘配置文件。
表 6.183. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.60. DiskProfiles
表 6.184. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新磁盘配置文件。 |
| 返回系统的磁盘配置文件列表。 |
6.60.1. 添加 POST
向系统添加新磁盘配置文件。
表 6.185. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.60.2. 列出 GET
返回系统的磁盘配置文件列表。
无法保证返回的磁盘配置文件列表的顺序。
表 6.186. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大配置集数。 | |
| out |
6.60.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.60.2.2. Max
设置要返回的最大配置集数。如果没有指定,则返回所有配置集。
6.61. DiskSnapshot
表 6.187. 方法概述
名称 | 概述 |
---|---|
| |
|
6.61.1. 获取 GET
表 6.188. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.61.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.61.2. 删除 DELETE
表 6.189. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.62. DiskSnapshots
管理存储域中可用的磁盘快照的集合。
表 6.190. 方法概述
名称 | 概述 |
---|---|
| 返回存储域的磁盘快照列表。 |
6.62.1. 列出 GET
返回存储域的磁盘快照列表。
无法保证磁盘快照返回列表的顺序。
表 6.191. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 如果 true 也返回活动快照。 | |
| in | 如果 true 也返回模板快照。 | |
| in | 设置要返回的快照的最大数量。 | |
| out |
6.62.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.62.1.2. include_active
如果 true 也返回活动快照。如果未指定活动快照,则不返回。
6.62.1.3. include_template
如果 true 也返回模板快照。如果没有返回指定的模板快照。
6.62.1.4. Max
设置要返回的快照的最大数量。如果没有指定,则返回所有快照。
6.63. 磁盘
管理系统中可用的磁盘集合。
表 6.192. 方法概述
名称 | 概述 |
---|---|
| 添加新浮动磁盘。 |
| 获取磁盘列表. |
6.63.1. 添加 POST
添加新浮动磁盘。
可以添加三种类型的磁盘 - 磁盘镜像、直接 LUN 和 Managed Block 磁盘。Cinder 集成已被 Managed Block Storage 替代。
添加新镜像磁盘:
在创建新的浮动映像 磁盘 时,API 需要 storage_domain
、provision_size
和 format
属性。
请注意,块存储域(例如 iSCSI 或 FCP 存储类型的 存储域)不支持将原始 格式
与 稀疏=true
的组合,因此必须明确说明 sparse=false
。
要使用指定的 provisioned_size
创建一个新的浮动镜像磁盘,在存储域上格式化和
名称
(id 123
并启用了增量备份),请发送如下请求:
POST /ovirt-engine/api/disks
请求正文如下:
<disk> <storage_domains> <storage_domain id="123"/> </storage_domains> <name>mydisk</name> <provisioned_size>1048576</provisioned_size> <format>cow</format> <backup>incremental</backup> </disk>
添加新直接 LUN 磁盘:
在通过 API 添加新浮动直接 LUN 时,可以使用两种类别:
-
对于
主机
元素 - 在这种情况下,主机用于完整性检查(例如,LUN 是可见的)并检索有关 LUN 的基本信息(如大小和串行)。 -
如果没有
主机
元素 - 在这种情况下,操作仅为数据库,并且不会访问存储。
要使用 ID 为 123
、指定 别名
、类型和
logical_unit
的主机
元素创建一个新的浮动直接 LUN 磁盘 (
具有属性 地址
、端口
和目标
),请发送请求,如下所示:
POST /ovirt-engine/api/disks
请求正文如下:
<disk> <alias>mylun</alias> <lun_storage> <host id="123"/> <type>iscsi</type> <logical_units> <logical_unit id="456"> <address>10.35.10.20</address> <port>3260</port> <target>iqn.2017-01.com.myhost:444</target> </logical_unit> </logical_units> </lun_storage> </disk>
若要创建新的浮动直接 LUN 磁盘,而不使用主机,请删除 主机
元素。
添加新 Cinder 磁盘:
Cinder 集成已被 Managed Block Storage 替代。
添加浮动磁盘以上传磁盘快照:
由于引擎的版本 4.2,可以使用快照上传磁盘。此请求应当用于创建映像链的基础镜像(镜像),在创建快照时使用 disk-attachments
元素创建。
磁盘必须使用与上传镜像相同的磁盘标识符和映像标识符创建。i. 标识符应保存为备份过程的一部分。也可以使用 qemu-img info
命令来获取映像标识符。例如,如果磁盘映像存储在名为 b7a4c6c5-443b-47c5-967f-6abc79675e8b/myimage.img
的文件中:
$ qemu-img info b7a4c6c5-443b-47c5-967f-6abc79675e8b/myimage.img image: b548366b-fb51-4b41-97be-733c887fe305 file format: qcow2 virtual size: 1.0G (1073741824 bytes) disk size: 196K cluster_size: 65536 backing file: ad58716a-1fe9-481f-815e-664de1df04eb backing file format: raw
要使用上面显示的 qemu-img info
命令获取的磁盘标识符和映像标识符创建磁盘,请发送类似如下的请求:
POST /ovirt-engine/api/disks
请求正文如下:
<disk id="b7a4c6c5-443b-47c5-967f-6abc79675e8b"> <image_id>b548366b-fb51-4b41-97be-733c887fe305</image_id> <storage_domains> <storage_domain id="123"/> </storage_domains> <name>mydisk</name> <provisioned_size>1048576</provisioned_size> <format>cow</format> </disk>
表 6.193. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 磁盘. |
6.63.2. 列出 GET
获取磁盘列表.
GET /ovirt-engine/api/disks
您将获得类似如下的 XML 响应:
<disks> <disk id="123"> <actions>...</actions> <name>MyDisk</name> <description>MyDisk description</description> <link href="/ovirt-engine/api/disks/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/disks/123/statistics" rel="statistics"/> <actual_size>5345845248</actual_size> <alias>MyDisk alias</alias> ... <status>ok</status> <storage_type>image</storage_type> <wipe_after_delete>false</wipe_after_delete> <disk_profile id="123"/> <quota id="123"/> <storage_domains>...</storage_domains> </disk> ... </disks>
只有 search
参数中包含 sortby
子句时,才会保证返回的磁盘列表的顺序。
表 6.194. 参数摘要
6.63.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.63.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.63.2.3. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.64. 域
此服务可用于查看系统中身份验证域的详细信息。
表 6.195. 方法概述
名称 | 概述 |
---|---|
| 获取身份验证域信息. |
6.64.1. 获取 GET
获取身份验证域信息.
使用方法:
GET /ovirt-engine/api/domains/5678
将返回域信息:
<domain href="/ovirt-engine/api/domains/5678" id="5678"> <name>internal-authz</name> <link href="/ovirt-engine/api/domains/5678/users" rel="users"/> <link href="/ovirt-engine/api/domains/5678/groups" rel="groups"/> <link href="/ovirt-engine/api/domains/5678/users?search={query}" rel="users/search"/> <link href="/ovirt-engine/api/domains/5678/groups?search={query}" rel="groups/search"/> </domain>
6.64.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.65. DomainGroup
表 6.197. 方法概述
名称 | 概述 |
---|---|
|
6.65.1. 获取 GET
6.65.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.66. DomainGroups
表 6.199. 方法概述
名称 | 概述 |
---|---|
| 返回组列表。 |
6.66.1. 列出 GET
返回组列表。
无法保证返回的组列表的顺序。
表 6.200. 参数摘要
6.66.1.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.66.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.66.1.3. Max
设置要返回的最大组数。如果没有指定,则返回所有组。
6.67. DomainUser
用于查看系统中域用户的服务。
表 6.201. 方法概述
名称 | 概述 |
---|---|
| 获取域用户信息. |
6.67.1. 获取 GET
获取域用户信息.
使用方法:
GET /ovirt-engine/api/domains/5678/users/1234
将返回域用户信息:
<user href="/ovirt-engine/api/users/1234" id="1234"> <name>admin</name> <namespace>*</namespace> <principal>admin</principal> <user_name>admin@internal-authz</user_name> <domain href="/ovirt-engine/api/domains/5678" id="5678"> <name>internal-authz</name> </domain> <groups/> </user>
6.67.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.68. DomainUserGroups
在 AAA 扩展中显示用户的组成员资格的服务。
表 6.203. 方法概述
名称 | 概述 |
---|---|
| 返回用户所属组的列表: |
6.68.1. 列出 GET
返回用户所属组的列表:
6.68.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.69. DomainUsers
用于列出系统中的所有域用户的服务。
表 6.205. 方法概述
名称 | 概述 |
---|---|
| 列出 域中的所有用户。 |
6.69.1. 列出 GET
列出 域中的所有用户。
使用方法:
GET /ovirt-engine/api/domains/5678/users
将返回域中的用户列表:
<users> <user href="/ovirt-engine/api/domains/5678/users/1234" id="1234"> <name>admin</name> <namespace>*</namespace> <principal>admin</principal> <user_name>admin@internal-authz</user_name> <domain href="/ovirt-engine/api/domains/5678" id="5678"> <name>internal-authz</name> </domain> <groups/> </user> </users>
无法保证返回的用户列表的顺序。
表 6.206. 参数摘要
6.69.1.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.69.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.69.1.3. Max
设置要返回的最大用户数。如果未指定,则返回所有用户。
6.70. 域
用于列出系统中的所有身份验证域的服务。
表 6.207. 方法概述
名称 | 概述 |
---|---|
| 列出系统中的所有身份验证域。 |
6.70.1. 列出 GET
列出系统中的所有身份验证域。
使用方法:
GET /ovirt-engine/api/domains
将返回域列表:
<domains> <domain href="/ovirt-engine/api/domains/5678" id="5678"> <name>internal-authz</name> <link href="/ovirt-engine/api/domains/5678/users" rel="users"/> <link href="/ovirt-engine/api/domains/5678/groups" rel="groups"/> <link href="/ovirt-engine/api/domains/5678/users?search={query}" rel="users/search"/> <link href="/ovirt-engine/api/domains/5678/groups?search={query}" rel="groups/search"/> </domain> </domains>
无法保证返回的域列表的顺序。
6.70.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.70.1.2. Max
设置要返回的最大域数。如果未指定,则返回所有域。
6.71. EngineKatelloErrata
此服务用于管理分配给引擎的 Katello 勘误表。该信息是从 Katello 检索而来。
表 6.209. 方法概述
名称 | 概述 |
---|---|
| 检索 Katello 勘误表的表示形式。 |
6.71.1. 列出 GET
检索 Katello 勘误表的表示形式。
GET /ovirt-engine/api/katelloerrata
您将在 XML 中收到类似以下的响应:
<katello_errata> <katello_erratum href="/ovirt-engine/api/katelloerrata/123" id="123"> <name>RHBA-2013:XYZ</name> <description>The description of the erratum</description> <title>some bug fix update</title> <type>bugfix</type> <issued>2013-11-20T02:00:00.000+02:00</issued> <solution>Few guidelines regarding the solution</solution> <summary>Updated packages that fix one bug are now available for XYZ</summary> <packages> <package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package> ... </packages> </katello_erratum> ... </katello_errata>
返回的勘误列表的顺序无法保证。
表 6.210. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | Katello 勘误表的表示。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的勘误表的最大数量。 |
6.71.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.71.1.2. Max
设置要返回的勘误表的最大数量。如果没有指定,则会返回所有勘误。
6.72. event
用于管理系统中事件的服务。
表 6.211. 方法概述
名称 | 概述 |
---|---|
| 获取事件. |
| 从内部审计日志中移除事件。 |
6.72.1. 获取 GET
获取事件.
获取事件的示例:
GET /ovirt-engine/api/events/123
<event href="/ovirt-engine/api/events/123" id="123"> <description>Host example.com was added by admin@internal-authz.</description> <code>42</code> <correlation_id>135</correlation_id> <custom_id>-1</custom_id> <flood_rate>30</flood_rate> <origin>oVirt</origin> <severity>normal</severity> <time>2016-12-11T11:13:44.654+02:00</time> <cluster href="/ovirt-engine/api/clusters/456" id="456"/> <host href="/ovirt-engine/api/hosts/789" id="789"/> <user href="/ovirt-engine/api/users/987" id="987"/> </event>
请注意,字段数量根据事件中驻留的信息而变化。例如,对于与存储域相关的事件,您将获得存储域参考以及该存储域所在数据中心的引用。
6.72.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.72.2. 删除 DELETE
从内部审计日志中移除事件。
通过发送以下请求可以删除事件
DELETE /ovirt-engine/api/events/123
表 6.213. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.73. EventSubscription
在系统中管理特定事件订阅的服务。
表 6.214. 方法概述
名称 | 概述 |
---|---|
| 获取与 event-subscription 相关的信息。 |
| 从系统中删除 event-subscription。 |
6.73.1. 获取 GET
获取与 event-subscription 相关的信息。
例如,要将用户 '123' 订阅到事件 'vm_console_detected' 的信息检索到事件 'vm_console_detected':
GET /ovirt-engine/api/users/123/vm_console_detected
<event-subscription href="/ovirt-engine/api/users/123/event-subscriptions/vm_console_detected"> <event>vm_console_detected</event> <notification_method>smtp</notification_method> <user href="/ovirt-engine/api/users/123" id="123"/> <address>a@b.com</address> </event-subscription>
表 6.215. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | event-subscription。 |
6.73.2. 删除 DELETE
从系统中删除 event-subscription。
例如,要删除用户 123 的订阅到 vm_console_detected
事件:
DELETE /ovirt-engine/api/users/123/vm_console_detected
表 6.216. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.74. EventSubscriptions
代表用于管理用户事件订阅集合的服务。
表 6.217. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新的 event-subscription。 |
| 列出提供的用户的 event-subscriptions。 |
6.74.1. 添加 POST
向系统添加新的 event-subscription。
event-subscription 始终在用户的上下文中添加。例如,要为用户 123
为 host_high_cpu_use
添加新的 event-subscription,并将通知发送到电子邮件地址:a@b.com ,
发送如下请求:
POST /ovirt-engine/api/users/123/eventsubscriptions
这样的请求正文:
<event_subscription> <event>host_high_cpu_use</event> <address>a@b.com</address> </event_subscription>
该事件名称将成为新 event-subscription 实体的 ID: GET …/api/users/123/eventsubscriptions/host_high_cpu_use
请注意,请求正文中不提供用户 ID。这是因为,API 已经从上下文中了解 user-id(本例中为 123)。另请注意,event-subscription 实体包含 notification-method 字段,但它也不会在请求正文中提供。这是因为当前总是设置为 SMTP,因为 API 层仍不支持 SNMP 通知。
表 6.218. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 添加的 event-subscription。 |
6.74.2. 列出 GET
列出提供的用户的 event-subscriptions。
例如,列出用户 123
的 event-subscriptions:
GET /ovirt-engine/api/users/123/event-subscriptions
<event-subscriptions> <event-subscription href="/ovirt-engine/api/users/123/event-subscriptions/host_install_failed"> <event>host_install_failed</event> <notification_method>smtp</notification_method> <user href="/ovirt-engine/api/users/123" id="123"/> <address>a@b.com</address> </event-subscription> <event-subscription href="/ovirt-engine/api/users/123/event-subscriptions/vm_paused"> <event>vm_paused</event> <notification_method>smtp</notification_method> <user href="/ovirt-engine/api/users/123" id="123"/> <address>a@b.com</address> </event-subscription> </event-subscriptions>
表 6.219. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 指定用户的 event-subscriptions 列表 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大 event-subscriptions 数。 |
6.74.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.74.2.2. Max
设置要返回的最大 event-subscriptions 数。如果没有指定所有 event-subscriptions,则会返回。
6.75. 事件
用于管理系统中事件的服务。
表 6.220. 方法概述
名称 | 概述 |
---|---|
| 将外部事件添加到内部审计日志中。 |
| 获取事件列表. |
|
6.75.1. 添加 POST
将外部事件添加到内部审计日志中。
这可用于与检测或生成与系统管理员相关的事件的外部系统集成。例如,外部监控工具可以检测文件系统是否完全在虚拟机的客户机操作系统内。此事件可添加到内部审计日志中,如下所示发送请求:
POST /ovirt-engine/api/events <event> <description>File system /home is full</description> <severity>alert</severity> <origin>mymonitor</origin> <custom_id>1467879754</custom_id> </event>
事件也可以链接到特定的对象。例如,以上事件可使用 vm
链接到发生该事件的特定虚拟机:
POST /ovirt-engine/api/events <event> <description>File system /home is full</description> <severity>alert</severity> <origin>mymonitor</origin> <custom_id>1467879754</custom_id> <vm id="aae98225-5b73-490d-a252-899209af17e9"/> </event>
使用链接时,如上例中的 vm
,仅接受 id
属性。name
属性(如果提供)被简单地忽略。
表 6.221. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.75.2. 列出 GET
获取事件列表.
GET /ovirt-engine/api/events
对上述请求,我们得到以下响应:
<events> <event href="/ovirt-engine/api/events/2" id="2"> <description>User admin@internal-authz logged out.</description> <code>31</code> <correlation_id>1e892ea9</correlation_id> <custom_id>-1</custom_id> <flood_rate>30</flood_rate> <origin>oVirt</origin> <severity>normal</severity> <time>2016-09-14T12:14:34.541+02:00</time> <user href="/ovirt-engine/api/users/57d91d48-00da-0137-0138-000000000244" id="57d91d48-00da-0137-0138-000000000244"/> </event> <event href="/ovirt-engine/api/events/1" id="1"> <description>User admin logged in.</description> <code>30</code> <correlation_id>1fbd81f4</correlation_id> <custom_id>-1</custom_id> <flood_rate>30</flood_rate> <origin>oVirt</origin> <severity>normal</severity> <time>2016-09-14T11:54:35.229+02:00</time> <user href="/ovirt-engine/api/users/57d91d48-00da-0137-0138-000000000244" id="57d91d48-00da-0137-0138-000000000244"/> </event> </events>
发生以下事件:
- ID="1" - admin 用户帐户中的 API 日志。
- ID="2" - API 注销 admin 用户帐户。
返回的事件列表的顺序始终是巨大的。如果 search
参数中包含 sortby
子句,则事件将根据该子句排序。如果没有包括 sortby
子句,则事件将按 id
属性的数字值排序,从最高值开始。这与 max
参数相结合,简化了获取最新事件的过程:
GET /ovirt-engine/api/events?max=1
表 6.222. 参数摘要
6.75.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.75.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.75.2.3. 来自
指定应返回的事件索引。事件索引严格增加,因此当仅返回具有更大索引的事件时,才会返回此参数。例如,以下请求将仅返回索引大于 123
的事件:
GET /ovirt-engine/api/events?from=123
这个参数是可选的,如果没有指定,则返回的第一个事件将最近生成。
6.75.2.4. Max
设置要返回的最大事件数。如果没有指定,则返回所有事件。
6.75.2.5. search
events 服务提供类似于其他资源服务的搜索查询。
我们可以通过提供特定的严重性来搜索。
GET /ovirt-engine/api/events?search=severity%3Dnormal
在上述请求中,我们获得一个严重性等于 正常
的事件列表:
<events> <event href="/ovirt-engine/api/events/2" id="2"> <description>User admin@internal-authz logged out.</description> <code>31</code> <correlation_id>1fbd81f4</correlation_id> <custom_id>-1</custom_id> <flood_rate>30</flood_rate> <origin>oVirt</origin> <severity>normal</severity> <time>2016-09-14T11:54:35.229+02:00</time> <user href="/ovirt-engine/api/users/57d91d48-00da-0137-0138-000000000244" id="57d91d48-00da-0137-0138-000000000244"/> </event> <event href="/ovirt-engine/api/events/1" id="1"> <description>Affinity Rules Enforcement Manager started.</description> <code>10780</code> <custom_id>-1</custom_id> <flood_rate>30</flood_rate> <origin>oVirt</origin> <severity>normal</severity> <time>2016-09-14T11:52:18.861+02:00</time> </event> </events>
一段时间后,虚拟化环境会产生大量事件。但是,API 仅显示一个搜索查询的默认事件数。若要显示超过默认值,API 在搜索查询中使用 page 命令将结果分隔到页面中。以下搜索查询告知 API 使用页面值和 sortby 子句来分页结果:
sortby time asc page 1
以下示例对事件资源进行分页。URL 编码的请求是:
GET /ovirt-engine/api/events?search=sortby%20time%20asc%20page%201
增加页面值以查看下一页结果。
GET /ovirt-engine/api/events?search=sortby%20time%20asc%20page%202
6.75.3. 取消删除 POST
表 6.223. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行取消删除。 |
6.76. ExternalComputeResource
管理单个外部计算资源。
计算资源是一个主机外部提供程序术语。外部提供程序还需要知道调配的主机需要注册的位置。引擎的登录详情保存为外部提供程序端的计算资源。
表 6.224. 方法概述
名称 | 概述 |
---|---|
| 检索外部计算资源详细信息. |
6.76.1. 获取 GET
检索外部计算资源详细信息.
例如,要获取 供应商
123
的计算资源详情,请发送类似如下的请求:
GET /ovirt-engine/api/externalhostproviders/123/computeresources/234
它将返回类似如下的响应:
<external_compute_resource href="/ovirt-engine/api/externalhostproviders/123/computeresources/234" id="234"> <name>hostname</name> <provider>oVirt</provider> <url>https://hostname/api</url> <user>admin@internal</user> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_compute_resource>
表 6.225. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 外部计算资源信息 |
6.76.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.77. ExternalComputeResources
管理一系列外部计算资源。
计算资源是一个主机外部提供程序术语。外部提供程序还需要知道调配的主机需要注册的位置。引擎的登录详情保存为外部提供程序端的计算资源。
表 6.226. 方法概述
名称 | 概述 |
---|---|
| 检索外部计算资源的列表。 |
6.77.1. 列出 GET
检索外部计算资源的列表。
例如,要检索外部主机供应商 123
的计算资源,请发送如下请求:
GET /ovirt-engine/api/externalhostproviders/123/computeresources
它将返回类似如下的响应:
<external_compute_resources> <external_compute_resource href="/ovirt-engine/api/externalhostproviders/123/computeresources/234" id="234"> <name>hostname</name> <provider>oVirt</provider> <url>https://address/api</url> <user>admin@internal</user> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_compute_resource> ... </external_compute_resources>
无法保证返回的计算资源列表的顺序。
表 6.227. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的资源的最大数量。 | |
| out | 外部计算机资源列表。 |
6.77.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.77.1.2. Max
设置要返回的资源的最大数量。如果没有指定,则返回所有资源。
6.78. ExternalDiscoveredHost
此服务管理单个发现的主机。
表 6.228. 方法概述
名称 | 概述 |
---|---|
| 获取发现的主机信息. |
6.78.1. 获取 GET
获取发现的主机信息.
检索有关在外部提供程序管理系统中管理的主机的信息,如 Foreman。该信息包括主机名、地址、子网、基础镜像等。
例如,要从供应商 123
获取主机 234
的详细信息,请发送类似如下的请求:
GET /ovirt-engine/api/externalhostproviders/123/discoveredhosts/234
结果如下:
<external_discovered_host href="/ovirt-engine/api/externalhostproviders/123/discoveredhosts/234" id="234"> <name>mac001a4ad04040</name> <ip>10.34.67.43</ip> <last_report>2017-04-24 11:05:41 UTC</last_report> <mac>00:1a:4a:d0:40:40</mac> <subnet_name>sat0</subnet_name> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_discovered_host>
表 6.229. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 主机的硬件和配置信息. |
6.78.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.79. ExternalDiscoveredHosts
此服务管理外部发现的主机。
表 6.230. 方法概述
名称 | 概述 |
---|---|
| 获取发现的主机信息列表。 |
6.79.1. 列出 GET
获取发现的主机信息列表。
从 Foreman 等第三方提供程序获取发现的主机。
要列出供应商 123
的所有发现的主机,请执行以下操作:
GET /ovirt-engine/api/externalhostproviders/123/discoveredhost
<external_discovered_hosts> <external_discovered_host href="/ovirt-engine/api/externalhostproviders/123/discoveredhosts/456" id="456"> <name>mac001a4ad04031</name> <ip>10.34.67.42</ip> <last_report>2017-04-24 11:05:41 UTC</last_report> <mac>00:1a:4a:d0:40:31</mac> <subnet_name>sat0</subnet_name> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_discovered_host> <external_discovered_host href="/ovirt-engine/api/externalhostproviders/123/discoveredhosts/789" id="789"> <name>mac001a4ad04040</name> <ip>10.34.67.43</ip> <last_report>2017-04-24 11:05:41 UTC</last_report> <mac>00:1a:4a:d0:40:40</mac> <subnet_name>sat0</subnet_name> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_discovered_host> ... </external_discovered_hosts>
无法保证返回的主机列表的顺序。
表 6.231. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 发现的主机列表 | |
| in | 设置要返回的最大主机数。 |
6.79.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.79.1.2. Max
设置要返回的最大主机数。如果未指定,则返回所有主机。
6.80. ExternalHost
表 6.232. 方法概述
名称 | 概述 |
---|---|
|
6.80.1. 获取 GET
表 6.233. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.80.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.81. ExternalHostGroup
此服务管理单个主机组信息。
主机组是主机提供程序的术语,主机组中包含应用于新发现主机的调配详细信息。子网、操作系统、域等信息.
表 6.234. 方法概述
名称 | 概述 |
---|---|
| 获取主机组信息. |
6.81.1. 获取 GET
获取主机组信息.
例如,要获取供应商 123
的 hostgroup 234
的详细信息,请发送类似如下的请求:
GET /ovirt-engine/api/externalhostproviders/123/hostgroups/234
它将返回类似如下的响应:
<external_host_group href="/ovirt-engine/api/externalhostproviders/123/hostgroups/234" id="234"> <name>rhel7</name> <architecture_name>x86_64</architecture_name> <domain_name>s.com</domain_name> <operating_system_name>RedHat 7.3</operating_system_name> <subnet_name>sat0</subnet_name> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_host_group>
表 6.235. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 主机组信息. |
6.81.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.82. ExternalHostGroups
此服务管理主机组。
表 6.236. 方法概述
名称 | 概述 |
---|---|
| 从外部主机提供程序获取主机组列表。 |
6.82.1. 列出 GET
从外部主机提供程序获取主机组列表。
主机组是主机提供程序的一个术语 - 主机组中包含调配详细信息。此 API 返回外部提供程序公开的所有可能的主机组。
例如,要获取供应商 123
的所有主机组的详情,请发送如下请求:
GET /ovirt-engine/api/externalhostproviders/123/hostgroups
回答如下:
<external_host_groups> <external_host_group href="/ovirt-engine/api/externalhostproviders/123/hostgroups/234" id="234"> <name>rhel7</name> <architecture_name>x86_64</architecture_name> <domain_name>example.com</domain_name> <operating_system_name>RedHat 7.3</operating_system_name> <subnet_name>sat0</subnet_name> <external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"/> </external_host_group> ... </external_host_groups>
主机组返回列表的顺序不保证。
表 6.237. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 可用于外部主机提供程序的所有主机组的列表 | |
| in | 设置要返回的最大组数。 |
6.82.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.82.1.2. Max
设置要返回的最大组数。如果没有指定,则返回所有组。
6.83. ExternalHostProvider
代表外部主机提供程序,如 Foreman 或卫星。
有关 Foreman 的更多详细信息,请参见 https://www.theforeman.org/。有关 Red Hat Satellite 的详情,请查看 https://access.redhat.com/products/red-hat-satellite。
表 6.238. 方法概述
名称 | 概述 |
---|---|
| 获取外部主机提供程序信息 主机提供程序 Foreman 或卫星可以在 ovirt 中设置为外部提供程序。 |
| 导入外部主机提供程序的 SSL 证书。 |
| |
| 为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。 |
| 更新系统中指定的外部主机供应商。 |
6.83.1. 获取 GET
获取外部主机提供程序信息
主机提供程序 Foreman 或卫星可以在 ovirt 中设置为外部提供程序。要查看附加到 ovirt 的特定主机提供程序的详细信息,请使用这个 API。
例如,要获取主机供应商 123
的详细信息,请发送类似如下的请求:
GET /ovirt-engine/api/externalhostproviders/123
回答如下:
<external_host_provider href="/ovirt-engine/api/externalhostproviders/123" id="123"> <name>mysatellite</name> <requires_authentication>true</requires_authentication> <url>https://mysatellite.example.com</url> <username>admin</username> </external_host_provider>
表 6.239. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.83.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.83.2. importcertificates POST
导入外部主机提供程序的 SSL 证书。
表 6.240. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
6.83.3. 删除 DELETE
表 6.241. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.83.4. 测试连接 POST
为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。
POST /ovirt-engine/api/externalhostproviders/123/testconnectivity
表 6.242. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行测试。 |
6.83.5. 更新 PUT
更新系统中指定的外部主机供应商。
表 6.243. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.84. ExternalHostProviders
表 6.244. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新的外部主机提供程序。 |
| 返回外部主机提供程序列表。 |
6.84.1. 添加 POST
向系统添加新的外部主机提供程序。
表 6.245. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.84.2. 列出 GET
返回外部主机提供程序列表。
主机提供程序返回列表的顺序不受保证。
表 6.246. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大供应商数量。 | |
| out | ||
| in | 用于限制返回的外部主机供应商的查询字符串。 |
6.84.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.84.2.2. Max
设置要返回的最大供应商数量。如果没有指定,则返回所有供应商。
6.85. ExternalHosts
表 6.247. 方法概述
名称 | 概述 |
---|---|
| 返回外部主机列表。 |
6.85.1. 列出 GET
返回外部主机列表。
无法保证返回的主机列表的顺序。
表 6.248. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大主机数。 |
6.85.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.85.1.2. Max
设置要返回的最大主机数。如果未指定,则返回所有主机。
6.86. ExternalNetworkProviderConfiguration
描述主机上系统如何调配外部网络提供程序。
表 6.249. 方法概述
名称 | 概述 |
---|---|
| 返回主机上外部网络提供程序的信息。 |
6.86.1. 获取 GET
返回主机上外部网络提供程序的信息。
表 6.250. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.86.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.87. ExternalNetworkProviderConfigurations
此服务用于列出系统在主机上调配的所有外部网络提供程序。
表 6.251. 方法概述
名称 | 概述 |
---|---|
| 返回主机上所有外部网络提供程序的列表。 |
6.87.1. 列出 GET
返回主机上所有外部网络提供程序的列表。
无法保证返回的网络列表的顺序。
表 6.252. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.87.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.88. ExternalProvider
提供管理外部提供程序的功能。
表 6.253. 方法概述
名称 | 概述 |
---|---|
| 导入外部主机提供程序的 SSL 证书。 |
| 为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。 |
6.88.1. importcertificates POST
导入外部主机提供程序的 SSL 证书。
表 6.254. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
6.88.2. 测试连接 POST
为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。
POST /ovirt-engine/api/externalhostproviders/123/testconnectivity
表 6.255. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行测试。 |
6.89. ExternalProviderCertificate
用于查看外部提供程序特定证书的服务。
表 6.256. 方法概述
名称 | 概述 |
---|---|
| 获取特定证书. |
6.89.1. 获取 GET
获取特定证书.
GET /ovirt-engine/api/externalhostproviders/123/certificate/0
以下是响应示例:
<certificate id="0"> <organization>provider.example.com</organization> <subject>CN=provider.example.com</subject> <content>...</content> </certificate>
6.89.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.90. ExternalProviderCertificates
用于查看外部供应商证书的服务。
表 6.258. 方法概述
名称 | 概述 |
---|---|
| 返回外部供应商提供的证书链。 |
6.90.1. 列出 GET
返回外部供应商提供的证书链。
GET /ovirt-engine/api/externalhostproviders/123/certificates
以下是响应示例:
<certificates> <certificate id="789">...</certificate> ... </certificates>
返回的证书的顺序始终被保证为符号顺序:第一个是服务器本身的证书,第二个是签署第一个证书的 CA 的证书,以此类推。
表 6.259. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 包含证书详细信息的列表。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大证书数。 |
6.90.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.90.1.2. Max
设置要返回的最大证书数。如果没有指定,则返回所有证书。
6.91. ExternalTemplateImports
提供导入外部模板的功能。目前仅支持 OVA。
表 6.260. 方法概述
名称 | 概述 |
---|---|
| 此操作用于从外部虚拟机监控程序导入模板。 |
6.91.1. 添加 POST
此操作用于从外部虚拟机监控程序导入模板。
例如,可以使用以下请求来简化模板 OVA 的导入:
POST /externaltemplateimports
使用 ExternalTemplateImport 类型的请求正文,例如:
<external_template_import> <template> <name>my_template</name> </template> <cluster id="2b18aca2-4469-11eb-9449-482ae35a5f83" /> <storage_domain id="8bb5ade5-e988-4000-8b93-dbfc6717fe50" /> <url>ova:///mnt/ova/ova_template.ova</url> <host id="8bb5ade5-e988-4000-8b93-dbfc6717fe50" /> </external_template_import>
表 6.261. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.92. ExternalVmImports
提供导入外部虚拟机的功能。
表 6.262. 方法概述
名称 | 概述 |
---|---|
| 此操作用于从外部管理程序(如 KVM、XEN 或 VMware)导入虚拟机。 |
6.92.1. 添加 POST
此操作用于从外部管理程序(如 KVM、XEN 或 VMware)导入虚拟机。
例如,可以使用以下请求来简化从 VMware 导入虚拟机:
POST /externalvmimports
使用 ExternalVmImport 类型的请求正文,例如:
<external_vm_import> <vm> <name>my_vm</name> </vm> <cluster id="360014051136c20574f743bdbd28177fd" /> <storage_domain id="8bb5ade5-e988-4000-8b93-dbfc6717fe50" /> <name>vm_name_as_is_in_vmware</name> <sparse>true</sparse> <username>vmware_user</username> <password>123456</password> <provider>VMWARE</provider> <url>vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1</url> <drivers_iso id="virtio-win-1.6.7.iso" /> </external_vm_import>
表 6.263. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.93. FenceAgent
用于管理特定主机的隔离代理的服务。
表 6.264. 方法概述
名称 | 概述 |
---|---|
| 获取该隔离代理的详情。 |
| 删除特定主机的隔离代理。 |
| 更新 fence-agent。 |
6.93.1. 获取 GET
获取该隔离代理的详情。
GET /ovirt-engine/api/hosts/123/fenceagents/0
以下是响应示例:
<agent id="0"> <type>apc</type> <order>1</order> <ip>192.168.1.101</ip> <user>user</user> <password>xxx</password> <port>9</port> <options>name1=value1, name2=value2</options> </agent>
6.93.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.93.2. 删除 DELETE
删除特定主机的隔离代理。
DELETE /ovirt-engine/api/hosts/123/fenceagents/0
表 6.266. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.93.3. 更新 PUT
更新 fence-agent。
6.94. FenceAgents
用于管理特定主机的隔离代理的服务。
表 6.268. 方法概述
名称 | 概述 |
---|---|
| 向主机添加新的 fence-agent。 |
| 返回为主机配置的隔离代理列表。 |
6.94.1. 添加 POST
向主机添加新的 fence-agent。
POST /ovirt-engine/api/hosts/123/fenceagents You should consult the /usr/sbin/fence_<agent_name> manual page for the legal parameters to [name1=value1, name2=value2,...] in the options field. If any parameter in options appears by name that means that it is mandatory. For example in <options>slot=7[,name1=value1, name2=value2,...]</options> slot is mandatory.
APC, bladecenter, wti 隔离代理/s 示例请求:
<agent> <type>apc</type> <order>1</order> <ip>192.168.1.101</ip> <user>user</user> <password>xxx</password> <port>9</port> <options>slot=7[,name1=value1, name2=value2,...]</options> </agent>
apc_snmp, hpblade, ilo, ilo2, ilo_ssh, redfish, rsa 隔离代理/s 示例请求:
<agent> <type>apc_snmp</type> <order>1</order> <ip>192.168.1.101</ip> <user>user</user> <password>xxx</password> <port>9</port> <options>[name1=value1, name2=value2,...]</options> </agent>
cisco_ucs, drac5, eps 隔离代理/s 示例请求:
<agent> <type>cisco_ucs</type> <order>1</order> <ip>192.168.1.101</ip> <user>user</user> <password>xxx</password> <options>slot=7[,name1=value1, name2=value2,...]</options> </agent>
drac7、ilo3、ilo4、ipmilan、rsb 隔离代理/s 示例请求:
<agent> <type>drac7</type> <order>1</order> <ip>192.168.1.101</ip> <user>user</user> <password>xxx</password> <options>[name1=value1, name2=value2,...]</options> </agent>
表 6.269. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.94.2. 列出 GET
返回为主机配置的隔离代理列表。
GET /ovirt-engine/api/hosts/123/fenceagents
以下是响应示例:
<agents> <agent id="0"> <type>apc</type> <order>1</order> <ip>192.168.1.101</ip> <user>user</user> <password>xxx</password> <port>9</port> <options>name1=value1, name2=value2</options> </agent> </agents>
无法保证返回的隔离代理列表的顺序。
6.94.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.94.2.2. Max
设置要返回的代理的最大数量。如果没有指定,则返回所有代理。
6.95. File
表 6.271. 方法概述
名称 | 概述 |
---|---|
|
6.95.1. 获取 GET
6.95.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.96. 文件
提供了一种方式,供客户端列出可用的文件。
此服务专用于 ISO 存储域,后者包含管理员上传的 ISO 映像和虚拟软盘(VFD)。
向虚拟机中添加 CD-ROM 设备需要来自 ISO 存储域文件的 ISO 映像。
表 6.273. 方法概述
名称 | 概述 |
---|---|
| 返回存储域中可用的 ISO 映像和虚拟软盘的列表。 |
6.96.1. 列出 GET
返回存储域中可用的 ISO 映像和虚拟软盘的列表。无法保证返回列表的顺序。
如果 刷新
参数为 false
,则返回的列表可能无法反映对存储域的最新更改;例如,它可能不包含最近添加的新 ISO 文件。这是因为服务器缓存文件列表以提高性能。要获得最新结果,请将 refresh
参数设置为 true
。
refresh
参数的默认值为 true
,但可使用配置值 force RefreshDomainFilesByDefault
更改:
# engine-config -s ForceRefreshDomainFilesByDefault=false
将 refresh
参数的值设置为 true
会影响服务器的性能。必要时才使用。
表 6.274. 参数摘要
6.96.1.1. case_sensitive
指明是否使用 search
参数进行的搜索应考虑大小写。默认值为 true
。
6.96.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.96.1.3. Max
设置要返回的最大文件数。如果未指定,则返回所有文件。
6.97. filter
表 6.275. 方法概述
名称 | 概述 |
---|---|
| |
|
6.97.1. 获取 GET
6.97.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.97.2. 删除 DELETE
表 6.277. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.98. 过滤器
管理调度策略使用的过滤器。
表 6.278. 方法概述
名称 | 概述 |
---|---|
| 向指定用户定义的调度策略添加过滤器。 |
| 返回调度策略使用的过滤器列表。 |
6.98.1. 添加 POST
向指定用户定义的调度策略添加过滤器。
表 6.279. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.98.2. 列出 GET
返回调度策略使用的过滤器列表。
返回的过滤器列表的顺序无法保证。
表 6.280. 参数摘要
6.98.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.98.2.2. Max
设置要返回的最大过滤器数。如果没有指定,则会返回所有过滤器。
6.99. 关注
6.100. GlusterBrick
此服务管理单个 gluster brick。
表 6.281. 方法概述
名称 | 概述 |
---|---|
| 获取 brick 的详细信息。 |
| 删除 brick。 |
| 将此 brick 替换为新的 brick。 |
6.100.1. 获取 GET
获取 brick 的详细信息。
从底层 gluster 卷检索 brick 的状态详细信息,并标头 All-Content
设为 true
。这等同于运行 gluster 卷状态 <volumename> <brickname> 详情
。
例如,若要获取 gluster 卷 123
的 brick 234
的详细信息,请发送类似如下的请求:
GET /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks/234
这会返回类似如下的响应正文:
<brick id="234"> <name>host1:/rhgs/data/brick1</name> <brick_dir>/rhgs/data/brick1</brick_dir> <server_id>111</server_id> <status>up</status> <device>/dev/mapper/RHGS_vg1-lv_vmaddldisks</device> <fs_name>xfs</fs_name> <gluster_clients> <gluster_client> <bytes_read>2818417648</bytes_read> <bytes_written>1384694844</bytes_written> <client_port>1011</client_port> <host_name>client2</host_name> </gluster_client> </gluster_clients> <memory_pools> <memory_pool> <name>data-server:fd_t</name> <alloc_count>1626348</alloc_count> <cold_count>1020</cold_count> <hot_count>4</hot_count> <max_alloc>23</max_alloc> <max_stdalloc>0</max_stdalloc> <padded_size>140</padded_size> <pool_misses>0</pool_misses> </memory_pool> </memory_pools> <mnt_options>rw,seclabel,noatime,nodiratime,attr2,inode64,sunit=512,swidth=2048,noquota</mnt_options> <pid>25589</pid> <port>49155</port> </brick>
表 6.282. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.100.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.100.2. 删除 DELETE
删除 brick。
从底层 gluster 卷移除 brick,并从数据库中删除条目。这只能在没有数据迁移的情况下删除单个 brick 时使用。若要删除多个 brick 和 数据迁移,请改为使用 migrate。
例如,要从 gluster 卷 123
中删除 brick 234
,请发送如下所示的请求:
DELETE /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks/234
表 6.283. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.100.3. 替换 POST
将此 brick 替换为新的 brick。
自引擎版本 3.5 起,此操作已弃用,并将在以后的中删除。改为使用 add brick, 再迁移 brick。
6.101. GlusterBricks
此服务管理 gluster 卷中的 gluster brick
表 6.285. 方法概述
名称 | 概述 |
---|---|
| 在删除 brick 操作的数据迁移后激活 brick。 |
| 添加 brick 列表到 gluster 卷。 |
| 列出 gluster 卷的 brick。 |
| 在删除 brick 之前开始迁移数据。 |
| 从 gluster 卷移除 brick。 |
| 停止从 brick 操作迁移 brick 数据。 |
6.101.1. 激活 POST
在删除 brick 操作的数据迁移后激活 brick。
用于在 brick 的数据迁移完成后激活 brick,但用户不想再删除 brick。之前标记为移除的 brick 现在用作普通 brick。
例如,若要保留迁移数据的 glustervolume 123
上的 brick,请发送如下请求:
POST /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks/activate
这样的请求正文:
<action> <bricks> <brick> <name>host1:/rhgs/brick1</name> </brick> </bricks> </action>
表 6.286. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行激活。 | |
| in | 需要重新激活的 brick 列表。 |
6.101.2. 添加 POST
添加 brick 列表到 gluster 卷。
用于通过添加 brick 来扩展 gluster 卷。对于复制卷类型,需要传递参数 replica_count
。如果副本数增加,则 brick 的数量需要等于副本集的数量。
例如,要将 brick 添加到 gluster 卷 123
,请发送如下所示的请求:
POST /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks
这样的请求正文:
<bricks> <brick> <server_id>111</server_id> <brick_dir>/export/data/brick3</brick_dir> </brick> </bricks>
表 6.287. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加到卷中的 brick 列表 | |
| in | 添加后操作的副本数。 | |
| in | 添加后操作的条带计数. |
6.101.3. 列出 GET
列出 gluster 卷的 brick。
例如,要列出 gluster 卷 123
的 brick,请发送如下所示的请求:
GET /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks
提供如下输出:
<bricks> <brick id="234"> <name>host1:/rhgs/data/brick1</name> <brick_dir>/rhgs/data/brick1</brick_dir> <server_id>111</server_id> <status>up</status> </brick> <brick id="233"> <name>host2:/rhgs/data/brick1</name> <brick_dir>/rhgs/data/brick1</brick_dir> <server_id>222</server_id> <status>up</status> </brick> </bricks>
返回列表的顺序基于在创建 gluster 卷时提供的 brick 顺序。
表 6.288. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大 brick 数。 |
6.101.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.101.3.2. Max
设置要返回的最大 brick 数。如果未指定,则返回所有 brick。
6.101.4. 迁移 POST
在删除 brick 之前开始迁移数据。
删除 brick 的过程包含两步,其中要移除 brick 上的数据首先迁移到剩余的 brick。迁移完成后,通过 API 删除确认 brick 删除。如果随时需要取消该操作,则必须调用该操作。
例如,要从 ID 为 123 的 gluster 卷中删除 brick ,
请发送请求:
POST /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks/migrate
这样的请求正文:
<action> <bricks> <brick> <name>host1:/rhgs/brick1</name> </brick> </bricks> </action>
可以使用作业和作业中的步骤从 API 返回的作业 id 中跟踪迁移过程。
表 6.289. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行迁移。 | |
| in | 需要为其启动数据迁移的 brick 的列表。 |
6.101.5. 删除 DELETE
从 gluster 卷移除 brick。
在不丢失数据的情况下删除 brick 的建议方法是首先使用 stopmigrate 来迁移数据,然后删除它们。如果删除之前未在 brick 上调用迁移,则 brick 将被删除,而无需数据迁移,这可能会导致数据丢失。
例如,要从 gluster 卷 123
中删除 brick,请发送如下所示的请求:
DELETE /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks
这样的请求正文:
<bricks> <brick> <name>host:brick_directory</name> </brick> </bricks>
表 6.290. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 | |
| in | 要删除的 brick 的列表 | |
| in | 添加后操作的副本数。 |
6.101.6. stopmigrate POST
停止从 brick 操作迁移 brick 数据。
若要取消在 2 步中启动的数据迁移,如果用户希望继续使用 brick,则删除 brick 进程。标记为移除的 brick 在执行此操作后将作为普通 brick 发挥作用。
例如,若要停止从 gluster 卷 123
的 brick 迁移数据,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/567/glustervolumes/123/glusterbricks/stopmigrate
这样的请求正文:
<bricks> <brick> <name>host:brick_directory</name> </brick> </bricks>
表 6.291. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 | |
| in | 需要停止数据迁移的 brick 列表。 |
6.101.6.1. brick
需要停止数据迁移的 brick 列表。此列表应与传递给迁移的参数匹配。
6.102. GlusterHook
表 6.292. 方法概述
名称 | 概述 |
---|---|
| 通过禁用集群中的所有服务器中的 Gluster hook,解决集群中服务器之间的 hook 状态冲突。 |
| 通过禁用集群中的所有服务器中的 Gluster hook,解决集群中服务器之间的 hook 状态冲突。 |
| |
| 从集群中的所有服务器移除此 Gluster hook,并将它从数据库中删除。 |
| 根据解析类型解决缺少的 hook 冲突。 |
6.102.1. 禁用 POST
通过禁用集群中的所有服务器中的 Gluster hook,解决集群中服务器之间的 hook 状态冲突。这会将 hook 状态更新为 数据库中的 DISABLED
。
表 6.293. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.102.2. 启用 POST
通过禁用集群中的所有服务器中的 Gluster hook,解决集群中服务器之间的 hook 状态冲突。这会将 hook 状态更新为 数据库中的 DISABLED
。
表 6.294. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.102.3. 获取 GET
表 6.295. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.102.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.102.4. 删除 DELETE
从集群中的所有服务器移除此 Gluster hook,并将它从数据库中删除。
表 6.296. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.102.5. 解析 POST
根据解析类型解决缺少的 hook 冲突。
对于 ADD
,通过将存储在引擎数据库中的 hook 复制到缺少 hook 的所有服务器上来解决:引擎维护缺少 hook 的所有服务器的列表。
对于 COPY
,通过将存储在引擎数据库中的 hook 复制到缺少 hook 的所有服务器来解决 hook 内容冲突。引擎维护内容有冲突的所有服务器的列表。如果主机 ID 作为参数传递,则服务器的 hook 内容将用作主服务器以复制到集群中的其他服务器。
6.103. GlusterHooks
表 6.298. 方法概述
名称 | 概述 |
---|---|
| 返回 hook 列表。 |
6.103.1. 列出 GET
返回 hook 列表。
返回的 hook 列表的顺序不受保证。
表 6.299. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大 hook 数。 |
6.103.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.103.1.2. Max
设置要返回的最大 hook 数。如果没有指定,则返回所有 hook。
6.104. GlusterVolume
此服务管理单个 gluster 卷。
表 6.300. 方法概述
名称 | 概述 |
---|---|
| 获取 gluster 卷详细信息。 |
| 获取 gluster 卷配置文件统计信息。 |
| 重新平衡 gluster 卷。 |
| 删除 gluster 卷。 |
| 重置 gluster 卷中设置的所有选项。 |
| 重置 gluster 卷中的特定选项。 |
| 在 gluster 卷中设置特定选项。 |
| 启动 gluster 卷。 |
| 启动 gluster 卷性能分析. |
| 停止 gluster 卷。 |
| 停止分析 gluster 卷。 |
| 停止重新平衡 gluster 卷。 |
6.104.1. 获取 GET
获取 gluster 卷详细信息。
例如,若要获取群集 456
中标识符为 123
的 gluster 卷详情,请发送类似如下的请求:
GET /ovirt-engine/api/clusters/456/glustervolumes/123
此 GET 请求将返回以下输出:
<gluster_volume id="123"> <name>data</name> <link href="/ovirt-engine/api/clusters/456/glustervolumes/123/glusterbricks" rel="glusterbricks"/> <disperse_count>0</disperse_count> <options> <option> <name>storage.owner-gid</name> <value>36</value> </option> <option> <name>performance.io-cache</name> <value>off</value> </option> <option> <name>cluster.data-self-heal-algorithm</name> <value>full</value> </option> </options> <redundancy_count>0</redundancy_count> <replica_count>3</replica_count> <status>up</status> <stripe_count>0</stripe_count> <transport_types> <transport_type>tcp</transport_type> </transport_types> <volume_type>replicate</volume_type> </gluster_volume>
表 6.301. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | gluster 卷的表示形式. |
6.104.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.104.2. getprofilestatistics POST
获取 gluster 卷配置文件统计信息。
例如,若要获取群集 456
中标识符为 123
的 gluster 卷的配置集统计信息,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/getprofilestatistics
表 6.302. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | Gluster 卷性能分析从操作返回的信息. |
6.104.3. 重新平衡 POST
重新平衡 gluster 卷。
重新平衡 gluster 卷有助于在所有 brick 之间均匀分布数据。在扩展或缩小 gluster 卷(无需迁移数据)后,我们需要在 brick 之间重新平衡数据。在非复制卷中,所有 brick 都应在线,以执行重新平衡操作。在复制卷中,副本中应至少有一个 brick 在线。
例如,若要在集群 456
中使用标识符 123
重新平衡 gluster 卷,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/rebalance
表 6.303. 参数摘要
6.104.3.1. fix_layout
如果设为 true,则重新平衡将仅修复布局,以便添加到卷的新数据在所有主机上分布。但它不会迁移/重新平衡现有数据。默认为 false
。
6.104.3.2. force
指明是否应强制启动重新平衡。重新平衡命令可以使用 force 选项执行,即使旧的客户端连接到集群时也是如此。但是,这会导致数据丢失的情况。默认为 false
。
6.104.4. 删除 DELETE
删除 gluster 卷。
例如,要删除在集群 456
中带有 123
的卷,请发送类似如下的请求:
DELETE /ovirt-engine/api/clusters/456/glustervolumes/123
表 6.304. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.104.5. resetalloptions POST
重置 gluster 卷中设置的所有选项。
例如,若要重置群集 456
中标识符为 123
的 gluster 卷中的所有选项,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/resetalloptions
表 6.305. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行重置。 |
6.104.6. resetoption POST
重置 gluster 卷中的特定选项。
例如,若要在群集 456
中使用标识符 123
重置 gluster 卷中的特定 选项 option1
,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/resetoption
使用以下请求正文:
<action> <option name="option1"/> </action>
6.104.7. setoption POST
在 gluster 卷中设置特定选项。
例如,要在群集 456 中为 gluster 卷设置
option1,请在群集 值为 value1
的456
中使用标识符 123
设置 option1,发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/setoption
使用以下请求正文:
<action> <option name="option1" value="value1"/> </action>
6.104.8. 启动 POST
启动 gluster 卷。
应当启动 Gluster 卷以读/写数据。例如,要在集群 456
中启动一个带有标识符 123
的 gluster 卷,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/start
6.104.8.1. force
指明是否应强制启动该卷。如果 gluster 卷已启动,但很少/所有 brick 已停机,则可以使用 force start 来启动所有 brick。默认为 false
。
6.104.9. startprofile POST
启动 gluster 卷性能分析.
例如,要在群集 456
中使用标识符 123
开始分析 gluster 卷,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/startprofile
表 6.309. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.104.10. 停止 POST
停止 gluster 卷。
停止卷将使其数据无法访问。
例如,若要在集群 456
中停止带有标识符 123 的
gluster 卷,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/stop
6.104.11. stopprofile POST
停止分析 gluster 卷。
例如,要在集群 456
中停止使用标识符 123
分析 gluster 卷,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/stopprofile
表 6.311. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.104.12. 停止平衡 POST
停止重新平衡 gluster 卷。
例如,若要停止在集群 456
中使用标识符 123
重新平衡 gluster 卷,请发送类似如下的请求:
POST /ovirt-engine/api/clusters/456/glustervolumes/123/stoprebalance
表 6.312. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.105. GlusterVolumes
此服务管理集群中可用的 gluster 卷的集合。
表 6.313. 方法概述
名称 | 概述 |
---|---|
| 创建新的 gluster 卷。 |
| 列出集群中的所有 gluster 卷。 |
6.105.1. 添加 POST
创建新的 gluster 卷。
卷基于 volume
参数的属性创建。需要属性 名称
、volume_type
和 brick
。
例如,要将名为 myvolume
的卷添加到集群 123
中,请发送以下请求:
POST /ovirt-engine/api/clusters/123/glustervolumes
使用以下请求正文:
<gluster_volume> <name>myvolume</name> <volume_type>replicate</volume_type> <replica_count>3</replica_count> <bricks> <brick> <server_id>server1</server_id> <brick_dir>/exp1</brick_dir> </brick> <brick> <server_id>server2</server_id> <brick_dir>/exp1</brick_dir> </brick> <brick> <server_id>server3</server_id> <brick_dir>/exp1</brick_dir> </brick> <bricks> </gluster_volume>
表 6.314. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要创建卷的 gluster 卷定义作为输入传递,并且新创建的卷返回。 |
6.105.2. 列出 GET
列出集群中的所有 gluster 卷。
例如,若要列出群集 456
中的所有 Gluster 卷,请发送如下所示的请求:
GET /ovirt-engine/api/clusters/456/glustervolumes
无法保证返回的卷列表的顺序。
表 6.315. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
指明是否应该在考虑大小写的情况下使用 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大卷数。 | |
| in | 用于限制返回的卷的查询字符串。 | |
| out |
6.105.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.105.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.105.2.3. Max
设置要返回的最大卷数。如果没有指定,则返回所有卷。
6.106. 组
管理一组用户。使用此服务获取组详细信息或删除组。要添加新组,请使用管理组集合的服务。
表 6.316. 方法概述
名称 | 概述 |
---|---|
| 获取系统组信息. |
| 删除系统组。 |
6.106.1. 获取 GET
获取系统组信息.
使用方法:
GET /ovirt-engine/api/groups/123
将返回组信息:
<group href="/ovirt-engine/api/groups/123" id="123"> <name>mygroup</name> <link href="/ovirt-engine/api/groups/123/roles" rel="roles"/> <link href="/ovirt-engine/api/groups/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/groups/123/tags" rel="tags"/> <domain_entry_id>476652557A382F67696B6D2B32762B37796E46476D513D3D</domain_entry_id> <namespace>DC=example,DC=com</namespace> <domain href="/ovirt-engine/api/domains/ABCDEF" id="ABCDEF"> <name>myextension-authz</name> </domain> </group>
6.106.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.106.2. 删除 DELETE
删除系统组。
使用方法:
DELETE /ovirt-engine/api/groups/123
表 6.318. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.107. 组
管理用户组的集合。
表 6.319. 方法概述
名称 | 概述 |
---|---|
| 从目录服务添加组. |
| 列出系统中的所有组。 |
6.107.1. 添加 POST
从目录服务添加组.请注意,域名是授权供应商的名称。
例如,从 internal-authz
授权供应商添加 Developers
组,发送类似如下的请求:
POST /ovirt-engine/api/groups
这样的请求正文:
<group> <name>Developers</name> <domain> <name>internal-authz</name> </domain> </group>
表 6.320. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加的组。 |
6.107.2. 列出 GET
列出系统中的所有组。
使用方法:
GET /ovirt-engine/api/groups
将返回组列表:
<groups> <group href="/ovirt-engine/api/groups/123" id="123"> <name>mygroup</name> <link href="/ovirt-engine/api/groups/123/roles" rel="roles"/> <link href="/ovirt-engine/api/groups/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/groups/123/tags" rel="tags"/> <domain_entry_id>476652557A382F67696B6D2B32762B37796E46476D513D3D</domain_entry_id> <namespace>DC=example,DC=com</namespace> <domain href="/ovirt-engine/api/domains/ABCDEF" id="ABCDEF"> <name>myextension-authz</name> </domain> </group> ... </groups>
无法保证返回的组列表的顺序。
表 6.321. 参数摘要
6.107.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.107.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.107.2.3. Max
设置要返回的最大组数。如果没有指定,则返回所有组。
6.108. 主机
用于管理主机的服务。
表 6.322. 方法概述
名称 | 概述 |
---|---|
| 激活要使用的主机,例如用于运行虚拟机的主机。 |
| 批准预安装的系统管理程序主机,以便在虚拟化环境中使用。 |
| 将网络配置标记为良好的,并在主机中持久保留。 |
| 将指定主机的网络配置复制到当前主机。 |
| 停用主机以执行维护任务。 |
| 使用启动器详细信息,在主机上发现 iSCSI 目标。 |
| 注册主机的证书。 |
| 控制主机的电源管理设备。 |
| 将主机手动设置为存储池管理器(SPM)。 |
| 获取主机详细信息。 |
| 在主机上安装最新版本的 VDSM 和相关软件。 |
| 这个方法自 Engine 版本 4 起已弃用。 |
| 使用目标详细信息登录到主机上的 iSCSI 目标。 |
| 刷新主机设备和功能。 |
| 从系统中删除主机。 |
| 此方法用于更改主机网络接口的配置。 |
| 要同步主机上的所有网络,请发送如下请求: [source] ---- POST /ovirt-engine/api/hosts/123/syncallnetworks ---- 这样的请求正文: [source,xml] ---- <action/> ---- |
| 发现要导入到设置的块存储域。 |
| 更新主机属性。 |
| 升级主机上的 VDSM 和选定的软件. |
| 检查是否有适用于主机的升级。 |
6.108.1. 激活 POST
激活要使用的主机,例如用于运行虚拟机的主机。
表 6.323. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行激活。 |
6.108.2. 批准 POST
批准预安装的系统管理程序主机,以便在虚拟化环境中使用。
此操作还接受用于定义此主机的目标集群的可选集群元素。
表 6.324. 参数摘要
6.108.2.1. 激活
当设置为"true"时,此主机将在其批准完成后激活。当设置为"false"时,主机在批准后将保持"维护"状态。缺少此参数将解释为 'true',因为所需的默认行为是在批准后激活主机。
6.108.2.2. reboot
指明是否应当在安装成功后重新启动该主机。默认值为 true
。
6.108.3. commitnetconfig POST
将网络配置标记为良好的,并在主机中持久保留。
API 用户提交网络配置以持久保留主机网络接口附加或分离,或持久创建和删除绑定接口。
只有在引擎确定了主机连接不会因为配置更改而丢失后,才会提交网络配置。如果主机连接丢失,则主机需要重新引导,并且自动恢复到先前的网络配置。
例如,要提交 ID 为 123 的主机 的网络配置
,发送如下请求:
POST /ovirt-engine/api/hosts/123/commitnetconfig
这样的请求正文:
<action/>
由于 Red Hat Virtualization Manager 4.3,也可以在 setupnetworks 请求中指定 commit_on_success
,在这种情况下,新配置会在完成设置并重新建立 {hypervisor-name} 和 Red Hat Virtualization Manager 之间的连接后自动保存在 {hypervisor-name} 和 Red Hat Virtualization Manager,且无需等待单独的 commitnetconfig 请求。
表 6.325. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.108.4. copyhostnetworks POST
将指定主机的网络配置复制到当前主机。
源主机上不存在的任何网络附加都会通过复制操作从目标主机上清除。
要从另一个主机复制网络,请发送如下请求:
POST /ovirt-engine/api/hosts/123/copyhostnetworks
这样的请求正文:
<action> <source_host id="456"/> </action>
6.108.5. 取消激活 POST
停用主机以执行维护任务。
表 6.327. 参数摘要
6.108.5.1. stop_gluster_service
指明是否应当在停用主机时停止 gluster 服务。它可用于在 gluster 主机上执行维护操作。此变量的默认值为 false
。
6.108.6. 发现iscsi POST
使用启动器详细信息,在主机上发现 iSCSI 目标。返回包含已发现数据的 IscsiDetails 对象的列表。
例如,要从主机 123
发现 myiscsi.example.com
中可用的 iSCSI 目标,请发送如下请求:
POST /ovirt-engine/api/hosts/123/discoveriscsi
这样的请求正文:
<action> <iscsi> <address>myiscsi.example.com</address> </iscsi> </action>
结果如下:
<discovered_targets> <iscsi_details> <address>10.35.1.72</address> <port>3260</port> <portal>10.35.1.72:3260,1</portal> <target>iqn.2015-08.com.tgt:444</target> </iscsi_details> </discovered_targets>
当使用此方法发现 iscsi 目标时,您可以使用 FQDN 或 IP 地址,但必须使用发现的目标中的 iscsi 详情才能使用 iscsilogin 方法登录。
表 6.328. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行发现。 | |
| out | 发现的目标包括所有连接信息。 | |
| in | 目标 iSCSI 设备。 |
6.108.7. 注册certificate POST
注册主机的证书。如果您收到即将过期或已过期的警告,则很有用。
表 6.329. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行注册。 |
6.108.8. 隔离 POST
控制主机的电源管理设备。
例如,要启动主机:这可以通过以下方法完成:
#!/bin/sh -ex url="https://engine.example.com/ovirt-engine/api" user="admin@internal" password="..." curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --user "${user}:${password}" \ --request POST \ --header "Version: 4" \ --header "Content-Type: application/xml" \ --header "Accept: application/xml" \ --data ' <action> <fence_type>start</fence_type> </action> ' \ "${url}/hosts/123/fence"
表 6.330. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行隔离。 | |
| in | ||
| in | 指明是否应在重新启动后将主机置于维护状态。 | |
| out |
6.108.9. forceelectspm POST
将主机手动设置为存储池管理器(SPM)。
POST /ovirt-engine/api/hosts/123/forceselectspm
这样的请求正文:
<action/>
表 6.331. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.108.10. 获取 GET
获取主机详细信息。
GET /ovirt-engine/api/hosts/123
表 6.332. 参数摘要
6.108.10.1. all_content
指明是否应将主机的所有属性包含在响应中。
默认情况下排除以下属性:
-
hosted_engine
例如,要检索主机 '123' 的完整表示法:
GET /ovirt-engine/api/hosts/123?all_content=true
这些属性默认不包含在内,因为检索它们会影响性能。它们很少使用,需要对数据库进行其他查询。谨慎使用此参数,且仅在有特殊需要时才使用。
6.108.10.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.108.11. 安装 POST
在主机上安装最新版本的 VDSM 和相关软件。
该操作还会在主机上执行在向引擎中添加主机时执行的每个配置步骤:kdump 配置、hosted-engine 部署、内核选项更改等。
主机类型定义操作的其他参数。
使用 curl
和 JSON 安装主机示例:
curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --request PUT \ --header "Content-Type: application/json" \ --header "Accept: application/json" \ --header "Version: 4" \ --user "admin@internal:..." \ --data ' { "root_password": "myrootpassword" } ' \ "https://engine.example.com/ovirt-engine/api/hosts/123"
使用带有托管引擎组件的 curl
和 JSON 安装主机示例:
curl \ curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --request PUT \ --header "Content-Type: application/json" \ --header "Accept: application/json" \ --header "Version: 4" \ --user "admin@internal:..." \ --data ' { "root_password": "myrootpassword" "deploy_hosted_engine" : "true" } ' \ "https://engine.example.com/ovirt-engine/api/hosts/123"
自引擎版本 4.1.2 起,在重新安装主机时,我们默认覆盖主机防火墙定义。
表 6.333. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 当设置为"true"时,此主机将在安装完成后激活。 | |
| in | 指明是否应异步执行安装。 | |
| in |
如果设置为 | |
| in |
| |
| in | 安装 {hypervisor-name} 时,需要一个 ISO 镜像文件。 | |
| in | 指明是否应当在安装成功后重新启动该主机。 | |
| in |
用于通过 SSH 连接到主机的 | |
| in | 用于连接主机的 SSH 详细信息。 | |
| in |
如果设置为 |
6.108.11.1. 激活
当设置为"true"时,此主机将在安装完成后激活。当设置为"false"时,主机在安装后将保持"维护"状态。缺少此参数将解释为"true",因为所需的默认行为是在安装后激活主机。
6.108.11.2. deploy_hosted_engine
如果设置为 true
,此主机也会部署自托管引擎组件。缺少的值被视为 true
,即 deploy。省略此参数表示 假
,且不会在自托管引擎区域执行任何操作。
6.108.11.3. reboot
指明是否应当在安装成功后重新启动该主机。默认值为 true
。
6.108.11.4. undeploy_hosted_engine
如果设置为 true
,此主机将取消部署自托管引擎组件,此主机将不充当高可用性群集的一部分。缺少的值被视为 true
,即 un-deploy。省略此参数表示 假
,且不会在自托管引擎区域执行任何操作。
6.108.12. iscsidiscover POST
这个方法自 Engine 版本 4.4.6 起已弃用。应改为使用 DiscoverIscsi。
使用启动器详细信息,在主机上发现 iSCSI 目标。返回包含发现数据的字符串数组。
例如,要从主机 123
发现 myiscsi.example.com
中可用的 iSCSI 目标,请发送如下请求:
POST /ovirt-engine/api/hosts/123/iscsidiscover
这样的请求正文:
<action> <iscsi> <address>myiscsi.example.com</address> </iscsi> </action>
表 6.334. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行发现。 | |
| in | 目标 iSCSI 设备。 | |
| out | iSCSI 目标. |
6.108.12.1. iscsi_targets
iSCSI 目标。*
6.108.13. iscsilogin POST
使用目标详细信息登录到主机上的 iSCSI 目标。
使用此方法登录时,您必须使用发现的目标中的 iscsi 详情会导致 discoveriscsi 方法。
表 6.335. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行登录。 | |
| in | 目标 iSCSI 设备。 |
6.108.14. 刷新 POST
刷新主机设备和功能。
表 6.336. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行刷新。 |
6.108.15. 删除 DELETE
从系统中删除主机。
#!/bin/sh -ex url="https://engine.example.com/ovirt-engine/api" user="admin@internal" password="..." curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --user "${user}:${password}" \ --request DELETE \ --header "Version: 4" \ "${url}/hosts/1ff7a191-2f3b-4eff-812b-9f91a30c3acc"
6.108.16. setupnetworks POST
此方法用于更改主机网络接口的配置。
例如,如果您有一个具有三个网络接口的主机 eth0
、eth1
和 eth2
,并且您想要使用 eth0 和 eth
1
配置一个新绑定,并在上面放置 VLAN。使用一个简单的 shell 脚本和 curl
命令行 HTTP 客户端,可以按如下方式完成:
#!/bin/sh -ex url="https://engine.example.com/ovirt-engine/api" user="admin@internal" password="..." curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --user "${user}:${password}" \ --request POST \ --header "Version: 4" \ --header "Content-Type: application/xml" \ --header "Accept: application/xml" \ --data ' <action> <modified_bonds> <host_nic> <name>bond0</name> <bonding> <options> <option> <name>mode</name> <value>4</value> </option> <option> <name>miimon</name> <value>100</value> </option> </options> <slaves> <host_nic> <name>eth1</name> </host_nic> <host_nic> <name>eth2</name> </host_nic> </slaves> </bonding> </host_nic> </modified_bonds> <modified_network_attachments> <network_attachment> <network> <name>myvlan</name> </network> <host_nic> <name>bond0</name> </host_nic> <ip_address_assignments> <ip_address_assignment> <assignment_method>static</assignment_method> <ip> <address>192.168.122.10</address> <netmask>255.255.255.0</netmask> </ip> </ip_address_assignment> </ip_address_assignments> <dns_resolver_configuration> <name_servers> <name_server>1.1.1.1</name_server> <name_server>2.2.2.2</name_server> </name_servers> </dns_resolver_configuration> </network_attachment> </modified_network_attachments> </action> ' \ "${url}/hosts/1ff7a191-2f3b-4eff-812b-9f91a30c3acc/setupnetworks"
这对 API 版本 4 有效。在以前的版本中,部分元素表示为 XML 属性而不是 XML 元素。特别是,选项和
ip
元素的表示如下:
<options name="mode" value="4"/> <options name="miimon" value="100"/> <ip address="192.168.122.10" netmask="255.255.255.0"/>
同样的操作也可使用 Python SDK 及以下代码完成:
# Find the service that manages the collection of hosts: hosts_service = connection.system_service().hosts_service() # Find the host: host = hosts_service.list(search='name=myhost')[0] # Find the service that manages the host: host_service = hosts_service.host_service(host.id) # Configure the network adding a bond with two slaves and attaching it to a # network with an static IP address: host_service.setup_networks( modified_bonds=[ types.HostNic( name='bond0', bonding=types.Bonding( options=[ types.Option( name='mode', value='4', ), types.Option( name='miimon', value='100', ), ], slaves=[ types.HostNic( name='eth1', ), types.HostNic( name='eth2', ), ], ), ), ], modified_network_attachments=[ types.NetworkAttachment( network=types.Network( name='myvlan', ), host_nic=types.HostNic( name='bond0', ), ip_address_assignments=[ types.IpAddressAssignment( assignment_method=types.BootProtocol.STATIC, ip=types.Ip( address='192.168.122.10', netmask='255.255.255.0', ), ), ], dns_resolver_configuration=types.DnsResolverConfiguration( name_servers=[ '1.1.1.1', '2.2.2.2', ], ), ), ], ) # After modifying the network configuration it is very important to make it # persistent: host_service.commit_net_config()
为确保网络配置已保存到主机上,并且主机重启时会应用它,请记得调用 commitnetconfig。
由于 Red Hat Virtualization Manager 4.3,也可以在 setupnetworks 请求中指定 commit_on_success
,在这种情况下,新配置会在完成设置并重新建立 {hypervisor-name} 和 Red Hat Virtualization Manager 之间的连接后自动保存在 {hypervisor-name} 和 Red Hat Virtualization Manager,且无需等待单独的 commitnetconfig 请求。
表 6.338. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 | |
| in | ||
| in | 指定在完成设置并重新建立 {hypervisor-name} 和 Red Hat Virtualization Manager 之间的连接后,是否会在 {hypervisor-name} 和 Red Hat Virtualization Manager 中自动保存配置,且不会等待单独的 commitnetconfig 请求。 | |
| in | ||
| in | ||
| in | ||
| in | ||
| in | ||
| in | ||
| in | ||
| in | 将同步的网络附加列表。 |
6.108.16.1. commit_on_success
指定在完成设置并重新建立 {hypervisor-name} 和 Red Hat Virtualization Manager 之间的连接后,是否会在 {hypervisor-name} 和 Red Hat Virtualization Manager 中自动保存配置,且不会等待单独的 commitnetconfig 请求。默认值为 false
,这意味着配置不会自动保存。
6.108.17. syncallnetworks POST
要同步主机上的所有网络,请发送如下请求:
POST /ovirt-engine/api/hosts/123/syncallnetworks
这样的请求正文:
<action/>
表 6.339. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.108.18. unregisteredstoragedomainsdiscover POST
发现要导入到设置的块存储域。对于 FCP,不需要参数。
表 6.340. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行发现。 | |
| in | ||
| out |
6.108.19. 更新 PUT
更新主机属性。
例如,更新主机的内核命令行可发送如下请求:
PUT /ovirt-engine/api/hosts/123
借助此类请求正文:
<host> <os> <custom_kernel_cmdline>vfio_iommu_type1.allow_unsafe_interrupts=1</custom_kernel_cmdline> </os> </host>
6.108.20. 升级 POST
升级主机上的 VDSM 和选定的软件.
表 6.342. 参数摘要
6.108.20.1. reboot
指明是否应在升级后重新引导该主机。默认情况下,将重新引导主机。
{hypervisor-name} 会忽略这个参数,它总是在升级后重启。
6.108.20.2. timeout
升级超时。
等待升级完成的最长时间(以分钟为单位)。默认值由 ANSIBLE_PLAYBOOK_EXEC_DEFAULT_TIMEOUT
配置选项指定。
6.108.21. upgradecheck POST
检查是否有适用于主机的升级。如果有可用的升级,管理门户中主机状态图标旁边将显示一个图标。也添加了审计日志消息,以指示升级的可用性。升级可以从 webadmin 或升级主机操作启动。
6.109. HostCpuUnits
表 6.343. 方法概述
名称 | 概述 |
---|---|
| 返回所有主机的 CPU 列表,其中包含关于拓扑(套接字、核心)的详细信息,以及有关当前 CPU 固定的信息。 |
6.109.1. 列出 GET
返回所有主机的 CPU 列表,其中包含关于拓扑(套接字、核心)的详细信息,以及有关当前 CPU 固定的信息。
表 6.344. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.109.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.110. HostDevice
用于访问主机特定设备的服务。
表 6.345. 方法概述
名称 | 概述 |
---|---|
| 检索特定主机设备的信息。 |
6.110.1. 获取 GET
检索特定主机设备的信息。
获取主机设备的示例:
GET /ovirt-engine/api/hosts/123/devices/456
<host_device href="/ovirt-engine/api/hosts/123/devices/456" id="456"> <name>usb_1_9_1_1_0</name> <capability>usb</capability> <host href="/ovirt-engine/api/hosts/123" id="123"/> <parent_device href="/ovirt-engine/api/hosts/123/devices/789" id="789"> <name>usb_1_9_1</name> </parent_device> </host_device>
表 6.346. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.110.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.111. HostDevices
用于访问主机设备的服务。
表 6.347. 方法概述
名称 | 概述 |
---|---|
| 列出主机的设备。 |
6.111.1. 列出 GET
列出主机的设备。
无法保证返回的设备列表的顺序。
表 6.348. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大设备数。 |
6.111.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.111.1.2. Max
设置要返回的最大设备数。如果没有指定,则返回所有设备。
6.112. HostHook
表 6.349. 方法概述
名称 | 概述 |
---|---|
|
6.112.1. 获取 GET
6.112.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.113. HostHooks
表 6.351. 方法概述
名称 | 概述 |
---|---|
| 返回为主机配置的 hook 列表。 |
6.113.1. 列出 GET
返回为主机配置的 hook 列表。
返回的 hook 列表的顺序是随机的。
6.113.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.113.1.2. Max
设置要返回的最大 hook 数。如果没有指定,则会返回所有 hook。
6.114. HostNic
用于管理主机的网络接口的服务。
表 6.353. 方法概述
名称 | 概述 |
---|---|
| |
| 如果当前资源代表启用了 SR-IOV 的 NIC,则该操作会更新虚拟功能配置。 |
6.114.1. 获取 GET
表 6.354. 参数摘要
6.114.1.1. all_content
指明是否应将主机网络接口的所有属性包含在响应中。
默认情况下排除以下属性:
-
virtual_functions_configuration
例如,要检索主机 '123' 的完整表示网络接口 '456':
GET /ovirt-engine/api/hosts/123/nics/456?all_content=true
这些属性默认不包含在内,因为检索它们会影响性能。它们很少使用,需要对数据库进行其他查询。谨慎使用此参数,且仅在有特殊需要时才使用。
6.114.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.114.2. 更新虚拟功能配置 POST
如果当前资源代表启用了 SR-IOV 的 NIC,则该操作会更新虚拟功能配置。输入应至少包含以下属性之一:
-
allNetworksAllowed
-
numberOfVirtualFunctions
请参阅 HostNicVirtualFunctionsConfiguration
类型以了解属性的含义。
表 6.355. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in |
6.115. HostNics
用于管理主机的网络接口的服务。
表 6.356. 方法概述
名称 | 概述 |
---|---|
| 返回主机的网络接口列表。 |
6.115.1. 列出 GET
返回主机的网络接口列表。
无法保证返回的网络接口列表的顺序。
表 6.357. 参数摘要
6.115.1.1. all_content
指明是否应将主机网络接口的所有属性包含在响应中。
默认情况下排除以下属性:
-
virtual_functions_configuration
例如,要检索主机 '123' 的网络接口 '456' 的完整表示法:
GET /ovirt-engine/api/hosts/123/nics?all_content=true
这些属性默认不包含在内,因为检索它们会影响性能。它们很少使用,需要对数据库进行其他查询。谨慎使用此参数,且仅在有特殊需要时才使用。
6.115.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.115.1.3. Max
设置要返回的最大 NIC 数。如果没有指定,则会返回所有 NIC。
6.116. HostNumaNode
表 6.358. 方法概述
名称 | 概述 |
---|---|
|
6.116.1. 获取 GET
6.116.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.117. HostNumaNodes
表 6.360. 方法概述
名称 | 概述 |
---|---|
| 返回主机的 NUMA 节点列表。 |
6.117.1. 列出 GET
返回主机的 NUMA 节点列表。
NUMA 节点返回列表的顺序不受保证。
表 6.361. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大节点数。 | |
| out |
6.117.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.117.1.2. Max
设置要返回的最大节点数。如果没有指定,则返回所有节点。
6.118. HostStorage
用于管理主机存储的服务。
表 6.362. 方法概述
名称 | 概述 |
---|---|
| 获取存储列表. |
6.118.1. 列出 GET
获取存储列表.
GET /ovirt-engine/api/hosts/123/storage
您得到的 XML 响应如下:
<host_storages> <host_storage id="123"> ... </host_storage> ... </host_storages>
无法保证返回的存储列表的顺序。
表 6.363. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 指明是否应检查存储中的 LUN 状态。 | |
| out | 检索的存储列表。 |
6.118.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.118.1.2. report_status
指明是否应检查存储中的 LUN 状态。检查 LUN 状态是一种重量型操作,用户并不总是需要这个数据。此参数将提供选项,使其不执行 LUN 的状态检查。
默认为 向后
兼容。
这里有一个 LUN 状态为 的示例:
<host_storage id="123"> <logical_units> <logical_unit id="123"> <lun_mapping>0</lun_mapping> <paths>1</paths> <product_id>lun0</product_id> <serial>123</serial> <size>10737418240</size> <status>used</status> <vendor_id>LIO-ORG</vendor_id> <volume_group_id>123</volume_group_id> </logical_unit> </logical_units> <type>iscsi</type> <host id="123"/> </host_storage>
这里有一个没有 LUN 状态的示例:
<host_storage id="123"> <logical_units> <logical_unit id="123"> <lun_mapping>0</lun_mapping> <paths>1</paths> <product_id>lun0</product_id> <serial>123</serial> <size>10737418240</size> <vendor_id>LIO-ORG</vendor_id> <volume_group_id>123</volume_group_id> </logical_unit> </logical_units> <type>iscsi</type> <host id="123"/> </host_storage>
6.119. 主机
管理主机的服务。
表 6.364. 方法概述
名称 | 概述 |
---|---|
| 创建新主机. |
| 获取所有可用主机的列表。 |
6.119.1. 添加 POST
创建新主机.
主机基于 host
参数的属性创建。name
、address
和 root_password
属性是必需的。
例如,要添加主机,请发送以下请求:
POST /ovirt-engine/api/hosts
使用以下请求正文:
<host> <name>myhost</name> <address>myhost.example.com</address> <root_password>myrootpassword</root_password> </host>
root_password
元素仅包含在客户端提供的初始表示法中,不会在从后续请求返回的表示中公开。
自引擎版本 4.1.2 起,当新添加主机时,主机防火墙定义将默认被覆盖。
要添加托管引擎主机,请使用可选的 deploy_hosted_engine
参数:
POST /ovirt-engine/api/hosts?deploy_hosted_engine=true
如果集群有一个支持自动部署的默认外部网络供应商,则在添加主机时会部署外部网络供应商。只有 OVN 的外部网络提供程序支持自动部署。要部署集群中定义的外部网络供应商,请在添加主机时覆盖外部网络供应商,请发送以下请求:
POST /ovirt-engine/api/hosts
使用一个请求正文,其中包含对 external_network_provider_configuration
中所需提供程序的引用:
<host> <name>myhost</name> <address>myhost.example.com</address> <root_password>123456</root_password> <external_network_provider_configurations> <external_network_provider_configuration> <external_network_provider name="ovirt-provider-ovn"/> </external_network_provider_configuration> </external_network_provider_configurations> </host>
表 6.365. 参数摘要
6.119.1.1. 激活
当设置为 true
时,此主机将在安装完成后激活。当设置为 false
时,主机安装后将保持 维护
状态。如果没有此参数,将解释为 true
,因为所需的默认行为是在安装后激活主机。
6.119.1.2. deploy_hosted_engine
当设置为 true
时,此主机将部署托管引擎组件。缺少的值被视为 true
,即部署托管引擎组件。省略此参数等于 false
,主机不会在托管引擎区域执行任何操作。
6.119.1.3. reboot
指明是否应当在安装成功后重新启动该主机。默认值为 true
。
6.119.1.4. undeploy_hosted_engine
当设置为 true
时,此主机将取消部署托管引擎组件,且不会作为高可用性集群的一部分运行。缺少的值被视为 true
,即 un-deploy。省略此参数等于 false
,主机不会在托管引擎区域执行任何操作。
6.119.2. 列出 GET
获取所有可用主机的列表。
例如,列出发送以下请求的主机:
GET /ovirt-engine/api/hosts
响应正文类似如下:
<hosts> <host href="/ovirt-engine/api/hosts/123" id="123"> ... </host> <host href="/ovirt-engine/api/hosts/456" id="456"> ... </host> ... </host>
只有 search
参数中包含 sortby
子句时,才会保证返回的主机列表的顺序。
表 6.366. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应将主机的所有属性包含在响应中。 | |
| in |
指明是否应该在考虑大小写的情况下使用 | |
| in |
此参数可与 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大主机数。 | |
| in | 接受以逗号分隔的虚拟机 ID 列表,并返回可迁移到这些虚拟机的主机。 | |
| in | 用于限制返回的主机的查询字符串。 |
6.119.2.1. all_content
指明是否应将主机的所有属性包含在响应中。
默认情况下,排除以下主机属性:
-
hosted_engine
例如,要检索主机的完整表示法:
GET /ovirt-engine/api/hosts?all_content=true
这些属性默认不包含在内,因为检索它们会影响性能。它们很少使用,需要对数据库进行其他查询。谨慎使用此参数,且仅在有特殊需要时才使用。
6.119.2.2. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.119.2.3. check_vms_in_affinity_closure
此参数可与 migration_target_of
一起使用,为列出的虚拟机和所有其他与列出的虚拟机执行密切关系的虚拟机获取有效的迁移目标。
这在虚拟机与正关联组中的其他虚拟机一起迁移时非常有用。
默认值为 false
。
GET /ovirt-engine/api/hosts?migration_target_of=123,456&check_vms_in_affinity_closure=true
6.119.2.4. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.119.2.5. Max
设置要返回的最大主机数。如果未指定,则返回所有主机。
6.119.2.6. migration_target_of
接受以逗号分隔的虚拟机 ID 列表,并返回可迁移到这些虚拟机的主机。
例如,要检索 ID 为 123 的虚拟机和 ID 为 456 的虚拟机可以迁移到的主机列表,请发送以下请求:
GET /ovirt-engine/api/hosts?migration_target_of=123,456
6.120. icon
用于管理图标的服务(只读)。
表 6.367. 方法概述
名称 | 概述 |
---|---|
| 获取图标. |
6.120.1. 获取 GET
获取图标.
GET /ovirt-engine/api/icons/123
您将获得类似以下的 XML 响应:
<icon id="123"> <data>Some binary data here</data> <media_type>image/png</media_type> </icon>
6.120.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.121. icons
用于管理图标的服务。
表 6.369. 方法概述
名称 | 概述 |
---|---|
| 获取图标列表. |
6.121.1. 列出 GET
获取图标列表.
GET /ovirt-engine/api/icons
您将获得类似以下的 XML 响应:
<icons> <icon id="123"> <data>...</data> <media_type>image/png</media_type> </icon> ... </icons>
无法保证返回的图标列表的顺序。
6.121.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.121.1.2. Max
设置要返回的最大图标数。如果没有指定,则返回所有图标。
6.122. Image
表 6.371. 方法概述
名称 | 概述 |
---|---|
| |
| 导入映像. |
6.122.1. 获取 GET
6.122.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.122.2. 导入 POST
导入映像.
如果 import_as_template
参数为 true
,则映像将作为模板导入,否则它将作为磁盘导入。
将模板导入为模板时,可以通过可选的 template.name
参数指定模板的名称。如果未指定该参数,则引擎将自动将该模板的名称指定为 GlanceTemplate-x
(其中 x
是七个随机十六进制字符)。
作为磁盘导入时,可以通过可选的 disk.name
参数指定磁盘名称。如果未指定该参数,则引擎将自动将该磁盘名称指定为 GlanceDisk-x
(其中 x
将是映像标识符的七个十六进制字符)。
建议始终明确指定模板或磁盘名称,以避免引擎生成的这些自动名称。
6.123. ImageTransfer
此服务提供控制镜像传输的机制。客户端必须使用 第 6.124 节 “ImageTransfers” 服务添加来创建传输,指示要在其中传输数据的镜像。
执行此操作后,转让由此服务管理。
使用 oVirt 的 Python SDK:
上传 ID 123
的磁盘
(在数据中心的随机主机上):
transfers_service = system_service.image_transfers_service() transfer = transfers_service.add( types.ImageTransfer( disk=types.Disk( id='123' ) ) )
在 主机
ID 456
上上传 ID 123
的磁盘
:
transfers_service = system_service.image_transfers_service() transfer = transfers_service.add( types.ImageTransfer( disk=types.Disk( id='123' ), host=types.Host( id='456' ) ) )
如果用户想要下载磁盘而不是上传,则应将 下载
指定为传输 的方向 属性。这将授予镜像的读取权限,而不是写入权限。
例如:
transfers_service = system_service.image_transfers_service() transfer = transfers_service.add( types.ImageTransfer( disk=types.Disk( id='123' ), direction=types.ImageTransferDirection.DOWNLOAD ) )
传输具有控制上传/下载流程的阶段。实施此类流程的客户端应轮询/检查转让的阶段,并相应地操作。所有可能的阶段都可以在 ImageTransferPhase 中找到。
添加新转移后,其阶段将初始化。在转让更改之前,客户端必须轮询传输阶段。当阶段开始转移后,会话就可以开始转移。
例如:
transfer_service = transfers_service.image_transfer_service(transfer.id) while transfer.phase == types.ImageTransferPhase.INITIALIZING: time.sleep(3) transfer = transfer_service.get()
在该阶段,如果转让的阶段是 paused_system,则无法成功建立会话。这可能是因为 ovirt-imageio-daemon 没有在选择进行传输的主机中运行。可以通过调用管理它的服务恢复传输。
如果会话成功建立 - 返回的传输实体将包含 transfer_url 和 proxy_url 属性,客户端需要使用这些属性来传输所需的数据。客户端可以选择任何技术和工具来发送带有镜像数据的 HTTPS 请求。
-
transfer_url
是其中一个虚拟机监控程序上运行的 imageio 服务器的地址。 -
proxy_url
是 imageio 代理服务器的地址,如果您无法访问 transfer_url,则可以使用该地址。
若要传输映像,建议使用 imageio 客户端 python 库。
from ovirt_imageio import client # Upload qcow2 image to virtual disk: client.upload("disk.qcow2", transfer.transfer_url) # Download virtual disk to qcow2 image: client.download(transfer.transfer_url, "disk.qcow2")
您还可以使用 imageio REST API 上传和下载。如需了解更多相关信息,请参阅 imageio API 文档:
http://ovirt.github.io/ovirt-imageio/images.html
完成转让后,用户应致电完成。这将为完成转移过程做出最终调整和验证。
例如:
transfer_service.finalize()
如果出现错误,传输阶段将更改为 finished_failure,磁盘的状态将更改为 Illegal
。否则,它将更改为 completed_success,磁盘将可供使用。在这两种情况下,转让实体将在后面很快删除。
使用 HTTP 和 cURL 调用:
对于上传,首先创建一个新磁盘:
- 以字节为单位指定 'initial_size' 和 'provisioned_size'。
- 'initial_size' 必须大于或与上传数据的大小相同。
POST /ovirt-engine/api/disks
请求正文如下:
<disk> <storage_domains> <storage_domain id="123"/> </storage_domains> <alias>mydisk</alias> <initial_size>1073741824</initial_size> <provisioned_size>1073741824</provisioned_size> <format>raw</format> </disk>
-
创建用于下载/卸载 ID 为
456
的磁盘
的新镜像传输:
POST /ovirt-engine/api/imagetransfers
请求正文如下:
<image_transfer> <disk id="456"/> <direction>upload|download</direction> </image_transfer>
将响应:
<image_transfer id="123"> <direction>download|upload</direction> <phase>initializing|transferring</phase> <proxy_url>https://proxy_fqdn:54323/images/41c732d4-2210-4e7b-9e5c-4e2805baadbb</proxy_url> <transfer_url>https://daemon_fqdn:54322/images/41c732d4-2210-4e7b-9e5c-4e2805baadbb</transfer_url> ... </image_transfer>
注意:如果阶段为"初始化",请轮询 image_transfer
,直到其阶段变为"传输"。
- 使用 'transfer_url' 或 'proxy_url' 来调用 curl 命令:
- 使用 'transfer_url' 直接从/到 ovirt-imageio-daemon 传输,或者使用 'proxy_url' 从/ ovirt-imageio-proxy 传输。注意:使用代理可以缓解没有直接连接到守护进程计算机的情况,例如 vdsm 机器位于与引擎不同的网络中。
-usersdownload:
$ curl --cacert /etc/pki/ovirt-engine/ca.pem https://daemon_fqdn:54322/images/41c732d4-2210-4e7b-9e5c-4e2805baadbb -o <output_file>
- SASupload:
$ curl --cacert /etc/pki/ovirt-engine/ca.pem --upload-file <file_to_upload> -X PUT https://daemon_fqdn:54322/images/41c732d4-2210-4e7b-9e5c-4e2805baadbb
- 通过调用操作来结束镜像传输:
POST /ovirt-engine/api/imagetransfers/123/finalize
请求正文如下:
<action />
表 6.374. 方法概述
名称 | 概述 |
---|---|
| 取消镜像传输会话。 |
| 扩展映像传输会话。 |
| 在完成传输数据后,完成传输。 |
| 获取映像传输实体。 |
| 暂停映像传输会话。 |
| 恢复镜像传输会话。 |
6.123.1. 取消 POST
取消镜像传输会话。这会终止传输操作并移除部分镜像。
6.123.2. 扩展 POST
扩展映像传输会话。
6.123.3. 最终 POST
在完成传输数据后,完成传输。
这样将确保传输的数据有效,并且适合传输中的目标映像实体。具体来说,将验证映像实体是否为 QCOW 磁盘,上传的数据实际上是 QCOW 文件,并且映像没有后备文件。
6.123.4. 获取 GET
获取映像传输实体。
表 6.375. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.123.4.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.123.5. 暂停 POST
暂停映像传输会话。
6.123.6. 恢复 POST
恢复镜像传输会话。客户需要轮询传输阶段,直到这与 恢复不同。
例如:
transfer_service = transfers_service.image_transfer_service(transfer.id) transfer_service.resume() transfer = transfer_service.get() while transfer.phase == types.ImageTransferPhase.RESUMING: time.sleep(1) transfer = transfer_service.get()
6.124. ImageTransfers
此服务管理镜像传输,以用于在红帽虚拟化中执行镜像 I/O API。有关更多文档,请参阅图像传送。
表 6.376. 方法概述
名称 | 概述 |
---|---|
| 添加新映像传输。 |
| 检索当前正在执行的镜像传输的列表。 |
6.124.1. 添加 POST
添加新映像传输。需要指定映像、磁盘或磁盘快照才能进行新的传输。
image
属性已弃用,因为引擎的版本 4.2。改为使用 disk
或 snapshot
属性。
创建用于下载或上传 磁盘
的新镜像传输:
要创建镜像传输来下载或上传 ID 为 123
的磁盘,请发送以下请求:
POST /ovirt-engine/api/imagetransfers
这样的请求正文:
<image_transfer> <disk id="123"/> <direction>upload|download</direction> </image_transfer>
创建用于下载或上传 disk_snapshot
的新映像传输:
要创建映像传输来下载或上传 ID 为 456
的 disk_snapshot
,请发送以下请求:
POST /ovirt-engine/api/imagetransfers
这样的请求正文:
<image_transfer> <snapshot id="456"/> <direction>download|upload</direction> </image_transfer>
表 6.377. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加的镜像传输。 |
6.124.2. 列出 GET
检索当前正在执行的镜像传输的列表。
返回的镜像传输列表的顺序不受保证。
表 6.378. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 当前正在执行的镜像传输列表。 |
6.124.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.125. 镜像
管理存储域或 OpenStack 映像提供程序中可用的镜像集合。
表 6.379. 方法概述
名称 | 概述 |
---|---|
| 返回存储域或提供程序中可用映像的列表。 |
6.125.1. 列出 GET
返回存储域或提供程序中可用映像的列表。
无法保证返回的镜像列表的顺序。
6.125.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.125.1.2. Max
设置要返回的最大镜像数。如果没有指定,则返回所有镜像。
6.126. InstanceType
表 6.381. 方法概述
名称 | 概述 |
---|---|
| 获取特定实例类型及其属性。 |
| 从系统移除特定的实例类型。 |
| 更新特定的实例类型及其属性。 |
6.126.1. 获取 GET
获取特定实例类型及其属性。
GET /ovirt-engine/api/instancetypes/123
表 6.382. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.126.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.126.2. 删除 DELETE
从系统移除特定的实例类型。
如果在删除实例类型后使用实例类型 X 创建虚拟机,则虚拟机的实例类型将设置为 custom
。
DELETE /ovirt-engine/api/instancetypes/123
表 6.383. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.126.3. 更新 PUT
更新特定的实例类型及其属性。
所有属性均可在创建后编辑。如果使用实例类型 X 创建虚拟机,并且更新了实例类型 X 中的一些配置,引擎将自动更新虚拟机的配置。
PUT /ovirt-engine/api/instancetypes/123
例如,要将实例类型 123
的内存更新为 1 GiB,并将 cpu 拓扑设置为 2 个插槽和 1 个内核,请发送类似如下的请求:
<instance_type> <memory>1073741824</memory> <cpu> <topology> <cores>1</cores> <sockets>2</sockets> <threads>1</threads> </topology> </cpu> </instance_type>
表 6.384. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.127. InstanceTypeGraphicsConsole
表 6.385. 方法概述
名称 | 概述 |
---|---|
| 获取实例类型的图形控制台配置。 |
| 从实例类型中删除图形控制台。 |
6.127.1. 获取 GET
获取实例类型的图形控制台配置。
表 6.386. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 关于实例类型的图形控制台的信息。 | |
| in | 指明应遵循哪些内联链接。 |
6.127.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.127.2. 删除 DELETE
从实例类型中删除图形控制台。
表 6.387. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.128. InstanceTypeGraphicsConsoles
表 6.388. 方法概述
名称 | 概述 |
---|---|
| 向实例类型添加新的图形控制台。 |
| 列出实例类型的所有配置的图形控制台。 |
6.128.1. 添加 POST
向实例类型添加新的图形控制台。
表 6.389. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.128.2. 列出 GET
列出实例类型的所有配置的图形控制台。
无法保证返回的图形控制台列表的顺序。
表 6.390. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 实例类型的图形控制台列表。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大控制台数。 |
6.128.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.128.2.2. Max
设置要返回的最大控制台数。如果没有指定,则返回所有控制台。
6.129. InstanceTypeNic
表 6.391. 方法概述
名称 | 概述 |
---|---|
| 获取实例类型的网络接口配置。 |
| 从实例类型中删除网络接口。 |
| 更新实例类型的网络接口配置。 |
6.129.1. 获取 GET
获取实例类型的网络接口配置。
6.129.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.129.2. 删除 DELETE
从实例类型中删除网络接口。
表 6.393. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.129.3. 更新 PUT
更新实例类型的网络接口配置。
6.130. InstanceTypeNics
表 6.395. 方法概述
名称 | 概述 |
---|---|
| 向实例类型添加新网络接口。 |
| 列出实例类型的所有已配置网络接口。 |
6.130.1. 添加 POST
向实例类型添加新网络接口。
表 6.396. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.130.2. 列出 GET
列出实例类型的所有已配置网络接口。
无法保证返回的网络接口列表的顺序。
表 6.397. 参数摘要
6.130.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.130.2.2. Max
设置要返回的最大 NIC 数。如果没有指定,则会返回所有 NIC。
6.131. InstanceTypeWatchdog
表 6.398. 方法概述
名称 | 概述 |
---|---|
| 获取实例类型的 watchdog 配置。 |
| 从实例类型中删除 watchdog。 |
| 更新实例类型的 watchdog 配置。 |
6.131.1. 获取 GET
获取实例类型的 watchdog 配置。
6.131.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.131.2. 删除 DELETE
从实例类型中删除 watchdog。
表 6.400. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.131.3. 更新 PUT
更新实例类型的 watchdog 配置。
6.132. InstanceTypeWatchdogs
表 6.402. 方法概述
名称 | 概述 |
---|---|
| 向实例类型添加新的 watchdog。 |
| 列出实例类型的所有配置的 watchdog。 |
6.132.1. 添加 POST
向实例类型添加新的 watchdog。
表 6.403. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.132.2. 列出 GET
列出实例类型的所有配置的 watchdog。
返回的 watchdogs 列表的顺序不受保证。
表 6.404. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大 watchdogs 数。 | |
| in | 用于限制返回的模板的查询字符串。 | |
| out |
6.132.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.132.2.2. Max
设置要返回的最大 watchdogs 数。如果未指定,则返回所有 watchdogs。
6.133. InstanceTypes
表 6.405. 方法概述
名称 | 概述 |
---|---|
| 创建新的实例类型。 |
| 列出系统中的所有现有实例类型。 |
6.133.1. 添加 POST
创建新的实例类型。
这只需要 name 属性,并且可以包含虚拟机的所有硬件配置。
POST /ovirt-engine/api/instancetypes
这样的请求正文:
<instance_type> <name>myinstancetype</name> </template>
使用请求正文创建包含所有硬件配置的实例类型,如下方所示:
<instance_type> <name>myinstancetype</name> <console> <enabled>true</enabled> </console> <cpu> <topology> <cores>2</cores> <sockets>2</sockets> <threads>1</threads> </topology> </cpu> <custom_cpu_model>AMD Opteron_G2</custom_cpu_model> <custom_emulated_machine>q35</custom_emulated_machine> <display> <monitors>1</monitors> <single_qxl_pci>true</single_qxl_pci> <smartcard_enabled>true</smartcard_enabled> <type>spice</type> </display> <high_availability> <enabled>true</enabled> <priority>1</priority> </high_availability> <io> <threads>2</threads> </io> <memory>4294967296</memory> <memory_policy> <ballooning>true</ballooning> <guaranteed>268435456</guaranteed> </memory_policy> <migration> <auto_converge>inherit</auto_converge> <compressed>inherit</compressed> <policy id="00000000-0000-0000-0000-000000000000"/> </migration> <migration_downtime>2</migration_downtime> <os> <boot> <devices> <device>hd</device> </devices> </boot> </os> <rng_device> <rate> <bytes>200</bytes> <period>2</period> </rate> <source>urandom</source> </rng_device> <soundcard_enabled>true</soundcard_enabled> <usb> <enabled>true</enabled> <type>native</type> </usb> <virtio_scsi> <enabled>true</enabled> </virtio_scsi> </instance_type>
表 6.406. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.133.2. 列出 GET
列出系统中的所有现有实例类型。
无法保证返回的实例类型列表的顺序。
表 6.407. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
指明是否应该在考虑大小写的情况下使用 | |
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的实例类型的最大数量。 | |
| in | 用于限制返回的模板的查询字符串。 |
6.133.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.133.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.133.2.3. Max
设置要返回的实例类型的最大数量。如果没有指定,则返回所有实例类型。
6.134. IscsiBond
表 6.408. 方法概述
名称 | 概述 |
---|---|
| |
| 删除现有 iSCSI 绑定. |
| 更新 iSCSI 绑定. |
6.134.1. 获取 GET
6.134.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.134.2. 删除 DELETE
删除现有 iSCSI 绑定.
例如,要删除 iSCSI 绑定 456
,发送类似如下的请求:
DELETE /ovirt-engine/api/datacenters/123/iscsibonds/456
表 6.410. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.134.3. 更新 PUT
更新 iSCSI 绑定.
iSCSI 绑定的更新只能在 名称和
描述
属性上完成。例如,要更新数据中心 123
的 iSCSI bond 456
,请发送如下请求:
PUT /ovirt-engine/api/datacenters/123/iscsibonds/1234
请求正文应类似如下:
<iscsi_bond> <name>mybond</name> <description>My iSCSI bond</description> </iscsi_bond>
6.135. IscsiBonds
表 6.412. 方法概述
名称 | 概述 |
---|---|
| 在数据中心上创建新的 iSCSI 绑定。 |
| 返回数据中心中配置的 iSCSI 绑定列表。 |
6.135.1. 添加 POST
在数据中心上创建新的 iSCSI 绑定。
例如,要使用存储连接 456
和 789
在数据中心 123
上创建新的 iSCSI 绑定,请发送如下请求:
POST /ovirt-engine/api/datacenters/123/iscsibonds
请求正文应类似如下:
<iscsi_bond> <name>mybond</name> <storage_connections> <storage_connection id="456"/> <storage_connection id="789"/> </storage_connections> <networks> <network id="abc"/> </networks> </iscsi_bond>
表 6.413. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.135.2. 列出 GET
返回数据中心中配置的 iSCSI 绑定列表。
无法保证返回的 iSCSI 绑定列表的顺序。
表 6.414. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大绑定数。 |
6.135.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.135.2.2. Max
设置要返回的最大绑定数。如果没有指定所有绑定,则会返回所有绑定。
6.136. Job
用于管理作业的服务。
表 6.415. 方法概述
名称 | 概述 |
---|---|
| 设置系统要清除的外部作业执行。 |
| 将外部作业执行标记为结束。 |
| 检索作业。 |
6.136.1. 清除 POST
设置系统要清除的外部作业执行。
例如,要设置标识符为 123 的作业,发送
以下请求:
POST /ovirt-engine/api/jobs/clear
使用以下请求正文:
<action/>
表 6.416. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.136.2. 最终 POST
将外部作业执行标记为结束。
例如,要终止标识符为 123 的作业,发送
以下请求:
POST /ovirt-engine/api/jobs/end
使用以下请求正文:
<action> <force>true</force> <status>finished</status> </action>
表 6.417. 参数摘要
6.136.2.1. succeeded
表示作业应标记为成功完成或失败。
此参数是可选的,默认值为 true
。
6.136.3. 获取 GET
检索作业。
GET /ovirt-engine/api/jobs/123
您将在 XML 中收到类似以下的响应:
<job href="/ovirt-engine/api/jobs/123" id="123"> <actions> <link href="/ovirt-engine/api/jobs/123/clear" rel="clear"/> <link href="/ovirt-engine/api/jobs/123/end" rel="end"/> </actions> <description>Adding Disk</description> <link href="/ovirt-engine/api/jobs/123/steps" rel="steps"/> <auto_cleared>true</auto_cleared> <end_time>2016-12-12T23:07:29.758+02:00</end_time> <external>false</external> <last_updated>2016-12-12T23:07:29.758+02:00</last_updated> <start_time>2016-12-12T23:07:26.593+02:00</start_time> <status>failed</status> <owner href="/ovirt-engine/api/users/456" id="456"/> </job>
6.136.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.137. Jobs
用于管理作业的服务。
表 6.419. 方法概述
名称 | 概述 |
---|---|
| 添加外部作业。 |
| 检索作业的表示法。 |
6.137.1. 添加 POST
添加外部作业。
例如,使用以下请求添加作业:
POST /ovirt-engine/api/jobs
使用以下请求正文:
<job> <description>Doing some work</description> <auto_cleared>true</auto_cleared> </job>
响应应类似于:
<job href="/ovirt-engine/api/jobs/123" id="123"> <actions> <link href="/ovirt-engine/api/jobs/123/clear" rel="clear"/> <link href="/ovirt-engine/api/jobs/123/end" rel="end"/> </actions> <description>Doing some work</description> <link href="/ovirt-engine/api/jobs/123/steps" rel="steps"/> <auto_cleared>true</auto_cleared> <external>true</external> <last_updated>2016-12-13T02:15:42.130+02:00</last_updated> <start_time>2016-12-13T02:15:42.130+02:00</start_time> <status>started</status> <owner href="/ovirt-engine/api/users/456" id="456"/> </job>
表 6.420. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 将添加的作业。 |
6.137.2. 列出 GET
检索作业的表示法。
GET /ovirt-engine/api/jobs
您将在 XML 中收到类似以下的响应:
<jobs> <job href="/ovirt-engine/api/jobs/123" id="123"> <actions> <link href="/ovirt-engine/api/jobs/123/clear" rel="clear"/> <link href="/ovirt-engine/api/jobs/123/end" rel="end"/> </actions> <description>Adding Disk</description> <link href="/ovirt-engine/api/jobs/123/steps" rel="steps"/> <auto_cleared>true</auto_cleared> <end_time>2016-12-12T23:07:29.758+02:00</end_time> <external>false</external> <last_updated>2016-12-12T23:07:29.758+02:00</last_updated> <start_time>2016-12-12T23:07:26.593+02:00</start_time> <status>failed</status> <owner href="/ovirt-engine/api/users/456" id="456"/> </job> ... </jobs>
无法保证返回的作业列表的顺序。
表 6.421. 参数摘要
6.137.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.137.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.137.2.3. Max
设置要返回的最大作业数。如果未指定,则返回所有作业。
6.138. KatelloErrata
用于管理 Katello 勘误表的服务。该信息是从 Katello 检索而来。
表 6.422. 方法概述
名称 | 概述 |
---|---|
| 检索 Katello 勘误表的表示形式。 |
6.138.1. 列出 GET
检索 Katello 勘误表的表示形式。
GET /ovirt-engine/api/katelloerrata
您将在 XML 中收到类似以下的响应:
<katello_errata> <katello_erratum href="/ovirt-engine/api/katelloerrata/123" id="123"> <name>RHBA-2013:XYZ</name> <description>The description of the erratum</description> <title>some bug fix update</title> <type>bugfix</type> <issued>2013-11-20T02:00:00.000+02:00</issued> <solution>Few guidelines regarding the solution</solution> <summary>Updated packages that fix one bug are now available for XYZ</summary> <packages> <package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package> ... </packages> </katello_erratum> ... </katello_errata>
返回的勘误列表的顺序无法保证。
表 6.423. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | Katello 勘误表的表示。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的勘误表的最大数量。 |
6.138.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.138.1.2. Max
设置要返回的勘误表的最大数量。如果没有指定,则会返回所有勘误。
6.139. KatelloErratum
用于管理 Katello 勘误的服务。
表 6.424. 方法概述
名称 | 概述 |
---|---|
| 检索 Katello 勘误. |
6.139.1. 获取 GET
检索 Katello 勘误.
GET /ovirt-engine/api/katelloerrata/123
您将在 XML 中收到类似以下的响应:
<katello_erratum href="/ovirt-engine/api/katelloerrata/123" id="123"> <name>RHBA-2013:XYZ</name> <description>The description of the erratum</description> <title>some bug fix update</title> <type>bugfix</type> <issued>2013-11-20T02:00:00.000+02:00</issued> <solution>Few guidelines regarding the solution</solution> <summary>Updated packages that fix one bug are now available for XYZ</summary> <packages> <package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package> ... </packages> </katello_erratum>
表 6.425. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索 Katello 勘误的表示形式。 | |
| in | 指明应遵循哪些内联链接。 |
6.139.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.140. LinkLayerDiscoveryProtocol
用于获取由链路层发现协议(LLDP)接收的信息元素的服务。
表 6.426. 方法概述
名称 | 概述 |
---|---|
| 获取 LLDP 接收的信息元素。 |
6.140.1. 列出 GET
获取 LLDP 接收的信息元素。
表 6.427. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索 LLDP 接收的信息元素列表。 | |
| in | 指明应遵循哪些内联链接。 |
6.140.1.1. 元素
检索 LLDP 接收的信息元素列表。
例如,要检索主机 123
上的 NIC 321
上接收的信息元素,请发送类似如下的请求:
GET ovirt-engine/api/hosts/123/nics/321/linklayerdiscoveryprotocolelements
它将返回类似如下的响应:
<link_layer_discovery_protocol_elements> ... <link_layer_discovery_protocol_element> <name>Port Description</name> <properties> <property> <name>port description</name> <value>Summit300-48-Port 1001</value> </property> </properties> <type>4</type> </link_layer_discovery_protocol_element> ... <link_layer_discovery_protocol_elements>
6.140.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.141. MacPool
表 6.428. 方法概述
名称 | 概述 |
---|---|
| |
| 删除 MAC 地址池。 |
| 更新 MAC 地址池。 |
6.141.1. 获取 GET
6.141.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.141.2. 删除 DELETE
删除 MAC 地址池。
例如,要删除 ID 123 的 MAC 地址池,发送
类似如下的请求:
DELETE /ovirt-engine/api/macpools/123
表 6.430. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.141.3. 更新 PUT
更新 MAC 地址池。
可以更新 name
、description
、allow_duplicates
和 ranges 属性
。
例如,更新 id 123
的 MAC 地址池可发送如下请求:
PUT /ovirt-engine/api/macpools/123
这样的请求正文:
<mac_pool> <name>UpdatedMACPool</name> <description>An updated MAC address pool</description> <allow_duplicates>false</allow_duplicates> <ranges> <range> <from>00:1A:4A:16:01:51</from> <to>00:1A:4A:16:01:e6</to> </range> <range> <from>02:1A:4A:01:00:00</from> <to>02:1A:4A:FF:FF:FF</to> </range> </ranges> </mac_pool>
6.142. MacPools
表 6.432. 方法概述
名称 | 概述 |
---|---|
| 创建新的 MAC 地址池。 |
| 返回系统的 MAC 地址池列表。 |
6.142.1. 添加 POST
创建新的 MAC 地址池。
创建 MAC 地址池需要 名称和
范围属性值
。
例如,要创建 MAC 地址池发送如下请求:
POST /ovirt-engine/api/macpools
这样的请求正文:
<mac_pool> <name>MACPool</name> <description>A MAC address pool</description> <allow_duplicates>true</allow_duplicates> <default_pool>false</default_pool> <ranges> <range> <from>00:1A:4A:16:01:51</from> <to>00:1A:4A:16:01:e6</to> </range> </ranges> </mac_pool>
表 6.433. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.142.2. 列出 GET
返回系统的 MAC 地址池列表。
MAC 地址池返回的列表不受保证。
6.142.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.142.2.2. Max
设置要返回的最大池数。如果没有指定,则返回所有池。
6.143. 可测量
6.144. 可移动
表 6.435. 方法概述
名称 | 概述 |
---|---|
|
6.144.1. 移动 POST
表 6.436. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移动。 |
6.145. Network
管理网络的服务
表 6.437. 方法概述
名称 | 概述 |
---|---|
| 获取逻辑网络. |
| 删除逻辑网络或逻辑网络与数据中心的关联。 |
| 更新逻辑网络. |
6.145.1. 获取 GET
获取逻辑网络.
例如:
GET /ovirt-engine/api/networks/123
将响应:
<network href="/ovirt-engine/api/networks/123" id="123"> <name>ovirtmgmt</name> <description>Default Management Network</description> <link href="/ovirt-engine/api/networks/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/networks/123/vnicprofiles" rel="vnicprofiles"/> <link href="/ovirt-engine/api/networks/123/networklabels" rel="networklabels"/> <mtu>0</mtu> <stp>false</stp> <usages> <usage>vm</usage> </usages> <data_center href="/ovirt-engine/api/datacenters/456" id="456"/> </network>
6.145.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.145.2. 删除 DELETE
删除逻辑网络或逻辑网络与数据中心的关联。
例如,要删除逻辑网络 123
,发送类似如下的请求:
DELETE /ovirt-engine/api/networks/123
每个网络都完全绑定到一个数据中心。因此,如果我们将网络与数据中心解除关联,其结果就与我们只是删除该网络一样。但是,可能更具体地指出我们删除了数据中心 123
的网络 456
。
例如,要删除网络 456
到数据中心 123
的关联,请发送类似如下的请求:
DELETE /ovirt-engine/api/datacenters/123/networks/456
要移除外部逻辑网络,必须通过 OpenStack 网络 API 将网络直接从其提供程序中删除。如果为提供商启用了 auto_sync
,则代表红帽虚拟化内部外部网络的实体将自动删除,否则必须使用此方法移除该实体。
表 6.439. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.145.3. 更新 PUT
更新逻辑网络.
可以更新 name
、
description
、ip、vlan
、stp
和 display
属性。
例如,要更新逻辑网络 123
的描述,可发送如下请求:
PUT /ovirt-engine/api/networks/123
这样的请求正文:
<network> <description>My updated description</description> </network>
网络的最大传输单元使用 PUT 请求来设置,以指定 mtu
属性的整数值。
例如,要设置最大传输单元会发送如下请求:
PUT /ovirt-engine/api/datacenters/123/networks/456
这样的请求正文:
<network> <mtu>1500</mtu> </network>
更新外部网络不会传播到提供程序。
6.146. NetworkAttachment
表 6.441. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新主机上指定的网络附加。 |
6.146.1. 获取 GET
表 6.442. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.146.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.146.2. 删除 DELETE
表 6.443. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.146.3. 更新 PUT
更新主机上指定的网络附加。
表 6.444. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.147. NetworkAttachments
管理主机或主机 NIC 的网络附加集合。
表 6.445. 方法概述
名称 | 概述 |
---|---|
| 向网络接口添加新网络附加。 |
| 返回主机或主机 NIC 的网络附加列表。 |
6.147.1. 添加 POST
向网络接口添加新网络附加。
表 6.446. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.147.2. 列出 GET
返回主机或主机 NIC 的网络附加列表。
网络附加列表返回的顺序不受保证。
表 6.447. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置返回的最大附件数。 |
6.147.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.147.2.2. Max
设置返回的最大附件数。如果没有指定,则返回所有附件。
6.148. NetworkFilter
管理网络过滤器。
<network_filter id="00000019-0019-0019-0019-00000000026b"> <name>example-network-filter-b</name> <version> <major>4</major> <minor>0</minor> <build>-1</build> <revision>-1</revision> </version> </network_filter>
请注意,版本指的是特定过滤器的最小支持版本。
表 6.448. 方法概述
名称 | 概述 |
---|---|
| 检索网络过滤器的表示法。 |
6.148.1. 获取 GET
检索网络过滤器的表示法。
表 6.449. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.148.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.149. NetworkFilters
表示只读网络过滤器子集合。
网络过滤器允许根据定义的规则过滤发送到/从虚拟机的 nic 发送的数据包。如需更多信息,请参阅 NetworkFilter 服务文档
从版本 3.0 开始,支持网络过滤器的不同版本。
为每个 vnic 配置集定义一个网络过滤器。
为特定网络定义 vnic 配置集。
网络可以分配给多个不同的集群。未来,将在集群级别上定义每个网络。
目前,每个网络都在数据中心级别上定义。每个网络的潜在网络过滤器由网络的数据中心兼容性版本 V 决定。V 必须是 >= 网络过滤器版本,以便为特定网络配置这个网络过滤器。请注意,如果将网络分配给带有支持网络过滤器的版本的集群,则该过滤器可能会因为数据中心版本较小而不可用,然后网络过滤器的版本便不可用。
列出特定集群的所有支持的网络过滤器示例:
GET http://localhost:8080/ovirt-engine/api/clusters/{cluster:id}/networkfilters
输出:
<network_filters> <network_filter id="00000019-0019-0019-0019-00000000026c"> <name>example-network-filter-a</name> <version> <major>4</major> <minor>0</minor> <build>-1</build> <revision>-1</revision> </version> </network_filter> <network_filter id="00000019-0019-0019-0019-00000000026b"> <name>example-network-filter-b</name> <version> <major>4</major> <minor>0</minor> <build>-1</build> <revision>-1</revision> </version> </network_filter> <network_filter id="00000019-0019-0019-0019-00000000026a"> <name>example-network-filter-a</name> <version> <major>3</major> <minor>0</minor> <build>-1</build> <revision>-1</revision> </version> </network_filter> </network_filters>
表 6.450. 方法概述
名称 | 概述 |
---|---|
| 检索网络过滤器的表示法。 |
6.149.1. 列出 GET
检索网络过滤器的表示法。
网络过滤器返回列表的顺序不受保证。
表 6.451. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.149.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.150. NetworkLabel
表 6.452. 方法概述
名称 | 概述 |
---|---|
| |
| 从逻辑网络中删除标签. |
6.150.1. 获取 GET
表 6.453. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.150.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.150.2. 删除 DELETE
从逻辑网络中删除标签.
例如,要从 ID 为 123
的逻辑网络中删除标签 示例
,发送以下请求:
DELETE /ovirt-engine/api/networks/123/networklabels/exemplary
表 6.454. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.151. NetworkLabels
管理附加到网络或主机 NIC 的标签ser。
表 6.455. 方法概述
名称 | 概述 |
---|---|
| 将标签附加到逻辑网络. |
| 返回附加到网络或主机 NIC 的标签列表。 |
6.151.1. 添加 POST
将标签附加到逻辑网络.
您可以将标签附加到逻辑网络,从而将该逻辑网络与已附加相同标签的物理主机网络接口自动关联。
例如,要将标签 mylabel
附加到 ID 123 的逻辑网络上,可 发送
如下所示的请求:
POST /ovirt-engine/api/networks/123/networklabels
这样的请求正文:
<network_label id="mylabel"/>
表 6.456. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.151.2. 列出 GET
返回附加到网络或主机 NIC 的标签列表。
返回的标签列表的顺序不受保证。
表 6.457. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大标签数。 |
6.151.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.151.2.2. Max
设置要返回的最大标签数。如果没有指定,则返回所有标签。
6.152. 网络
管理逻辑网络.
引擎会在安装时创建一个默认的 ovirtmgmt
网络。此网络充当访问虚拟机监控程序主机的管理网络。此网络与 Default
集群关联,是 Default
数据中心的成员。
表 6.458. 方法概述
名称 | 概述 |
---|---|
| 创建新的逻辑网络,或者将现有网络与数据中心相关联。 |
| 列出逻辑网络. |
6.152.1. 添加 POST
创建新的逻辑网络,或者将现有网络与数据中心相关联。
创建新网络需要 name 和 data
_center
元素。
例如,要为数据中心创建名为 mynetwork
的网络 123
可发送如下请求:
POST /ovirt-engine/api/networks
这样的请求正文:
<network> <name>mynetwork</name> <data_center id="123"/> </network>
要将现有网络 456
与数据中心 123
关联,可发送如下所示的请求:
POST /ovirt-engine/api/datacenters/123/networks
这样的请求正文:
<network> <name>ovirtmgmt</name> </network>
要在外部 OpenStack 网络提供商 456
上创建名为 exnetwork
的网络,请发送如下请求:
POST /ovirt-engine/api/networks
<network> <name>exnetwork</name> <external_provider id="456"/> <data_center id="123"/> </network>
表 6.459. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.152.2. 列出 GET
列出逻辑网络.
例如:
GET /ovirt-engine/api/networks
将响应:
<networks> <network href="/ovirt-engine/api/networks/123" id="123"> <name>ovirtmgmt</name> <description>Default Management Network</description> <link href="/ovirt-engine/api/networks/123/permissions" rel="permissions"/> <link href="/ovirt-engine/api/networks/123/vnicprofiles" rel="vnicprofiles"/> <link href="/ovirt-engine/api/networks/123/networklabels" rel="networklabels"/> <mtu>0</mtu> <stp>false</stp> <usages> <usage>vm</usage> </usages> <data_center href="/ovirt-engine/api/datacenters/456" id="456"/> </network> ... </networks>
只有 search
参数中包含 sortby
子句时,才能保证返回的网络列表的顺序。
表 6.460. 参数摘要
6.152.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.152.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.152.2.3. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.153. NicNetworkFilterParameter
此服务管理网络过滤器的参数。
表 6.461. 方法概述
名称 | 概述 |
---|---|
| 检索网络过滤器参数表示法。 |
| 删除过滤器参数。 |
| 更新网络过滤器参数。 |
6.153.1. 获取 GET
检索网络过滤器参数表示法。
表 6.462. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 网络过滤器参数的表示。 |
6.153.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.153.2. 删除 DELETE
删除过滤器参数。
例如,要删除在虚拟机 789
的 NIC
ID 123 的 filter 参数,发送类似如下的请求:
456
上
DELETE /ovirt-engine/api/vms/789/nics/456/networkfilterparameters/123
6.153.3. 更新 PUT
更新网络过滤器参数。
例如,要更新在虚拟机 789
的 NIC 456
上带有 id 123
的网络过滤器参数发送如下请求:
PUT /ovirt-engine/api/vms/789/nics/456/networkfilterparameters/123
这样的请求正文:
<network_filter_parameter> <name>updatedName</name> <value>updatedValue</value> </network_filter_parameter>
表 6.463. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 正在更新的网络过滤器参数。 |
6.154. NicNetworkFilterParameters
此服务管理网络过滤器的一组参数。
表 6.464. 方法概述
名称 | 概述 |
---|---|
| 添加网络过滤器参数。 |
| 检索网络过滤器参数的表示法。 |
6.154.1. 添加 POST
添加网络过滤器参数。
例如,要在虚拟机 789
的 NIC 456
上为网络过滤器添加 参数,发送类似如下的请求:
POST /ovirt-engine/api/vms/789/nics/456/networkfilterparameters
这样的请求正文:
<network_filter_parameter> <name>IP</name> <value>10.0.1.2</value> </network_filter_parameter>
表 6.465. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 正在添加的网络过滤器参数。 |
6.154.2. 列出 GET
检索网络过滤器参数的表示法。
网络过滤器返回列表的顺序不受保证。
表 6.466. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 网络过滤器参数列表。 |
6.154.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.155. OpenstackImage
表 6.467. 方法概述
名称 | 概述 |
---|---|
| |
| 从 Glance 映像存储域导入虚拟机。 |
6.155.1. 获取 GET
表 6.468. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.155.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.155.2. 导入 POST
从 Glance 映像存储域导入虚拟机。
例如,要从存储域导入标识符为 456
的镜像,标识符为 123
,发送类似如下的请求:
POST /ovirt-engine/api/openstackimageproviders/123/images/456/import
这样的请求正文:
<action> <storage_domain> <name>images0</name> </storage_domain> <cluster> <name>images0</name> </cluster> </action>
6.156. OpenstackImageProvider
表 6.470. 方法概述
名称 | 概述 |
---|---|
| |
| 导入外部主机提供程序的 SSL 证书。 |
| |
| 为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。 |
| 更新系统中指定的 OpenStack 镜像提供程序。 |
6.156.1. 获取 GET
表 6.471. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.156.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.156.2. importcertificates POST
导入外部主机提供程序的 SSL 证书。
表 6.472. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
6.156.3. 删除 DELETE
表 6.473. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.156.4. 测试连接 POST
为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。
POST /ovirt-engine/api/externalhostproviders/123/testconnectivity
表 6.474. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行测试。 |
6.156.5. 更新 PUT
更新系统中指定的 OpenStack 镜像提供程序。
表 6.475. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.157. OpenstackImageProviders
表 6.476. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新的 OpenStack 映像提供程序。 |
| 返回提供程序列表。 |
6.157.1. 添加 POST
向系统添加新的 OpenStack 映像提供程序。
表 6.477. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.157.2. 列出 GET
返回提供程序列表。
返回的供应商列表的顺序不受保证。
表 6.478. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大供应商数量。 | |
| out | ||
| in | 用于限制返回的 OpenStack 镜像提供程序的查询字符串。 |
6.157.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.157.2.2. Max
设置要返回的最大供应商数量。如果没有指定,则返回所有供应商。
6.158. OpenstackImages
表 6.479. 方法概述
名称 | 概述 |
---|---|
| 列出 Glance 映像存储域的映像。 |
6.158.1. 列出 GET
列出 Glance 映像存储域的映像。
无法保证返回的镜像列表的顺序。
表 6.480. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大镜像数。 |
6.158.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.158.1.2. Max
设置要返回的最大镜像数。如果没有指定,则返回所有镜像。
6.159. OpenstackNetwork
表 6.481. 方法概述
名称 | 概述 |
---|---|
| |
| 此操作将外部网络导入到红帽虚拟化中。 |
6.159.1. 获取 GET
表 6.482. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.159.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.159.2. 导入 POST
此操作将外部网络导入到红帽虚拟化中。网络将添加到指定的数据中心。
表 6.483. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行导入。 | |
| in | 网络要导入到的数据中心。 |
6.159.2.1. data_center
网络要导入到的数据中心。数据中心是必需的,可使用 id
或 name
属性指定。将忽略其余属性。
如果为供应商启用了 auto_sync
,则网络可能会自动导入。要防止这种情况,可以通过将 auto_sync
设置为 false 来禁用自动导入,并在导入网络后再次启用它。
6.160. OpenstackNetworkProvider
此服务管理 OpenStack 网络提供程序。
表 6.484. 方法概述
名称 | 概述 |
---|---|
| 返回此服务管理的对象表示法。 |
| 导入外部主机提供程序的 SSL 证书。 |
| 删除供应商。 |
| 为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。 |
| 更新提供程序。 |
6.160.1. 获取 GET
返回此服务管理的对象表示法。
例如,要获取标识符为 1234
的 OpenStack 网络提供程序,请发送如下请求:
GET /ovirt-engine/api/openstacknetworkproviders/1234
表 6.485. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.160.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.160.2. importcertificates POST
导入外部主机提供程序的 SSL 证书。
表 6.486. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
6.160.3. 删除 DELETE
删除供应商。
例如,要删除带有标识符 1234
的 OpenStack 网络提供程序,请发送类似如下的请求:
DELETE /ovirt-engine/api/openstacknetworkproviders/1234
表 6.487. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.160.4. 测试连接 POST
为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。
POST /ovirt-engine/api/externalhostproviders/123/testconnectivity
表 6.488. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行测试。 |
6.160.5. 更新 PUT
更新提供程序。
例如,要更新
、provider_name
、Requires_authenticationurl
、tenant_name
和 type
属性,请向带有标识符 1234
的 OpenStack 网络供应商发送如下请求:
PUT /ovirt-engine/api/openstacknetworkproviders/1234
这样的请求正文:
<openstack_network_provider> <name>ovn-network-provider</name> <requires_authentication>false</requires_authentication> <url>http://some_server_url.domain.com:9696</url> <tenant_name>oVirt</tenant_name> <type>external</type> </openstack_network_provider>
表 6.489. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 要更新的供应商。 |
6.161. OpenstackNetworkProviders
此服务管理 OpenStack 网络提供程序。
表 6.490. 方法概述
名称 | 概述 |
---|---|
| 该操作向系统添加新的网络提供程序。 |
| 返回提供程序列表。 |
6.161.1. 添加 POST
该操作向系统添加新的网络提供程序。如果 类型
属性不存在,将使用默认值 NEUTRON
。
表 6.491. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.161.2. 列出 GET
返回提供程序列表。
返回的供应商列表的顺序不受保证。
表 6.492. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大供应商数量。 | |
| out | ||
| in | 用于限制返回的 OpenStack 网络提供程序的查询字符串。 |
6.161.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.161.2.2. Max
设置要返回的最大供应商数量。如果没有指定,则返回所有供应商。
6.162. OpenstackNetworks
表 6.493. 方法概述
名称 | 概述 |
---|---|
| 返回网络列表。 |
6.162.1. 列出 GET
返回网络列表。
网络返回列表的顺序无法保证。
表 6.494. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大网络数。 | |
| out |
6.162.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.162.1.2. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.163. OpenstackSubnet
表 6.495. 方法概述
名称 | 概述 |
---|---|
| |
|
6.163.1. 获取 GET
表 6.496. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.163.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.163.2. 删除 DELETE
表 6.497. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.164. OpenstackSubnets
表 6.498. 方法概述
名称 | 概述 |
---|---|
| |
| 返回子网列表。 |
6.164.1. 添加 POST
表 6.499. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.164.2. 列出 GET
返回子网列表。
返回的子网列表的顺序不受保证。
表 6.500. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大子网数。 | |
| out |
6.164.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.164.2.2. Max
设置要返回的最大子网数。如果没有指定,则返回所有子网。
6.165. OpenstackVolumeAuthenticationKey
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 6.501. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新指定的身份验证密钥。 |
6.165.1. 获取 GET
表 6.502. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.165.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.165.2. 删除 DELETE
表 6.503. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.165.3. 更新 PUT
更新指定的身份验证密钥。
表 6.504. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.166. OpenstackVolumeAuthenticationKeys
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 6.505. 方法概述
名称 | 概述 |
---|---|
| 添加新的身份验证密钥到 OpenStack 卷提供程序。 |
| 返回身份验证密钥列表。 |
6.166.1. 添加 POST
添加新的身份验证密钥到 OpenStack 卷提供程序。
表 6.506. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.166.2. 列出 GET
返回身份验证密钥列表。
身份验证密钥返回列表的顺序不保证。
表 6.507. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大密钥数。 |
6.166.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.166.2.2. Max
设置要返回的最大密钥数。如果没有指定,则返回所有键。
6.167. OpenstackVolumeProvider
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 6.508. 方法概述
名称 | 概述 |
---|---|
| |
| 导入外部主机提供程序的 SSL 证书。 |
| |
| 为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。 |
| 更新系统中指定的 OpenStack 卷提供程序。 |
6.167.1. 获取 GET
表 6.509. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.167.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.167.2. importcertificates POST
导入外部主机提供程序的 SSL 证书。
表 6.510. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
6.167.3. 删除 DELETE
6.167.3.1. force
指明操作是否应该成功,并且供应商从数据库中删除,即使操作期间出现问题。
此参数是可选的,默认值为 false
。
6.167.4. 测试连接 POST
为了测试外部提供程序的连接性,我们需要运行以下请求,其中 123 是提供程序的 ID。
POST /ovirt-engine/api/externalhostproviders/123/testconnectivity
表 6.512. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行测试。 |
6.167.5. 更新 PUT
更新系统中指定的 OpenStack 卷提供程序。
表 6.513. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.168. OpenstackVolumeProviders
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 6.514. 方法概述
名称 | 概述 |
---|---|
| 添加新卷提供程序。 |
| 检索卷提供程序的列表。 |
6.168.1. 添加 POST
添加新卷提供程序。
例如:
POST /ovirt-engine/api/openstackvolumeproviders
这样的请求正文:
<openstack_volume_provider> <name>mycinder</name> <url>https://mycinder.example.com:8776</url> <data_center> <name>mydc</name> </data_center> <requires_authentication>true</requires_authentication> <username>admin</username> <password>mypassword</password> <tenant_name>mytenant</tenant_name> </openstack_volume_provider>
表 6.515. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.168.2. 列出 GET
检索卷提供程序的列表。
无法保证返回的卷提供程序列表的顺序。
表 6.516. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大供应商数量。 | |
| out | ||
| in | 用于限制返回的卷提供程序的查询字符串。 |
6.168.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.168.2.2. Max
设置要返回的最大供应商数量。如果没有指定,则返回所有供应商。
6.169. OpenstackVolumeType
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 6.517. 方法概述
名称 | 概述 |
---|---|
|
6.169.1. 获取 GET
表 6.518. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.169.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.170. OpenstackVolumeTypes
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 6.519. 方法概述
名称 | 概述 |
---|---|
| 返回卷类型列表。 |
6.170.1. 列出 GET
返回卷类型列表。
无法保证返回的卷类型列表的顺序。
表 6.520. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大卷类型数。 | |
| out |
6.170.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.170.1.2. Max
设置要返回的最大卷类型数。如果没有指定,则返回所有卷类型。
6.171. OperatingSystem
表 6.521. 方法概述
名称 | 概述 |
---|---|
|
6.171.1. 获取 GET
表 6.522. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.171.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.172. OperatingSystems
管理系统中可用的操作系统集合。
表 6.523. 方法概述
名称 | 概述 |
---|---|
| 返回系统中可用操作系统类型的列表。 |
6.172.1. 列出 GET
返回系统中可用操作系统类型的列表。
无法保证返回的操作系统列表的顺序。
表 6.524. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大网络数。 | |
| out |
6.172.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.172.1.2. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.173. 权限
表 6.525. 方法概述
名称 | 概述 |
---|---|
| |
|
6.173.1. 获取 GET
6.173.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.173.2. 删除 DELETE
表 6.527. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.174. Allow
用于管理该角色特定权限的服务。
表 6.528. 方法概述
名称 | 概述 |
---|---|
| 获取有关角色允许的信息。 |
| 从角色中删除允许。 |
6.174.1. 获取 GET
获取有关角色允许的信息。
例如,要检索有关角色 ID 为 456
的允许信息,id 123
会发送如下请求:
GET /ovirt-engine/api/roles/123/permits/456
<permit href="/ovirt-engine/api/roles/123/permits/456" id="456"> <name>change_vm_cd</name> <administrative>false</administrative> <role href="/ovirt-engine/api/roles/123" id="123"/> </permit>
6.174.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.174.2. 删除 DELETE
从角色中删除允许。
例如,要从 id 123
角色中删除 id 456
的允许,可发送类似如下的请求:
DELETE /ovirt-engine/api/roles/123/permits/456
表 6.530. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.175. Allow
表示允许特定角色的子集合。
表 6.531. 方法概述
名称 | 概述 |
---|---|
| 向角色添加允许。 |
| 列出角色允许。 |
6.175.1. 添加 POST
向角色添加允许。允许名称可以从 第 6.45 节 “ClusterLevels” 服务检索。
例如,要将允许 create_vm
分配给具有 id 123
的角色,可发送如下所示的请求:
POST /ovirt-engine/api/roles/123/permits
这样的请求正文:
<permit> <name>create_vm</name> </permit>
表 6.532. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加的允许. |
6.175.2. 列出 GET
列出角色允许。
例如,使用 id 123
列出角色允许,发送类似如下的请求:
GET /ovirt-engine/api/roles/123/permits
<permits> <permit href="/ovirt-engine/api/roles/123/permits/5" id="5"> <name>change_vm_cd</name> <administrative>false</administrative> <role href="/ovirt-engine/api/roles/123" id="123"/> </permit> <permit href="/ovirt-engine/api/roles/123/permits/7" id="7"> <name>connect_to_vm</name> <administrative>false</administrative> <role href="/ovirt-engine/api/roles/123" id="123"/> </permit> </permits>
无法保证返回的许可列表的顺序。
6.175.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.175.2.2. Max
设置返回的最大允许数。如果没有指定,则返回所有允许。
6.176. QoS
表 6.534. 方法概述
名称 | 概述 |
---|---|
| 在数据中心中获取指定的 QoS。 |
| 从数据中心移除指定的 QoS。 |
| 更新 dataCenter 中指定的 QoS。 |
6.176.1. 获取 GET
在数据中心中获取指定的 QoS。
GET /ovirt-engine/api/datacenters/123/qoss/123
您将获得如下响应:
<qos href="/ovirt-engine/api/datacenters/123/qoss/123" id="123"> <name>123</name> <description>123</description> <max_iops>1</max_iops> <max_throughput>1</max_throughput> <type>storage</type> <data_center href="/ovirt-engine/api/datacenters/123" id="123"/> </qos>
6.176.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.176.2. 删除 DELETE
从数据中心移除指定的 QoS。
DELETE /ovirt-engine/api/datacenters/123/qoss/123
表 6.536. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.176.3. 更新 PUT
更新 dataCenter 中指定的 QoS。
PUT /ovirt-engine/api/datacenters/123/qoss/123
例如,使用 curl:
curl -u admin@internal:123456 -X PUT -H "content-type: application/xml" -d \ "<qos><name>321</name><description>321</description><max_iops>10</max_iops></qos>" \ https://engine/ovirt-engine/api/datacenters/123/qoss/123
您将收到如下响应:
<qos href="/ovirt-engine/api/datacenters/123/qoss/123" id="123"> <name>321</name> <description>321</description> <max_iops>10</max_iops> <max_throughput>1</max_throughput> <type>storage</type> <data_center href="/ovirt-engine/api/datacenters/123" id="123"/> </qos>
6.177. Qoss
管理数据中心中可用的一组服务质量配置。
表 6.538. 方法概述
名称 | 概述 |
---|---|
| 向 dataCenter 添加新 QoS。 |
| 返回数据中心中可用的服务质量配置列表。 |
6.177.1. 添加 POST
向 dataCenter 添加新 QoS。
POST /ovirt-engine/api/datacenters/123/qoss
回复方式如下:
<qos href="/ovirt-engine/api/datacenters/123/qoss/123" id="123"> <name>123</name> <description>123</description> <max_iops>10</max_iops> <type>storage</type> <data_center href="/ovirt-engine/api/datacenters/123" id="123"/> </qos>
表 6.539. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 添加了 QoS 对象。 |
6.177.2. 列出 GET
返回数据中心中可用的服务质量配置列表。
GET /ovirt-engine/api/datacenter/123/qoss
您将获得类似如下的响应:
<qoss> <qos href="/ovirt-engine/api/datacenters/123/qoss/1" id="1">...</qos> <qos href="/ovirt-engine/api/datacenters/123/qoss/2" id="2">...</qos> <qos href="/ovirt-engine/api/datacenters/123/qoss/3" id="3">...</qos> </qoss>
返回的服务质量配置列表无法保证。
表 6.540. 参数摘要
6.177.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.177.2.2. Max
设置要返回的最大 QoS 描述符数。如果没有指定,则会返回所有描述符。
6.178. Quota
表 6.541. 方法概述
名称 | 概述 |
---|---|
| 检索配额. |
| 删除配额. |
| 更新配额. |
6.178.1. 获取 GET
检索配额.
获取配额的示例:
GET /ovirt-engine/api/datacenters/123/quotas/456
<quota id="456"> <name>myquota</name> <description>My new quota for virtual machines</description> <cluster_hard_limit_pct>20</cluster_hard_limit_pct> <cluster_soft_limit_pct>80</cluster_soft_limit_pct> <storage_hard_limit_pct>20</storage_hard_limit_pct> <storage_soft_limit_pct>80</storage_soft_limit_pct> </quota>
6.178.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.178.2. 删除 DELETE
删除配额.
删除配额的示例:
DELETE /ovirt-engine/api/datacenters/123-456/quotas/654-321 -0472718ab224 HTTP/1.1 Accept: application/xml Content-type: application/xml
表 6.543. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.178.3. 更新 PUT
更新配额.
更新配额的示例:
PUT /ovirt-engine/api/datacenters/123/quotas/456
<quota> <cluster_hard_limit_pct>30</cluster_hard_limit_pct> <cluster_soft_limit_pct>70</cluster_soft_limit_pct> <storage_hard_limit_pct>20</storage_hard_limit_pct> <storage_soft_limit_pct>80</storage_soft_limit_pct> </quota>
6.179. QuotaClusterLimit
表 6.545. 方法概述
名称 | 概述 |
---|---|
| |
|
6.179.1. 获取 GET
表 6.546. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.179.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.179.2. 删除 DELETE
表 6.547. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.180. QuotaClusterLimits
管理为集群配置的配额限值集合。
表 6.548. 方法概述
名称 | 概述 |
---|---|
| 将集群限制添加到指定的配额。 |
| 返回为集群配置的配额限值集合。 |
6.180.1. 添加 POST
将集群限制添加到指定的配额。
表 6.549. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.180.2. 列出 GET
返回为集群配置的配额限值集合。
返回的配额限制列表不受保证。
表 6.550. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置返回的最大限值数。 |
6.180.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.180.2.2. Max
设置返回的最大限值数。如果没有指定,则会返回所有限制。
6.181. QuotaStorageLimit
表 6.551. 方法概述
名称 | 概述 |
---|---|
| |
|
6.181.1. 获取 GET
表 6.552. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.181.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.181.2. 删除 DELETE
表 6.553. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 |
6.182. QuotaStorageLimits
管理为配额配置的存储限值集合。
表 6.554. 方法概述
名称 | 概述 |
---|---|
| 为指定的配额添加存储限制。 |
| 返回为配额配置的存储限值列表。 |
6.182.1. 添加 POST
为指定的配额添加存储限制。
要为数据中心中的所有存储域创建 100GiB 存储限值,请发送如下请求:
POST /ovirt-engine/api/datacenters/123/quotas/456/quotastoragelimits
这样的请求正文:
<quota_storage_limit> <limit>100</limit> </quota_storage_limit>
要为 ID 为 000
的存储域创建 50GiB 存储限值,请发送如下请求:
POST /ovirt-engine/api/datacenters/123/quotas/456/quotastoragelimits
这样的请求正文:
<quota_storage_limit> <limit>50</limit> <storage_domain id="000"/> </quota_storage_limit>
表 6.555. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.182.2. 列出 GET
返回为配额配置的存储限值列表。
无法保证返回的存储限值列表的顺序。
表 6.556. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置返回的最大限值数。 |
6.182.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.182.2.2. Max
设置返回的最大限值数。如果没有指定,则会返回所有限制。
6.183. 配额
管理为数据中心配置的一组配额。
表 6.557. 方法概述
名称 | 概述 |
---|---|
| 创建新配额. |
| 列出数据中心的配额. |
6.183.1. 添加 POST
创建新配额.
创建新配额的示例:
POST /ovirt-engine/api/datacenters/123/quotas
<quota> <name>myquota</name> <description>My new quota for virtual machines</description> </quota>
表 6.558. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.183.2. 列出 GET
列出数据中心的配额.
无法保证返回的配额列表的顺序。
6.183.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.183.2.2. Max
设置要返回的最大配额描述符数。如果没有指定,则会返回所有描述符。
6.184. 角色
表 6.560. 方法概述
名称 | 概述 |
---|---|
| 获取角色. |
| 删除角色。 |
| 更新角色. |
6.184.1. 获取 GET
获取角色.
GET /ovirt-engine/api/roles/123
您将收到类似以下的 XML 响应:
<role id="123"> <name>MyRole</name> <description>MyRole description</description> <link href="/ovirt-engine/api/roles/123/permits" rel="permits"/> <administrative>true</administrative> <mutable>false</mutable> </role>
6.184.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.184.2. 删除 DELETE
删除角色。
要删除需要知道其 ID 的角色,然后发送类似如下的请求:
DELETE /ovirt-engine/api/roles/{role_id}
表 6.562. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.184.3. 更新 PUT
更新角色.您可以在角色创建后更新 名称
、
描述
和管理属性。在此端点中,您不能添加或删除角色,因此您需要使用管理角色允许的服务。
例如,要更新角色 的名称
,描述
和管理 属性
会发送类似如下的请求:
PUT /ovirt-engine/api/roles/123
这样的请求正文:
<role> <name>MyNewRoleName</name> <description>My new description of the role</description> <administrative>true</administrative> </group>
6.185. 角色
提供对全局角色集的只读访问权限
表 6.564. 方法概述
名称 | 概述 |
---|---|
| 创建新角色。 |
| 列出角色. |
6.185.1. 添加 POST
创建新角色。该角色可以是管理或非管理员角色,可以具有不同的许可。
例如,要将 MyRole
非管理员角色添加到 允许登录并创建虚拟机发送类似此请求(请注意,您必须传递允许 ID):
POST /ovirt-engine/api/roles
这样的请求正文:
<role> <name>MyRole</name> <description>My custom role to create virtual machines</description> <administrative>false</administrative> <permits> <permit id="1"/> <permit id="1300"/> </permits> </group>
表 6.565. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 将添加的角色. |
6.185.2. 列出 GET
列出角色.
GET /ovirt-engine/api/roles
您将在 XML 中收到类似以下的响应:
<roles> <role id="123"> <name>SuperUser</name> <description>Roles management administrator</description> <link href="/ovirt-engine/api/roles/123/permits" rel="permits"/> <administrative>true</administrative> <mutable>false</mutable> </role> ... </roles>
无法保证返回的角色列表的顺序。
6.185.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.185.2.2. Max
设置要返回的角色的最大数量。如果未指定,则返回所有角色。
6.186. SchedulingPolicies
管理系统中可用的一组调度策略。
表 6.567. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新调度策略。 |
| 返回系统中可用的调度策略列表。 |
6.186.1. 添加 POST
向系统添加新调度策略。
表 6.568. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.186.2. 列出 GET
返回系统中可用的调度策略列表。
无法保证返回的调度策略列表的顺序。
表 6.569. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的策略的最大数量。 | |
| out |
6.186.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.186.2.2. Max
设置要返回的策略的最大数量。如果没有指定,则返回所有策略。
6.187. SchedulingPolicy
表 6.570. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新系统中指定的用户定义的调度策略。 |
6.187.1. 获取 GET
表 6.571. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| out |
6.187.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.187.2. 删除 DELETE
表 6.572. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.187.3. 更新 PUT
更新系统中指定的用户定义的调度策略。
表 6.573. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.188. SchedulingPolicyUnit
表 6.574. 方法概述
名称 | 概述 |
---|---|
| |
|
6.188.1. 获取 GET
表 6.575. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| out |
6.188.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.188.2. 删除 DELETE
表 6.576. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.189. SchedulingPolicyUnits
管理系统中可用的一组调度策略单元。
表 6.577. 方法概述
名称 | 概述 |
---|---|
| 返回系统中可用的调度策略单元列表。 |
6.189.1. 列出 GET
返回系统中可用的调度策略单元列表。
无法保证返回的调度策略单元列表的顺序。
表 6.578. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大策略单元数。 | |
| out |
6.189.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.189.1.2. Max
设置要返回的最大策略单元数。如果没有指定,则返回所有策略单元。
6.190. snapshot
表 6.579. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 恢复虚拟机快照. |
6.190.1. 获取 GET
6.190.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.190.2. 删除 DELETE
6.190.2.1. all_content
指明是否应将虚拟机快照的所有属性包含在响应中。
默认情况下,排除属性 initialization.configuration.data
。
例如,要检索 ID 为 456
且 ID 为 123
的虚拟机的快照的完整表示形式,发送如下请求:
GET /ovirt-engine/api/vms/123/snapshots/456?all_content=true
6.190.3. 恢复 POST
恢复虚拟机快照.
例如,要恢复带有标识符 456
的虚拟机的快照,并使用标识符 123
发送类似如下的请求:
POST /ovirt-engine/api/vms/123/snapshots/456/restore
在正文中有一个空 操作
:
<action/>
确认提交操作已完成,并且虚拟机已停机,然后运行虚拟机。
6.190.3.1. 磁盘
指定快照恢复中包含的磁盘。
对于每个磁盘参数,还需要指定其 image_id
。
例如,要恢复具有标识符 123
(包括标识符为 111
)和 image_id
为 222 的虚拟机的标识符 456
的快照 ,
请发送如下请求:
POST /ovirt-engine/api/vms/123/snapshots/456/restore
请求正文:
<action> <disks> <disk id="111"> <image_id>222</image_id> </disk> </disks> </action>
6.191. SnapshotCdrom
表 6.583. 方法概述
名称 | 概述 |
---|---|
|
6.191.1. 获取 GET
6.191.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.192. SnapshotCdroms
管理虚拟机快照的 CD-ROM 设备集合。
表 6.585. 方法概述
名称 | 概述 |
---|---|
| 返回快照的 CD-ROM 设备列表。 |
6.192.1. 列出 GET
返回快照的 CD-ROM 设备列表。
CD-ROM 设备返回列表的顺序不受保证。
6.192.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.192.1.2. Max
设置要返回的最大 CDROMS 数。如果没有指定所有 CDROMS,则会返回。
6.193. SnapshotDisk
表 6.587. 方法概述
名称 | 概述 |
---|---|
|
6.193.1. 获取 GET
6.193.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.194. SnapshotDisks
管理快照的磁盘集合。
表 6.589. 方法概述
名称 | 概述 |
---|---|
| 返回快照的磁盘列表。 |
6.194.1. 列出 GET
返回快照的磁盘列表。
无法保证返回的磁盘列表的顺序。
6.194.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.194.1.2. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.195. SnapshotNic
表 6.591. 方法概述
名称 | 概述 |
---|---|
|
6.195.1. 获取 GET
6.195.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.196. SnapshotNics
管理快照的一组 NIC。
表 6.593. 方法概述
名称 | 概述 |
---|---|
| 返回快照的 NIC 列表。 |
6.196.1. 列出 GET
返回快照的 NIC 列表。
NIC 返回列表的顺序不受保证。
6.196.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.196.1.2. Max
设置要返回的最大 NIC 数。如果没有指定,则会返回所有 NIC。
6.197. 快照
管理存储域或虚拟机的一组快照。
表 6.595. 方法概述
名称 | 概述 |
---|---|
| 创建虚拟机快照. |
| 返回存储域或虚拟机的快照列表。 |
6.197.1. 添加 POST
创建虚拟机快照.
例如,要为虚拟机创建新快照 123
发送如下请求:
POST /ovirt-engine/api/vms/123/snapshots
这样的请求正文:
<snapshot> <description>My snapshot</description> </snapshot>
对于仅将一组磁盘包含在快照中,请将 disk_attachments
元素添加到请求正文。请注意,在 disk_attachments
元素中未指定的磁盘将不属于快照的一部分。如果传递了空的 disk_attachments
元素,快照将仅包含虚拟机配置。如果没有传递 disk_attachments
元素,则所有磁盘都将包含在快照中。
对于每个磁盘,可以指定 image_id
元素来设置新的活动镜像 ID。这是为了从备份中恢复镜像链。i. 在恢复具有快照的磁盘时,应当为每个快照指定相关的 image_id
(因此磁盘快照的标识符与备份相同)。
<snapshot> <description>My snapshot</description> <disk_attachments> <disk_attachment> <disk id="123"> <image_id>456</image_id> </disk> </disk_attachment> </disk_attachments> </snapshot>
创建快照时,persistent _memorystate 属性的默认值为 true
。这意味着虚拟机的内存内容将包含在快照中,这也意味着虚拟机将暂停更长时间。这可能会对对计时非常敏感的应用程序(例如,NTP 服务器)造成负面影响。在这些情况下,请确保将属性设置为 false
:
<snapshot> <description>My snapshot</description> <persist_memorystate>false</persist_memorystate> </snapshot>
表 6.596. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.197.2. 列出 GET
返回存储域或虚拟机的快照列表。
快照返回列表的顺序无法保证。
表 6.597. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应将虚拟机快照的所有属性包含在响应中。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的快照的最大数量。 | |
| out |
6.197.2.1. all_content
指明是否应将虚拟机快照的所有属性包含在响应中。
默认情况下,排除属性 initialization.configuration.data
。
例如,要检索 ID 123
快照的虚拟机的完整表示法,发送如下请求:
GET /ovirt-engine/api/vms/123/snapshots?all_content=true
6.197.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.197.2.3. Max
设置要返回的快照的最大数量。如果没有指定,则返回所有快照。
6.198. SshPublicKey
表 6.598. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 使用新资源替换密钥。 |
6.198.1. 获取 GET
表 6.599. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.198.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.198.2. 删除 DELETE
表 6.600. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.198.3. 更新 PUT
使用新资源替换密钥。
因为引擎的 4.4.8 版本已弃用,并只保留向后兼容。以后会将其移除。请使用 DELETE 后跟 添加操作。
表 6.601. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.199. SshPublicKeys
表 6.602. 方法概述
名称 | 概述 |
---|---|
| |
| 返回用户的 SSH 公钥列表。 |
6.199.1. 添加 POST
表 6.603. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.199.2. 列出 GET
返回用户的 SSH 公钥列表。
例如,要检索标识符为 123
的 SSH 密钥列表,发送类似如下的请求:
GET /ovirt-engine/api/users/123/sshpublickeys
其结果将是以下 XML 文档:
<ssh_public_keys> <ssh_public_key href="/ovirt-engine/api/users/123/sshpublickeys/456" id="456"> <content>ssh-rsa ...</content> <user href="/ovirt-engine/api/users/123" id="123"/> </ssh_public_key> </ssh_public_keys>
或以下 JSON 对象
{ "ssh_public_key": [ { "content": "ssh-rsa ...", "user": { "href": "/ovirt-engine/api/users/123", "id": "123" }, "href": "/ovirt-engine/api/users/123/sshpublickeys/456", "id": "456" } ] }
无法保证返回的密钥列表的顺序。
表 6.604. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | ||
| in | 设置要返回的最大密钥数。 |
6.199.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.199.2.2. Max
设置要返回的最大密钥数。如果没有指定,则返回所有键。
6.200. 统计
表 6.605. 方法概述
名称 | 概述 |
---|---|
|
6.200.1. 获取 GET
6.200.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.201. statistics
表 6.607. 方法概述
名称 | 概述 |
---|---|
| 检索统计数据列表。 |
6.201.1. 列出 GET
检索统计数据列表。
例如,要检索虚拟机 123
的统计信息,发送如下请求:
GET /ovirt-engine/api/vms/123/statistics
结果如下:
<statistics> <statistic href="/ovirt-engine/api/vms/123/statistics/456" id="456"> <name>memory.installed</name> <description>Total memory configured</description> <kind>gauge</kind> <type>integer</type> <unit>bytes</unit> <values> <value> <datum>1073741824</datum> </value> </values> <vm href="/ovirt-engine/api/vms/123" id="123"/> </statistic> ... </statistics>
可以通过在 URI 末尾指定其 ID 来检索统计的单个部分。这意味着:
GET /ovirt-engine/api/vms/123/statistics/456
outputs:
<statistic href="/ovirt-engine/api/vms/123/statistics/456" id="456"> <name>memory.installed</name> <description>Total memory configured</description> <kind>gauge</kind> <type>integer</type> <unit>bytes</unit> <values> <value> <datum>1073741824</datum> </value> </values> <vm href="/ovirt-engine/api/vms/123" id="123"/> </statistic>
返回的统计数据列表的顺序无法保证。
表 6.608. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大统计数据数。 | |
| out |
6.201.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.201.1.2. Max
设置要返回的最大统计数据数。如果没有指定,则返回所有统计信息。
6.202. 步骤
用于管理步骤的服务。
表 6.609. 方法概述
名称 | 概述 |
---|---|
| 将外部步骤执行标记为结束。 |
| 检索步骤. |
6.202.1. 最终 POST
将外部步骤执行标记为结束。
例如,要终止标识符 456
的步骤,该步骤属于标识符为 123 的作业
,发送
以下请求:
POST /ovirt-engine/api/jobs/123/steps/456/end
使用以下请求正文:
<action> <force>true</force> <succeeded>true</succeeded> </action>
表 6.610. 参数摘要
6.202.1.1. succeeded
表示该步骤应标记为成功完成还是失败。
此参数是可选的,默认值为 true
。
6.202.2. 获取 GET
检索步骤.
GET /ovirt-engine/api/jobs/123/steps/456
您将在 XML 中收到类似以下的响应:
<step href="/ovirt-engine/api/jobs/123/steps/456" id="456"> <actions> <link href="/ovirt-engine/api/jobs/123/steps/456/end" rel="end"/> </actions> <description>Validating</description> <end_time>2016-12-12T23:07:26.627+02:00</end_time> <external>false</external> <number>0</number> <start_time>2016-12-12T23:07:26.605+02:00</start_time> <status>finished</status> <type>validating</type> <job href="/ovirt-engine/api/jobs/123" id="123"/> </step>
6.202.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.203. 步骤
用于管理步骤的服务。
表 6.612. 方法概述
名称 | 概述 |
---|---|
| 向现有作业或现有步骤中添加外部步骤。 |
| 检索步骤的表示法。 |
6.203.1. 添加 POST
向现有作业或现有步骤中添加外部步骤。
例如,要为带有标识符 123
的作业
添加步骤,发送以下请求:
POST /ovirt-engine/api/jobs/123/steps
使用以下请求正文:
<step> <description>Validating</description> <start_time>2016-12-12T23:07:26.605+02:00</start_time> <status>started</status> <type>validating</type> </step>
响应应类似于:
<step href="/ovirt-engine/api/jobs/123/steps/456" id="456"> <actions> <link href="/ovirt-engine/api/jobs/123/steps/456/end" rel="end"/> </actions> <description>Validating</description> <link href="/ovirt-engine/api/jobs/123/steps/456/statistics" rel="statistics"/> <external>true</external> <number>2</number> <start_time>2016-12-13T01:06:15.380+02:00</start_time> <status>started</status> <type>validating</type> <job href="/ovirt-engine/api/jobs/123" id="123"/> </step>
表 6.613. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 将要添加的步骤. |
6.203.2. 列出 GET
检索步骤的表示法。
GET /ovirt-engine/api/job/123/steps
您将在 XML 中收到类似以下的响应:
<steps> <step href="/ovirt-engine/api/jobs/123/steps/456" id="456"> <actions> <link href="/ovirt-engine/api/jobs/123/steps/456/end" rel="end"/> </actions> <description>Validating</description> <link href="/ovirt-engine/api/jobs/123/steps/456/statistics" rel="statistics"/> <external>true</external> <number>2</number> <start_time>2016-12-13T01:06:15.380+02:00</start_time> <status>started</status> <type>validating</type> <job href="/ovirt-engine/api/jobs/123" id="123"/> </step> ... </steps>
返回的步骤列表的顺序无法保证。
6.203.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.203.2.2. Max
设置返回的最大步骤数。如果没有指定,则返回所有步骤。
6.204. 存储
表 6.615. 方法概述
名称 | 概述 |
---|---|
|
6.204.1. 获取 GET
表 6.616. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 指明是否应检查存储中的 LUN 状态。 | |
| out |
6.204.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.204.1.2. report_status
指明是否应检查存储中的 LUN 状态。检查 LUN 状态是一种重量型操作,用户并不总是需要这个数据。此参数将提供选项,使其不执行 LUN 的状态检查。
默认为 向后
兼容。
这里有一个 LUN 状态为 的示例:
<host_storage id="360014051136c20574f743bdbd28177fd"> <logical_units> <logical_unit id="360014051136c20574f743bdbd28177fd"> <lun_mapping>0</lun_mapping> <paths>1</paths> <product_id>lun0</product_id> <serial>SLIO-ORG_lun0_1136c205-74f7-43bd-bd28-177fd5ce6993</serial> <size>10737418240</size> <status>used</status> <vendor_id>LIO-ORG</vendor_id> <volume_group_id>O9Du7I-RahN-ECe1-dZ1w-nh0b-64io-MNzIBZ</volume_group_id> </logical_unit> </logical_units> <type>iscsi</type> <host id="8bb5ade5-e988-4000-8b93-dbfc6717fe50"/> </host_storage>
这里有一个没有 LUN 状态的示例:
<host_storage id="360014051136c20574f743bdbd28177fd"> <logical_units> <logical_unit id="360014051136c20574f743bdbd28177fd"> <lun_mapping>0</lun_mapping> <paths>1</paths> <product_id>lun0</product_id> <serial>SLIO-ORG_lun0_1136c205-74f7-43bd-bd28-177fd5ce6993</serial> <size>10737418240</size> <vendor_id>LIO-ORG</vendor_id> <volume_group_id>O9Du7I-RahN-ECe1-dZ1w-nh0b-64io-MNzIBZ</volume_group_id> </logical_unit> </logical_units> <type>iscsi</type> <host id="8bb5ade5-e988-4000-8b93-dbfc6717fe50"/> </host_storage>
6.205. StorageDomain
表 6.617. 方法概述
名称 | 概述 |
---|---|
| 检索存储域的描述。 |
| 用于查询存储域是否已通过 is_attached 布尔值字段连接到数据中心,该字段是存储服务器的一部分。 |
| 此操作可减少存储域中的逻辑单元。 |
| 此操作会刷新 LUN 大小。 |
| 删除存储域. |
| 更新存储域. |
|
此操作会强制更新此存储域的 |
6.205.1. 获取 GET
检索存储域的描述。
表 6.618. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| out | 存储域的描述。 |
6.205.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.205.2. 附加 POST
用于查询存储域是否已通过 is_attached 布尔值字段连接到数据中心,该字段是存储服务器的一部分。重要信息:执行此 API 将会导致主机断开与存储域的连接。
6.205.3. 减少luns POST
此操作可减少存储域中的逻辑单元。
为此,存储在提供的逻辑单元上的数据将移到存储域的其他逻辑单元中,然后才会从存储域中减少。
例如,要从存储域减少两个逻辑单元,发送如下请求:
POST /ovirt-engine/api/storageDomains/123/reduceluns
这样的请求正文:
<action> <logical_units> <logical_unit id="1IET_00010001"/> <logical_unit id="1IET_00010002"/> </logical_units> </action>
Note that this operation is only applicable to block storage domains (i.e., storage domains with the <<types/storage_type, storage type> of iSCSI or FCP).
表 6.620. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 需要从存储域中减少的逻辑单元。 |
6.205.4. refreshluns POST
此操作会刷新 LUN 大小。
在增大存储服务器上的底层 LUN 的大小后,用户可以刷新 LUN 大小。如果需要,此操作会强制重新扫描提供的 LUN,并使用新大小更新数据库。
例如,要刷新两个 LUN 的大小,可发送如下请求:
POST /ovirt-engine/api/storageDomains/262b056b-aede-40f1-9666-b883eff59d40/refreshluns
这样的请求正文:
<action> <logical_units> <logical_unit id="1IET_00010001"/> <logical_unit id="1IET_00010002"/> </logical_units> </action>
表 6.621. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行刷新。 | |
| in | 需要刷新的 LUN。 |
6.205.5. 删除 DELETE
删除存储域.
若无任何特殊参数,存储域将从系统分离并从数据库中删除。然后,存储域可以导入到同一或不同的设置中,其中含有所有数据。如果无法访问存储,则操作会失败。
如果 destroy
参数为 true
,那么操作将始终成功,即使存储无法访问,其故障只是被忽略,存储域也会从数据库中删除。
如果 format
参数为 true
,则将格式化实际存储,并将元数据从 LUN 或目录中移除,因此无法再导入到同一设置或另一设置中。
表 6.622. 参数摘要
6.205.5.1. destroy
指明操作是否应该成功,并且存储域已从数据库中删除,即使该存储无法访问。
DELETE /ovirt-engine/api/storageDomains/123?destroy=true
此参数是可选的,默认值为 false
。当 destroy
值为 true
时,host
参数将被忽略。
6.205.5.2. 主机
指明应使用哪个主机来删除存储域。
此参数是必需的,除非包含 destroy
参数且其值为 true
,这时将忽略 主机
参数。
该值应包含主机的名称或标识符。例如,使用名为 myhost
的主机删除带有标识符 123
的存储域,发送类似如下的请求:
DELETE /ovirt-engine/api/storageDomains/123?host=myhost
6.205.6. 更新 PUT
更新存储域.
并非所有 StorageDomain 的属性在创建后都是 updatable。可以更新的有 名称
、描述
、注释
、warning_low_space_indicator
、critical_space_action_blocker
和 wipe_after_delete。
(请注意,更改 wipe_after_delete
属性不会在删除已存在的磁盘属性后更改擦除。)
要更新带有标识符 123
的存储域 的名称和
wipe_after_delete
属性,请发送请求,如下所示:
PUT /ovirt-engine/api/storageDomains/123
请求正文如下:
<storage_domain> <name>data2</name> <wipe_after_delete>true</wipe_after_delete> </storage_domain>
表 6.623. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 更新的存储域. |
6.205.7. updateovfstore POST
此操作会强制更新此存储域的 OVF_STORE
。
OVF_STORE
是一个磁盘映像,包含驻留在存储域中的虚拟机和磁盘的元数据。如果域是从其他数据中心或其他数据中心导入或导出的,则使用此元数据。
默认情况下,会定期更新 OVF_STORE
(默认设置为 60 分钟),但用户可能需要在重要更改后或认为 OVF_STORE
损坏时强制更新更新。
当用户启动时,无论是否需要更新,都将执行 OVF_STORE
更新。
表 6.624. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in |
指明是否应异步执行 |
6.206. StorageDomainContentDisk
表 6.625. 方法概述
名称 | 概述 |
---|---|
|
6.206.1. 获取 GET
6.206.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.207. StorageDomainContentDisks
管理存储域中可用的磁盘集合。
表 6.627. 方法概述
名称 | 概述 |
---|---|
| 返回存储域中可用磁盘的列表。 |
6.207.1. 列出 GET
返回存储域中可用磁盘的列表。
只有 search
参数中包含 sortby
子句时,才会保证返回的磁盘列表的顺序。
表 6.628. 参数摘要
6.207.1.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.207.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.207.1.3. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.208. StorageDomainDisk
管理存储域中可用的单个磁盘。
由于引擎版本 4.2 旨在仅列出存储域中可用的磁盘,并注册未注册的磁盘。所有其他操作(如复制磁盘、移动磁盘等)已被弃用,并将在以后的中删除。要执行这些操作,请使用管理系统所有磁盘的服务 ,或者使用管理特定磁盘的服务。
表 6.629. 方法概述
名称 | 概述 |
---|---|
| 将磁盘复制到指定的存储域. |
| 将磁盘导出到导出存储域. |
| 检索磁盘的描述。 |
| 将磁盘移动到其他存储域. |
| 减少磁盘镜像的大小。 |
| 删除磁盘. |
| 稀疏磁盘。 |
| 更新磁盘. |
6.208.1. 复制 POST
将磁盘复制到指定的存储域.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要复制磁盘,请使用管理该磁盘的服务的副本操作。
表 6.630. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 生成磁盘的描述。 | |
| in | 创建新磁盘的存储域。 |
6.208.2. 导出 POST
将磁盘导出到导出存储域.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。若要导出磁盘,可使用管理该磁盘的服务的导出操作。
表 6.631. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 磁盘应导出到的导出存储域。 |
6.208.3. 获取 GET
检索磁盘的描述。
6.208.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.208.4. 移动 POST
将磁盘移动到其他存储域.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要移动磁盘,请使用管理该磁盘的服务的移动操作。
表 6.633. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移动。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 磁盘将移动到的存储域。 |
6.208.5. 减少 POST
减少磁盘镜像的大小。
在逻辑卷中调用 less(即,这仅适用于块存储域)。这适用于附加到未运行虚拟机的浮动磁盘和磁盘。无需指定大小,因为会自动计算最佳大小。
表 6.634. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.208.6. 删除 DELETE
删除磁盘.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要删除磁盘,请使用管理该磁盘的服务的 remove 操作。
6.208.7. 稀疏 POST
稀疏磁盘。
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。要删除磁盘,请使用管理该磁盘的服务的 remove 操作。
6.208.8. 更新 PUT
更新磁盘.
由于引擎版本 4.2 已被弃用,并只保留此版本以向后兼容性。以后会将其移除。若要更新磁盘,可使用管理该磁盘的服务的更新操作。
表 6.635. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 应用到磁盘的更新。 |
6.209. StorageDomainDisks
管理特定存储域中可用的磁盘集合。
表 6.636. 方法概述
名称 | 概述 |
---|---|
| 添加或注册磁盘。 |
| 检索存储域中可用的磁盘的列表。 |
6.209.1. 添加 POST
添加或注册磁盘。
自 Red Hat Virtualization Manager 版本 4.2 起,此操作已弃用,仅用于向后兼容。以后会将其移除。要添加新磁盘,请使用管理系统磁盘的服务的 add 操作。要注册一个未注册的磁盘,请使用管理该磁盘的服务注册操作。
6.209.1.1. unregistered
指明是否应添加新磁盘,或者是否应注册现有的未注册磁盘。如果值为 true
,则需要提供要注册的磁盘标识符。例如,要使用 ID 456
注册磁盘,请发送类似如下的请求:
POST /ovirt-engine/api/storagedomains/123/disks?unregistered=true
这样的请求正文:
<disk id="456"/>
如果值为 false
,则会在存储域中创建新磁盘。在这种情况下,provisioning _size
、格式和
name
属性是必需的。例如:要在 1 GiB 的写入磁盘上创建新副本,请发送如下请求:
POST /ovirt-engine/api/storagedomains/123/disks
这样的请求正文:
<disk> <name>mydisk</name> <format>cow</format> <provisioned_size>1073741824</provisioned_size> </disk>
默认值为 false
。
从 Red Hat Virtualization Manager 的版本 4.2 开始,这个参数已弃用。
6.209.2. 列出 GET
检索存储域中可用的磁盘的列表。
无法保证返回的磁盘列表的顺序。
表 6.638. 参数摘要
6.209.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.209.2.2. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.209.2.3. unregistered
指明是否检索存储域中已注册或未注册磁盘的列表。要获得存储域中未注册磁盘的列表,调用应指示未注册的标志。例如,要获得未注册磁盘的列表,REST API 调用应如下所示:
GET /ovirt-engine/api/storagedomains/123/disks?unregistered=true
unregistered 标志的默认值为 false
。请求仅适用于附加的存储域。
6.210. StorageDomainServerConnection
表 6.639. 方法概述
名称 | 概述 |
---|---|
| |
| 将存储连接从存储分离。 |
6.210.1. 获取 GET
表 6.640. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.210.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.210.2. 删除 DELETE
将存储连接从存储分离。
表 6.641. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.211. StorageDomainServerConnections
管理与存储域中存在的存储服务器的连接集合。
表 6.642. 方法概述
名称 | 概述 |
---|---|
| |
| 将连接列表返回到存储域中存在的存储服务器。 |
6.211.1. 添加 POST
表 6.643. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.211.2. 列出 GET
将连接列表返回到存储域中存在的存储服务器。
无法保证返回的连接列表的顺序。
表 6.644. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大连接数。 |
6.211.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.211.2.2. Max
设置要返回的最大连接数。如果未指定,则返回所有连接。
6.212. StorageDomainTemplate
表 6.645. 方法概述
名称 | 概述 |
---|---|
| |
| 从导出存储域导入模板的操作。 |
| 注册模板意味着要通过将模板和磁盘的配置插入到数据库中而无需复制过程来从数据域导入模板。 |
|
6.212.1. 获取 GET
6.212.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.212.2. 导入 POST
从导出存储域导入模板的操作。
例如,要从存储域 123
导入模板 456
,发送以下请求:
POST /ovirt-engine/api/storagedomains/123/templates/456/import
使用以下请求正文:
<action> <storage_domain> <name>myexport</name> </storage_domain> <cluster> <name>mycluster</name> </cluster> </action>
如果您在没有指定集群 ID 或名称的情况下注册实体,将使用来自实体 OVF 的集群名称(除非注册请求也包含集群映射)。
表 6.647. 参数摘要
6.212.2.1. clone
使用可选的 clone
参数为导入模板及其实体生成新 UUID。
从导出域导入模板时,您可以使用不同 Red Hat Virtualization 环境导出的模板导入 克隆
参数设置为 false
。
6.212.3. 注册 POST
注册模板意味着要通过将模板和磁盘的配置插入到数据库中而无需复制过程来从数据域导入模板。
表 6.648. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否只允许使用其中一些磁盘注册模板。 | |
| in | 指明是否应异步执行注册。 | |
| in | ||
| in | ||
| in | ||
| in | 此参数描述了模板的注册方式。 | |
| in | ||
| in | 弃用了将在导入\register 过程中应用的虚拟 NIC 配置集的映射规则的属性。 |
6.212.3.1. allow_partial_import
指明是否只允许使用其中一些磁盘注册模板。
如果此标志为 true
,则系统在未找到映像时不会在验证过程中失败,而是允许在不缺少磁盘的情况下注册模板。这主要用于注册模板时,当某些存储域不可用时。默认值为 false
。
6.212.3.2. registration_configuration
此参数描述了模板的注册方式。
这个参数是可选的。如果未指定 参数,则模板将使用在创建它的原始环境中具有的相同配置进行注册。
6.212.3.3. vnic_profile_mappings
弃用了将在导入\register 过程中应用的虚拟 NIC 配置集的映射规则的属性。
请注意,此属性自引擎版本 4.2.1 起已弃用,仅用于向后兼容。以后会将其移除。要指定 vnic_profile_mappings
,请使用 RegistrationConfiguration 类型内的 vnic_profile_mappings
属性。
6.212.4. 删除 DELETE
表 6.649. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.213. StorageDomainTemplates
管理存储域中可用的一组模板。
表 6.650. 方法概述
名称 | 概述 |
---|---|
| 返回存储域中可用模板的列表。 |
6.213.1. 列出 GET
返回存储域中可用模板的列表。
返回的模板列表的顺序无法保证。
表 6.651. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的模板的最大数量。 | |
| out | ||
| in | 指明要检索已注册或未注册的模板列表,这些模板是否包含存储域中的磁盘。 |
6.213.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.213.1.2. Max
设置要返回的模板的最大数量。如果没有指定,则会返回所有模板。
6.213.1.3. unregistered
指明要检索已注册或未注册的模板列表,这些模板是否包含存储域中的磁盘。要获得未注册模板的列表,调用应指示未注册的标志。例如,要获得未注册模板的列表,REST API 调用应如下所示:
GET /ovirt-engine/api/storagedomains/123/templates?unregistered=true
unregisterd 标志的默认值为 false
。请求仅适用于附加的存储域。
6.214. StorageDomainVm
表 6.652. 方法概述
名称 | 概述 |
---|---|
| |
| 从导出存储域导入虚拟机. |
| |
| 从导出存储域中删除虚拟机. |
6.214.1. 获取 GET
6.214.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.214.2. 导入 POST
从导出存储域导入虚拟机.
例如,发送如下请求:
POST /ovirt-engine/api/storagedomains/123/vms/456/import
这样的请求正文:
<action> <storage_domain> <name>mydata</name> </storage_domain> <cluster> <name>mycluster</name> </cluster> </action>
要将虚拟机导入为新实体,请添加 clone
参数:
<action> <storage_domain> <name>mydata</name> </storage_domain> <cluster> <name>mycluster</name> </cluster> <clone>true</clone> <vm> <name>myvm</name> </vm> </action>
包含可选的 disk
参数,以选择要导入的磁盘。例如,要导入具有标识符 123
和 456
的模板磁盘,发送以下请求正文:
<action> <cluster> <name>mycluster</name> </cluster> <vm> <name>myvm</name> </vm> <disks> <disk id="123"/> <disk id="456"/> </disks> </action>
如果您在没有指定集群 ID 或名称的情况下注册实体,将使用来自实体 OVF 的集群名称(除非注册请求也包含集群映射)。
表 6.654. 参数摘要
6.214.2.1. clone
指明是否应重新生成导入虚拟机的标识符。
默认情况下,导入虚拟机时会保留标识符。这意味着同一虚拟机不能多次导入,因为该标识符需要是唯一的。要允许导入同一台机器多次将此参数设置为 true
,因为默认值为 false
。
6.214.2.2. collapse_snapshots
表示导入的虚拟机的快照应折叠,以便结果为没有快照的虚拟机。
这个参数是可选的,如果没有显式指定,则默认值为 false
。
6.214.3. 注册 POST
表 6.655. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否只允许虚拟机注册到其中一些磁盘。 | |
| in | 指明是否应异步执行注册。 | |
| in | ||
| in | ||
| in | 指明引擎是否应当在导入过程中重新分配有问题的 MAC 地址。 | |
| in | 此参数描述了虚拟机应如何注册。 | |
| in | ||
| in | 弃用了将在导入\register 过程中应用的虚拟 NIC 配置集的映射规则的属性。 |
6.214.3.1. allow_partial_import
指明是否只允许虚拟机注册到其中一些磁盘。
如果此标志为 true
,则如果未找到映像,引擎不会在验证过程中失败,而是允许在不缺少磁盘的情况下注册虚拟机。这主要用于注册虚拟机,当某些存储域不可用时。默认值为 false
。
6.214.3.2. reassign_bad_macs
指明引擎是否应当在导入过程中重新分配有问题的 MAC 地址。
如果以下地址为 true,则 MAC 地址将被视为有问题的地址:
- 它与已在目标环境中分配给虚拟机的 MAC 地址冲突。
- 它不在目标 MAC 地址池的范围。
6.214.3.3. registration_configuration
此参数描述了虚拟机应如何注册。
这个参数是可选的。如果未指定 参数,虚拟机将使用创建它的原始环境中相同的配置进行注册。
6.214.3.4. vnic_profile_mappings
弃用了将在导入\register 过程中应用的虚拟 NIC 配置集的映射规则的属性。
请注意,此属性自引擎版本 4.2.1 起已弃用,仅用于向后兼容。以后会将其移除。要指定 vnic_profile_mappings
,请使用 RegistrationConfiguration 类型内的 vnic_profile_mappings
属性。
6.214.4. 删除 DELETE
从导出存储域中删除虚拟机.
例如,要从存储域 123
中删除虚拟机 456
,请发送类似如下的请求:
DELETE /ovirt-engine/api/storagedomains/123/vms/456
表 6.656. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.215. StorageDomainVmDiskAttachment
返回附加到导出域中虚拟机的虚拟机的磁盘详情。
表 6.657. 方法概述
名称 | 概述 |
---|---|
| 返回附件的详细信息及其所有属性以及磁盘的链接。 |
6.215.1. 获取 GET
返回附件的详细信息及其所有属性以及磁盘的链接。
表 6.658. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 磁盘附加。 | |
| in | 指明应遵循哪些内联链接。 |
6.215.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.216. StorageDomainVmDiskAttachments
返回附加到导出域中虚拟机的磁盘的详细信息。
表 6.659. 方法概述
名称 | 概述 |
---|---|
| 列出附加到虚拟机的磁盘。 |
6.216.1. 列出 GET
列出附加到虚拟机的磁盘。
无法保证返回的磁盘附件列表的顺序。
表 6.660. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.216.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.217. StorageDomainVms
列出导出存储域的虚拟机.
例如,要检索存储域中可用且标识符为 123
的虚拟机,发送以下请求:
GET /ovirt-engine/api/storagedomains/123/vms
这将返回以下响应正文:
<vms> <vm id="456" href="/api/storagedomains/123/vms/456"> <name>vm1</name> ... <storage_domain id="123" href="/api/storagedomains/123"/> <actions> <link rel="import" href="/api/storagedomains/123/vms/456/import"/> </actions> </vm> </vms>
这些集合中的虚拟机和模板与顶级 Vm 和模板集合中的对应方表示相似,但它们还包含 StorageDomain 参考和 导入操作。
表 6.661. 方法概述
名称 | 概述 |
---|---|
| 返回导出存储域的虚拟机列表。 |
6.217.1. 列出 GET
返回导出存储域的虚拟机列表。
虚拟机返回列表的顺序无法保证。
表 6.662. 参数摘要
6.217.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.217.1.2. Max
设置要返回的最大虚拟机数量。如果未指定,则返回所有虚拟机。
6.217.1.3. unregistered
指明要检索包含存储域中磁盘的已注册或未注册虚拟机的列表。要获得未注册的虚拟机列表,调用应指示未注册的标志。例如,要获得未注册虚拟机的列表,REST API 调用应如下所示:
GET /ovirt-engine/api/storagedomains/123/vms?unregistered=true
unregisterd 标志的默认值为 false
。请求仅适用于附加的存储域。
6.218. StorageDomains
管理系统中的一组存储域。
表 6.663. 方法概述
名称 | 概述 |
---|---|
| 添加新存储域. |
| 返回系统中存储域的列表。 |
6.218.1. 添加 POST
添加新存储域.
创建新 StorageDomain 需要 名称
、类型
、主机和
存储
属性。使用 id
或 name
属性识别 主机
属性。在 Red Hat Virtualization 3.6 及更高版本中,您可以在存储域中默认启用 wipe 后删除选项。要配置此功能,请在 POST 请求中指定 wipe_after_delete
。可以在创建域后编辑此选项,但是这样做不会在删除已存在的磁盘属性后更改擦除。
要添加具有指定 名称
、类型、storage
.type
、storage.address
和 storage.path
的新存储域,并使用 ID 123
的主机发送类似如下的请求:
POST /ovirt-engine/api/storageDomains
这样的请求正文:
<storage_domain> <name>mydata</name> <type>data</type> <storage> <type>nfs</type> <address>mynfs.example.com</address> <path>/exports/mydata</path> </storage> <host> <name>myhost</name> </host> </storage_domain>
要创建新的 NFS ISO 存储域,请发送如下请求:
<storage_domain> <name>myisos</name> <type>iso</type> <storage> <type>nfs</type> <address>mynfs.example.com</address> <path>/export/myisos</path> </storage> <host> <name>myhost</name> </host> </storage_domain>
要创建新 iSCSI 存储域,请发送如下请求:
<storage_domain> <name>myiscsi</name> <type>data</type> <storage> <type>iscsi</type> <logical_units> <logical_unit id="3600144f09dbd050000004eedbd340001"/> <logical_unit id="3600144f09dbd050000004eedbd340002"/> </logical_units> </storage> <host> <name>myhost</name> </host> </storage_domain>
表 6.664. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要添加的存储域. |
6.218.2. 列出 GET
返回系统中存储域的列表。
只有 search
参数中包含 sortby
子句时,才会保证返回的存储域列表的顺序。
表 6.665. 参数摘要
6.218.2.1. case_sensitive
指明是否应该在考虑大小写的情况下执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写,将其设置为 false
。
6.218.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.218.2.3. Max
设置要返回的存储域的最大数量。如果未指定,则返回所有存储域。
6.219. StorageServerConnection
表 6.666. 方法概述
名称 | 概述 |
---|---|
| |
| 删除存储连接。 |
| 更新存储连接。 |
6.219.1. 获取 GET
表 6.667. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.219.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.219.2. 删除 DELETE
删除存储连接。
只有在存储域和 LUN 磁盘均未引用存储连接时,才能删除存储连接。主机名或 id 是可选的;提供它断开与该主机的连接(解除挂载)。
6.219.2.1. 主机
从中卸载连接的主机的名称或标识符(断开连接)。如果未提供,则不会断开任何主机。
例如,要使用标识符 456
的主机删除带标识符 123
的存储连接,发送类似如下的请求:
DELETE /ovirt-engine/api/storageconnections/123?host=456
6.219.3. 更新 PUT
更新存储连接。
例如:要更改 NFS 存储服务器的地址,请发送类似如下的请求:
PUT /ovirt-engine/api/storageconnections/123
这样的请求正文:
<storage_connection> <address>mynewnfs.example.com</address> </storage_connection>
要更改 iSCSI 存储服务器的连接,请发送类似如下的请求:
PUT /ovirt-engine/api/storageconnections/123
这样的请求正文:
<storage_connection> <port>3260</port> <target>iqn.2017-01.com.myhost:444</target> </storage_connection>
表 6.669. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | ||
| in | 指明无论相关存储域的状态如何(i. |
6.219.3.1. force
指明无论相关存储域的状态如何,操作都应成功(例如,当存储域的状态不是维护时,更新也适用)。
此参数是可选的,默认值为 false
。
6.220. StorageServerConnectionExtension
表 6.670. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新给定主机的存储服务器连接扩展。 |
6.220.1. 获取 GET
表 6.671. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.220.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.220.2. 删除 DELETE
表 6.672. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.220.3. 更新 PUT
更新给定主机的存储服务器连接扩展。
要更新主机 123
的存储连接 456
,发送如下请求:
PUT /ovirt-engine/api/hosts/123/storageconnectionextensions/456
这样的请求正文:
<storage_connection_extension> <target>iqn.2016-01.com.example:mytarget</target> <username>myuser</username> <password>mypassword</password> </storage_connection_extension>
表 6.673. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.221. StorageServerConnectionExtensions
表 6.674. 方法概述
名称 | 概述 |
---|---|
| 为给定主机创建新的存储服务器连接扩展名。 |
| 返回列表 os 存储连接扩展。 |
6.221.1. 添加 POST
为给定主机创建新的存储服务器连接扩展名。
扩展允许用户为特定主机的 iSCSI 目标定义凭据。例如,在从主机 123
连接到 iSCSI 目标时,使用
作为凭证发送如下请求:
myuser
和 mypassword
POST /ovirt-engine/api/hosts/123/storageconnectionextensions
这样的请求正文:
<storage_connection_extension> <target>iqn.2016-01.com.example:mytarget</target> <username>myuser</username> <password>mypassword</password> </storage_connection_extension>
表 6.675. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.221.2. 列出 GET
返回列表 os 存储连接扩展。
存储连接返回列表的顺序不受保证。
表 6.676. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大扩展数。 |
6.221.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.221.2.2. Max
设置要返回的最大扩展数。如果没有指定,则会返回所有扩展。
6.222. StorageServerConnections
表 6.677. 方法概述
名称 | 概述 |
---|---|
| 创建新的存储连接。 |
| 返回存储连接列表。 |
6.222.1. 添加 POST
创建新的存储连接。
例如,要为 NFS 服务器 mynfs.example.com
和 NFS 共享 /export/mydata
创建新存储连接,请发送如下请求:
POST /ovirt-engine/api/storageconnections
这样的请求正文:
<storage_connection> <type>nfs</type> <address>mynfs.example.com</address> <path>/export/mydata</path> <host> <name>myhost</name> </host> </storage_connection>
表 6.678. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.222.2. 列出 GET
返回存储连接列表。
无法保证返回的连接列表的顺序。
表 6.679. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大连接数。 |
6.222.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.222.2.2. Max
设置要返回的最大连接数。如果未指定,则返回所有连接。
6.223. 系统
表 6.680. 方法概述
名称 | 概述 |
---|---|
| 返回描述 API 的基本信息,如产品名称、版本号和相关对象数量的摘要。 |
|
6.223.1. 获取 GET
返回描述 API 的基本信息,如产品名称、版本号和相关对象数量的摘要。
GET /ovirt-engine/api
我们得到以下响应:
<api> <link rel="capabilities" href="/api/capabilities"/> <link rel="clusters" href="/api/clusters"/> <link rel="clusters/search" href="/api/clusters?search={query}"/> <link rel="datacenters" href="/api/datacenters"/> <link rel="datacenters/search" href="/api/datacenters?search={query}"/> <link rel="events" href="/api/events"/> <link rel="events/search" href="/api/events?search={query}"/> <link rel="hosts" href="/api/hosts"/> <link rel="hosts/search" href="/api/hosts?search={query}"/> <link rel="networks" href="/api/networks"/> <link rel="roles" href="/api/roles"/> <link rel="storagedomains" href="/api/storagedomains"/> <link rel="storagedomains/search" href="/api/storagedomains?search={query}"/> <link rel="tags" href="/api/tags"/> <link rel="templates" href="/api/templates"/> <link rel="templates/search" href="/api/templates?search={query}"/> <link rel="users" href="/api/users"/> <link rel="groups" href="/api/groups"/> <link rel="domains" href="/api/domains"/> <link rel="vmpools" href="/api/vmpools"/> <link rel="vmpools/search" href="/api/vmpools?search={query}"/> <link rel="vms" href="/api/vms"/> <link rel="vms/search" href="/api/vms?search={query}"/> <product_info> <name>oVirt Engine</name> <vendor>ovirt.org</vendor> <version> <build>4</build> <full_version>4.0.4</full_version> <major>4</major> <minor>0</minor> <revision>0</revision> </version> </product_info> <special_objects> <blank_template href="/ovirt-engine/api/templates/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"/> <root_tag href="/ovirt-engine/api/tags/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"/> </special_objects> <summary> <hosts> <active>0</active> <total>0</total> </hosts> <storage_domains> <active>0</active> <total>1</total> </storage_domains> <users> <active>1</active> <total>1</total> </users> <vms> <active>0</active> <total>0</total> </vms> </summary> <time>2016-09-14T12:00:48.132+02:00</time> </api>
入口点为用户提供虚拟环境中集合的链接。每个集合链接的 Therel 属性
都会为每个链接提供一个参考点。
入口点还包含其他数据,如 product_info
、special_objects
和 summary
。
6.223.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.223.2. 重新载入配置 POST
表 6.682. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行重新加载。 |
6.224. SystemOption
此服务提供系统特定配置选项的值。
表 6.683. 方法概述
名称 | 概述 |
---|---|
| 获取特定配置选项的值。 |
6.224.1. 获取 GET
获取特定配置选项的值。
例如,要检索配置选项 MigrationPoliciesSupported
的值,发送类似如下的请求:
GET /ovirt-engine/api/options/MigrationPoliciesSupported
对这个请求的响应如下:
<system_option href="/ovirt-engine/api/options/MigrationPoliciesSupported" id="MigrationPoliciesSupported"> <name>MigrationPoliciesSupported</name> <values> <system_option_value> <value>true</value> <version>4.0</version> </system_option_value> <system_option_value> <value>true</value> <version>4.1</version> </system_option_value> <system_option_value> <value>true</value> <version>4.2</version> </system_option_value> <system_option_value> <value>false</value> <version>3.6</version> </system_option_value> </values> </system_option>
查询配置选项需要适当的权限。某些选项仅可由具备管理员权限的用户查询。
没有向后兼容,无法保证选项的名称或值。可以删除选项,也可以随时更改其含义。
我们强烈建议将此服务用于与引擎同时发布的应用程序之外的应用程序。不支持其他应用程序的使用。因此,不会有文档列出可访问的配置选项。
表 6.684. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 系统返回的配置选项。 | |
| in | 指定仅应返回特定版本的配置选项的可选 version 参数。 |
6.224.1.1. version
指定仅应返回特定版本的配置选项的可选 version 参数。如果未使用这个参数,则会返回所有版本。
例如,要获取 MigrationPoliciesSupported
选项的值,但只有版本 4.2
发送如下请求:
GET /ovirt-engine/api/options/MigrationPoliciesSupported?version=4.2
对这个请求的响应如下:
<system_option href="/ovirt-engine/api/options/MigrationPoliciesSupported" id="MigrationPoliciesSupported"> <name>MigrationPoliciesSupported</name> <values> <system_option_value> <value>true</value> <version>4.2</version> </system_option_value> </values> </system_option>
6.225. SystemOptions
提供系统配置选项值的服务。
6.226. SystemPermissions
此服务不添加新方法,只是注解的占位符,用于指定管理分配给系统对象的权限的资源的路径。
表 6.685. 方法概述
名称 | 概述 |
---|---|
| 为特定实体为用户或组分配新权限。 |
| 列出特定实体的所有权限。 |
6.226.1. 添加 POST
为特定实体为用户或组分配新权限。
例如,要为 ID 为 123
的虚拟机分配 UserVmManager
角色给 ID 为 456
的用户发送类似如下的请求:
POST /ovirt-engine/api/vms/123/permissions
这样的请求正文:
<permission> <role> <name>UserVmManager</name> </role> <user id="456"/> </permission>
要将 SuperUser
角色分配给 ID 为 456
的用户,请发送如下请求:
POST /ovirt-engine/api/permissions
这样的请求正文:
<permission> <role> <name>SuperUser</name> </role> <user id="456"/> </permission>
如果要为组而不是用户分配权限,请将 user
元素替换为 组
元素的适当 ID
。例如,将 UserRole
角色分配给 ID 为 123
的集群,将 id 789
的组分配如下:
POST /ovirt-engine/api/clusters/123/permissions
这样的请求正文:
<permission> <role> <name>UserRole</name> </role> <group id="789"/> </permission>
表 6.686. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 权限。 |
6.226.2. 列出 GET
列出特定实体的所有权限。
例如,列出 ID 为 123 的集群的所有权限 发送
如下请求:
GET /ovirt-engine/api/clusters/123/permissions
<permissions> <permission id="456"> <cluster id="123"/> <role id="789"/> <user id="451"/> </permission> <permission id="654"> <cluster id="123"/> <role id="789"/> <group id="127"/> </permission> </permissions>
返回的权限顺序不受保证。
表 6.687. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out | 权限列表。 |
6.226.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.227. Tag
在系统中管理特定标签的服务。
表 6.688. 方法概述
名称 | 概述 |
---|---|
| 获取有关标签的信息。 |
| 从系统中删除该标签。 |
| 更新标签实体。 |
6.227.1. 获取 GET
获取有关标签的信息。
例如,要检索 ID 123 的标签信息,发送
如下请求:
GET /ovirt-engine/api/tags/123
<tag href="/ovirt-engine/api/tags/123" id="123"> <name>root</name> <description>root</description> </tag>
6.227.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.227.2. 删除 DELETE
从系统中删除该标签。
例如,要删除 ID 123 的标签,发送
类似如下的请求:
DELETE /ovirt-engine/api/tags/123
表 6.690. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.227.3. 更新 PUT
更新标签实体。
例如,将父标签更新为带有 id 123 的标签 ID 为 456
时,发送
类似如下的请求:
PUT /ovirt-engine/api/tags/123
借助请求正文,例如:
<tag> <parent id="456"/> </tag>
您还可以指定标签名称而不是 id。例如,将父标签更新为带有 id 123
的标签名称为 mytag
时,发送类似如下的请求:
<tag> <parent> <name>mytag</name> </parent> </tag>
6.228. Tags
代表用于管理系统中标签集合的服务。
表 6.692. 方法概述
名称 | 概述 |
---|---|
| 向系统添加新标签。 |
| 列出系统中的标签。 |
6.228.1. 添加 POST
向系统添加新标签。
例如,要向系统添加名称为 mytag 的新标签
,发送类似如下的请求:
POST /ovirt-engine/api/tags
这样的请求正文:
<tag> <name>mytag</name> </tag>
如果未指定父标签,root 标签是一个特殊的 pseudo-tag,它假定为默认的父标签。root 标签不能被删除,也不能分配父标签。
使用特定父标签创建新标签会发送请求正文,如下所示:
<tag> <name>mytag</name> <parent> <name>myparenttag</name> </parent> </tag>
表 6.693. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 添加的标签。 |
6.228.2. 列出 GET
列出系统中的标签。
例如,列出系统中标签的完整层次结构会发送如下请求:
GET /ovirt-engine/api/tags
<tags> <tag href="/ovirt-engine/api/tags/222" id="222"> <name>root2</name> <description>root2</description> <parent href="/ovirt-engine/api/tags/111" id="111"/> </tag> <tag href="/ovirt-engine/api/tags/333" id="333"> <name>root3</name> <description>root3</description> <parent href="/ovirt-engine/api/tags/222" id="222"/> </tag> <tag href="/ovirt-engine/api/tags/111" id="111"> <name>root</name> <description>root</description> </tag> </tags>
在前面的 XML 输出中,您可以看到标签的以下层次结构:
root: (id: 111) - root2 (id: 222) - root3 (id: 333)
标签返回列表的顺序不受保证。
6.228.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.228.2.2. Max
设置要返回的最大标签数。如果未指定,则返回所有标签。
6.229. Template
管理虚拟机模板和模板版本。
表 6.695. 方法概述
名称 | 概述 |
---|---|
| 将模板导出到数据中心导出域。 |
| 返回有关此模板或模板版本的信息。 |
| 删除虚拟机模板. |
| 更新模板。 |
6.229.1. 导出 POST
将模板导出到数据中心导出域。
例如,发送以下请求:
POST /ovirt-engine/api/templates/123/export
这样的请求正文:
<action> <storage_domain id="456"/> <exclusive>true<exclusive/> </action>
表 6.696. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应该覆盖具有相同名称的现有模板。 | |
| in | 指定目标导出存储域。 |
6.229.1.1. 专用
指明是否应该覆盖具有相同名称的现有模板。
如果目标域中存在相同名称的模板,则导出操作会报告失败的操作。将此参数设置为 true
以更改此行为并覆盖任何现有的模板。
6.229.2. 获取 GET
返回有关此模板或模板版本的信息。
表 6.697. 参数摘要
6.229.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.229.3. 删除 DELETE
删除虚拟机模板.
DELETE /ovirt-engine/api/templates/123
表 6.698. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.229.4. 更新 PUT
更新模板。
name
、description、
type
、memory
、cpu
,topology
,os
, high_availability
,display
、
和 无状态
、usbtimezone
元素可以在创建模板后更新。
例如,要更新模板,使其具有 1 GiB 内存发送请求,如下所示:
PUT /ovirt-engine/api/templates/123
使用以下请求正文:
<template> <memory>1073741824</memory> </template>
version_name
name 属性是唯一可在用于模板 版本的 version
属性中更新的属性:
<template> <version> <version_name>mytemplate_2</version_name> </version> </template>
6.230. TemplateCdrom
管理模板上 CD-ROM 设备的服务。
表 6.700. 方法概述
名称 | 概述 |
---|---|
| 返回有关此 CD-ROM 设备的信息。 |
6.230.1. 获取 GET
返回有关此 CD-ROM 设备的信息。
例如,要获取有关模板 123
的 CD-ROM 设备的信息,请发送如下请求:
GET /ovirt-engine/api/templates/123/cdroms/
6.230.1.1. cdrom
有关 CD-ROM 设备的信息。
该信息由 cdrom
属性组成,其中包含对 CD-ROM 设备、模板和插入磁盘的引用。
如果插入了磁盘,则 file
属性将包含对 ISO 镜像的引用:
<cdrom href="..." id="00000000-0000-0000-0000-000000000000"> <template href="/ovirt-engine/api/templates/123" id="123"/> <file id="mycd.iso"/> </cdrom>
如果没有插入磁盘,则不会报告 file
属性:
<cdrom href="..." id="00000000-0000-0000-0000-000000000000"> <template href="/ovirt-engine/api/templates/123" id="123"/> </cdrom>
6.230.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.231. TemplateCdroms
列出模板的 CD-ROM 设备。
表 6.702. 方法概述
名称 | 概述 |
---|---|
| 返回模板的 CD-ROM 设备列表。 |
6.231.1. 列出 GET
返回模板的 CD-ROM 设备列表。
CD-ROM 设备返回列表的顺序不受保证。
表 6.703. 参数摘要
6.231.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.231.1.2. Max
设置要返回的最大 CD-ROM 数。如果没有指定,则返回所有 CD-ROM。
6.232. TemplateDisk
表 6.704. 方法概述
名称 | 概述 |
---|---|
| 将附加到模板的指定磁盘复制到特定的存储域。 |
| |
| |
|
6.232.1. 复制 POST
将附加到模板的指定磁盘复制到特定的存储域。
表 6.705. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明复制应异步执行。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in |
6.232.2. 导出 POST
表 6.706. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行导出。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in |
6.232.3. 获取 GET
6.232.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.232.4. 删除 DELETE
表 6.708. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.233. TemplateDiskAttachment
此服务管理磁盘附加到模板。
表 6.709. 方法概述
名称 | 概述 |
---|---|
| 返回附件的详细信息。 |
| 从模板中删除磁盘。 |
6.233.1. 获取 GET
返回附件的详细信息。
表 6.710. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.233.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.233.2. 删除 DELETE
从模板中删除磁盘。只有在其他存储域中存在磁盘的其他现有副本时,才会删除磁盘。
必须指定存储域来确定应删除哪些副本(模板磁盘可以在多个存储域上具有副本)。
DELETE /ovirt-engine/api/templates/{template:id}/diskattachments/{attachment:id}?storage_domain=072fbaa1-08f3-4a40-9f34-a5ca22dd1d74
6.234. TemplateDiskAttachments
此服务管理附加到模板的一组磁盘。每个附加的磁盘都由 DiskAttachment 表示。
表 6.712. 方法概述
名称 | 概述 |
---|---|
| 列出附加到模板的磁盘。 |
6.234.1. 列出 GET
列出附加到模板的磁盘。
返回附件列表的顺序无法保证。
表 6.713. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | ||
| in | 指明应遵循哪些内联链接。 |
6.234.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.235. TemplateDisks
表 6.714. 方法概述
名称 | 概述 |
---|---|
| 返回模板的磁盘列表。 |
6.235.1. 列出 GET
返回模板的磁盘列表。
无法保证返回的磁盘列表的顺序。
6.235.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.235.1.2. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.236. TemplateGraphicsConsole
表 6.716. 方法概述
名称 | 概述 |
---|---|
| 获取模板的图形控制台配置。 |
| 从模板中删除 graphics 控制台。 |
6.236.1. 获取 GET
获取模板的图形控制台配置。
表 6.717. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 模板图形控制台的相关信息。 | |
| in | 指明应遵循哪些内联链接。 |
6.236.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.236.2. 删除 DELETE
从模板中删除 graphics 控制台。
表 6.718. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.237. TemplateGraphicsConsoles
表 6.719. 方法概述
名称 | 概述 |
---|---|
| 向模板添加新的图形控制台。 |
| 列出模板的所有配置的图形控制台。 |
6.237.1. 添加 POST
向模板添加新的图形控制台。
表 6.720. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.237.2. 列出 GET
列出模板的所有配置的图形控制台。
无法保证返回的图形控制台列表的顺序。
表 6.721. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 模板的图形控制台列表。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大控制台数。 |
6.237.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.237.2.2. Max
设置要返回的最大控制台数。如果没有指定,则返回所有控制台。
6.238. TemplateMediatedDevice
表 6.722. 方法概述
名称 | 概述 |
---|---|
| 获取模板的介质设备配置。 |
| 从模板创建介质设备。 |
| 更新有关介质设备的信息。 |
6.238.1. 获取 GET
获取模板的介质设备配置。
表 6.723. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 有关模板的介质设备的信息。 | |
| in | 指明应遵循哪些内联链接。 |
6.238.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.238.2. 删除 DELETE
从模板创建介质设备。
表 6.724. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.238.3. 更新 PUT
更新有关介质设备的信息。
您可以使用 specParams
元素更新信息。
例如,要更新介质设备,请发送如下请求:
PUT /ovirt-engine/api/templates/123/mediateddevices/00000000-0000-0000-0000-000000000000 <vm_mediated_device> <spec_params> <property> <name>mdevType</name> <value>nvidia-11</value> </property> </spec_params> </vm_mediated_device>
使用响应正文:
<vm_mediated_device href="/ovirt-engine/api/templates/123/mediateddevices/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"> <template href="/ovirt-engine/api/templates/123" id="123"/> <spec_params> <property> <name>mdevType</name> <value>nvidia-11</value> </property> </spec_params> </vm_mediated_device>
表 6.725. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 有关介质设备的信息。 |
6.238.3.1. devices
有关介质设备的信息。
请求数据必须包含 specParams
属性。响应数据包含有关更新的介质设备的完整信息。
6.239. TemplateMediatedDevices
管理模板的介质设备的服务。
表 6.726. 方法概述
名称 | 概述 |
---|---|
| 向模板添加新的介质设备。 |
| 列出模板的所有配置的介质设备。 |
6.239.1. 添加 POST
向模板添加新的介质设备。
表 6.727. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.239.2. 列出 GET
列出模板的所有配置的介质设备。
返回的介质设备列表的顺序不能保证。
表 6.728. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 模板的介质设备列表。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大介质设备数。 |
6.239.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.239.2.2. Max
设置要返回的最大介质设备数。如果没有指定所有介质设备,则会返回。
6.240. TemplateNic
表 6.729. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 更新附加到模板的指定网络接口卡。 |
6.240.1. 获取 GET
6.240.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.240.2. 删除 DELETE
表 6.731. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.240.3. 更新 PUT
更新附加到模板的指定网络接口卡。
6.241. TemplateNics
表 6.733. 方法概述
名称 | 概述 |
---|---|
| 向模板添加新的网络接口卡。 |
| 返回模板的 NIC 列表。 |
6.241.1. 添加 POST
向模板添加新的网络接口卡。
表 6.734. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.241.2. 列出 GET
返回模板的 NIC 列表。
NIC 返回列表的顺序不受保证。
6.241.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.241.2.2. Max
设置要返回的最大 NIC 数。如果没有指定,则会返回所有 NIC。
6.242. TemplateWatchdog
表 6.736. 方法概述
名称 | 概述 |
---|---|
| |
| |
| 为给定 ID 标识的模板更新 watchdog。 |
6.242.1. 获取 GET
6.242.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.242.2. 删除 DELETE
表 6.738. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.242.3. 更新 PUT
为给定 ID 标识的模板更新 watchdog。
6.243. TemplateWatchdogs
表 6.740. 方法概述
名称 | 概述 |
---|---|
| 将 watchdog 添加到由给定 ID 标识的模板中。 |
| 返回 watchdogs 列表。 |
6.243.1. 添加 POST
将 watchdog 添加到由给定 ID 标识的模板中。
表 6.741. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.243.2. 列出 GET
返回 watchdogs 列表。
返回的 watchdogs 列表的顺序不受保证。
表 6.742. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大 watchdogs 数。 | |
| out |
6.243.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.243.2.2. Max
设置要返回的最大 watchdogs 数。如果未指定,则返回所有 watchdogs。
6.244. 模板
此服务管理系统中可用的虚拟机模板。
表 6.743. 方法概述
名称 | 概述 |
---|---|
| 创建新模板. |
| 返回虚拟机模板列表。 |
6.244.1. 添加 POST
创建新模板.
这需要 name
和 vm
元素。若要识别虚拟机,可使用 vm.id 或
vm.name
属性。例如,要使用标识符 123
从虚拟机创建模板,请发送类似如下的请求:
POST /ovirt-engine/api/templates
这样的请求正文:
<template> <name>mytemplate</name> <vm id="123"/> </template>
从版本 4.3 开始,为了从快照创建虚拟机模板,发送如下请求正文:
<template> <name>mytemplate</name> <vm id="123"> <snapshots> <snapshot id="456"/> </snapshots> </vm> </template>
可以自定义模板的磁盘,使其部分特征与原始虚拟机的磁盘不同。为此,可使用 vm.disk_attachments
属性,指定原始虚拟机的磁盘标识符和您要更改的特征。例如,如果原始虚拟机有一个标识符 456
的磁盘,并且对该磁盘要将格式更改为 mydisk
,将其格式改为 Copy On Write 并将其 稀疏,发送一个请求正文,如下所示:
<template> <name>mytemplate</name> <vm id="123"> <disk_attachments> <disk_attachment> <disk id="456"> <name>mydisk</name> <format>cow</format> <sparse>true</sparse> </disk> </disk_attachment> </disk_attachments> </vm> </template>
模板可以创建为现有模板的子版本。这需要新模板 的名称和
vm
属性,以及新模板版本的 base_template
和 version_name
属性。base_template
和 version_name
属性必须在 template 部分括起的 version
部分中
指定。使用 id
或 name
属性识别虚拟机。
<template> <name>mytemplate</name> <vm id="123"/> <version> <base_template id="456"/> <version_name>mytemplate_001</version_name> </version> </template>
模板的目标存储域可以通过以下两种方式之一来自定义:
全局,在请求级别.请求必须列出要在存储域上创建所需的磁盘附件。如果没有列出磁盘附加,将忽略全局存储域参数。
<template> <name>mytemplate</name> <storage_domain id="123"/> <vm id="456"> <disk_attachments> <disk_attachment> <disk id="789"> <format>cow</format> <sparse>true</sparse> </disk> </disk_attachment> </disk_attachments> </vm> </template>
按每个磁盘附加.为每个磁盘附加指定所需的存储域。指定全局存储定义将根据磁盘附加规格覆盖存储域。
<template> <name>mytemplate</name> <vm id="123"> <disk_attachments> <disk_attachment> <disk id="456"> <format>cow</format> <sparse>true</sparse> <storage_domains> <storage_domain id="789"/> </storage_domains> </disk> </disk_attachment> </disk_attachments> </vm> </template>
表 6.744. 参数摘要
6.244.1.1. clone_permissions
指定虚拟机的权限是否应复制到模板。
如果提供了此可选参数,并且其值为 true
,则虚拟机的权限(只有直接虚拟机的权限,而不是继承的参数)将复制到创建的模板。例如,要从 myvm
虚拟机创建模板复制其权限,请发送如下请求:
POST /ovirt-engine/api/templates?clone_permissions=true
这样的请求正文:
<template> <name>mytemplate<name> <vm> <name>myvm<name> </vm> </template>
6.244.1.2. seal
密封模板。
如果提供了此可选参数,并且其值为 true
,则模板将在创建后密封。
封装会从文件系统中删除所有特定于主机的配置:SSH 密钥、UDEV 规则、MAC 地址、系统 ID、主机名等,从而更加轻松地使用模板来创建多个虚拟机,无需人工干预。
目前,仅支持 Linux 操作系统的密封。
6.244.2. 列出 GET
返回虚拟机模板列表。
例如:
GET /ovirt-engine/api/templates
将返回虚拟机和虚拟机模板的列表。
无法保证返回的模板列表的顺序。
表 6.745. 参数摘要
6.244.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.244.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.244.2.3. Max
设置要返回的模板的最大数量。如果未指定,则返回所有模板。
6.245. UnmanagedNetwork
表 6.746. 方法概述
名称 | 概述 |
---|---|
| |
|
6.245.1. 获取 GET
表 6.747. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.245.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.245.2. 删除 DELETE
表 6.748. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.246. UnmanagedNetworks
表 6.749. 方法概述
名称 | 概述 |
---|---|
| 返回主机的非受管网络列表。 |
6.246.1. 列出 GET
返回主机的非受管网络列表。
网络返回列表的顺序无法保证。
表 6.750. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大网络数。 | |
| out |
6.246.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.246.1.2. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.247. 用户
在系统中管理系统的用户的服务。使用此服务获取用户详细信息或删除用户。要添加新用户,请使用 第 6.250 节 “用户”。
表 6.751. 方法概述
名称 | 概述 |
---|---|
| 获取系统用户信息. |
| 删除系统用户。 |
| 更新用户的信息。 |
6.247.1. 获取 GET
获取系统用户信息.
使用方法:
GET /ovirt-engine/api/users/1234
将返回用户信息:
<user href="/ovirt-engine/api/users/1234" id="1234"> <name>admin</name> <link href="/ovirt-engine/api/users/1234/sshpublickeys" rel="sshpublickeys"/> <link href="/ovirt-engine/api/users/1234/roles" rel="roles"/> <link href="/ovirt-engine/api/users/1234/permissions" rel="permissions"/> <link href="/ovirt-engine/api/users/1234/tags" rel="tags"/> <department></department> <domain_entry_id>23456</domain_entry_id> <email>user1@domain.com</email> <last_name>Lastname</last_name> <namespace>*</namespace> <principal>user1</principal> <user_name>user1@domain-authz</user_name> <domain href="/ovirt-engine/api/domains/45678" id="45678"> <name>domain-authz</name> </domain> </user>
6.247.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.247.2. 删除 DELETE
删除系统用户。
使用方法:
DELETE /ovirt-engine/api/users/1234
表 6.753. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.247.3. 更新 PUT
更新用户的信息。
只有 user_options
字段才能更新。
例如,更新用户选项:
PUT /ovirt-engine/api/users/123
这样的请求正文:
<user> <user_options> <property> <name>test</name> <value>["any","JSON"]</value> </property> </user_options> </user>
自引擎版本 4.4.5 起,此操作已弃用,仅用于向后兼容。以后会将其移除。请改为使用选项端点。
表 6.754. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.248. UserOption
表 6.755. 方法概述
名称 | 概述 |
---|---|
| 返回 JSON 类型的用户配置文件属性。 |
| 删除 JSON 类型的现有属性。 |
6.248.1. 获取 GET
返回 JSON 类型的用户配置文件属性。
请求示例(针对标识符为 123
和选项为 456
的用户):
GET /ovirt-engine/api/users/123/options/456
其结果将是以下 XML 文档:
<user_option href="/ovirt-engine/api/users/123/options/456" id="456"> <name>SomeName</name> <content>["any", "JSON"]</content> <user href="/ovirt-engine/api/users/123" id="123"/> </user_option>
表 6.756. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out |
6.248.2. 删除 DELETE
删除 JSON 类型的现有属性。
请求示例(针对标识符为 123
和选项为 456
的用户):
DELETE /ovirt-engine/api/users/123/options/456
6.249. UserOptions
表 6.757. 方法概述
名称 | 概述 |
---|---|
| 添加类型为 JSON 的新用户配置文件属性。 |
| 返回 JSON 类型的用户配置文件属性列表。 |
6.249.1. 添加 POST
添加类型为 JSON 的新用户配置文件属性。
请求示例(针对标识符为 123 的用户) :
POST /ovirt-engine/api/users/123/options
payload:
<user_option> <name>SomeName</name> <content>["any", "JSON"]</content> </user_option>
表 6.758. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.249.2. 列出 GET
返回 JSON 类型的用户配置文件属性列表。
请求示例(针对标识符为 123 的用户) :
GET /ovirt-engine/api/users/123/options
其结果将是以下 XML 文档:
<user_options> <user_option href="/ovirt-engine/api/users/123/options/456" id="456"> <name>SomeName</name> <content>["any", "JSON"]</content> <user href="/ovirt-engine/api/users/123" id="123"/> </user_option> </user_options>
表 6.759. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out |
6.250. 用户
此服务用于管理系统中的用户。
表 6.760. 方法概述
名称 | 概述 |
---|---|
| 从目录服务添加用户. |
| 列出系统中的所有用户。 |
6.250.1. 添加 POST
从目录服务添加用户.
例如,要从 my
用户,发送类似如下的请求:
extension-authz 授权供应商添加 my
user
POST /ovirt-engine/api/users
这样的请求正文:
<user> <user_name>myuser@myextension-authz</user_name> <domain> <name>myextension-authz</name> </domain> </user>
如果您正在使用 Active Directory,则必须将用户主体名称(UPN)传递为 用户名
,后跟授权提供程序名称。由于 错误 1147900,您需要提供用户 UPN 的 principal
参数。
例如,从 myextension-authz
授权供应商添加带有 UPN myuser@mysubdomain.mydomain.com
的用户,发送如下的请求正文:
<user> <principal>myuser@mysubdomain.mydomain.com</principal> <user_name>myuser@mysubdomain.mydomain.com@myextension-authz</user_name> <domain> <name>myextension-authz</name> </domain> </user>
表 6.761. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.250.2. 列出 GET
列出系统中的所有用户。
使用方法:
GET /ovirt-engine/api/users
将返回用户列表:
<users> <user href="/ovirt-engine/api/users/1234" id="1234"> <name>admin</name> <link href="/ovirt-engine/api/users/1234/sshpublickeys" rel="sshpublickeys"/> <link href="/ovirt-engine/api/users/1234/roles" rel="roles"/> <link href="/ovirt-engine/api/users/1234/permissions" rel="permissions"/> <link href="/ovirt-engine/api/users/1234/tags" rel="tags"/> <domain_entry_id>23456</domain_entry_id> <namespace>*</namespace> <principal>user1</principal> <user_name>user1@domain-authz</user_name> <domain href="/ovirt-engine/api/domains/45678" id="45678"> <name>domain-authz</name> </domain> </user> </users>
无法保证返回的用户列表的顺序。
表 6.762. 参数摘要
6.250.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.250.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.250.2.3. Max
设置要返回的最大用户数。如果未指定,则返回所有用户。
6.251. VirtualFunctionAllowedNetwork
表 6.763. 方法概述
名称 | 概述 |
---|---|
| |
|
6.251.1. 获取 GET
6.251.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.251.2. 删除 DELETE
表 6.765. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.252. VirtualFunctionAllowedNetworks
表 6.766. 方法概述
名称 | 概述 |
---|---|
| |
| 返回网络列表。 |
6.252.1. 添加 POST
表 6.767. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.252.2. 列出 GET
返回网络列表。
网络返回列表的顺序无法保证。
6.252.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.252.2.2. Max
设置要返回的最大网络数。如果没有指定,则会返回所有网络。
6.253. VM
表 6.769. 方法概述
名称 | 概述 |
---|---|
| 在虚拟机上应用自动 CPU 和 NUMA 配置。 |
| 此操作将停止虚拟机到另一物理主机的任何迁移。 |
| |
| 将虚拟机永久恢复为预览快照的状态。 |
| 将虚拟机从池中分离. |
| 导出虚拟机。 |
| 冻结虚拟机文件系统. |
| 检索虚拟机的描述。 |
| 启动自动用户登录,以从外部控制台访问虚拟机。 |
| 在托管引擎虚拟机上设置全局维护模式。 |
| 将虚拟机迁移到另一物理主机. |
| 将虚拟机临时恢复为快照的状态。 |
| 将重新引导请求发送到虚拟机. |
| 删除虚拟机,包括它所连接的虚拟磁盘。 |
| |
| 将重置请求发送到虚拟机. |
| 捕获虚拟机当前状态的截图。 |
| 此操作将关闭请求发送到虚拟机。 |
| 启动虚拟机. |
| 此操作会强制虚拟机关闭。 |
| 此操作会将虚拟机状态保存到磁盘并停止它。 |
| thaws 虚拟机文件系统. |
| 生成时间敏感身份验证令牌,用于访问虚拟机的显示。 |
| 在预览快照前,将虚拟机恢复到其具有的状态。 |
| 更新系统中给定虚拟机 ID 的虚拟机。 |
6.253.1. autopincpuandnumanodes POST
在虚拟机上应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后会将其移除。改为使用 PUT,后跟 更新操作。
请求的示例:
POST /ovirt-engine/api/vms/123/autopincpuandnumanodes
这样的请求正文:
<action> <optimize_cpu_settings>true</optimize_cpu_settings> </action>
表 6.770. 参数摘要
6.253.1.1. optimize_cpu_settings
指定如何应用自动 CPU 和 NUMA 配置。如果设为 true,将调整 CPU 拓扑以适合虚拟机固定主机硬件。否则,它将使用 VM CPU 拓扑。
6.253.2. 取消迁移 POST
此操作将停止虚拟机到另一物理主机的任何迁移。
POST /ovirt-engine/api/vms/123/cancelmigration
取消迁移操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
表 6.771. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步取消迁移。 |
6.253.3. 克隆 POST
表 6.772. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行克隆。 | |
| in |
当虚拟机应折叠快照时,请使用 | |
| in | 虚拟机磁盘将要复制到的存储域。 | |
| in |
6.253.3.1. discard_snapshots
当虚拟机应折叠快照时,请使用 discard_snapshots
参数。默认值为 true。
6.253.4. commitsnapshot POST
将虚拟机永久恢复为预览快照的状态。
详情请查看 preview_snapshot 操作。
表 6.773. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步提交快照。 |
6.253.5. 分离 POST
将虚拟机从池中分离.
POST /ovirt-engine/api/vms/123/detach
detach 操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
表 6.774. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行分离操作。 |
6.253.6. 导出 POST
导出虚拟机。
虚拟机可以导出到导出域。例如,要将虚拟机 123
导出到导出域 myexport
:
POST /ovirt-engine/api/vms/123/export
这样的请求正文:
<action> <storage_domain> <name>myexport</name> </storage_domain> <exclusive>true</exclusive> <discard_snapshots>true</discard_snapshots> </action>
由于引擎的版本 4.2,也可以将虚拟机导出为虚拟设备(OVA)。例如,要将虚拟机 123
导出为名为 myvm.ova
的 OVA 文件,该文件位于主机 myhost
上的 /home/ovirt/
目录中:
POST /ovirt-engine/api/vms/123/export
这样的请求正文:
<action> <host> <name>myhost</name> </host> <directory>/home/ovirt</directory> <filename>myvm.ova</filename> </action>
在尝试导出域中的任何操作之前,确认导出操作已经完成。
表 6.775. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行导出。 | |
| in |
当虚拟机应折叠所有快照时,请使用 | |
| in |
当应导出虚拟机时,请使用 | |
| in | (导出)要将虚拟机导出到的存储域. |
6.253.7. freezefilesystems POST
冻结虚拟机文件系统.
此操作会在对正在运行的虚拟机执行实时快照时,使用 QEMU 客户机代理冻结虚拟机的文件系统。通常,由经理自动执行此操作,但是必须使用 OpenStack 卷(Cinder)磁盘的虚拟机 API 手动执行此操作。
例如:
POST /ovirt-engine/api/vms/123/freezefilesystems
<action/>
表 6.776. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行冻结。 |
6.253.8. 获取 GET
检索虚拟机的描述。
表 6.777. 参数摘要
6.253.8.1. all_content
指明是否应将虚拟机的所有属性包含在响应中。
默认情况下排除以下属性:
-
console
-
initial.configuration.data
- 描述虚拟机的 OVF 文档。 -
rng_source
-
soundcard
-
virtio_scsi
例如,要检索虚拟机 '123' 的完整表示法:
GET /ovirt-engine/api/vms/123?all_content=true
这些属性默认不包含在内,因为它们会降低性能。这些属性很少被使用,需要对数据库进行额外的查询。仅在需要时使用此参数,因为它会降低性能。
6.253.8.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.253.8.3. next_run
指示返回的结果是否将虚拟机描述为当前正在运行,或者是否使用已执行的修改描述虚拟机,但只有在虚拟机重启后才会生效。默认值为 false
。
如果该参数包含在请求中,但没有值,则假设该值为 true
。以下请求:
GET /vms/{vm:id};next_run
等同于使用值 true
:
GET /vms/{vm:id};next_run=true
6.253.8.4. ovf_as_ova
指明结果是否应该公开显示在该虚拟机的 OVA 文件中时的 OVF。描述虚拟机的 OVF 文档。这个参数仅在设置了 all_content=True 时才有效。OVF 将显示在 initial .configuration.data 中
。
例如:
GET /vms/{vm:id}?all_content=true&ovf_as_ova=true
6.253.9. 登录 POST
启动自动用户登录,以从外部控制台访问虚拟机。
此操作要求安装 ovirt-guest-agent-gdm-plugin
和 ovirt-guest-agent-pam
服务。
-module
软件包,并在虚拟机上运行 ovirt-guest-agent
用户需要相应的用户权限才能从外部控制台访问虚拟机。
例如:
POST /ovirt-engine/api/vms/123/logon
请求正文:
<action/>
表 6.778. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行登录。 |
6.253.10. 维护 POST
在托管引擎虚拟机上设置全局维护模式。
此操作对其他虚拟机没有影响。
例如:
POST /ovirt-engine/api/vms/123/maintenance
<action> <maintenance_enabled>true<maintenance_enabled/> </action>
6.253.11. 迁移 POST
将虚拟机迁移到另一物理主机.
例如:
POST /ovirt-engine/api/vms/123/migrate
要指定将虚拟机迁移到的特定主机:
<action> <host id="2ab5e1da-b726-4274-bbf7-0a42b16a0fc3"/> </action>
表 6.780. 参数摘要
6.253.11.1. cluster
指定虚拟机应迁移到的集群。这是可选参数。默认情况下,虚拟机迁移到同一集群内的另一台主机上。
不支持实时迁移到另一集群。在尝试迁移前,请强烈考虑目标集群的硬件架构和网络架构。
6.253.11.2. force
指定虚拟机应迁移,即使虚拟机被定义为不可迁移。这是可选参数。默认情况下,设置为 false
。
6.253.11.3. 主机
指定虚拟机应迁移到的特定主机。这是可选参数。默认情况下,Red Hat Virtualization Manager 会自动选择用于在同一集群中迁移的默认主机。如果 API 用户需要特定的主机,用户可以使用 id
或 name
参数指定主机。
6.253.11.4. migrate_vms_in_affinity_closure
还使用此虚拟机迁移正强制关联组中的所有其他虚拟机,这些虚拟机在同一主机上运行。
默认值为 false
。
6.253.12. previewsnapshot POST
将虚拟机临时恢复为快照的状态。
快照通过 snapshot.id 参数来
指示。它会被临时恢复,以便可以检查内容。完成该检查后,可以使用 commit_snapshot 方法使虚拟机的状态变为永久,或使用 undo_snapshot 方法丢弃。
表 6.781. 参数摘要
6.253.12.1. 磁盘
指定快照预览中包含的磁盘。
对于每个磁盘参数,还需要指定其 image_id
。
例如:要使用标识符 456
预览快照,其中包括一个标识符为 111 的磁盘 ,
其 image_id
为 222
,发送类似如下的请求:
POST /ovirt-engine/api/vms/123/previewsnapshot
请求正文:
<action> <disks> <disk id="111"> <image_id>222</image_id> </disk> </disks> <snapshot id="456"/> </action>
6.253.12.2. lease
指定要在快照预览中使用的租用存储域 ID。如果没有传递租期参数,则将使用预览的快照租用存储域。如果使用空存储域参数传递租期参数,则快照预览不会使用租用。如果租用参数与存储域参数传递,则存储域 ID 只能是属于其中一个虚拟机快照的租用域 ID 之一。这是一个可选参数,默认设置为 null
6.253.13. 重启 POST
将重新引导请求发送到虚拟机.
例如:
POST /ovirt-engine/api/vms/123/reboot
reboot 操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
要重新引导虚拟机,即使备份正在运行,该操作应包含"强制"元素。
例如,强制重新引导虚拟机 123
:
POST /ovirt-engine/api/vms/123/reboot
<action> <force>true</force> </action>
6.253.14. 删除 DELETE
删除虚拟机,包括它所连接的虚拟磁盘。
例如,要删除标识符为 123
的虚拟机:
DELETE /ovirt-engine/api/vms/123
表 6.783. 参数摘要
6.253.14.1. force
指明是否应强制删除虚拟机。
如果没有将此标志设为 true,则无法删除带有锁定磁盘镜像的锁定虚拟机和虚拟机。
6.253.15. reordermacaddresses POST
表 6.784. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行该操作。 |
6.253.16. 重置 POST
将重置请求发送到虚拟机.
例如:
POST /ovirt-engine/api/vms/123/reset
重置操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
表 6.785. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行重置。 |
6.253.17. 截屏 POST
捕获虚拟机当前状态的截图。
例如:
POST /ovirt-engine/api/vms/123/screenshot
截屏操作不会采取任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
6.253.18. 关闭 POST
此操作将关闭请求发送到虚拟机。
例如:
POST /ovirt-engine/api/vms/123/shutdown
关闭操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
要关闭虚拟机,即使备份正在运行,该操作应包括"强制"元素。
例如,强制关闭虚拟机 123
:
POST /ovirt-engine/api/vms/123/shutdown
<action> <force>true</force> </action>
表 6.786. 参数摘要
6.253.18.1. reason
虚拟机被停止的原因。关闭虚拟机时由用户设置(可选)。
6.253.19. 启动 POST
启动虚拟机.
如果虚拟环境已完成,并且虚拟机包含运行所需的所有组件,则可以启动它。
本例启动虚拟机:
POST /ovirt-engine/api/vms/123/start
通过请求正文:
<action/>
表 6.787. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行启动操作。 | |
| in | ||
| in | 指明是否应根据用户的权限过滤结果。 | |
| in |
如果设为 | |
| in |
如果设为 | |
| in |
如果设为 | |
| in |
如果设为 | |
| in |
如果设置为 | |
| in | 此特定运行的虚拟机的定义。 | |
| in | 表示即使 guest 启动重启,此运行配置也会被丢弃。 |
6.253.19.1. pause
如果设为 true
,则以暂停模式启动虚拟机。默认值为 false
。
6.253.19.2. use_cloud_init
如果设为 true
,初始化类型将设为 cloud-init。默认值为 false
。详情请查看此信息。
6.253.19.3. use_ignition
如果设为 true
,初始化类型将设置为 Ignition。默认值为 false
。详情请查看此信息。
6.253.19.4. use_initialization
如果设为 true
,则初始化类型由虚拟机的操作系统设置。Windows 将设置为 Sysprep,Linux 设置为 cloud-init,并将红帽 CoreOS 设置为 Ignition。如果明确设置了任何初始化类型(useCloudInit、useSysprep 或 useIgnition),它们将获得优先权,并且忽略此标志。默认值为 false
。
6.253.19.5. use_sysprep
如果设置为 true
,初始化类型将设置为 Sysprep。默认值为 false
。详情请查看此信息。
6.253.19.6. vm
此特定运行的虚拟机的定义。
例如:
<action> <vm> <os> <boot> <devices> <device>cdrom</device> </devices> </boot> </os> </vm> </action>
这将只针对这个特定启动将引导设备设置为 CDROM。虚拟机关闭后,该定义将被恢复。
6.253.19.7. 易失性
表示即使 guest 启动重启,此运行配置也会被丢弃。默认值为 false
。
6.253.20. 停止 POST
此操作会强制虚拟机关闭。
例如:
POST /ovirt-engine/api/vms/123/stop
stop 操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
要停止虚拟机,即使备份正在运行,该操作应包含 'force' 元素。
例如,强制停止虚拟机 123
:
POST /ovirt-engine/api/vms/123/stop
<action> <force>true</force> </action>
表 6.788. 参数摘要
6.253.20.1. reason
虚拟机被停止的原因。关闭虚拟机时由用户设置(可选)。
6.253.21. 挂起 POST
此操作会将虚拟机状态保存到磁盘并停止它。启动暂停的虚拟机,并通过 start 操作恢复虚拟机状态。
例如:
POST /ovirt-engine/api/vms/123/suspend
挂起的操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
表 6.789. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行暂停操作。 |
6.253.22. thawfilesystems POST
thaws 虚拟机文件系统.
此操作会在对正在运行的虚拟机执行实时快照时,使用 QEMU 客户机代理修改虚拟机的文件系统。通常,由经理自动执行此操作,但是必须使用 OpenStack 卷(Cinder)磁盘的虚拟机 API 手动执行此操作。
例如:
POST /api/vms/123/thawfilesystems
<action/>
表 6.790. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应当异步执行 thaw 文件系统操作。 |
6.253.23. ticket POST
生成时间敏感身份验证令牌,用于访问虚拟机的显示。
例如:
POST /ovirt-engine/api/vms/123/ticket
客户端提供的操作可选包括所需的 ticket 值和/或到期时间(以秒为单位)。
response 指定使用的实际票据值和到期时间。
<action> <ticket> <value>abcd12345</value> <expiry>120</expiry> </ticket> </action>
如果虚拟机配置为仅支持一个图形协议,则生成的身份验证令牌将对该协议有效。但是,如果虚拟机配置为支持多个协议、VNC 和 SPICE,则身份验证令牌将仅对 SPICE 协议有效。
要获取特定协议(如 VNC)的身份验证令牌,请使用 该服务 的 ticket
方法,它通过发送请求来管理虚拟机的图形控制台:
POST /ovirt-engine/api/vms/123/graphicsconsoles/456/ticket
6.253.24. undosnapshot POST
在预览快照前,将虚拟机恢复到其具有的状态。
详情请查看 preview_snapshot 操作。
表 6.792. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行撤消快照操作。 |
6.253.25. 更新 PUT
更新系统中给定虚拟机 ID 的虚拟机。
表 6.793. 参数摘要
6.253.25.1. next_run
指明是否应立即将更新应用到虚拟机,或者是否应当在虚拟机重启后应用更新。默认值为 false
,因此默认情况下会立即应用更改。
6.254. VmApplication
此服务提供有关虚拟机中安装的应用程序的信息。
表 6.794. 方法概述
名称 | 概述 |
---|---|
| 返回有关应用的信息。 |
6.254.1. 获取 GET
返回有关应用的信息。
表 6.795. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 有关应用的信息。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 |
6.254.1.1. 应用
有关应用的信息。
该信息包含包含应用 名称的 name
属性(这是任意字符串,可能还包含其他信息,如版本)和 vm
属性(标识虚拟机)。
例如,类似如下的请求:
GET /ovirt-engine/api/vms/123/applications/789
可返回如下信息:
<application href="/ovirt-engine/api/vms/123/applications/789" id="789"> <name>ovirt-guest-agent-common-1.0.12-3.el7</name> <vm href="/ovirt-engine/api/vms/123" id="123"/> </application>
6.254.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.255. VmApplications
此服务提供有关虚拟机中安装的应用程序的信息。
表 6.796. 方法概述
名称 | 概述 |
---|---|
| 返回虚拟机中安装的应用列表。 |
6.255.1. 列出 GET
返回虚拟机中安装的应用列表。
无法保证返回的应用程序列表的顺序。
表 6.797. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 虚拟机中安装的应用程序列表。 | |
| in | 指明是否应根据用户的权限过滤结果。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大应用程序数。 |
6.255.1.1. 应用程序
虚拟机中安装的应用程序列表。
例如,类似如下的请求:
GET /ovirt-engine/api/vms/123/applications/
可返回类似如下的列表:
<applications> <application href="/ovirt-engine/api/vms/123/applications/456" id="456"> <name>kernel-3.10.0-327.36.1.el7</name> <vm href="/ovirt-engine/api/vms/123" id="123"/> </application> <application href="/ovirt-engine/api/vms/123/applications/789" id="789"> <name>ovirt-guest-agent-common-1.0.12-3.el7</name> <vm href="/ovirt-engine/api/vms/123" id="123"/> </application> </applications>
6.255.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.255.1.3. Max
设置要返回的最大应用程序数。如果没有指定,则会返回所有应用程序。
6.256. VmBackup
管理虚拟机的备份的服务。
表 6.798. 方法概述
名称 | 概述 |
---|---|
| 完成虚拟机备份实体。 |
| 返回有关虚拟机备份的信息。 |
6.256.1. 最终 POST
完成虚拟机备份实体。
最终备份、解锁资源并执行清理。使用 id '123' 和 id '456' 发送请求(如下所示)的备份完成虚拟机:
POST /ovirt-engine/api/vms/123/backups/456/finalize
请求正文如下:
<action />
6.256.2. 获取 GET
返回有关虚拟机备份的信息。
6.256.2.1. backup
有关虚拟机备份实体的信息。
<backups> <backup id="backup-uuid"> <from_checkpoint_id>previous-checkpoint-uuid</from_checkpoint_id> <link href="/ovirt-engine/api/vms/vm-uuid/backups/backup-uuid/disks" rel="disks"/> <status>initializing</status> <creation_date> </backup> </backups>
6.256.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.257. VmBackupDisk
表 6.800. 方法概述
名称 | 概述 |
---|---|
| 检索磁盘的描述。 |
6.257.1. 获取 GET
检索磁盘的描述。
6.257.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.258. VmBackupDisks
表 6.802. 方法概述
名称 | 概述 |
---|---|
| 返回备份中的磁盘列表。 |
6.258.1. 列出 GET
返回备份中的磁盘列表。
6.258.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.258.1.2. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.259. VmBackups
列出虚拟机的备份。
表 6.804. 方法概述
名称 | 概述 |
---|---|
| 将新的备份实体添加到虚拟机。 |
| 虚拟机备份列表。 |
6.259.1. 添加 POST
将新的备份实体添加到虚拟机。
例如,要从检查点 id 之前-checkpoint-uuid
开始为虚拟机启动新的增量备份,请发送类似如下的请求:
POST /ovirt-engine/api/vms/123/backups
这样的请求正文:
<backup> <from_checkpoint_id>previous-checkpoint-uuid</from_checkpoint_id> <disks> <disk id="disk-uuid" /> ... </disks> </backup>
响应正文:
<backup id="backup-uuid"> <from_checkpoint_id>previous-checkpoint-uuid</from_checkpoint_id> <to_checkpoint_id>new-checkpoint-uuid</to_checkpoint_id> <disks> <disk id="disk-uuid" /> ... ... </disks> <status>initializing</status> <creation_date> </backup>
要提供所创建的备份的 ID,请发送类似如下的请求:
POST /ovirt-engine/api/vms/123/backups
这样的请求正文:
<backup id="backup-uuid"> <from_checkpoint_id>previous-checkpoint-uuid</from_checkpoint_id> <disks> <disk id="disk-uuid" /> ... </disks> </backup>
表 6.805. 参数摘要
6.259.1.1. require_consistency
指明如果虚拟机无法停止,备份是否会失败。
如果 requireConsistency=True VM 备份失败(如果无法冻结虚拟机)。
REST API 调用应如下所示:
POST /ovirt-engine/api/vms/123/backups?require_consistency=true
requireConsistency 标志的默认值为 false
。
6.259.1.2. use_active
指明是否使用活动卷来执行备份。
如果将 useActive=False 创建用于备份操作的快照。
REST API 调用应如下所示:
POST /ovirt-engine/api/vms/123/backups?use_active=false
useActive 标志的默认值为 false
。
6.259.2. 列出 GET
虚拟机备份列表。
表 6.806. 参数摘要
6.259.2.1. Backups
有关虚拟机备份实体的信息。
<backups> <backup id="backup-uuid"> <from_checkpoint_id>previous-checkpoint-uuid</from_checkpoint_id> <disks> <disk id="disk-uuid" /> ... ... </disks> <status>initiailizing</status> <creation_date> </backup> </backups>
6.259.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.259.2.3. Max
设置要返回的最大虚拟机备份数。如果未指定,则返回所有虚拟机备份。
6.260. VmCdrom
管理虚拟机的 CDROM 设备。
更改和弹出磁盘应始终使用 update
方法,以更改 file
属性的值。
表 6.807. 方法概述
名称 | 概述 |
---|---|
| 返回有关此 CDROM 设备的信息。 |
| 更新有关此 CDROM 设备的信息。 |
6.260.1. 获取 GET
返回有关此 CDROM 设备的信息。
该信息由 cdrom
属性组成,其中包含对 CDROM 设备、虚拟机和插入磁盘的引用。
如果插入了磁盘,则 file
属性将包含对 ISO 镜像的引用:
<cdrom href="..." id="00000000-0000-0000-0000-000000000000"> <file id="mycd.iso"/> <vm href="/ovirt-engine/api/vms/123" id="123"/> </cdrom>
如果没有插入磁盘,则不会报告 file
属性:
<cdrom href="..." id="00000000-0000-0000-0000-000000000000"> <vm href="/ovirt-engine/api/vms/123" id="123"/> </cdrom>
表 6.808. 参数摘要
6.260.1.1. current
指明操作是否应该返回当前正在运行的虚拟机的信息。此参数是可选的,默认值为 false
。
6.260.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.260.2. 更新 PUT
更新有关此 CDROM 设备的信息。
它可以通过更改 file
属性的值来更改或弹出磁盘。例如,要插入或更改磁盘发送如下请求:
PUT /ovirt-engine/api/vms/123/cdroms/00000000-0000-0000-0000-000000000000
正文应包含 file
属性的新值:
<cdrom> <file id="mycd.iso"/> </cdrom>
本示例中 id
属性 mycd.iso
的值应当与附加 ISO 存储域中可用的文件对应。
要弹出磁盘,请使用带有空 id
的文件
:
<cdrom> <file id=""/> </cdrom>
默认情况下,上述操作会在下一次启动后永久更改虚拟机可见的磁盘,但它们对当前运行的虚拟机没有任何影响。如果要更改当前正在运行的虚拟机可见的磁盘,请添加 current=true
参数。例如,要弹出当前磁盘发送如下请求:
PUT /ovirt-engine/api/vms/123/cdroms/00000000-0000-0000-0000-000000000000?current=true
这样的请求正文:
<cdrom> <file id=""/> </cdrom>
使用 current=true
参数所做的更改永远不会保留,因此在虚拟机重启后它们不会有任何影响。
表 6.809. 参数摘要
6.260.2.1. current
指明更新应应用到当前正在运行的虚拟机,还是在下次启动后应用到虚拟机。这个参数是可选的,默认值为 false
,这表示默认情况下,更新仅在下一次引导后才会生效。
6.261. VmCdroms
管理虚拟机的 CDROM 设备。
目前虚拟机只有一个 CDROM 设备。无法添加新设备,并且无法删除现有设备,因此无法 添加
或删除
方法。更改和弹出 CDROM 磁盘,可使用管理 CDROM 设备的服务的 更新方法。
表 6.810. 方法概述
名称 | 概述 |
---|---|
| 将 cdrom 添加到由给定 ID 标识的虚拟机中。 |
| 返回虚拟机的 CDROM 设备列表。 |
6.261.1. 添加 POST
将 cdrom 添加到由给定 ID 标识的虚拟机中。
表 6.811. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.261.2. 列出 GET
返回虚拟机的 CDROM 设备列表。
CD-ROM 设备返回列表的顺序不受保证。
表 6.812. 参数摘要
6.261.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.261.2.2. Max
设置要返回的最大 CDROM 数。如果没有指定,则返回所有 CDROM。
6.262. VmCheckpoint
管理虚拟机的检查点的服务。
表 6.813. 方法概述
名称 | 概述 |
---|---|
| 返回有关虚拟机检查点的信息。 |
| 删除虚拟机检查点实体。 |
6.262.1. 获取 GET
返回有关虚拟机检查点的信息。
表 6.814. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 有关虚拟机检查点实体的信息。 | |
| in | 指明应遵循哪些内联链接。 |
6.262.1.1. checkpoint
有关虚拟机检查点实体的信息。
<checkpoint id="checkpoint-uuid"> <link href="/ovirt-engine/api/vms/vm-uuid/checkpoints/checkpoint-uuid/disks" rel="disks"/> <parent_id>parent-checkpoint-uuid</parent_id> <creation_date>xxx</creation_date> <vm href="/ovirt-engine/api/vms/vm-uuid" id="vm-uuid"/> </checkpoint>
6.262.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.262.2. 删除 DELETE
删除虚拟机检查点实体。
从 libvirt 和数据库中删除检查点。
表 6.815. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.263. VmCheckpointDisk
表 6.816. 方法概述
名称 | 概述 |
---|---|
| 检索磁盘的描述。 |
6.263.1. 获取 GET
检索磁盘的描述。
6.263.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.264. VmCheckpointDisks
表 6.818. 方法概述
名称 | 概述 |
---|---|
| 返回检查点中的磁盘列表。 |
6.264.1. 列出 GET
返回检查点中的磁盘列表。
6.264.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.264.1.2. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.265. VmCheckpoints
列出虚拟机的检查点。
表 6.820. 方法概述
名称 | 概述 |
---|---|
| 虚拟机检查点列表。 |
6.265.1. 列出 GET
虚拟机检查点列表。
要获取一个带有 id '123' 的虚拟机的检查点列表,请按如下所示发送请求:
GET /ovirt-engine/api/vms/123/checkpoints
表 6.821. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 有关虚拟机检查点实体的信息。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大虚拟机检查点数。 |
6.265.1.1. checkpoints
有关虚拟机检查点实体的信息。
<checkpoints> <checkpoint id="checkpoint-uuid"> <link href="/ovirt-engine/api/vms/vm-uuid/checkpoints/checkpoint-uuid/disks" rel="disks"/> <parent_id>parent-checkpoint-uuid</parent_id> <creation_date>xxx</creation_date> <vm href="/ovirt-engine/api/vm-uuid" id="vm-uuid"/> </checkpoint> </checkpoints>
6.265.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.265.1.3. Max
设置要返回的最大虚拟机检查点数。如果没有指定,则返回所有虚拟机检查点。
6.266. VmDisk
表 6.822. 方法概述
名称 | 概述 |
---|---|
| |
| |
| |
| |
| |
| 减少磁盘镜像的大小。 |
| 将磁盘从虚拟机分离。 |
|
6.266.1. 激活 POST
表 6.823. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行激活。 |
6.266.2. 取消激活 POST
表 6.824. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行取消激活。 |
6.266.3. 导出 POST
6.266.4. 获取 GET
6.266.4.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.266.5. 移动 POST
6.266.6. 减少 POST
减少磁盘镜像的大小。
在逻辑卷中调用 less(即,这仅适用于块存储域)。这适用于附加到未运行虚拟机的浮动磁盘和磁盘。无需指定大小,因为会自动计算最佳大小。
表 6.828. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.266.7. 删除 DELETE
将磁盘从虚拟机分离。
在 API 版本 3 中,这曾用于从系统完全删除磁盘,但从版本 4 开始,它不会。如果您需要完全删除它,请使用顶级磁盘服务的删除方法。
表 6.829. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.266.8. 更新 PUT
6.267. vmdisks
表 6.831. 方法概述
名称 | 概述 |
---|---|
| |
| 返回虚拟机的磁盘列表。 |
6.267.1. 添加 POST
表 6.832. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.267.2. 列出 GET
返回虚拟机的磁盘列表。
无法保证返回的磁盘列表的顺序。
6.267.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.267.2.2. Max
设置要返回的最大磁盘数。如果没有指定,则返回所有磁盘。
6.268. VmGraphicsConsole
表 6.834. 方法概述
名称 | 概述 |
---|---|
| 检索虚拟机的图形控制台配置。 |
| |
|
生成与 |
| 从虚拟机中删除图形控制台。 |
| 生成时间敏感身份验证令牌,以访问此虚拟机的控制台。 |
6.268.1. 获取 GET
检索虚拟机的图形控制台配置。
默认情况下,如果没有指定 当前
参数,返回的数据对应于下一次虚拟机执行。在系统的当前实施中,这意味着不会填充 地址
和端口
属性,因为系统不知道将什么地址和端口用于下一次执行。由于在大多数情况下需要这些属性,因此强烈建议您明确包含 当前
参数,值为 true
。
表 6.835. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 有关虚拟机的图形控制台的信息。 | |
| in | 指定返回的数据应当与下一次虚拟机执行或当前执行对应。 | |
| in | 指明应遵循哪些内联链接。 |
6.268.1.1. current
指定返回的数据应当与下一次虚拟机执行或当前执行对应。
地址和
端口
属性将不会填充,除非值为 true
。
例如,要获取当前执行虚拟机的数据,包括 地址
和端口
属性,请发送如下所示的请求:
GET /ovit-engine/api/vms/123/graphicsconsoles/456?current=true
默认值为 false
。
6.268.1.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.268.2. proxyticket POST
表 6.836. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行生成票据。 | |
| out |
6.268.3. remoteviewerconnectionfile POST
生成与 remote-viewer
客户端兼容的 文件。
使用以下请求为图形控制台生成远程查看器连接文件:请注意,只有在虚拟机正在运行时,此操作才会生成 文件。
POST /ovirt-engine/api/vms/123/graphicsconsoles/456/remoteviewerconnectionfile
remoteviewerconnectionfile
操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
响应中包含 文件,可用于 remote-viewer
客户端。
<action> <remote_viewer_connection_file> [virt-viewer] type=spice host=192.168.1.101 port=-1 password=123456789 delete-this-file=1 fullscreen=0 toggle-fullscreen=shift+f11 release-cursor=shift+f12 secure-attention=ctrl+alt+end tls-port=5900 enable-smartcard=0 enable-usb-autoshare=0 usb-filter=null tls-ciphers=DEFAULT host-subject=O=local,CN=example.com ca=... </remote_viewer_connection_file> </action>
例如,要获取远程查看器连接文件的内容并将其保存到临时文件中,用户可以按如下方式使用 oVirt Python SDK:
# Find the virtual machine: vm = vms_service.list(search='name=myvm')[0] # Locate the service that manages the virtual machine, as that is where # the locators are defined: vm_service = vms_service.vm_service(vm.id) # Find the graphic console of the virtual machine: graphics_consoles_service = vm_service.graphics_consoles_service() graphics_console = graphics_consoles_service.list()[0] # Generate the remote viewer connection file: console_service = graphics_consoles_service.console_service(graphics_console.id) remote_viewer_connection_file = console_service.remote_viewer_connection_file() # Write the content to file "/tmp/remote_viewer_connection_file.vv" path = "/tmp/remote_viewer_connection_file.vv" with open(path, "w") as f: f.write(remote_viewer_connection_file)
当您创建远程 viewer 连接文件时,您可以连接到虚拟机图形控制台,如下所示:
#!/bin/sh -ex remote-viewer --ovirt-ca-file=/etc/pki/ovirt-engine/ca.pem /tmp/remote_viewer_connection_file.vv
表 6.837. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out |
包含与 |
6.268.3.1. remote_viewer_connection_file
包含与 remote-viewer
客户端兼容的 文件。
用户可以使用此属性的内容创建 文件,该文件可以传递到 remote-viewer
客户端以连接到虚拟机图形控制台。
6.268.4. 删除 DELETE
从虚拟机中删除图形控制台。
表 6.838. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.268.5. ticket POST
生成时间敏感身份验证令牌,以访问此虚拟机的控制台。
POST /ovirt-engine/api/vms/123/graphicsconsoles/456/ticket
客户端提供的操作可选包括所需的 ticket 值和/或到期时间(以秒为单位)。
在所有情况下,响应都指定使用的实际票据值和到期时间。
<action> <ticket> <value>abcd12345</value> <expiry>120</expiry> </ticket> </action>
表 6.839. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 生成可用于访问此控制台的票据。 |
6.269. VmGraphicsConsoles
表 6.840. 方法概述
名称 | 概述 |
---|---|
| 向虚拟机添加新图形控制台。 |
| 列出虚拟机的所有配置的图形控制台。 |
6.269.1. 添加 POST
向虚拟机添加新图形控制台。
表 6.841. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.269.2. 列出 GET
列出虚拟机的所有配置的图形控制台。
默认情况下,如果没有指定 当前
参数,返回的数据对应于下一次虚拟机执行。在系统的当前实施中,这意味着不会填充 地址
和端口
属性,因为系统不知道将什么地址和端口用于下一次执行。由于在大多数情况下需要这些属性,因此强烈建议您明确包含 当前
参数,值为 true
。
无法保证返回的图形控制台列表的顺序。
表 6.842. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 虚拟机的图形控制台列表。 | |
| in | 指定返回的数据应当与下一次虚拟机执行或当前执行对应。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大控制台数。 |
6.269.2.1. current
指定返回的数据应当与下一次虚拟机执行或当前执行对应。
地址和
端口
属性将不会填充,除非值为 true
。
例如,要获取当前执行虚拟机的数据,包括 地址
和端口
属性,请发送如下所示的请求:
GET /ovirt-engine/api/vms/123/graphicsconsoles?current=true
默认值为 false
。
6.269.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.269.2.3. Max
设置要返回的最大控制台数。如果没有指定,则返回所有控制台。
6.270. VmHostDevice
此服务用于管理附加到虚拟机的个别主机设备。
表 6.843. 方法概述
名称 | 概述 |
---|---|
| 检索有关附加到给定虚拟机的特定主机设备的信息。 |
| 从给定的虚拟机中删除此主机设备的附件。 |
6.270.1. 获取 GET
检索有关附加到给定虚拟机的特定主机设备的信息。
例如:
GET /ovirt-engine/api/vms/123/hostdevices/456
<host_device href="/ovirt-engine/api/hosts/543/devices/456" id="456"> <name>pci_0000_04_00_0</name> <capability>pci</capability> <iommu_group>30</iommu_group> <placeholder>true</placeholder> <product id="0x13ba"> <name>GM107GL [Quadro K2200]</name> </product> <vendor id="0x10de"> <name>NVIDIA Corporation</name> </vendor> <host href="/ovirt-engine/api/hosts/543" id="543"/> <parent_device href="/ovirt-engine/api/hosts/543/devices/456" id="456"> <name>pci_0000_00_03_0</name> </parent_device> <vm href="/ovirt-engine/api/vms/123" id="123"/> </host_device>
表 6.844. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索与给定虚拟机连接的主机设备相关的信息。 | |
| in | 指明应遵循哪些内联链接。 |
6.270.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.270.2. 删除 DELETE
从给定的虚拟机中删除此主机设备的附件。
如果此设备充当 IOMMU 占位符,则无法删除(删除只会导致 占位符
标记设为 true
)。请注意,所有 IOMMU 占位符设备会在没有其他非占位符设备时自动删除(特定 IOMMU 组中的所有设备都将被分离)。
DELETE /ovirt-engine/api/vms/123/hostdevices/456
表 6.845. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.271. VmHostDevices
用于管理附加到虚拟机的主机设备的服务。
表 6.846. 方法概述
名称 | 概述 |
---|---|
| 将目标设备附加到给定的虚拟机。 |
| 列出分配到给定虚拟机的主机设备。 |
6.271.1. 添加 POST
将目标设备附加到给定的虚拟机。
例如:
POST /ovirt-engine/api/vms/123/hostdevices
使用类型为 HostDevice 的请求正文,例如
<host_device id="123" />
成功附加主机设备的一个必要条件是虚拟机必须固定到一个主机。然后相对于此主机获取设备 ID。
附加作为较大 IOMMU 组一部分的 PCI 设备将导致从该 IOMMU 组附加其余设备作为"占位符"。然后,使用设置为 true
的 HostDevice 类型的 占位符
属性来识别这些设备。
如果您希望附加已充当 IOMMU 占位符的设备,只需为其发出明确的添加操作,并且其 占位符
标志将被清除,并且该设备可以被虚拟机访问。
表 6.847. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 要附加到给定虚拟机的主机设备。 |
6.271.2. 列出 GET
列出分配到给定虚拟机的主机设备。
无法保证返回的设备列表的顺序。
表 6.848. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 检索到附加到给定虚拟机的主机设备列表。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大设备数。 |
6.271.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.271.2.2. Max
设置要返回的最大设备数。如果没有指定,则返回所有设备。
6.272. VmMediatedDevice
表 6.849. 方法概述
名称 | 概述 |
---|---|
| 检索虚拟机中介质设备的配置。 |
| 从虚拟机中删除介质设备。 |
| 更新有关介质设备的信息。 |
6.272.1. 获取 GET
检索虚拟机中介质设备的配置。
表 6.850. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 有关虚拟机的介质设备的信息。 | |
| in | 指明应遵循哪些内联链接。 |
6.272.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.272.2. 删除 DELETE
从虚拟机中删除介质设备。
表 6.851. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.272.3. 更新 PUT
更新有关介质设备的信息。
您可以使用 specParams
元素更新信息。
例如,要更新介质设备,请发送如下请求:
PUT /ovirt-engine/api/vms/123/mediateddevices/00000000-0000-0000-0000-000000000000 <vm_mediated_device> <spec_params> <property> <name>mdevType</name> <value>nvidia-11</value> </property> </spec_params> </vm_mediated_device>
使用响应正文:
<vm_mediated_device href="/ovirt-engine/api/vms/123/mediateddevices/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"> <vm href="/ovirt-engine/api/vms/123" id="123"/> <spec_params> <property> <name>mdevType</name> <value>nvidia-11</value> </property> </spec_params> </vm_mediated_device>
表 6.852. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 有关介质设备的信息。 |
6.272.3.1. device
有关介质设备的信息。
请求数据必须包含 specParams
属性。响应数据包含有关更新的介质设备的完整信息。
6.273. VmMediatedDevices
此服务管理虚拟机的介质设备。
表 6.853. 方法概述
名称 | 概述 |
---|---|
| 向虚拟机添加新的介质设备。 |
| 列出虚拟机的所有配置的介质设备。 |
6.273.1. 添加 POST
向虚拟机添加新的介质设备。
表 6.854. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.273.2. 列出 GET
列出虚拟机的所有配置的介质设备。
未保证返回介质设备列表的顺序。
表 6.855. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| out | 虚拟机的介质设备列表。 | |
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大介质设备数。 |
6.273.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.273.2.2. Max
设置要返回的最大介质设备数。如果没有指定所有介质设备,则会返回。
6.274. VmNic
表 6.856. 方法概述
名称 | 概述 |
---|---|
| |
| |
| |
| 删除 NIC。 |
| 更新 NIC. |
6.274.1. 激活 POST
表 6.857. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行激活。 |
6.274.2. 取消激活 POST
表 6.858. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行取消激活。 |
6.274.3. 获取 GET
6.274.3.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.274.4. 删除 DELETE
删除 NIC。
例如,要从 ID 123 的虚拟机中删除 ID 为 456
的 NIC,发送
类似如下的请求:
DELETE /ovirt-engine/api/vms/123/nics/456
热插拔功能仅支持带有热插拔操作的虚拟机操作系统。操作系统示例包括:
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 5
- Windows Server 2008 和
- Windows Server 2003
表 6.860. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.274.5. 更新 PUT
更新 NIC.
例如,更新具有 456
属于 ID 123 的虚拟机的 NIC 发送
如下请求:
PUT /ovirt-engine/api/vms/123/nics/456
这样的请求正文:
<nic> <name>mynic</name> <interface>e1000</interface> <vnic_profile id='789'/> </nic>
热插拔功能仅支持带有热插拔操作的虚拟机操作系统。操作系统示例包括:
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 5
- Windows Server 2008 和
- Windows Server 2003
6.275. VmNics
表 6.862. 方法概述
名称 | 概述 |
---|---|
| 将 NIC 添加到虚拟机。 |
| 返回虚拟机的 NIC 列表。 |
6.275.1. 添加 POST
将 NIC 添加到虚拟机。
以下示例使用 virtio
和 NIC 配置集 456
向虚拟机添加一个名为 mynic
的 网络接口
。
POST /ovirt-engine/api/vms/123/nics
<nic> <name>mynic</name> <interface>virtio</interface> <vnic_profile id="456"/> </nic>
以下示例使用 curl
发送该请求:
curl \ --request POST \ --header "Version: 4" \ --header "Content-Type: application/xml" \ --header "Accept: application/xml" \ --user "admin@internal:mypassword" \ --cacert /etc/pki/ovirt-engine/ca.pem \ --data ' <nic> <name>mynic</name> <interface>virtio</interface> <vnic_profile id="456"/> </nic> ' \ https://myengine.example.com/ovirt-engine/api/vms/123/nics
热插拔功能仅支持带有热插拔操作的虚拟机操作系统。操作系统示例包括:
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 5
- Windows Server 2008 和
- Windows Server 2003
表 6.863. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.275.2. 列出 GET
返回虚拟机的 NIC 列表。
NIC 返回列表的顺序不受保证。
6.275.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.275.2.2. Max
设置要返回的最大 NIC 数。如果没有指定,则会返回所有 NIC。
6.276. VmNumaNode
表 6.865. 方法概述
名称 | 概述 |
---|---|
| |
| 删除虚拟 NUMA 节点. |
| 更新虚拟 NUMA 节点. |
6.276.1. 获取 GET
表 6.866. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.276.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.276.2. 删除 DELETE
删除虚拟 NUMA 节点.
删除虚拟 NUMA 节点的示例:
DELETE /ovirt-engine/api/vms/123/numanodes/456
首先需要从最高索引中删除 numa 节点。
表 6.867. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.276.3. 更新 PUT
更新虚拟 NUMA 节点.
将虚拟 NUMA 节点固定到主机上的物理 NUMA 节点的示例:
PUT /ovirt-engine/api/vms/123/numanodes/456
请求正文应包含以下内容:
<vm_numa_node> <numa_node_pins> <numa_node_pin> <index>0</index> </numa_node_pin> </numa_node_pins> </vm_numa_node>
表 6.868. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out |
6.277. VmNumaNodes
表 6.869. 方法概述
名称 | 概述 |
---|---|
| 为虚拟机创建新的虚拟 NUMA 节点。 |
| 列出虚拟机的虚拟 NUMA 节点. |
6.277.1. 添加 POST
为虚拟机创建新的虚拟 NUMA 节点。
创建 NUMA 节点的示例:
POST /ovirt-engine/api/vms/c7ecd2dc/numanodes Accept: application/xml Content-type: application/xml
请求正文可包含以下内容:
<vm_numa_node> <cpu> <cores> <core> <index>0</index> </core> </cores> </cpu> <index>0</index> <memory>1024</memory> <numa_tune_mode>strict</numa_tune_mode> </vm_numa_node>
表 6.870. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.277.2. 列出 GET
列出虚拟机的虚拟 NUMA 节点.
NUMA 节点返回列表的顺序不受保证。
表 6.871. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大节点数。 | |
| out |
6.277.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.277.2.2. Max
设置要返回的最大节点数。如果没有指定,则返回所有节点。
6.278. VmPool
用于管理虚拟机池的服务。
表 6.872. 方法概述
名称 | 概述 |
---|---|
| 此操作将在虚拟机池中分配虚拟机。 |
| 获取虚拟机池。 |
| 删除虚拟机池。 |
| 更新虚拟机池。 |
6.278.1. assignvm POST
此操作将在虚拟机池中分配虚拟机。
POST /ovirt-engine/api/vmpools/123/allocatevm
allocate 虚拟机操作不执行任何特定于操作的参数,因此请求正文应包含空 操作
:
<action/>
表 6.873. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行分配。 |
6.278.2. 获取 GET
获取虚拟机池。
GET /ovirt-engine/api/vmpools/123
您将获得如下 XML 响应:
<vm_pool id="123"> <actions>...</actions> <name>MyVmPool</name> <description>MyVmPool description</description> <link href="/ovirt-engine/api/vmpools/123/permissions" rel="permissions"/> <max_user_vms>1</max_user_vms> <prestarted_vms>0</prestarted_vms> <size>100</size> <stateful>false</stateful> <type>automatic</type> <use_latest_template_version>false</use_latest_template_version> <cluster id="123"/> <template id="123"/> <vm id="123">...</vm> ... </vm_pool>
表 6.874. 参数摘要
6.278.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.278.3. 删除 DELETE
删除虚拟机池。
DELETE /ovirt-engine/api/vmpools/123
表 6.875. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.278.4. 更新 PUT
更新虚拟机池。
PUT /ovirt-engine/api/vmpools/123
创建虚拟机池后,可以更新 name
、
description
、size、prestarted
属性。
_vms
和 max_user_vms
<vmpool> <name>VM_Pool_B</name> <description>Virtual Machine Pool B</description> <size>3</size> <prestarted_vms>1</size> <max_user_vms>2</size> </vmpool>
表 6.876. 参数摘要
6.278.4.1. seal
指定在创建池之后为池创建的虚拟机应密封。
如果提供此可选参数,且其值为 true
,则为池创建的虚拟机将在创建后密封。如果值为 'false',则不会密封虚拟机。如果没有提供该参数,则虚拟机将被密封,只有在从封装的模板中创建它们时,其客户机操作系统不会设置为 Windows。这个参数只影响更新池时创建的虚拟机。
例如,要更新虚拟机池并密封创建的其他虚拟机,请发送如下请求:
PUT /ovirt-engine/api/vmpools/123?seal=true
使用以下机构:
<vmpool> <name>VM_Pool_B</name> <description>Virtual Machine Pool B</description> <size>7</size> </vmpool>
6.279. VmPools
提供对虚拟机池的读写访问权限。
表 6.877. 方法概述
名称 | 概述 |
---|---|
| 创建新的虚拟机池。 |
| 获取可用虚拟机池的列表。 |
6.279.1. 添加 POST
创建新的虚拟机池。
新池需要 name
、cluster和
template
属性。使用 id
或 name
嵌套属性识别集群和模板:
POST /ovirt-engine/api/vmpools
使用以下机构:
<vmpool> <name>mypool</name> <cluster id="123"/> <template id="456"/> </vmpool>
6.279.1.1. seal
指定在创建池之后为池创建的虚拟机应密封。
如果提供此可选参数,且其值为 true
,则为池创建的虚拟机将在创建后密封。如果值为 'false',则不会密封虚拟机。如果没有提供该参数,则虚拟机将被密封,只有在从封装的模板中创建它们时,其客户机操作系统不会设置为 Windows。这个参数只影响创建池时创建的虚拟机。
例如,要创建包含 5 个虚拟机的虚拟机池并密封虚拟机,请发送如下请求:
POST /ovirt-engine/api/vmpools?seal=true
使用以下机构:
<vmpool> <name>mypool</name> <cluster id="123"/> <template id="456"/> <size>5</size> </vmpool>
6.279.2. 列出 GET
获取可用虚拟机池的列表。
GET /ovirt-engine/api/vmpools
您将收到以下响应:
<vm_pools> <vm_pool id="123"> ... </vm_pool> ... </vm_pools>
只有 search
参数中包含 sortby
子句时,才会保证池返回列表的顺序。
表 6.879. 参数摘要
6.279.2.1. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.279.2.2. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.279.2.3. Max
设置要返回的最大池数。如果未指定此值,则返回所有池。
6.280. VmReportedDevice
表 6.880. 方法概述
名称 | 概述 |
---|---|
|
6.280.1. 获取 GET
表 6.881. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.280.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.281. VmReportedDevices
表 6.882. 方法概述
名称 | 概述 |
---|---|
| 返回虚拟机报告的设备列表。 |
6.281.1. 列出 GET
返回虚拟机报告的设备列表。
无法保证返回的设备列表的顺序。
表 6.883. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大设备数。 | |
| out |
6.281.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.281.1.2. Max
设置要返回的最大设备数。如果没有指定,则返回所有设备。
6.282. VmSession
表 6.884. 方法概述
名称 | 概述 |
---|---|
|
6.282.1. 获取 GET
6.282.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.283. VmSessions
提供有关虚拟机用户会话的信息。
表 6.886. 方法概述
名称 | 概述 |
---|---|
| 列出此虚拟机的所有用户会话。 |
6.283.1. 列出 GET
列出此虚拟机的所有用户会话。
例如,要检索虚拟机的会话信息 123
发送如下请求:
GET /ovirt-engine/api/vms/123/sessions
响应正文将包含类似如下的内容:
<sessions> <session href="/ovirt-engine/api/vms/123/sessions/456" id="456"> <console_user>true</console_user> <ip> <address>192.168.122.1</address> </ip> <user href="/ovirt-engine/api/users/789" id="789"/> <vm href="/ovirt-engine/api/vms/123" id="123"/> </session> ... </sessions>
返回的会话列表的顺序不受保证。
6.283.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.283.1.2. Max
设置返回的最大会话数。如果未指定,将返回所有会话。
6.284. VmWatchdog
管理虚拟机上监视的服务。
表 6.888. 方法概述
名称 | 概述 |
---|---|
| 返回有关 watchdog 的信息。 |
| 从虚拟机中删除 watchdog。 |
| 更新有关 watchdog 的信息。 |
6.284.1. 获取 GET
返回有关 watchdog 的信息。
6.284.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.284.1.2. watchdog
有关 watchdog 的信息。
这些信息包括 模型
元素、操作
元素以及对虚拟机的引用。它可能类似如下:
<watchdogs> <watchdog href="/ovirt-engine/api/vms/123/watchdogs/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"> <vm href="/ovirt-engine/api/vms/123" id="123"/> <action>poweroff</action> <model>i6300esb</model> </watchdog> </watchdogs>
6.284.2. 删除 DELETE
从虚拟机中删除 watchdog。
例如,要从虚拟机中删除 watchdog,请发送如下请求:
DELETE /ovirt-engine/api/vms/123/watchdogs/00000000-0000-0000-0000-000000000000
表 6.890. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.284.3. 更新 PUT
更新有关 watchdog 的信息。
您可以使用 操作
和 模型
元素来更新信息。
例如,要更新 watchdog,请发送类似如下的请求:
PUT /ovirt-engine/api/vms/123/watchdogs <watchdog> <action>reset</action> </watchdog>
使用响应正文:
<watchdog href="/ovirt-engine/api/vms/123/watchdogs/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"> <vm href="/ovirt-engine/api/vms/123" id="123"/> <action>reset</action> <model>i6300esb</model> </watchdog>
6.284.3.1. watchdog
有关 watchdog 的信息。
请求数据必须至少包含 模型
和操作元素 之一
。响应数据包含有关更新的 watchdog 的完整信息。
6.285. VmWatchdogs
列出虚拟机的监视.
表 6.892. 方法概述
名称 | 概述 |
---|---|
| 将新的 watchdog 添加到虚拟机。 |
| 虚拟机的 watchdogs 列表。 |
6.285.1. 添加 POST
将新的 watchdog 添加到虚拟机。
例如,要将 watchdog 添加到虚拟机中,请发送如下请求:
POST /ovirt-engine/api/vms/123/watchdogs <watchdog> <action>poweroff</action> <model>i6300esb</model> </watchdog>
使用响应正文:
<watchdog href="/ovirt-engine/api/vms/123/watchdogs/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"> <vm href="/ovirt-engine/api/vms/123" id="123"/> <action>poweroff</action> <model>i6300esb</model> </watchdog>
表 6.893. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 有关 watchdog 的信息。 |
6.285.1.1. watchdog
有关 watchdog 的信息。
请求数据必须包含 模型
元素(如 i6300esb
)和 action
元素( none、re
reset
、poweroff
、dump
、pause
)。响应数据还包含对添加的 watchdog 和虚拟机的引用。
6.285.2. 列出 GET
虚拟机的 watchdogs 列表。
返回的 watchdogs 列表的顺序不受保证。
表 6.894. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大 watchdogs 数。 | |
| out | 有关 watchdog 的信息。 |
6.285.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.285.2.2. Max
设置要返回的最大 watchdogs 数。如果未指定,则返回所有 watchdogs。
6.285.2.3. watchdogs
有关 watchdog 的信息。
这些信息包括 模型
元素、操作
元素以及对虚拟机的引用。它可能类似如下:
<watchdogs> <watchdog href="/ovirt-engine/api/vms/123/watchdogs/00000000-0000-0000-0000-000000000000" id="00000000-0000-0000-0000-000000000000"> <vm href="/ovirt-engine/api/vms/123" id="123"/> <action>poweroff</action> <model>i6300esb</model> </watchdog> </watchdogs>
6.286. VM
表 6.895. 方法概述
名称 | 概述 |
---|---|
| 创建新虚拟机. |
| 返回系统虚拟机的列表。 |
6.286.1. 添加 POST
创建新虚拟机.
可以通过不同的方式创建虚拟机:
- 从模板.在这种情况下,必须提供模板的标识符或名称。例如,使用普通 shell 脚本和 XML:
#!/bin/sh -ex url="https://engine.example.com/ovirt-engine/api" user="admin@internal" password="..." curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --user "${user}:${password}" \ --request POST \ --header "Version: 4" \ --header "Content-Type: application/xml" \ --header "Accept: application/xml" \ --data ' <vm> <name>myvm</name> <template> <name>Blank</name> </template> <cluster> <name>mycluster</name> </cluster> </vm> ' \ "${url}/vms"
- 从快照.在这种情况下,必须提供快照的标识符。例如,使用普通的 shel 脚本和 XML:
#!/bin/sh -ex url="https://engine.example.com/ovirt-engine/api" user="admin@internal" password="..." curl \ --verbose \ --cacert /etc/pki/ovirt-engine/ca.pem \ --user "${user}:${password}" \ --request POST \ --header "Content-Type: application/xml" \ --header "Accept: application/xml" \ --data ' <vm> <name>myvm</name> <snapshots> <snapshot id="266742a5-6a65-483c-816d-d2ce49746680"/> </snapshots> <cluster> <name>mycluster</name> </cluster> </vm> ' \ "${url}/vms"
从模板或快照创建虚拟机时,明确指明在哪个存储域中为虚拟机创建磁盘通常很有用。如果从模板创建虚拟机,这可以通过一组代表映射的 disk_attachment
元素实现:
<vm> ... <disk_attachments> <disk_attachment> <disk id="8d4bd566-6c86-4592-a4a7-912dbf93c298"> <storage_domains> <storage_domain id="9cb6cb0a-cf1d-41c2-92ca-5a6d665649c9"/> </storage_domains> </disk> <disk_attachment> </disk_attachments> </vm>
从快照创建虚拟机时,此磁盘集合略有不同,它使用 image_id
属性而不是 id
。
<vm> ... <disk_attachments> <disk_attachment> <disk> <image_id>8d4bd566-6c86-4592-a4a7-912dbf93c298</image_id> <storage_domains> <storage_domain id="9cb6cb0a-cf1d-41c2-92ca-5a6d665649c9"/> </storage_domains> </disk> <disk_attachment> </disk_attachments> </vm>
可以在 XML 描述中指定额外的虚拟机参数,例如,桌面类型的虚拟机,RAM
为 2 GiB,其他描述可以添加发送请求正文,如下所示:
<vm> <name>myvm</name> <description>My Desktop Virtual Machine</description> <type>desktop</type> <memory>2147483648</memory> ... </vm>
可引导 CDROM 设备可以设置为如下:
<vm> ... <os> <boot dev="cdrom"/> </os> </vm>
要从 CDROM 启动,您首先需要插入磁盘,如 CDROM 服务中所述。然后,可以使用 the os.boot.devices
属性从该 CDROM 引导:
<vm> ... <os> <boot> <devices> <device>cdrom</device> </devices> </boot> </os> </vm>
在所有情况下,创建虚拟机的集群的名称或标识符都是必须的。
表 6.896. 参数摘要
6.286.1.1. auto_pinning_policy
指定是否以及如何应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后会将其移除。请使用 POST 后跟 添加操作。
请求的示例:
POST /ovirt-engine/api/vms?auto_pinning_policy=existing/adjust
这样的请求正文:
<vm> <name>myvm<name> <template> <name>mytemplate<name> </template> <cluster> <name>mycluster<name> </cluster> <placement_policy> <hosts> <host> <name>myhost</name> </host> </hosts> </placement_policy> </vm>
6.286.1.2. clone
指定虚拟机是否应该独立于模板。
默认情况下,从模板创建虚拟机时,虚拟机的磁盘取决于模板的磁盘,它们使用写入机制时复制,以便仅模板的不同占用实际存储空间。如果指定此参数且值为 true
,则创建的虚拟机的磁盘将被 克隆 并独立于模板。例如,要创建独立虚拟机,请发送如下请求:
POST /ovirt-engine/vms?clone=true
这样的请求正文:
<vm> <name>myvm<name> <template> <name>mytemplate<name> </template> <cluster> <name>mycluster<name> </cluster> </vm>
此参数为 true
时,也会复制模板的权限,如使用 clone_permissions=true
时。
6.286.1.3. clone_permissions
指定模板的权限是否应复制到虚拟机。
如果提供了此可选参数,其值为 true
,则模板的权限(仅直接权限,而不是继承的值)将复制到创建的虚拟机。例如,要从 mytemplate
模板创建虚拟机复制其权限,请发送类似如下的请求:
POST /ovirt-engine/api/vms?clone_permissions=true
这样的请求正文:
<vm> <name>myvm<name> <template> <name>mytemplate<name> </template> <cluster> <name>mycluster<name> </cluster> </vm>
6.286.1.4. filter
仅与管理员用户相关。指明是否为此用户在创建的虚拟机上分配 UserVmManager 角色。这将允许用户稍后访问虚拟机,就像他是非管理员用户一样,增强其管理员权限(通过提供 filter=true)。
admin-as-user(这意味着在现有虚拟机上提供 filter=true)POST 请求将失败,除非管理员之前以用户的身份创建了虚拟机(源自 filter=true)。
6.286.1.5. seal
指定在创建虚拟机后是否应密封虚拟机。
如果提供此可选参数,其值为 true
,则虚拟机将在创建后密封。如果值为 'false',则虚拟机不会被密封。如果没有提供该参数,则虚拟机将被密封,只有在从封装的模板中创建它时,其客户机操作系统不会设置为 Windows。
例如,要从 mytemplate
模板创建虚拟机并封装它,请发送如下请求:
POST /ovirt-engine/api/vms?seal=true
这样的请求正文:
<vm> <name>myvm<name> <template> <name>mytemplate<name> </template> <cluster> <name>mycluster<name> </cluster> </vm>
6.286.2. 列出 GET
返回系统虚拟机的列表。
只有 search
参数中包含 sortby
子句时,才会保证虚拟机返回列表的顺序。
表 6.897. 参数摘要
6.286.2.1. all_content
指明是否应将虚拟机的所有属性包含在响应中。
默认情况下排除以下属性:
-
console
-
initial.configuration.data
- 描述虚拟机的 OVF 文档。 -
rng_source
-
soundcard
-
virtio_scsi
例如,要检索虚拟机的完整表示法,发送如下请求:
GET /ovirt-engine/api/vms?all_content=true
不包含这些属性的原因是性能:它们很少被使用,需要额外查询数据库。因此,仅当真正需要时才尝试使用此参数。
6.286.2.2. case_sensitive
指明是否应该在考虑大小写的情况下使用 search
参数执行搜索。默认值为 true
,这意味着会考虑这个情况。如果要搜索忽略大小写的操作,将其设置为 false
。
6.286.2.3. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.286.2.4. ovf_as_ova
指明结果是否应该公开显示在该虚拟机的 OVA 文件中时的 OVF。描述虚拟机的 OVF 文档。这个参数仅在设置了 all_content=True 时才有效。OVF 将显示在 initial .configuration.data 中
。
例如:
GET /vms?all_content=true&ovf_as_ova=true
6.287. VnicProfile
此服务管理 vNIC 配置集。
表 6.898. 方法概述
名称 | 概述 |
---|---|
| 检索 vNIC 配置集的详细信息。 |
| 删除 vNIC 配置集。 |
| 更新 vNIC 配置集的详情。 |
6.287.1. 获取 GET
检索 vNIC 配置集的详细信息。
表 6.899. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| out |
6.287.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.287.2. 删除 DELETE
删除 vNIC 配置集。
表 6.900. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.287.3. 更新 PUT
更新 vNIC 配置集的详情。
表 6.901. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行更新。 | |
| in/Out | 正在更新的 vNIC 配置集。 |
6.288. VnicProfiles
此服务管理所有 vNIC 配置集的集合。
表 6.902. 方法概述
名称 | 概述 |
---|---|
| 添加 vNIC 配置集。 |
| 列出所有 vNIC 配置文件。 |
6.288.1. 添加 POST
添加 vNIC 配置集。
例如,将 vNIC 配置集 123
添加到网络 456
将请求发送到:
POST /ovirt-engine/api/networks/456/vnicprofiles
使用以下机构:
<vnic_profile id="123"> <name>new_vNIC_name</name> <pass_through> <mode>disabled</mode> </pass_through> <port_mirroring>false</port_mirroring> </vnic_profile>
请注意,每个 VNIC 配置集都有一个默认的网络过滤器。有关如何计算默认网络过滤器的更多详细信息,请参阅 NetworkFilters 中的文档。
为外部网络自动创建的 vNIC 配置集将不使用网络过滤器。
创建新 VNIC 配置集的输出取决于给定的正文参数。如果未指定网络过滤器,则将配置默认网络过滤器。例如:
<vnic_profile href="/ovirt-engine/api/vnicprofiles/123" id="123"> <name>new_vNIC_name</name> <link href="/ovirt-engine/api/vnicprofiles/123/permissions" rel="permissions"/> <pass_through> <mode>disabled</mode> </pass_through> <port_mirroring>false</port_mirroring> <network href="/ovirt-engine/api/networks/456" id="456"/> <network_filter href="/ovirt-engine/api/networkfilters/789" id="789"/> </vnic_profile>
如果给出了空的网络过滤器,则不会为特定的 VNIC 配置集配置网络过滤器,而不考虑 VNIC 配置集的默认网络过滤器。例如:
<vnic_profile> <name>no_network_filter</name> <network_filter/> </vnic_profile>
如果给出了特定的有效网络过滤器 ID,则 VNIC 配置集将使用给定网络过滤器进行配置,而不考虑 VNIC 配置集的默认网络过滤器。例如:
<vnic_profile> <name>user_choice_network_filter</name> <network_filter id= "0000001b-001b-001b-001b-0000000001d5"/> </vnic_profile>
表 6.903. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out | 正在添加的 vNIC 配置集。 |
6.288.2. 列出 GET
列出所有 vNIC 配置文件。
vNIC 配置集返回列表的顺序不受保证。
表 6.904. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明应遵循哪些内联链接。 | |
| in | 设置要返回的最大配置集数。 | |
| out | 所有 vNIC 配置集列表。 |
6.288.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.288.2.2. Max
设置要返回的最大配置集数。如果没有指定,则返回所有配置集。
6.289. weight
表 6.905. 方法概述
名称 | 概述 |
---|---|
| |
|
6.289.1. 获取 GET
6.289.1.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.289.2. 删除 DELETE
表 6.907. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in | 指明是否应异步执行移除。 |
6.290. weight
表 6.908. 方法概述
名称 | 概述 |
---|---|
| 向指定用户定义的调度策略添加权重。 |
| 返回权重列表。 |
6.290.1. 添加 POST
向指定用户定义的调度策略添加权重。
表 6.909. 参数摘要
名称 | 类型 | 方向 | 概述 |
---|---|---|---|
| in/Out |
6.290.2. 列出 GET
返回权重列表。
返回的权重列表的顺序不保证。
表 6.910. 参数摘要
6.290.2.1. follow
指明应遵循哪些内联链接。这些链接引用的对象将在当前请求中获取。详情请查看此处。
6.290.2.2. Max
设置返回的最大权重数。如果没有指定,则返回所有权重。
第 7 章 类型
本节枚举 API 中所有可用的数据类型。
7.1. AccessProtocol 枚举
表示 Gluster 卷支持的访问协议。Gluster
和 nfs
默认启用。
表 7.1. 值概述
名称 | 概述 |
---|---|
| CIFS 访问协议. |
| Gluster 访问协议. |
| NFS 访问协议. |
7.2. Action struct
表 7.2. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| 包含有关此对象的注释的免费文本。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| 以纯文本格式人类可读的描述。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| 唯一标识符。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| 纯文本中的人类可读名称。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
7.3. AffinityGroup struct
关联性组表示一组具有定义关系的虚拟机。
表 7.3. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指定关联性组是否中断。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 指定 affinity 组是使用硬的还是软强制来应用到属于该关联性组成员的虚拟机。 | |
| 指定在属于此关联性组成员的虚拟机和主机之间应用的关联性规则。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 指定关联性组是对属于该关联性组的成员的虚拟机应用正关联性还是负关联性。 | |
| 关联性组的优先级。 | |
| 指定应用于属于此关联性组成员的虚拟机的关联性规则。 |
7.3.1. broken
指定关联性组是否中断。当其任何规则不满足时,关联性组被视为被破坏。broken 字段是引擎中的 computed 字段。因此,此字段仅适用于 GET 请求。
7.3.2. Enforcing
指定 affinity 组是使用硬的还是软强制来应用到属于该关联性组成员的虚拟机。
请注意,此属性自引擎版本 4.1 起已弃用,并将在以后的中删除。使用来自现在的 vms_rule
属性。
7.3.3. 正
指定关联性组是对属于该关联性组的成员的虚拟机应用正关联性还是负关联性。
请注意,此属性自引擎版本 4.1 起已弃用,并将在以后的中删除。使用来自现在的 vms_rule
属性。
表 7.4. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对关联性组所应用的群集的引用。 | |
| 分配给此关联性组的所有主机标签的列表。 | |
| 分配给此关联性组的所有主机的列表。 | |
| 分配给此关联性组的所有虚拟机标签的列表。 | |
| 分配给此关联性组的所有虚拟机的列表。 |
7.4. AffinityLabelst ruct
关联性标签可能会影响虚拟机调度。它最常用于从可用的主机创建子集群。
表 7.5. 属性概述
7.4.1. has_implicit_affinity_group
此属性启用标签的旧行为。如果为 true
,该标签也会充当一个正强制虚拟机到主机关联性组。
此参数仅用于兼容版本 4.3 或更低的集群。
7.4.2. read_only
read_only
属性标记无法修改的标签。在列出内部生成的标签时,通常会出现这种情况。
7.5. AffinityRule struct
关联性组的通用规则定义.每种支持的资源类型(虚拟机、主机)都由单独的规则控制。这允许表达如下规则:定义的虚拟机之间没有关联性,但定义的虚拟机和虚拟主机之间没有紧密关联。
表 7.7. 属性概述
7.5.1. enabled
指定关联性组是否使用此规则。此属性在创建过程中是可选的,在未提供时被视为 true
。如果此属性未提供给更新操作,则如果也设置了 AffinityGroup 正
属性,则被视为 true
。当缺少 已启用
和 正
属性时,启用
后端的值将会保留。
7.5.2. Enforcing
指定 affinity 组是使用硬的还是软强制机制,应用到此规则控制的资源。如果启用了规则,并且在规则禁用时忽略该参数,则此参数是必需的。
7.5.3. 正
指定关联性组是对此规则控制的资源应用正关联性还是负关联。如果启用了规则,并且在规则禁用时忽略该参数,则此参数是必需的。
7.6. Agent struct
键入代表隔离代理。
表 7.8. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 隔离代理地址. | |
| 包含有关此对象的注释的免费文本。 | |
| 指定代理应同时还是按顺序使用。 | |
| 以纯文本格式人类可读的描述。 | |
| 指定是否应加密选项。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 隔离代理选项(以键值对分隔的组合)。 | |
| 此代理的顺序(如果与其他代理一起使用)。 | |
| 隔离代理密码. | |
| 隔离代理端口. | |
| 隔离代理类型。 | |
| 隔离代理用户名. |
表 7.9. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对主机服务的引用. |
7.6.1. 主机
对主机服务的引用.每个隔离代理都属于一个主机。
7.7. AgentConfiguration struct
弃用的代理配置设置.
忽略,因为自 Red Hat Virtualization 4.4.0 起,OpenStack Neutron 代理的部署已被丢弃。OpenStack 主机的部署可以由 Red Hat OpenStack Platform Director 或 TripleO 进行。
表 7.10. 属性概述
7.7.1. network_mappings
不建议使用,因为 Open vSwitch 接口映射由 Red Hat Virtualization 4.2.0 之后的 VDSM 管理。
7.8. api struct
此类型包含 API 根服务返回的信息。
要获取该信息,请发送类似如下的请求:
GET /ovirt-engine/api
结果如下:
<api> <link rel="hosts" href="/ovirt-engine/api/hosts"/> <link rel="vms" href="/ovirt-engine/api/vms"/> ... <product_info> <name>oVirt Engine</name> <vendor>ovirt.org</vendor> <version> <build>0</build> <full_version>4.1.0_master</full_version> <major>4</major> <minor>1</minor> <revision>0</revision> </version> </product_info> <special_objects> <link rel="templates/blank" href="..."/> <link rel="tags/root" href="..."/> </special_objects> <summary> <vms> <total>10</total> <active>3</active> </vms> <hosts> <total>2</total> <active>2</active> </hosts> <users> <total>8</total> <active>2</active> </users> <storage_domains> <total>2</total> <active>2</active> </storage_domains> </summary> <time>2016-12-12T12:22:25.866+01:00</time> </api>
表 7.11. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 有关产品的信息,如产品名称、供应商名称和版本。 | |
| 引用特殊对象,如空白模板和标签层次结构的根目录。 | |
| 包含相关对象总数的摘要,如虚拟机、主机和存储域。 | |
| 生成此信息的日期与时间。 |
7.8.1. authenticated_user
对经过身份验证的用户的引用。
已验证身份的用户是验证其凭据以接受当前请求的用户。在系统的当前版本中,经过身份验证的用户和有效用户始终相同。在未来,当引入对用户模仿的支持时,它们可能会有所不同。
7.8.2. effective_user
引用有效用户.
有效的用户是在当前请求期间应用其权限的用户。在系统的当前版本中,经过身份验证的用户和有效用户始终相同。在未来,当引入对用户模仿的支持时,它们可能会有所不同。
7.9. ApiSummary struct
包含相关对象总数的摘要,如虚拟机、主机和存储域。
表 7.13. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 主机摘要. | |
| 存储域摘要. | |
| 用户摘要. | |
| 虚拟机摘要. |
7.10. ApiSummaryItem struct
此类型包含 API 概述的项。每个项目包含某种对象的总数和活动数量。
7.11. Application struct
代表虚拟机上安装的应用。如果您在虚拟机操作系统上部署应用程序,客户机代理会报告应用程序。
要获取该信息,请发送类似如下的请求:
GET /ovirt-engine/api/vms/123/applications/456
结果如下:
<application href="/ovirt-engine/api/vms/123/applications/456" id="456"> <name>application-test-1.0.0-0.el7</name> <vm href="/ovirt-engine/api/vms/123" id="123"/> </application>
表 7.15. 属性概述
表 7.16. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对安装应用程序的虚拟机的引用。 |
7.12. 架构 枚举
表 7.17. 值概述
名称 | 概述 |
---|---|
| AARCH64 CPU 架构。 |
| |
| IBM S390X CPU 架构. |
| |
|
7.12.1. s390x
IBM S390X CPU 架构.
需要为在 S390X 架构中运行的虚拟机和群集指定。
请注意,S390 通常用于明确描述一般计算机架构或其 31 位变体。S390X 专门用于 64 位体系结构,它与其他架构一致,如 X86_64 或 PPC64。
7.13. AuthorizedKey struct
表 7.18. 属性概述
表 7.19. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.14. AutoNumaStatus enum
表 7.20. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.15. AutoPinningPolicy enum
输入,键入 代表 CPU 和 NUMA 固定策略是什么。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后会将其移除。请使用 CpuPinningPolicy。
表 7.21. 值概述
名称 | 概述 |
---|---|
| CPU 和 NUMA 固定将由专用主机配置。 |
| 不计算 CPU 和 NUMA 固定。 |
| CPU 和 NUMA 固定将由虚拟机当前状态配置。 |
7.15.1. 调整
CPU 和 NUMA 固定将由专用主机配置。
目前,其含义在于 CPU 和 NUMA 固定将使用专用的主机 CPU 拓扑。虚拟机配置将自动设置为适合主机以获得最高性能。
7.15.2. disabled
不计算 CPU 和 NUMA 固定。
目前,其含义是 CPU 和 NUMA 固定不会计算到当前的虚拟机配置。默认情况下,设置了 1 个套接字、1 个核心和 1 个线程的虚拟机拓扑。
7.15.3. existing
CPU 和 NUMA 固定将由虚拟机当前状态配置。
目前,其含义在于 CPU 和 NUMA 固定将使用提供的虚拟机 CPU 拓扑。如果没有指定 CPU 拓扑,它将使用引擎默认值(带有 1 个插槽、1 个核心和 1 线程的虚拟机拓扑)。
7.16. Backup struct
表 7.22. 属性概述
7.16.1. to_checkpoint_id
此备份操作创建的检查点 ID。在下一个增量备份中,这个 id 可用作 fromCheckpointId
。
7.17. BackupPhase enum
表 7.24. 值概述
名称 | 概述 |
---|---|
| 最后一个阶段,表示备份失败。 |
| 在此阶段,备份调用 'stop_backup' 操作,以完成备份并解锁相关磁盘。 |
| 备份的初始阶段。 |
| 该阶段表示相关磁盘的备份 URL 已就绪,可使用映像传输进行下载。 |
| 该阶段是在 vdsm/libvirt 中调用 'start_backup' 操作前设置的(这意味着应该调用 'stop_backup' 以完成流)。 |
| 最后一个阶段,表示备份已成功完成。 |
7.17.1. 初始化
备份的初始阶段。它在实体创建时设置。
7.18. Balance struct
表 7.25. 属性概述
表 7.26. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.19. bios struct
7.20. BiosType enum
键入代表芯片组和 BIOS 类型组合。
表 7.28. 值概述
名称 | 概述 |
---|---|
| 使用集群范围的默认值。 |
| 使用 SeaBIOS 的 i440fx 芯片组. |
| 使用 OVMF(UEFI)BIOS 的 q35 芯片组. |
| 使用 SeaBIOS 的 q35 芯片组. |
| 启用了 SecureBoot 的 OVMF(UEFI)BIOS 的 q35 芯片组. |
7.20.1. cluster_default
使用集群范围的默认值。
这个值不能用于集群。
7.20.2. i440fx_sea_bios
使用 SeaBIOS 的 i440fx 芯片组.
对于非 x86 架构,这是唯一允许的非默认值。
7.21. BlockStatisticst ruct
表 7.29. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.22. Bonding struct
表示网络接口绑定.
表 7.30. 属性概述
7.22.1. ad_partner_mac
在模式 4 中合作伙伴绑定的 ad_partner_mac
属性。绑定模式 4 是 802.3ad 标准,也称为动态链路聚合。如需更多信息,请参阅维基百科和 演示。ad_partner_mac
是绑定的另一端系统(switch)的 MAC 地址。此参数为只读。设置它对绑定没有影响。它从绑定所在的 系统上的 /sys/class/net/bondX/bonding/ad_partner_mac
文件检索。
7.22.2. 选项
绑定接口的选项元素列表。每一选项包含属性名称和值属性。仅在添加绑定接口时才需要。
7.22.3. slaves
绑定接口的从 NIC 列表。仅在添加绑定接口时才需要。
表 7.31. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
绑定(active-backup、 |
7.22.4. active_slave
绑定(active-backup、slave 和 balance-tlb)的 active_slav
e 属性。详情请查看 Linux 文档。此参数为只读。设置它对绑定没有影响。它从绑定所在的 系统中的 /sys/class/net/bondX/bonding/active_slave
文件中检索。
例如:
GET /ovirt-engine/api/hosts/123/nics/321
将响应:
<host_nic href="/ovirt-engine/api/hosts/123/nics/321" id="321"> ... <bonding> <slaves> <host_nic href="/ovirt-engine/api/hosts/123/nics/456" id="456" /> ... </slaves> <active_slave href="/ovirt-engine/api/hosts/123/nics/456" id="456" /> </bonding> ... </host_nic>
7.23. Bookmark struct
代表系统中的书签。
7.24. Boot struct
配置虚拟机的启动序列。
表 7.33. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 引导设备的顺序列表。 |
7.24.1. devices
引导设备的顺序列表。虚拟机将尝试以给定的顺序从给定启动设备启动。
7.25. BootDevice enum
表示虚拟机可从其启动的设备类型。
表 7.34. 值概述
名称 | 概述 |
---|---|
| 从 CD-ROM 启动. |
| 从硬盘驱动器引导. |
| 使用 PXE 从网络引导。 |
7.25.1. cdrom
从 CD-ROM 启动.CD-ROM 可以从 ISO 域中可用的 ISO 文件列表中选择,附加到虚拟机所属的 ata 中心。
7.25.2. network
使用 PXE 从网络引导。必须在虚拟机所连接的网络上配置 PXE。
7.26. BootMenu struct
表示虚拟机的引导菜单配置。
表 7.35. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 是否为此虚拟机(或模板)启用了引导菜单。 |
7.27. BootProtocol enum
定义 NIC 的 IP 地址分配方法的选项。
表 7.36. 值概述
名称 | 概述 |
---|---|
| 无状态地址自动配置. |
| 动态主机配置协议. |
| 没有地址配置。 |
| DHCP 和无状态地址自动配置(SLAAC)。 |
| 静态定义的地址、掩码和网关. |
7.27.1. autoconf
无状态地址自动配置.
机制由 RFC 4862 定义。有关详细信息,请参阅此维基百科文章。
该值仅适用于 IPv6 地址。
7.27.2. dhcp
动态主机配置协议.
7.27.3. poly_dhcp_autoconf
DHCP 和无状态地址自动配置(SLAAC)。
SLAAC 机制由 RFC 4862 定义。如需更多信息,请参阅无状态地址自动配置 文章和 DHCP 文章。
该值仅适用于 IPv6 地址。
7.28. BrickProfileDetail struct
表 7.37. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
表 7.38. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.29. cdrom struct
表 7.39. 属性概述
表 7.40. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.29.1. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.30. 证书 结构
7.31. Checkpoint struct
表 7.42. 属性概述
7.32. CheckpointState enum
表 7.44. 值概述
名称 | 概述 |
---|---|
| 检查点的初始状态。 |
| 当检查点无法再用于增量备份并且应删除(例如,提交至旧虚拟机快照后)时,设置的 INVALID 状态。 |
7.32.1. Created
检查点的初始状态。它在实体创建时设置。
7.33. CloudInit struct
弃用了类型以指定 cloud-init 配置。
此类型已弃用,并由 Initialization 类型内的替代属性替代。详情请查看 cloud_init 属性文档。
表 7.45. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| ||
| ||
| ||
|
7.34. CloudInitNetworkProtocol enum
定义 cloud-init 协议的值。此协议决定 cloud-init 网络参数在传递到虚拟机之前如何格式化,以便 cloud-init 处理。
支持的协议取决于 cloud-init 版本。如需更多信息,请参阅网络配置源
表 7.46. 值概述
名称 | 概述 |
---|---|
| 传统协议. |
| ENI 协议的后续,支持 IPv6 等等。 |
7.34.1. Eni
传统协议.不支持 IPv6。如需更多信息,请参阅网络配置 ENI(Legacy)
7.34.2. openstack_metadata
ENI 协议的后续,支持 IPv6 等等。这是默认值。如需更多信息,请参阅 API: Proxy neutron 配置到客户机实例
7.35. Cluster struct
集群的类型表示法。
集群的 JSON 表示:
{ "cluster" : [ { "ballooning_enabled" : "false", "cpu" : { "architecture" : "x86_64", "type" : "Intel SandyBridge Family" }, "custom_scheduling_policy_properties" : { "property" : [ { "name" : "HighUtilization", "value" : "80" }, { "name" : "CpuOverCommitDurationMinutes", "value" : "2" } ] }, "error_handling" : { "on_error" : "migrate" }, "fencing_policy" : { "enabled" : "true", "skip_if_connectivity_broken" : { "enabled" : "false", "threshold" : "50" }, "skip_if_gluster_bricks_up" : "false", "skip_if_gluster_quorum_not_met" : "false", "skip_if_sd_active" : { "enabled" : "false" } }, "gluster_service" : "false", "firewall_type" : "iptables", "ha_reservation" : "false", "ksm" : { "enabled" : "true", "merge_across_nodes" : "true" }, "memory_policy" : { "over_commit" : { "percent" : "100" }, "transparent_hugepages" : { "enabled" : "true" } }, "migration" : { "auto_converge" : "inherit", "bandwidth" : { "assignment_method" : "auto" }, "compressed" : "inherit", "policy" : { "id" : "00000000-0000-0000-0000-000000000000" } }, "required_rng_sources" : { "required_rng_source" : [ "random" ] }, "switch_type" : "legacy", "threads_as_cores" : "false", "trusted_service" : "false", "tunnel_migration" : "false", "version" : { "major" : "4", "minor" : "1" }, "virt_service" : "true", "data_center" : { "href" : "/ovirt-engine/api/datacenters/123", "id" : "123" }, "mac_pool" : { "href" : "/ovirt-engine/api/macpools/456", "id" : "456" }, "scheduling_policy" : { "href" : "/ovirt-engine/api/schedulingpolicies/789", "id" : "789" }, "actions" : { "link" : [ { "href" : "/ovirt-engine/api/clusters/234/resetemulatedmachine", "rel" : "resetemulatedmachine" } ] }, "name" : "Default", "description" : "The default server cluster", "href" : "/ovirt-engine/api/clusters/234", "id" : "234", "link" : [ { "href" : "/ovirt-engine/api/clusters/234/permissions", "rel" : "permissions" }, { "href" : "/ovirt-engine/api/clusters/234/cpuprofiles", "rel" : "cpuprofiles" }, { "href" : "/ovirt-engine/api/clusters/234/networkfilters", "rel" : "networkfilters" }, { "href" : "/ovirt-engine/api/clusters/234/networks", "rel" : "networks" }, { "href" : "/ovirt-engine/api/clusters/234/affinitygroups", "rel" : "affinitygroups" }, { "href" : "/ovirt-engine/api/clusters/234/glusterhooks", "rel" : "glusterhooks" }, { "href" : "/ovirt-engine/api/clusters/234/glustervolumes", "rel" : "glustervolumes" }, { "href" : "/ovirt-engine/api/clusters/234/enabledfeatures", "rel" : "enabledfeatures" }, { "href" : "/ovirt-engine/api/clusters/234/externalnetworkproviders", "rel" : "externalnetworkproviders" } ] } ] }
表 7.47. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 芯片组和 BIOS 类型组合. | |
| 包含有关此对象的注释的免费文本。 | |
| ||
| 集群的自定义调度策略属性. | |
| 以纯文本格式人类可读的描述。 | |
| ||
| ||
| 可以为群集定义自定义隔离策略。 | |
| 集群的 FIPS 模式。 | |
| 此群集中的主机上要使用的防火墙类型。 | |
| ||
| 调优配置集的名称。 | |
| ||
| 唯一标识符。 | |
| ||
| 日志记录审计日志事件的内存消耗阈值。 | |
| 日志记录审计日志事件的内存消耗阈值类型。 | |
| 此属性不再相关,并且已弃用。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| 此属性不再相关,并且已弃用。 | |
| 来自集群中每个主机的随机数字生成器(RNG)源。 | |
| ||
| ||
| 给定集群中所有网络使用的交换机类型。 | |
| ||
| ||
| ||
| 升级关联标识符。 | |
| 表示升级是否已为集群启动。 | |
| 如果升级正在进行,则升级报告为百分比。 | |
| 集群的兼容性版本。 | |
| ||
| 启用 VNC 加密. |
7.35.1. bios_type
芯片组和 BIOS 类型组合.
该值用作集群中 biosType
设置为 CLUSTER_DEFAULT
的所有虚拟机的默认值。
7.35.2. custom_scheduling_policy_properties
集群的自定义调度策略属性.这些可选属性覆盖由 scheduling_policy
链接指定的调度策略的属性,并且仅适用于此特定集群。
例如,要更新集群的自定义属性,请发送请求:
PUT /ovirt-engine/api/clusters/123
通过请求正文:
<cluster> <custom_scheduling_policy_properties> <property> <name>HighUtilization</name> <value>70</value> </property> </custom_scheduling_policy_properties> </cluster>
使用 custom_scheduling_policy_properties
属性更新操作不会更新 scheduling_policy
链接指定的调度策略属性,它们只会反映在这个特定的集群中。
7.35.3. fencing_policy
可以为群集定义自定义隔离策略。
例如:
PUT /ovirt-engine/api/cluster/123
借助此类请求正文:
<cluster> <fencing_policy> <enabled>true</enabled> <skip_if_sd_active> <enabled>false</enabled> </skip_if_sd_active> <skip_if_connectivity_broken> <enabled>false</enabled> <threshold>50</threshold> </skip_if_connectivity_broken> </fencing_policy> </cluster>
7.35.4. fips_mode
集群的 FIPS 模式。
FIPS 模式代表集群的策略对主机的策略。将检查添加到集群中的主机,以满足集群的 FIPS 模式,使其无法运行(如果它们无法运行)。除非明确提供值,否则默认将新集群初始化为 UNDEFINED
。这个值会自动更改为添加到集群中的第一个主机的 FIPS 模式。
7.35.5. gluster_tuned_profile
调优配置集的名称。
在集群中的所有主机上设置的调优配置集。这不是强制要求,并且仅与带有 Gluster 服务的集群相关。
7.35.6. log_max_memory_used_threshold
日志记录审计日志事件的内存消耗阈值。
对于百分比,如果已用内存超过指定的值,则会记录审计日志事件。为绝对值,当可用内存低于以 MB 为单位指定的值时,会记录审计日志事件。
7.35.7. log_max_memory_used_threshold_type
日志记录审计日志事件的内存消耗阈值类型。
您可以在 'percentage' 和 'absolute_value_in_mb' 之间进行选择。
7.35.8. maintenance_reason_required
此属性不再相关,并且已弃用。默认值为 true,
7.35.9. optional_reason
此属性不再相关,并且已弃用。默认值为 true。
7.35.10. required_rng_sources
来自集群中每个主机的随机数字生成器(RNG)源。
读取时,它会返回隐式 urandom
(用于集群版本 4.1 及更高版本)或 随机
值(用于集群版本 4.0 及更低)以及其他所选 RNG 源。编写时,无法删除隐式 RNG 源 和
随机
RNG 源。
在引擎版本 4.1 之前,管理员完全可以控制所需的随机数字生成器;任何源都可以添加或删除,包括 随机
源。但从版本 4.1 开始,urandom
和 random
source 始终是这个集合的一部分,且无法被删除。
引擎版本 4.1 引入了一个新的 RNG source urandom
,它在兼容版本 4.1 或更高版本的集群中替换 随机
RNG 源。
7.35.11. upgrade_correlation_id
升级关联标识符。使用 将详细说明集群升级的事件与升级本身相关联。
7.35.12. version
集群的兼容性版本。
此集群中的所有主机必须至少支持此兼容性版本。
例如:
GET /ovirt-engine/api/clusters/123
将通过以下方式做出响应:
<cluster> ... <version> <major>4</major> <minor>0</minor> </version> ... </cluster>
要更新兼容性版本,请使用:
PUT /ovirt-engine/api/clusters/123
这样的请求正文:
<cluster> <version> <major>4</major> <minor>1</minor> </version> </cluster>
要更新集群兼容性版本,集群中的所有主机都必须支持新的兼容性版本。
7.35.13. vnc_encryption
启用 VNC 加密.此属性的默认值为 false。
表 7.48. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| 为集群启用的自定义功能。 | |
| 对集群中可用的外部网络供应商的引用。 | |
| ||
| ||
| 对集群使用的 MAC 池的引用。 | |
| ||
| ||
| ||
| ||
| 引用此集群使用的默认调度策略。 |
7.35.14. external_network_providers
对集群中可用的外部网络供应商的引用。
如果支持自动部署外部网络供应商,则引用网络供应商的网络将在集群中的每一主机上可用。只能在添加集群时设置集群的外部网络供应商。在添加主机期间,可以为各个主机覆盖此值。
7.35.15. scheduling_policy
引用此集群使用的默认调度策略。
调度策略属性默认从引用的调度策略获取,但会被此集群的 custom_scheduling_policy_properties
属性中指定的属性覆盖。
7.36. ClusterFeature struct
type 代表一个集群级别可用的额外功能。
表 7.49. 属性概述
表 7.50. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用集群级别。 |
7.37. ClusterLevel struct
描述特定集群级别支持的功能。
表 7.51. 属性概述
表 7.52. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 此集群级别支持的其他功能。 |
7.38. ClusterUpgradeAction enum
集群升级操作的操作类型。
表 7.53. 值概述
名称 | 概述 |
---|---|
| 通过将集群的 upgrade_running 标记标记为 false 来传递升级操作来完成集群升级过程。 |
| 通过将集群的 upgrade_running 标记标记为 true 来传递用于启动集群升级过程的升级操作。 |
| 要传递的升级操作来更新集群升级进度。 |
7.38.1. finish
通过将集群的 upgrade_running 标记标记为 false 来传递升级操作来完成集群升级过程。这应该在集群升级过程结束时使用。
7.38.2. start
通过将集群的 upgrade_running 标记标记为 true 来传递用于启动集群升级过程的升级操作。这应该在集群升级过程开始时使用。
7.38.3. update_progress
要传递的升级操作来更新集群升级进度。这应该象升级一样使用。
7.39. Configuration struct
表 7.54. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 描述虚拟机的文档。 | |
|
7.39.1. data
描述虚拟机的文档。
OVF 文档示例:
<?xml version='1.0' encoding='UTF-8'?> <ovf:Envelope xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1/" xmlns:rasd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_ResourceAllocationSettingData" xmlns:vssd="http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/CIM_VirtualSystemSettingData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ovf:version="3.5.0.0"> <References/> <Section xsi:type="ovf:NetworkSection_Type"> <Info>List of networks</Info> <Network ovf:name="Network 1"/> </Section> <Section xsi:type="ovf:DiskSection_Type"> <Info>List of Virtual Disks</Info> </Section> <Content ovf:id="out" xsi:type="ovf:VirtualSystem_Type"> <CreationDate>2014/12/03 04:25:45</CreationDate> <ExportDate>2015/02/09 14:12:24</ExportDate> <DeleteProtected>false</DeleteProtected> <SsoMethod>guest_agent</SsoMethod> <IsSmartcardEnabled>false</IsSmartcardEnabled> <TimeZone>Etc/GMT</TimeZone> <default_boot_sequence>0</default_boot_sequence> <Generation>1</Generation> <VmType>1</VmType> <MinAllocatedMem>1024</MinAllocatedMem> <IsStateless>false</IsStateless> <IsRunAndPause>false</IsRunAndPause> <AutoStartup>false</AutoStartup> <Priority>1</Priority> <CreatedByUserId>fdfc627c-d875-11e0-90f0-83df133b58cc</CreatedByUserId> <IsBootMenuEnabled>false</IsBootMenuEnabled> <IsSpiceFileTransferEnabled>true</IsSpiceFileTransferEnabled> <IsSpiceCopyPasteEnabled>true</IsSpiceCopyPasteEnabled> <Name>VM_export</Name> <TemplateId>00000000-0000-0000-0000-000000000000</TemplateId> <TemplateName>Blank</TemplateName> <IsInitilized>false</IsInitilized> <Origin>3</Origin> <DefaultDisplayType>1</DefaultDisplayType> <TrustedService>false</TrustedService> <OriginalTemplateId>00000000-0000-0000-0000-000000000000</OriginalTemplateId> <OriginalTemplateName>Blank</OriginalTemplateName> <UseLatestVersion>false</UseLatestVersion> <Section ovf:id="70b4d9a7-4f73-4def-89ca-24fc5f60e01a" ovf:required="false" xsi:type="ovf:OperatingSystemSection_Type"> <Info>Guest Operating System</Info> <Description>other</Description> </Section> <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Info>1 CPU, 1024 Memory</Info> <System> <vssd:VirtualSystemType>ENGINE 3.5.0.0</vssd:VirtualSystemType> </System> <Item> <rasd:Caption>1 virtual cpu</rasd:Caption> <rasd:Description>Number of virtual CPU</rasd:Description> <rasd:InstanceId>1</rasd:InstanceId> <rasd:ResourceType>3</rasd:ResourceType> <rasd:num_of_sockets>1</rasd:num_of_sockets> <rasd:cpu_per_socket>1</rasd:cpu_per_socket> </Item> <Item> <rasd:Caption>1024 MB of memory</rasd:Caption> <rasd:Description>Memory Size</rasd:Description> <rasd:InstanceId>2</rasd:InstanceId> <rasd:ResourceType>4</rasd:ResourceType> <rasd:AllocationUnits>MegaBytes</rasd:AllocationUnits> <rasd:VirtualQuantity>1024</rasd:VirtualQuantity> </Item> <Item> <rasd:Caption>USB Controller</rasd:Caption> <rasd:InstanceId>3</rasd:InstanceId> <rasd:ResourceType>23</rasd:ResourceType> <rasd:UsbPolicy>DISABLED</rasd:UsbPolicy> </Item> </Section> </Content> </ovf:Envelope>
7.40. ConfigurationType enum
配置格式类型.
表 7.55. 值概述
名称 | 概述 |
---|---|
| 标准 OVF 类型的配置类型. |
| 兼容 oVirt 的 OVF 类型的 ConfigurationType. |
7.40.1. OVA
标准 OVF 类型的配置类型.
提供的虚拟机配置符合开放虚拟化格式(OVF)标准。此值应该用于 OVF 配置,该配置从 oVirt 或其他供应商生成的 Open Virtual Appliance(OVA)中提取。请参阅此处了解 OVF 规格。
7.40.2. obf
兼容 oVirt 的 OVF 类型的 ConfigurationType.
提供的虚拟机配置符合 Open Virtualization Format(OVF)的 oVirt 兼容形式。请注意,OVF 的 oVirt 兼容形式可能与其他供应商使用的 OVF 标准有所不同。此值应当用于从存储域获取的 OVF 配置。
7.41. Console struct
串行控制台设备的表示。
表 7.56. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 启用/禁用串行控制台设备。 |
7.42. Core struct
7.43. cpu struct
7.44. CpuMode enum
表 7.59. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.45. CpuPinningPolicy enum
类型代表 CPU 和 NUMA 固定策略。
表 7.60. 值概述
名称 | 概述 |
---|---|
| 虚拟机启动时,引擎将自动计算 CPU 固定,并在虚拟机停止时丢弃。 |
| CPU 固定将被手动配置。 |
| 不会配置 CPU 固定。 |
| CPU 和 NUMA 固定将由专用主机配置。 |
7.45.1. 专用
虚拟机启动时,引擎将自动计算 CPU 固定,并在虚拟机停止时丢弃。
固定是独占的,意味着其他任何虚拟机都无法使用固定物理 CPU。
7.45.2. Manual
CPU 固定将被手动配置。
目前,这意味着 CPU 固定将手动配置至当前虚拟机配置。虚拟机需要固定到至少一个主机。Pinning 在 CPU 配置中提供,使用 CpuTune。
7.45.3. none
不会配置 CPU 固定。
目前,这意味着 CPU 固定不会配置为当前虚拟机配置。默认情况下,虚拟机拓扑被设置为 1 个插槽、1 核和 1 Thread。
7.45.4. resize_and_pin_numa
CPU 和 NUMA 固定将由专用主机配置。
CPU 和 NUMA 固定将使用专用的主机 CPU 拓扑。虚拟机配置将自动设置为适合主机以获得最高性能。
7.46. cpuProfile struct
表 7.61. 属性概述
表 7.62. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.47. CpuTopology struct
7.48. cpuTune struct
表 7.64. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.49. cpuType struct
描述支持的 CPU 类型。
7.50. CreationStatus enum
表 7.66. 值概述
名称 | 概述 |
---|---|
| |
| |
| |
|
7.51. CustomProperty struct
自定义属性表示.
7.52. dataCenter struct
表 7.68. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| ||
| 纯文本中的人类可读名称。 | |
| ||
| ||
| ||
| ||
| 数据中心的兼容性版本。 |
7.52.1. version
数据中心的兼容性版本。
此数据中心中的所有集群必须已设置为至少此兼容性版本。
例如:
GET /ovirt-engine/api/datacenters/123
将响应:
<data_center> ... <version> <major>4</major> <minor>0</minor> </version> ... </data_center>
要更新兼容性版本,请使用:
PUT /ovirt-engine/api/datacenters/123
通过请求正文:
<data_center> <version> <major>4</major> <minor>1</minor> </version> </data_center>
表 7.69. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用此数据中心内的集群。 | |
| 参考此数据中心使用的 ISCSI 绑定。 | |
| 引用此数据中心使用的 MAC 池。 | |
| 参考附加到此数据中心的网络。 | |
| 引用分配给此数据中心的权限。 | |
| 参考此数据中心所用服务质量. | |
| 引用分配到此数据中心的配额。 | |
| 引用附加到此数据中心的存储域。 |
7.53. DataCenterStatus enum
表 7.70. 值概述
名称 | 概述 |
---|---|
| |
| |
| |
| |
| |
|
7.54. Device struct
设备将链接到设备的潜在父项。
表 7.71. 属性概述
表 7.72. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.54.1. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.55. Disk struct
表示虚拟磁盘设备.
表 7.73. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指示该磁盘是否对虚拟机可见。 | |
| 磁盘的实际大小,以字节为单位。 | |
| ||
| 磁盘支持的备份行为。 | |
| 磁盘备份的类型(full/递增)仅在磁盘备份进行时可见。 | |
| 表示磁盘是否已标记为可引导。 | |
| 包含有关此对象的注释的免费文本。 | |
| 指明磁盘上的实际内容。 | |
| 以纯文本格式人类可读的描述。 | |
| 使用外部磁盘. | |
| 底层存储格式。 | |
| 唯一标识符。 | |
| ||
| 在块存储上创建的稀疏镜像磁盘的初始大小,以字节为单位。 | |
| 用于将磁盘设备连接到虚拟机的接口驱动程序类型。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| 指明磁盘错误是否应该导致虚拟机暂停,或者是否应将磁盘错误传播到客户机操作系统。 | |
| 磁盘的虚拟大小,以字节为单位。 | |
| QCOW 卷的底层 QCOW 版本。 | |
| 指明磁盘是否处于只读模式。 | |
| 指明 SCSI passthrough 是否启用及其策略。 | |
| 指明该磁盘是否可以附加到多个虚拟机。 | |
| 指明是否应预分配磁盘的物理存储。 | |
| 磁盘设备的状态。 | |
| ||
| 包括所有快照的磁盘总大小,以字节为单位。 | |
| ||
| 表示磁盘的块是否会在删除后以零形式读取: - 在块存储上,磁盘将被零,然后仅被删除。 |
7.55.1. Active
指示该磁盘是否对虚拟机可见。
在向虚拟机添加磁盘附加时,如果服务器接受不包含此属性的请求,则结果未定义。在某些情况下,磁盘将被自动激活,在其他情况下则不会激活。为避免出现问题,强烈建议始终使用所需的值包含此属性。
7.55.2. actual_size
磁盘的实际大小,以字节为单位。
实际大小是磁盘实际使用的字节数。它将小于使用 cow
格式的磁盘的调配大小。
7.55.3. Bootable
表示磁盘是否已标记为可引导。
此属性仅适用于实际连接到虚拟机的磁盘,在 API 版本 4 中,它已移至 DiskAttachment 类型。它保留在此仅用于向后兼容,将来会删除。
7.55.4. external_disk
使用外部磁盘.
外部磁盘可以是到本地文件或块设备的路径,也可以是 QEMU 支持的 URL,例如:
- nbd:<host>:<port>[:exportname=<export>]
- nbd:unix:</path>[:exportname=<export>]
- http://[<username>[:<password>]@]<host>/<path>
- https://[<username>[:<password>]@]<host>/<path>
- ftp://[<username>[:<password>]@]<host>/<path>
- ftps://[<username>[:<password>]@]<host>/<path>
有关其他支持的协议和更多信息,请参阅 QEMU 手册。
7.55.5. initial_size
在块存储上创建的稀疏镜像磁盘的初始大小,以字节为单位。
初始大小是在块存储上创建时首先使用 分配稀疏磁盘的字节数。初始大小将小于置备的大小。如果没有指定,系统将使用的默认初始大小将被分配。
7.55.6. Interface
用于将磁盘设备连接到虚拟机的接口驱动程序类型。
此属性仅适用于实际连接到虚拟机的磁盘,在 API 版本 4 中,它已移至 DiskAttachment 类型。它保留在此仅用于向后兼容,将来会删除。
7.55.7. provisioned_size
磁盘的虚拟大小,以字节为单位。
此属性在创建新磁盘时是必需的。
7.55.8. qcow_version
QCOW 卷的底层 QCOW 版本。QCOW 版本将卷支持的 qemu 版本指定为 qemu 版本。该字段可使用更新 API 更新,并且仅针对 QCOW 卷报告。由在其上创建磁盘的存储域版本决定。版本低于 V4 的存储域支持 QCOW2 卷。V4 存储域也支持 QCOW2v3。有关不同 QCOW 版本功能的更多信息,请参阅这里。
7.55.9. read_only
指明磁盘是否处于只读模式。
由于 API 中未显示此属性,并且已移到 DiskAttachment。
自 Red Hat Virtualization Manager 版本 4.1.2 起,此属性已弃用,并将在以后的中删除。若要以只读模式附加磁盘,请使用 DiskAttachment 类型的 read_only
属性。例如:
POST /ovirt-engine/api/vms/123/diskattachments
<disk_attachment> <read_only>true</read_only> ... </disk_attachment>
7.55.10. sgio
指明 SCSI passthrough 是否启用及其策略。
设置 过滤
的 /unfiltered 的值将为带有
非特权/特权 SCSI I/O 的 LUN 磁盘启用 SCSI 直通。要禁用 SCSI passthrough,该值应设置为 禁用
7.55.11. 共享
指明该磁盘是否可以附加到多个虚拟机。
7.55.12. total_size
包括所有快照的磁盘总大小,以字节为单位。
总大小是磁盘实际使用的字节数加上其快照的大小。它不会被填充为直接 LUN 和 Cinder 磁盘。对于没有快照的磁盘,其总大小等于实际大小。
7.55.13. wipe_after_delete
表示磁盘的块是否会在删除后以零形式读取:
- 在块存储上,磁盘将被零,然后仅被删除。
- 在文件存储上,由于文件系统已保证之前删除的块被写回为零,因此该磁盘将立即被删除。
表 7.74. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| (可选)引用设备使用的实例类型。 | |
| ||
| ||
| ||
| ||
| 磁盘公开的统计数据。 | |
| ||
| 与此磁盘关联的存储域。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.55.14. statistics
磁盘公开的统计数据。例如:
<statistics> <statistic href="/ovirt-engine/api/disks/123/statistics/456" id="456"> <name>data.current.read</name> <description>Read data rate</description> <kind>gauge</kind> <type>decimal</type> <unit>bytes_per_second</unit> <values> <value> <datum>1052</datum> </value> </values> <disk href="/ovirt-engine/api/disks/123" id="123"/> </statistic> ... </statistics>
这些统计数据在检索磁盘时不直接包含,而仅包含一个链接。要获取统计数据,请使用包括的链接:
GET /ovirt-engine/api/disks/123/statistics
7.55.15. storage_domains
与此磁盘关联的存储域。
仅当第一个磁盘添加到本身不是从模板创建的虚拟机时才需要。
7.55.16. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.56. DiskAttachment struct
描述如何将磁盘附加到虚拟机。
表 7.75. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义磁盘是否在其所附加的虚拟机中处于活动状态。 | |
| 定义磁盘是否可引导。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 用于将磁盘设备连接到虚拟机的接口驱动程序类型。 | |
| 虚拟机磁盘的逻辑名称,如虚拟机内部所示。 | |
| 纯文本中的人类可读名称。 | |
| 定义虚拟机是否将丢弃命令传递给存储。 | |
| 指明磁盘是否以只读方式连接到虚拟机。 | |
| 定义是否为此磁盘启用了 SCSI 保留。 |
7.56.1. Active
定义磁盘是否在其所附加的虚拟机中处于活动状态。
附加到处于活动状态的虚拟机的磁盘在运行时连接到虚拟机,并可使用。
7.56.2. logical_name
虚拟机磁盘的逻辑名称,如虚拟机内部所示。
只有在虚拟机中安装客户机代理并运行时,才会报告磁盘的逻辑名称。
例如,如果客户机操作系统是 Linux 且磁盘通过 VirtIO 接口连接,则逻辑名称将报告为 /dev/vda
:
<disk_attachment> ... <logical_name>/dev/vda</logical_name> </disk_attachment>
如果客户机操作系统为 Windows,则逻辑名称将报告为 \\.\PHYSICALDRIVE0。
7.56.3. read_only
指明磁盘是否以只读方式连接到虚拟机。
添加新磁盘附加时,默认值为 false
。
<disk_attachment> ... <read_only>true</read_only> </disk_attachment>
7.56.4. uses_scsi_reservation
定义是否为此磁盘启用了 SCSI 保留。
启用 VIRTIO-SCSI 直通的虚拟机可以在磁盘上设置持久的 SCSI 预留。如果他们设置了持久的 SCSI 预留,则这些虚拟机无法迁移到其他主机,因为它们将失去对磁盘的访问权限,因为 SCSI 保留特定于 SCSI 启动器,因此也特定于主机。无法自动检测到这种情况。为避免迁移这些虚拟机,用户可以将此属性设置为 true
,以指示虚拟机正在使用 SCSI 预留。
7.57. DiskBackup 枚举
表示磁盘上启用的备份机制的枚举。
表 7.77. 值概述
名称 | 概述 |
---|---|
| 增量备份支持. |
| 无备份支持。 |
7.58. DiskBackupMode enum
表示备份模式的枚举
表 7.78. 值概述
名称 | 概述 |
---|---|
| 此磁盘支持完整备份。 |
| 此磁盘支持增量备份。 |
7.58.1. full
此磁盘支持完整备份。您可以查询零扩展并下载所有磁盘数据。
7.58.2. incremental
此磁盘支持增量备份。您可以查询脏扩展并下载更改的块。
7.59. DiskContentType enum
驻留于磁盘上的实际内容。
表 7.79. 值概述
名称 | 概述 |
---|---|
| 磁盘包含受保护的虚拟机备份数据。 |
| 磁盘包含数据。 |
| 磁盘包含托管引擎虚拟机磁盘。 |
| 磁盘包含托管引擎配置磁盘。 |
| 磁盘包含托管引擎元数据磁盘。 |
| 磁盘包含托管引擎 Sanlock 磁盘。 |
| 磁盘包含一个 ISO 映像,供 CDROM 设备使用。 |
| 磁盘包含来自实时快照的内存转储。 |
| 磁盘包含来自实时快照的内存元数据。 |
| 磁盘是 OVF 存储。 |
7.60. DiskFormat enum
磁盘的底层存储格式。
表 7.80. 值概述
名称 | 概述 |
---|---|
| Copy On Write 格式允许快照,其性能开销较小。 |
| raw 格式不允许快照,但提供了更高的性能。 |
7.61. DiskInterface enum
磁盘与控制器通信的底层存储接口。
表 7.81. 值概述
名称 | 概述 |
---|---|
| 传统控制器设备. |
| SATA 控制器节点. |
| IBM pSeries 系列计算机支持的半虚拟化设备,使用 SCSI 协议。 |
| 虚拟化接口,只有虚拟客户机的设备驱动程序知道该接口正在虚拟环境中运行。 |
| 半虚拟化 SCSI 控制器节点. |
7.61.1. IDE
传统控制器设备.几乎与所有 guest 操作系统配合使用,因此非常适合兼容性。性能低于其它替代方案。
7.61.2. VirtIO
虚拟化接口,只有虚拟客户机的设备驱动程序知道该接口正在虚拟环境中运行。使虚拟机能够获取高性能的磁盘操作.
7.61.3. virtio_scsi
半虚拟化 SCSI 控制器节点.使用 SCSI 协议通过直接物理存储设备地址快速与客户机接口。
7.62. DiskProfile struct
表 7.82. 属性概述
表 7.83. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.63. DiskSnapshot struct
表 7.84. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指示该磁盘是否对虚拟机可见。 | |
| 磁盘的实际大小,以字节为单位。 | |
| ||
| 磁盘支持的备份行为。 | |
| 磁盘备份的类型(full/递增)仅在磁盘备份进行时可见。 | |
| 表示磁盘是否已标记为可引导。 | |
| 包含有关此对象的注释的免费文本。 | |
| 指明磁盘上的实际内容。 | |
| 以纯文本格式人类可读的描述。 | |
| 使用外部磁盘. | |
| 底层存储格式。 | |
| 唯一标识符。 | |
| ||
| 在块存储上创建的稀疏镜像磁盘的初始大小,以字节为单位。 | |
| 用于将磁盘设备连接到虚拟机的接口驱动程序类型。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| 指明磁盘错误是否应该导致虚拟机暂停,或者是否应将磁盘错误传播到客户机操作系统。 | |
| 磁盘的虚拟大小,以字节为单位。 | |
| QCOW 卷的底层 QCOW 版本。 | |
| 指明磁盘是否处于只读模式。 | |
| 指明 SCSI passthrough 是否启用及其策略。 | |
| 指明该磁盘是否可以附加到多个虚拟机。 | |
| 指明是否应预分配磁盘的物理存储。 | |
| 磁盘设备的状态。 | |
| ||
| 包括所有快照的磁盘总大小,以字节为单位。 | |
| ||
| 表示磁盘的块是否会在删除后以零形式读取: - 在块存储上,磁盘将被零,然后仅被删除。 |
7.63.1. Active
指示该磁盘是否对虚拟机可见。
在向虚拟机添加磁盘附加时,如果服务器接受不包含此属性的请求,则结果未定义。在某些情况下,磁盘将被自动激活,在其他情况下则不会激活。为避免出现问题,强烈建议始终使用所需的值包含此属性。
7.63.2. actual_size
磁盘的实际大小,以字节为单位。
实际大小是磁盘实际使用的字节数。它将小于使用 cow
格式的磁盘的调配大小。
7.63.3. Bootable
表示磁盘是否已标记为可引导。
此属性仅适用于实际连接到虚拟机的磁盘,在 API 版本 4 中,它已移至 DiskAttachment 类型。它保留在此仅用于向后兼容,将来会删除。
7.63.4. external_disk
使用外部磁盘.
外部磁盘可以是到本地文件或块设备的路径,也可以是 QEMU 支持的 URL,例如:
- nbd:<host>:<port>[:exportname=<export>]
- nbd:unix:</path>[:exportname=<export>]
- http://[<username>[:<password>]@]<host>/<path>
- https://[<username>[:<password>]@]<host>/<path>
- ftp://[<username>[:<password>]@]<host>/<path>
- ftps://[<username>[:<password>]@]<host>/<path>
有关其他支持的协议和更多信息,请参阅 QEMU 手册。
7.63.5. initial_size
在块存储上创建的稀疏镜像磁盘的初始大小,以字节为单位。
初始大小是在块存储上创建时首先使用 分配稀疏磁盘的字节数。初始大小将小于置备的大小。如果没有指定,系统将使用的默认初始大小将被分配。
7.63.6. Interface
用于将磁盘设备连接到虚拟机的接口驱动程序类型。
此属性仅适用于实际连接到虚拟机的磁盘,在 API 版本 4 中,它已移至 DiskAttachment 类型。它保留在此仅用于向后兼容,将来会删除。
7.63.7. provisioned_size
磁盘的虚拟大小,以字节为单位。
此属性在创建新磁盘时是必需的。
7.63.8. qcow_version
QCOW 卷的底层 QCOW 版本。QCOW 版本将卷支持的 qemu 版本指定为 qemu 版本。该字段可使用更新 API 更新,并且仅针对 QCOW 卷报告。由在其上创建磁盘的存储域版本决定。版本低于 V4 的存储域支持 QCOW2 卷。V4 存储域也支持 QCOW2v3。有关不同 QCOW 版本功能的更多信息,请参阅这里。
7.63.9. read_only
指明磁盘是否处于只读模式。
由于 API 中未显示此属性,并且已移到 DiskAttachment。
自 Red Hat Virtualization Manager 版本 4.1.2 起,此属性已弃用,并将在以后的中删除。若要以只读模式附加磁盘,请使用 DiskAttachment 类型的 read_only
属性。例如:
POST /ovirt-engine/api/vms/123/diskattachments
<disk_attachment> <read_only>true</read_only> ... </disk_attachment>
7.63.10. sgio
指明 SCSI passthrough 是否启用及其策略。
设置 过滤
的 /unfiltered 的值将为带有
非特权/特权 SCSI I/O 的 LUN 磁盘启用 SCSI 直通。要禁用 SCSI passthrough,该值应设置为 禁用
7.63.11. 共享
指明该磁盘是否可以附加到多个虚拟机。
7.63.12. total_size
包括所有快照的磁盘总大小,以字节为单位。
总大小是磁盘实际使用的字节数加上其快照的大小。它不会被填充为直接 LUN 和 Cinder 磁盘。对于没有快照的磁盘,其总大小等于实际大小。
7.63.13. wipe_after_delete
表示磁盘的块是否会在删除后以零形式读取:
- 在块存储上,磁盘将被零,然后仅被删除。
- 在文件存储上,由于文件系统已保证之前删除的块被写回为零,因此该磁盘将立即被删除。
表 7.85. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| (可选)引用设备使用的实例类型。 | |
| ||
| 父磁盘快照. | |
| ||
| ||
| ||
| 磁盘公开的统计数据。 | |
| ||
| 与此磁盘关联的存储域。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.63.14. statistics
磁盘公开的统计数据。例如:
<statistics> <statistic href="/ovirt-engine/api/disks/123/statistics/456" id="456"> <name>data.current.read</name> <description>Read data rate</description> <kind>gauge</kind> <type>decimal</type> <unit>bytes_per_second</unit> <values> <value> <datum>1052</datum> </value> </values> <disk href="/ovirt-engine/api/disks/123" id="123"/> </statistic> ... </statistics>
这些统计数据在检索磁盘时不直接包含,而仅包含一个链接。要获取统计数据,请使用包括的链接:
GET /ovirt-engine/api/disks/123/statistics
7.63.15. storage_domains
与此磁盘关联的存储域。
仅当第一个磁盘添加到本身不是从模板创建的虚拟机时才需要。
7.63.16. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.64. DiskStatus enum
磁盘的当前状态表示法.
表 7.86. 值概述
名称 | 概述 |
---|---|
| 虚拟机无法访问磁盘,用户也需要采取措施来解决问题。 |
| 该磁盘正被系统使用,因此此时虚拟机无法访问它。 |
| 磁盘状态为正常,可由虚拟机访问。 |
7.64.1. Locked
该磁盘正被系统使用,因此此时虚拟机无法访问它。这通常是临时状态,直到磁盘被释放为止。
7.65. DiskStorageType enum
表 7.87. 值概述
名称 | 概述 |
---|---|
| |
| |
| |
| 存储类型,用于使用 cinderlib 驱动程序创建的存储域。 |
7.66. disktype enum
表 7.88. 值概述
名称 | 概述 |
---|---|
| |
|
7.67. 显示 结构
表示图形控制台配置.
表 7.89. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 要连接图形控制台客户端的客户机的 IP 地址。 | |
| 表示是否覆盖每个主机的显示地址。 | |
| TLS 证书,以防出现 TLS 连接。 | |
| 指明用户是否能够从外部主机复制内容并将其粘贴到图形控制台中。 | |
| 返回图形控制台断开连接时将执行的操作。 | |
| 在图形控制台断开连接操作执行前的延迟(分钟)。 | |
| 指明用户是否能够将文件从外部主机拖放到图形控制台中。 | |
| 用于此图形控制台的键盘布局。 | |
| 为此图形控制台打开的显示器数量。 | |
| guest 上的端口地址,用于连接图形控制台客户端。 | |
| 图形控制台客户端将用于连接 guest 的代理 IP。 | |
| 如果使用 TLS,客户机上的安全端口地址将图形控制台客户端连接到。 | |
| 引擎现在根据操作系统自动设置它。 | |
| 指明是否使用智能卡验证。 | |
| 图形控制台协议类型。 |
7.67.1. allow_override
表示是否覆盖每个主机的显示地址。仅与 Host.display
属性相关。如果设置,虚拟机的图形控制台地址将被指定的显示地址覆盖。如果没有设置,则虚拟机的图形控制台地址不会被覆盖。
7.67.2. certificate
TLS 证书,以防出现 TLS 连接。如果未启用 TLS,则不会报告它。
7.67.3. copy_paste_enabled
指明用户是否能够从外部主机复制内容并将其粘贴到图形控制台中。此选项仅适用于 SPICE 控制台类型。
7.67.4. disconnect_action
返回图形控制台断开连接时将执行的操作。这些选项是:
- none
- 未采取行动。
- lock_screen
- 锁定当前活动的用户会话。
- logout
- 注销当前活动的用户会话。
- reboot
- 启动正常虚拟机重新引导.
- shutdown
- 启动正常虚拟机关闭。
此选项仅适用于 SPICE 控制台类型。
7.67.5. disconnect_action_delay
在图形控制台断开连接操作执行前的延迟(分钟)。此选项仅适用于 Shutdown disconnect 操作。
7.67.6. file_transfer_enabled
指明用户是否能够将文件从外部主机拖放到图形控制台中。此选项仅适用于 SPICE 控制台类型。
7.67.7. keyboard_layout
用于此图形控制台的键盘布局。这个选项只适用于 VNC 控制台类型。如果没有启用键盘,则不会报告该键盘。
7.67.8. monitor
为此图形控制台打开的显示器数量。此选项仅适用于 SPICE 控制台类型。可能的值有 1、2 或 4。
7.67.9. proxy
图形控制台客户端将用于连接 guest 的代理 IP。当客户端位于 guest 的网络之外时,此功能很有用。此选项仅适用于 SPICE 控制台类型。此代理可以在全局配置、集群级别、虚拟机池级别或在每个虚拟机中禁用。如果在上述任意位置设置了代理,并且未为虚拟机禁用代理,则此方法将返回该代理。如果未设置代理,则不会报告任何内容。
7.67.10. secure_port
如果使用 TLS,客户机上的安全端口地址将图形控制台客户端连接到。如果未启用 TLS,则不会报告它。
7.67.11. single_qxl_pci
引擎现在根据操作系统自动设置它。因此,它自 4.4.5 起已弃用。指明是否为每个 monitor 使用一个 PCI 插槽,或者将单个 PCI 通道用于所有多个监视器。此选项仅适用于 SPICE 控制台类型,仅适用于连接基于 guest Linux 的操作系统。
7.67.12. smartcard_enabled
指明是否使用智能卡验证。此选项仅适用于 SPICE 控制台类型。
7.68. DisplayType enum
表示用于连接到虚拟机的图形控制台的协议的枚举。
表 7.90. 值概述
名称 | 概述 |
---|---|
| 显示 SPICE 类型. |
| 显示 VNC 类型. |
7.68.1. spice
显示 SPICE 类型.详情请查看 https://www.spice-space.org。
7.68.2. vnc
显示 VNC 类型.VNC 代表虚拟网络计算,它是图形桌面共享系统,使用 RFB(远程帧缓冲)协议远程控制另一台计算机。
7.69. Dns struct
表示 DNS 解析器配置。
7.70. DnsResolverConfiguration struct
表示 DNS 解析器配置。
表 7.92. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 名称服务器的地址数组. |
7.70.1. name_servers
名称服务器的地址数组.可以指定 IPv4 或 IPv6 地址。
7.71. Domain struct
此类型表示目录服务域。
表 7.93. 属性概述
7.71.1. 用户
对 directory 服务中所有用户的列表的引用.这些信息用于在 Red Hat Virtualization 环境中添加新用户。
7.72. DynamicCpu struct
配置虚拟机的动态 CPU。
表 7.95. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.73. EntityExternalStatus enum
键入代表外部实体状态。
表 7.96. 值概述
名称 | 概述 |
---|---|
| 外部实体状态错误。 |
| 外部实体存在导致失败的问题。 |
| 有外部实体状态正常,但有些信息可能相关。 |
| 外部实体状态正常。 |
| 外部实体状态正常,但存在可能需要注意的问题。 |
7.73.1. 错误
外部实体状态错误。这可能需要中等程度的关注。
7.73.2. 失败
外部实体存在导致失败的问题。这可能需要立即关注。
7.74. EntityProfileDetail struct
表 7.97. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.75. ErrorHandling struct
表 7.98. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.76. Event struct
键入代表事件。
表 7.99. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 事件代码。 | |
| 包含有关此对象的注释的免费文本。 | |
| 事件相关性标识符。 | |
| 代表自定义事件数据的免费文本. | |
| 自定义事件标识符。 | |
| 以纯文本格式人类可读的描述。 | |
| 定义填充率。 | |
| 唯一标识符。 | |
| 此事件的数字索引。 | |
| 指定是否也应将事件写入 ${hypervisor。 | |
| 纯文本中的人类可读名称。 | |
| 确定事件来源的免费文本。 | |
| 事件严重性。 | |
| 事件时间。 |
7.76.1. correlation_id
事件相关性标识符。用于将多个事件关联在一起。
7.76.2. flood_rate
定义填充率。如果事件出现在定义的速率中多次,这可防止填充。默认值为 30 秒。
7.76.3. index
此事件的数字索引。事件索引始终增加,因此索引较高的事件可以保证比索引较低的事件旧。
在当前实施引擎时,id
属性的值与此 索引
属性相同。这是 API 用户不应依赖的实施细节。将来,id
属性可以更改为任意字符串,其包含非数字字符和隐式顺序。另一方面,这个 索引
属性保证保持为整数并按顺序排列。
7.76.4. log_on_host
指定是否还应将事件写入 ${hypervisor.name} 日志。如果未指定主机,则事件描述将写入到所有主机。默认值为 false。
表 7.100. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对群集服务的引用。 | |
| 数据中心服务的引用. | |
| 对主机服务的引用. | |
| 引用存储域服务. | |
| 引用模板服务. | |
| 用户服务的引用. | |
| 引用虚拟机服务。 |
7.76.5. cluster
对群集服务的引用。事件可以与集群关联。
7.76.6. data_center
数据中心服务的引用.事件可以与数据中心关联。
7.76.7. 主机
对主机服务的引用.事件可以与主机关联。
7.76.8. storage_domain
引用存储域服务.事件可以与存储域关联。
7.76.9. 模板
引用模板服务.事件可以与模板关联。
7.76.10. user
用户服务的引用.事件可以与用户关联。
7.76.11. vm
引用虚拟机服务。事件可以与虚拟机关联。
7.77. EventSubscription struct
表 7.101. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 通知应发送到的电子邮件地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 订阅的活动. | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 通知方法:SMTP 或 SNMP。 | |
| 订阅用户. |
7.77.1. 地址
通知应发送到的电子邮件地址。
如果未提供,则会将通知发送到用户的电子邮件。目前,每个用户只支持一个地址。如果在现有订阅中添加了具有不同电子邮件地址的订阅,则会返回 409(CONFLICT)状态,说明提供的地址与该用户的事件订阅的现有地址冲突。
此字段将来可能会被弃用,通知将始终在用户的电子邮件地址上发送。
7.77.2. event
订阅的活动.
(与用户组合,唯一标识 event-subscription)。
7.77.3. notification_method
通知方法:SMTP 或 SNMP。
目前仅支持 API 支持的 SMTP。未来将增加对 SNMP 的支持。
7.77.4. user
订阅用户.
与 event-name 结合使用,唯一标识 event-subscription。
7.78. ExternalComputeResource struct
表 7.102. 属性概述
表 7.103. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.79. ExternalDiscoveredHost struct
表 7.104. 属性概述
表 7.105. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.80. ExternalHost struct
代表由主机提供程序(如 Foreman/Satellite)调配的主机。
有关 Foreman 的更多详细信息,请参见 https://www.theforeman.org/。有关 Red Hat Satellite 的详情,请查看 https://access.redhat.com/products/red-hat-satellite。
表 7.106. 属性概述
表 7.107. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对主机所管理的外部主机提供程序的引用。 |
7.81. ExternalHostGroup struct
表 7.108. 属性概述
表 7.109. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.82. ExternalHostProvider struct
代表外部主机提供程序,如 Foreman 或卫星。
有关 Foreman 的更多详细信息,请参见 https://www.theforeman.org/。有关 Red Hat Satellite 的详情,请查看 https://access.redhat.com/products/red-hat-satellite。
表 7.110. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义外部提供程序身份验证 URL 地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 定义用户在身份验证过程中的密码。 | |
| 提供程序名称/值属性数组。 | |
| 定义是否需要供应商身份验证。 | |
| 定义外部提供程序的 URL 地址。 | |
| 定义要在身份验证过程中使用的用户名。 |
7.82.1. required_authentication
定义是否需要供应商身份验证。
如果需要身份验证,则身份验证期间将使用 用户名和密码
属性。
表 7.111. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用引擎为此供应商支持的证书。 | |
| 对主机提供程序中所示的计算资源的引用。 | |
| 对主机提供程序中发现的主机的引用。 | |
| 对主机提供程序中的主机组的引用。 | |
| 对主机提供程序调配的主机的引用。 |
7.82.2. compute_resources
对主机提供程序中所示的计算资源的引用。每一主机提供程序有可选的引擎定义为计算资源,允许在引擎中创建虚拟机。此计算资源详细信息在裸机恢复调配用例中使用,以部署虚拟机监控程序。
7.82.3. discovered_hosts
对主机提供程序中发现的主机的引用。发现的主机是尚未调配的主机。
7.82.4. host_groups
对主机提供程序中的主机组的引用。主机组包含不同的属性,供主机提供程序应用到属于此组成员的所有主机上。例如安装的软件、系统定义、密码等。
7.83. ExternalNetworkProviderConfiguration struct
描述主机上如何调配外部网络提供程序。
表 7.112. 属性概述
表 7.113. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 链接到外部网络提供程序。 | |
| 到主机的链接。 |
7.84. ExternalProvider struct
代表外部提供程序.
表 7.114. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义外部提供程序身份验证 URL 地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 定义用户在身份验证过程中的密码。 | |
| 提供程序名称/值属性数组。 | |
| 定义是否需要供应商身份验证。 | |
| 定义外部提供程序的 URL 地址。 | |
| 定义要在身份验证过程中使用的用户名。 |
7.84.1. required_authentication
定义是否需要供应商身份验证。
如果需要身份验证,则身份验证期间将使用 用户名和密码
属性。
7.85. ExternalStatus enum
表示外部状态.此状态目前用于主机和 存储域,并且允许外部系统更新它所识别的对象的状态。
表 7.115. 值概述
名称 | 概述 |
---|---|
| 错误状态. |
| 故障状态. |
| 信息状态. |
| 确定状态. |
| Warning 状态. |
7.85.1. 错误
错误状态.相关对象中存在某种错误。
7.85.2. 失败
故障状态.相关对象失败。
7.85.3. info
信息状态.相关对象处于 OK 状态,但也有与管理员相关的可用信息。
7.85.4. 确定
确定状态.相关对象运行良好。
7.85.5. warning
Warning 状态.相关对象运行良好,但有一些警告可能与管理员相关。
7.86. ExternalSystemType enum
表示与该 步骤
关联的外部系统的类型。
表 7.116. 值概述
名称 | 概述 |
---|---|
|
将 |
|
表示 |
7.87. ExternalTemplateImport struct
描述从外部系统模板导入操作的参数。目前仅支持 OVA。
7.87.1. clone
可选。表示是否应该重新生成导入模板的标识符。
默认情况下,在导入模板时,标识符会被保留。这意味着同一模板无法多次导入,因为该标识符需要是唯一的。要允许多次导入同一模板,将此参数设置为 true
,因为默认值为 false
。
7.87.2. url
要传递给引擎的 URL。
例如:
ova:///mnt/ova/ova_file.ova
表 7.118. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 为生成的模板指定目标集群。 | |
| 可选。 | |
| 指定存在 OVA 文件的主机。 | |
| 可选。 | |
| 指定磁盘的目标存储域。 | |
| 用于指定新创建的模板名称的模板实体。 |
7.87.3. cpu_profile
可选。指定生成的模板的 CPU 配置集。
7.87.4. quota
可选。指定应用到生成的模板的配额。
7.87.5. 模板
用于指定新创建的模板名称的模板实体。
如果未指定名称,则使用源模板名称。
7.88. ExternalVmImport struct
描述从外部系统虚拟机导入操作的参数。
表 7.119. 属性概述
7.88.1. sparse
可选。指定生成的虚拟机的磁盘分配策略: true
用于稀疏,对于预分配为 false
。
如果没有指定: - 在导入由 oVirt 生成的 OVA 时,它将根据 OVF 中的磁盘配置决定。- 否则将设置为 true。
7.88.2. url
传递给 virt-v2v
工具以进行转换的 URL。
例如:
vpx://wmware_user@vcenter-host/DataCenter/Cluster/esxi-host?no_verify=1
表 7.120. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 为生成的虚拟机指定目标集群。 | |
| 可选。 | |
| 可选。 | |
| 可选。 | |
| 可选。 | |
| 为转换的磁盘指定目标存储域。 | |
| 用于为新创建的虚拟机指定名称的虚拟机实体。 |
7.88.3. cpu_profile
可选。指定生成的虚拟机的 CPU 配置集。
7.88.4. drivers_iso
可选。包含可在 virt-v2v
转换过程中使用的驱动程序的 ISO 名称。
7.88.5. 主机
可选。指定用于转换过程的主机(使用主机的 ID)。如果没有指定,则会自动选择一个。
7.88.6. quota
可选。指定应用到生成的虚拟机的配额。
7.88.7. vm
用于为新创建的虚拟机指定名称的虚拟机实体。
如果未指定名称,则将使用源虚拟机名称。
7.89. ExternalVmProviderType enum
描述外部系统管理程序系统的类型。
表 7.121. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.90. fault struct
7.91. FenceType enum
键入 代表隔离操作的类型。
表 7.123. 值概述
名称 | 概述 |
---|---|
| 通过电源管理手动主机隔离. |
| 通过电源管理重新启动主机。 |
| 通过电源管理启动主机。 |
| 通过电源管理检查主机电源状态。 |
| 通过电源管理来停止主机。 |
7.92. FencingPolicy struct
键入代表群集隔离策略。
表 7.124. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 在此群集上启用或禁用隔离。 | |
| 如果启用,我们将不会在群集中主机超过连接丢失百分比时隔离主机。 | |
| 指示是否应在被隔离的主机中启动并运行 Gluster brick 时是否应该跳过隔离的标志。 | |
| 指示是否应跳过隔离的标志,如果 Gluster brick 已启动并在运行,并且没有这些 brick 就无法满足 Gluster 仲裁。 | |
| 如果启用,我们将在主机在存储中维持其租用时跳过隔离。 |
7.92.1. skip_if_connectivity_broken
如果启用,我们将不会在群集中主机超过连接丢失百分比时隔离主机。这可用于防止在群集中存在全局网络问题时出现隔离风暴。
7.92.2. skip_if_gluster_bricks_up
指示是否应在被隔离的主机中启动并运行 Gluster brick 时是否应该跳过隔离的标志。这个标志是可选的,默认值为 false
。
7.92.3. skip_if_gluster_quorum_not_met
指示是否应跳过隔离的标志,如果 Gluster brick 已启动并在运行,并且没有这些 brick 就无法满足 Gluster 仲裁。这个标志是可选的,默认值为 false
。
7.92.4. skip_if_sd_active
如果启用,我们将在主机在存储中维持其租用时跳过隔离。这意味着,如果主机仍具有存储访问权限,则它不会被隔离。
7.93. File struct
表 7.125. 属性概述
表 7.126. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.94. Filter struct
表 7.127. 属性概述
表 7.128. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.95. FipsMode enum
将 FIPS 模式表示到集群。
表 7.129. 值概述
名称 | 概述 |
---|---|
| 禁用 FIPS 模式。 |
| 启用了 FIPS 模式。 |
| FIPS 模式还没有被评估。 |
7.95.1. disabled
禁用 FIPS 模式。
其含义是禁用 FIPS 模式,并且 中的主机应该禁用 FIPS 模式,否则它们将无法运行。
7.95.2. enabled
启用了 FIPS 模式。
其含义是启用了 FIPS 模式,且 中的主机应启用 FIPS 模式,否则不应运行。
7.95.3. 未定义
FIPS 模式还没有被评估。
目前,其含义是未确定 FIPS 模式。添加主机后,该值将根据主机设置进行切换。
7.96. FirewallType enum
描述系统支持的所有防火墙类型。
表 7.130. 值概述
名称 | 概述 |
---|---|
| firewalld 防火墙类型. |
| iptables 防火墙类型. |
7.96.1. firewalld
firewalld 防火墙类型.
当群集的防火墙类型设置为 firewalld
时,将使用 firewalld
配置群集中所有主机的防火墙。firewalld 在版本 4.2 中替换了 IPTables。它使用命令行程序和动态配置来简化配置。
7.96.2. iptables
iptables 防火墙类型.
iptables
已被弃用。
7.97. Floppy struct
软盘文件的基本表示。
表 7.131. 属性概述
表 7.132. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.97.1. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.98. FopStatisticst ruct
表 7.133. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.99. GlusterBrick struct
表 7.134. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| ||
| ||
| ||
| 唯一标识符。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| ||
| ||
| ||
|
表 7.135. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| (可选)引用设备使用的实例类型。 | |
| ||
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.99.1. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.100. GlusterBrickAdvancedDetails struct
表 7.136. 属性概述
表 7.137. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.100.1. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.101. GlusterBrickMemoryInfo struct
表 7.138. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.102. GlusterBrickStatus enum
表 7.139. 值概述
名称 | 概述 |
---|---|
|
Brick 处于 |
| 当由于主机不响应而无法确定状态时。 |
|
Brick 处于 |
7.103. GlusterClient struct
7.104. GlusterHook struct
表 7.141. 属性概述
表 7.142. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.105. GlusterHookStatus enum
表 7.143. 值概述
名称 | 概述 |
---|---|
| 集群中禁用 hook。 |
| 集群中启用 hook。 |
| 未知/缺少 hook 状态. |
7.106. GlusterMemoryPool struct
7.107. GlusterServerHook struct
表 7.145. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 包含有关此对象的注释的免费文本。 | |
| ||
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
|
表 7.146. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.108. GlusterState enum
表 7.147. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.109. GlusterVolume struct
表 7.148. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| ||
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| ||
| ||
| ||
| ||
| ||
| ||
|
表 7.149. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.110. GlusterVolumeProfileDetails struct
表 7.150. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
|
7.111. GlusterVolumeStatus enum
表 7.151. 值概述
名称 | 概述 |
---|---|
| 需要启动卷,以使客户端能够挂载和使用它。 |
| 当由于主机不响应而无法确定状态时。 |
| 卷已启动,客户端可以挂载和使用卷。 |
7.112. GlusterVolumeType enum
类型代表 Gluster 卷的类型。
表 7.152. 值概述
名称 | 概述 |
---|---|
| 离散式卷基于纠删代码,提供有效空间保护,防止磁盘或服务器故障。 |
| 分布式卷在卷中的 brick 之间分发文件。 |
| 分布式离散式卷在离散子卷之间分发文件. |
| 分布式复制卷在卷中的复制 brick 之间分发文件。 |
| 分布式分条卷在集群中的两个或多个节点之间条状分布数据。 |
| 分布式复制卷在集群中复制 brick 之间分发分条数据。 |
| 复制卷在卷中跨 brick 复制文件。 |
| 条状卷将数据分条卷中 brick 之间的数据。 |
| 分条复制卷在集群中复制 brick 之间分条数据。 |
7.112.1. disperse
离散式卷基于纠删代码,提供有效空间保护,防止磁盘或服务器故障。
将原始文件的一个编码片段分散到每个 brick 时,只需将片段的一个子集才能恢复原始文件。管理员在卷创建时间上配置在不丢失数据访问权限的情况下丢失的 brick 数量。
7.112.2. distribution
分布式卷在卷中的 brick 之间分发文件。
当要求缩放存储且冗余不重要,或者由其他硬件/软件层提供时,可以使用分布式卷。
7.112.3. distributed_disperse
分布式离散式卷在离散子卷之间分发文件.
这具有相同的优势,可以分发复制卷,但使用 disperse 将数据存储到 brick 中。
7.112.4. distributed_replicate
分布式复制卷在卷中的复制 brick 之间分发文件。
分布式复制卷可在要求扩展存储和高可靠性至关重要的环境中使用。分布式复制卷还可在大多数环境中提供更高的读取性能。
7.112.5. distributed_stripe
分布式分条卷在集群中的两个或多个节点之间条状分布数据。
在要求扩展存储和访问非常大文件的高并发环境中,应使用分布式条状卷。
注:在 Glusterfs 3.7 版本中引入 Sharding 时,不建议使用条带卷,它将在以后的发行版中删除。
7.112.6. distributed_striped_replicate
分布式复制卷在集群中复制 brick 之间分发分条数据。
为获得最佳效果,分布式复制卷应在高度并发的环境中使用,其中并行访问非常大的文件和性能至关重要。
注:在 Glusterfs 3.7 版本中引入 Sharding 时,不建议使用条带卷,它将在以后的发行版中删除。
7.112.7. 复制
复制卷在卷中跨 brick 复制文件。
复制卷可用于高可用性和高可靠性至关重要的环境中。
7.112.8. stripe
条状卷将数据分条卷中 brick 之间的数据。
为获得最佳效果,条带卷应该仅在访问非常大文件的高并发环境中。
注:在 Glusterfs 3.7 版本中引入 Sharding 时,不建议使用条带卷,它将在以后的发行版中删除。
7.112.9. striped_replicate
分条复制卷在集群中复制 brick 之间分条数据。
为获得最佳效果,分条复制卷应在高度并发环境中使用,其中可以并行访问非常大的文件,性能至关重要。
注:在 Glusterfs 3.7 版本中引入 Sharding 时,不建议使用条带卷,它将在以后的发行版中删除。
7.113. GracePeriod struct
表 7.153. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.114. graphicsConsole struct
表 7.154. 属性概述
表 7.155. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.115. graphicsType enum
用于连接到图形控制台的图形协议。
表 7.156. 值概述
名称 | 概述 |
---|---|
| SPICE 类型的图形协议. |
| VNC 类型的图形协议. |
7.115.1. spice
SPICE 类型的图形协议.详情请查看 https://www.spice-space.org。
7.115.2. vnc
VNC 类型的图形协议.VNC 代表虚拟网络计算,它是图形桌面共享系统,使用 RFB(远程帧缓冲)协议远程控制另一台计算机。
7.116. group struct
此类型表示目录服务中的所有组。
表 7.157. 属性概述
表 7.158. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 包含该组的域的链接。 | |
| 权限子集合链接,用于关联至该组的权限。 | |
| 与该组关联的角色子集合的链接。 | |
| 附加到此组的标签子集合的链接。 |
7.116.1. 角色
与该组关联的角色子集合的链接。
仅用于表示新组的初始角色分配;因此,角色分配的修改仅通过 角色
子集合支持。
7.117. GuestOperatingSystem struct
代表虚拟机上安装的操作系统。
要获取该信息,请发送类似如下的请求:
GET /ovirt-engine/api/vms/123
结果如下:
<vm href="/ovirt-engine/api/vms/123" id="123"> ... <guest_operating_system> <architecture>x86_64</architecture> <codename>Maipo</codename> <distribution>Red Hat Enterprise Linux Server</distribution> <family>Linux</family> <kernel> <version> <build>0</build> <full_version>3.10.0-514.10.2.el7.x86_64</full_version> <major>3</major> <minor>10</minor> <revision>514</revision> </version> </kernel> <version> <full_version>7.3</full_version> <major>7</major> <minor>3</minor> </version> </guest_operating_system> </vm>
7.118. HardwareInformation struct
表示主机的硬件信息.
要获取该信息,请发送类似如下的请求:
GET /ovirt-engine/api/hosts/123
结果如下:
<host href="/ovirt-engine/api/hosts/123" id="123"> ... <hardware_information> <family>Red Hat Enterprise Linux</family> <manufacturer>Red Hat</manufacturer> <product_name>RHEV Hypervisor</product_name> <serial_number>01234567-89AB-CDEF-0123-456789ABCDEF</serial_number> <supported_rng_sources> <supported_rng_source>random</supported_rng_source> </supported_rng_sources> <uuid>12345678-9ABC-DEF0-1234-56789ABCDEF0</uuid> <version>1.2-34.5.el7ev</version> </hardware_information> ... </application>
7.119. HighAvailability struct
键入代表虚拟机的高可用性。
7.119.1. enabled
定义虚拟机是否被视为高度可用。强烈建议配置虚拟机租用(请参阅该部分)以防止出现脑裂情况。使用引导磁盘的 storage-domain 或任何其他活跃的 storage-domain。
7.119.2. priority
表示运行和迁移队列中虚拟机的优先级。
优先级较高的虚拟机将在优先级较低的虚拟机之前启动和迁移。
该数值为 0 到 100 之间的整数。数值越大,优先级越高。
图形用户界面(GUI)不允许指定所有可能的值,而是只允许您选择 Low、Medium 或 High。使用 API 设置值时,GUI 将设置标签,如下所示:
API 值 | GUI 标签 |
---|---|
0 - 25 | 低 |
26 - 74 | 中 |
75 - 100 | high |
使用 GUI 选择标签时,API 中的值将设置如下:
GUI 标签 | API 值 |
---|---|
低 | 1 |
中 | 50 |
high | 100 |
7.120. Hook struct
表示 hook。
表 7.162. 属性概述
表 7.163. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对 hook 所属主机的引用。 |
7.121. HookContentType enum
表示 hook 脚本的内容类型。
表 7.164. 值概述
名称 | 概述 |
---|---|
| hook 的二进制内容类型。 |
| hook 的文本内容类型。 |
7.122. HookStage enum
type 表示 hook 在其中执行的卷事件阶段。
表 7.165. 值概述
名称 | 概述 |
---|---|
| 卷启动后的阶段。 |
| 卷启动前的阶段。 |
7.123. HookStatus enum
type 表示 hook 的状态。
表 7.166. 值概述
名称 | 概述 |
---|---|
| Hook 已被禁用。 |
| Hook 已启用。 |
| 缺少 hook。 |
7.124. Host struct
键入代表主机.
表 7.167. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 主机地址(FQDN/IP)。 | |
| 主机自动非统一内存访问 (NUMA)状态。 | |
| 主机证书。 | |
| 包含有关此对象的注释的免费文本。 | |
| 此主机的 CPU 类型。 | |
| 以纯文本格式人类可读的描述。 | |
| 指定是否在此主机上启用主机设备直通。 | |
| (可选)明确指定此主机的显示地址。 | |
| 主机外部状态。 | |
| 主机硬件信息。 | |
| 此主机的自托管引擎状态。 | |
| 唯一标识符。 | |
| 主机 iSCSI 详细信息。 | |
| 主机 KDUMP 状态。 | |
| 内核同页合并(KSM)减少了从多个相同页面到单个页面参考的内存页的引用。 | |
| 主机 libvirt 版本. | |
| 此主机上以字节为单位的最大调度内存。 | |
| 此主机上的物理内存量(以字节为单位)。 | |
| 纯文本中的人类可读名称。 | |
| 指定当前是否在此主机上执行与网络相关的操作,如 'setup network'、'sync network' 或 'refresh capabilities'。 | |
| 指定此主机上是否支持非统一内存访问 (NUMA)。 | |
| 此主机上的操作系统。 | |
| 指定是否应覆盖防火墙定义。 | |
| 表示主机是否已正确配置 OVN。 | |
| 主机端口。 | |
| 主机电源管理定义。 | |
| 引擎用于与主机通信的协议。 | |
| 指定是否应重新安装主机。 | |
| 在创建新主机时,如果选择了密码身份验证方法,则需要 root 密码,但这随后不包含在表示法中。 | |
| 主机 SElinux 状态。 | |
| 主机存储池管理器 (SPM)状态和定义. | |
| SSH 定义。 | |
| 主机状态。 | |
| 主机状态详细信息。 | |
| 虚拟机摘要 - 有多少处于活动状态、迁移和总计. | |
| 透明大内存页支持扩展内存页面大小,超过标准的 4 KiB 限制。 | |
| 指明主机是否包含操作系统的完整安装,或者仅用于托管虚拟机的缩减版本。 | |
| 指定此主机上是否存在与 oVirt 相关的更新。 | |
| VDSM 的版本。 | |
| 指定 vGPU 放置策略。 |
7.124.1. external_status
主机外部状态。这可供第三方软件用于在出现问题时更改主机外部状态。这不会影响主机生命周期,除非第三方软件检查此状态并进行相应操作。
7.124.2. hosted_engine
此主机的自托管引擎状态。
检索主机或主机集合时,不包含此属性,除非操作的 all_content
参数明确设置为 true
。有关详细信息,请参阅检索一个或多个 主机的操作文档。
7.124.3. kdump_status
主机 KDUMP 状态。当主机内核崩溃且现在已执行内存转储时,KDUMP 会发生。
7.124.4. ksm
内核同页合并(KSM)减少了从多个相同页面到单个页面参考的内存页的引用。这有助于优化内存密度。
例如,要为主机 123
启用 KSM,请发送如下请求:
PUT /ovirt-engine/api/hosts/123
这样的请求正文:
<host> <ksm> <enabled>true</enabled> </ksm> </host>
7.124.5. libvirt_version
主机 libvirt 版本.有关 libvirt 的更多信息,请转至 libvirt。
7.124.6. network_operation_in_progress
指定当前是否在此主机上执行与网络相关的操作,如 'setup network'、'sync network' 或 'refresh capabilities'。
必须将标头 All-Content:true
添加到请求中,才能将此属性包含在响应中。
7.124.7. override_iptables
指定是否应覆盖防火墙定义。这只在安装或重新安装主机时才适用。
7.124.8. 协议
引擎用于与主机通信的协议。
自引擎版本 4.1 起,自
xml
删除后,协议始终设置为 stomp。
7.124.9. se_linux
主机 SElinux 状态。Security-Enhanced Linux(SELinux) 是 Linux 内核中的一个组件,为支持访问控制安全策略提供了一种机制。
7.124.10. spm
主机存储池管理器 (SPM)状态和定义.使用它来设置此主机的 SPM 优先级,并查看这是否为当前 SPM。
7.124.11. status_detail
主机状态详细信息。与 Gluster 主机相关.
7.124.12. transparent_huge_pages
透明大内存页支持扩展内存页面大小,超过标准的 4 KiB 限制。这可减少内存消耗并提升主机性能。
例如,要为主机 123
启用透明巨页支持,请发送如下请求:
PUT /ovirt-engine/api/hosts/123
这样的请求正文:
<host> <transparent_hugepages> <enabled>true</enabled> </transparent_hugepages> </host>
7.124.13. version
VDSM 的版本。
例如:
GET /ovirt-engine/api/hosts/123
此 GET 请求
将返回以下输出:
<host> ... <version> <build>999</build> <full_version>vdsm-4.18.999-419.gitcf06367.el7</full_version> <major>4</major> <minor>18</minor> <revision>0</revision> </version> ... </host>
表 7.168. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| 所有主机的 CPU 列表,其中包含关于拓扑(套接字、核心)以及当前 CPU 固定信息的详细信息。 | |
| ||
| ||
| 主机上调配的外部网络提供程序。 | |
| ||
| 列出分配到该主机的所有 Katello 勘误表。 | |
| ||
| ||
| ||
| ||
| 每一主机资源公开一个统计信息子集合,用于特定于主机的统计信息。 | |
| ||
| ||
| ||
|
7.124.14. cpu_units
所有主机的 CPU 列表,其中包含关于拓扑(套接字、核心)以及当前 CPU 固定信息的详细信息。
GET /ovirt-engine/api/hosts/123/cpuunits
您将在 XML 中收到类似以下的响应:
<host_cpu_units> <host_cpu_unit> <core_id>0</core_id> <cpu_id>0</cpu_id> <socket_id>0</socket_id> <vms> <vm href="/ovirt-engine/api/vms/def" id="def" /> </vms> </host_cpu_unit> <host_cpu_unit> <core_id>0</core_id> <cpu_id>1</cpu_id> <socket_id>1</socket_id> <runs_vdsm>true</runs_vdsm> </host_cpu_unit> <host_cpu_unit> <core_id>0</core_id> <cpu_id>2</cpu_id> <socket_id>2</socket_id> </host_cpu_unit> </host_cpu_units>
7.124.15. external_network_provider_configurations
主机上调配的外部网络提供程序。
此属性为只读。设置它对主机没有影响。此参数的值反映了集群的 Default Network Provider。
7.124.16. katello_errata
列出分配到该主机的所有 Katello 勘误表。
GET /ovirt-engine/api/hosts/123/katelloerrata
您将在 XML 中收到类似以下的响应:
<katello_errata> <katello_erratum href="/ovirt-engine/api/katelloerrata/456" id="456"> <name>RHBA-2013:XYZ</name> <description>The description of the erratum</description> <title>some bug fix update</title> <type>bugfix</type> <issued>2013-11-20T02:00:00.000+02:00</issued> <solution>Few guidelines regarding the solution</solution> <summary>Updated packages that fix one bug are now available for XYZ</summary> <packages> <package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package> ... </packages> </katello_erratum> ... </katello_errata>
7.124.17. statistics
每一主机资源公开一个统计信息子集合,用于特定于主机的统计信息。
XML 表述示例:
<statistics> <statistic href="/ovirt-engine/api/hosts/123/statistics/456" id="456"> <name>memory.total</name> <description>Total memory</description> <kind>gauge</kind> <type>integer</type> <unit>bytes</unit> <values> <value> <datum>25165824000</datum> </value> </values> <host href="/ovirt-engine/api/hosts/123" id="123"/> </statistic> ... </statistics>
这个统计子集合是只读的。
以下列表显示了主机的统计类型:
名称 | 描述 |
---|---|
| 主机上的总内存(以字节为单位)。 |
| 主机上使用的内存(以字节为单位)。 |
| 主机上空闲的内存(以字节为单位)。 |
| 主机上共享的字节内存. |
| 以字节为单位的 I/O 缓冲区. |
| 以字节为单位的 OS 缓存. |
| 主机上的总交换内存(以字节为单位)。 |
| 以字节为单位在主机上交换内存(以字节为单位)。 |
| 交换内存,单位为主机上使用的字节数。 |
| 以字节为单位的交换内存也缓存在主机的内存中。 |
| 内核同页合并的 CPU 使用量百分比. |
| 用户片段的 CPU 使用量百分比. |
| 系统的 CPU 使用量百分比. |
| 空闲 CPU 使用率的百分比. |
| 每五分钟的 CPU 负载平均值. |
| 计算机的启动时间。 |
7.125. HostCpuUnit struct
类型,代表主机的物理 CPU,当前具有当前固定状态。
表 7.169. 属性概述
表 7.170. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 具有其虚拟 CPU 固定到此物理 CPU 的虚拟机列表。 |
7.126. HostDevice struct
表 7.171. 属性概述
7.126.1. 驱动程序
此设备绑定到的驱动程序名称。
例如: pcieport 或
wonderci_hcd
。
表 7.172. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.127. HostDevicePassthrough struct
表 7.173. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.128. HostNic struct
表示主机 NIC.
例如,主机 NIC 的 XML 表述类似如下:
<host_nic href="/ovirt-engine/api/hosts/123/nics/456" id="456"> <name>eth0</name> <boot_protocol>static</boot_protocol> <bridged>true</bridged> <custom_configuration>true</custom_configuration> <ip> <address>192.168.122.39</address> <gateway>192.168.122.1</gateway> <netmask>255.255.255.0</netmask> <version>v4</version> </ip> <ipv6> <gateway>::</gateway> <version>v6</version> </ipv6> <ipv6_boot_protocol>none</ipv6_boot_protocol> <mac> <address>52:54:00:0c:79:1d</address> </mac> <mtu>1500</mtu> <status>up</status> </host_nic>
绑定的接口表示为含有 绑定
和 从属
属性的 HostNic 对象。
例如,绑定主机 NIC 的 XML 表述类似如下:
<host_nic href="/ovirt-engine/api/hosts/123/nics/456" id="456"> <name>bond0</name> <mac address="00:00:00:00:00:00"/> <ip> <address>192.168.122.39</address> <gateway>192.168.122.1</gateway> <netmask>255.255.255.0</netmask> <version>v4</version> </ip> <boot_protocol>dhcp</boot_protocol> <bonding> <options> <option> <name>mode</name> <value>4</value> <type>Dynamic link aggregation (802.3ad)</type> </option> <option> <name>miimon</name> <value>100</value> </option> </options> <slaves> <host_nic id="123"/> <host_nic id="456"/> </slaves> </bonding> <mtu>1500</mtu> <bridged>true</bridged> <custom_configuration>false</custom_configuration> </host_nic>
表 7.174. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
bond 或 bond slave 的 | |
| NIC 的基础接口。 | |
| NIC 的绑定参数。 | |
| NIC 的 IPv4 引导协议配置。 | |
| 定义桥接网络状态。 | |
| ||
| 包含有关此对象的注释的免费文本。 | |
| ||
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| NIC 的 IPv4 地址。 | |
| NIC 的 IPv6 地址。 | |
| NIC 的 IPv6 引导协议配置。 | |
| NIC 的 MAC 地址。 | |
| 接口的最大传输单元。 | |
| 纯文本中的人类可读名称。 | |
| ||
| ||
| ||
| ||
| 描述物理功能 NIC 的虚拟功能配置。 | |
|
7.128.1. ad_aggregator_id
bond 或 bond slave 的 ad_aggregator_id
属性,用于模式 4 中的绑定。绑定模式 4 是 802.3ad 标准,也称为动态链路聚合。(请参阅维基百科与 演示以了解详细信息 )。这只适用于模式 4 中的绑定,或者对作为绑定一部分的 NIC 有效。其他模式中的绑定或模式 4 中不属于绑定的 NIC 不存在。ad_aggregator_id
属性指示哪个绑定从设备处于活动状态。活跃 slave 的 ad_aggregator_id
值与绑定的 ad_aggregator_id
属性的值相同。此参数为只读。设置它不会影响 bond/NIC。它从绑定的 /sys/class/net/bondX/bonding/ad_aggregator
文件和一个 NIC 的 /sys/class/net/ensX/bonding_slave/ad_aggregator_id
文件中检索。
7.128.2. bridged
定义桥接网络状态。网桥网络设置为 true
,无网桥网络 设为 false
。
表 7.175. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| 对接口应连接到的网络的引用。 | |
| 应用到这个 NIC 的标签。 | |
| 对 SR-IOV 虚拟功能 NIC 的物理功能 NIC 的引用。 | |
| 到接口服务质量配置的链接。 | |
| NIC 统计信息的链接。 |
7.128.3. network
对接口应连接到的网络的引用。允许空白网络 ID。
7.128.4. statistics
NIC 统计信息的链接。
HostNic 统计值的数据类型:
- data.current.rx - 收到的数据的每秒字节率。
- data.current.tx - 传输数据的每秒字节率。
- data.current.rx.bps - 收到的数据的每秒位数(自版本 4.2 起)。
- data.current.tx.bps - 传输的数据每秒的位数(自版本 4.2 起)。
- data.total.rx - 收到的数据总数。
- data.total.tx - 总传输的数据。
- error.total.rx - 接收数据的总错误。
- error.total.tx - 传输数据的总错误.
7.129. HostNicVirtualFunctionsConfiguration struct
描述支持 SR-IOV 的物理功能 NIC 的虚拟功能配置。
表 7.176. 属性概述
7.129.1. max_number_of_virtual_functions
NIC 支持的最大虚拟功能数量。此属性为只读。
7.129.2. number_of_virtual_functions
当前定义的虚拟功能数量。0 和 max_number_of_virtual_functions
之间的用户定义的值。
7.130. HostProtocol 枚举
引擎用于与主机通信的协议。
自引擎版本 4.1 起,自
xml
删除后,协议始终设置为 stomp。
表 7.177. 值概述
名称 | 概述 |
---|---|
| 位于 STOMP 上的 JSON-RPC 协议. |
| XML-RPC 协议. |
7.131. HostStatus enum
键入代表主机状态.
表 7.178. 值概述
名称 | 概述 |
---|---|
| 引擎无法针对特定阈值与主机通信,因此现在在通过隔离前尝试连接。 |
| 主机已停机。 |
| 主机处于错误状态。 |
| 主机正在初始化。 |
| 主机安装失败。 |
| 主机正在安装。 |
| 主机操作系统现已安装。 |
| 主机内核已崩溃,现在已经历内存转储。 |
| 主机处于维护状态。 |
| 该主机不正常运行。 |
| 主机未响应。 |
| 主机正在等待管理员批准。 |
| 主机正在准备维护。 |
| 主机正在重新启动。 |
| 主机处于激活过程中。 |
| 主机已启动。 |
7.131.1. 错误
主机处于错误状态。如果我们尝试多次运行虚拟机并且将失败,则会出现此情况。
7.131.2. 初始化
主机正在初始化。这是将主机移至"启动"状态之前的一个中间步骤。
7.131.3. install_failed
主机安装失败。在这种情况下,请查看事件日志以了解安装失败并重新安装。
7.131.4. installing_os
主机操作系统现已安装。使用卫星/Foreman 提供程序并发布裸机调配(发现主机调配)时,此状态很重要。
7.131.5. 维护
主机处于维护状态。当主机处于维护状态时,它无法运行虚拟机。
7.131.6. non_operational
该主机不正常运行。由于各种原因(例如,与存储没有连接、不支持专用网络、不支持集群级别等),可能会发生这种情况。
7.131.7. non_responsive
主机未响应。这意味着引擎无法与主机通信。
7.131.8. pending_approval
主机正在等待管理员批准。这只适用于 vintage ovirt-node / RHV-H。此属性不再相关,因为 Vintage 节点不再被支持,且已弃用。
7.131.9. preparing_for_maintenance
主机正在准备维护。在这一时间段内,引擎确保将所有虚拟机从此主机实时迁移到其他主机。完成所有迁移后,主机将进入"维护"状态。
7.132. HostStorage struct
表 7.179. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 使用 Cinder 驱动程序创建存储域时要传递的选项。 | |
| 包含敏感信息的参数,在使用 Cinder 驱动程序创建存储域时传递。 | |
| 唯一标识符。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| 在尝试进一步恢复操作前重试请求的次数。 | |
| 在重试 NFS 请求前等待响应的秒中的时间。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
7.132.1. driver_options
使用 Cinder 驱动程序创建存储域时要传递的选项。
例如(Kaminario 后端):
POST /ovirt-engine/api/storagedomains/
<storage_domain> <name>kamniraio-cinder</name> <type>managed_block_storage</type> <storage> <type>managed_block_storage</type> <driver_options> <property> <name>san_ip</name> <value>192.168.1.1</value> </property> <property> <name>san_login</name> <value>username</value> </property> <property> <name>san_password</name> <value>password</value> </property> <property> <name>use_multipath_for_image_xfer</name> <value>true</value> </property> <property> <name>volume_driver</name> <value>cinder.volume.drivers.kaminario.kaminario_iscsi.KaminarioISCSIDriver</value> </property> </driver_options> </storage> <host> <name>host</name> </host> </storage_domain>
7.132.2. driver_sensitive_options
包含敏感信息的参数,在使用 Cinder 驱动程序创建存储域时传递。这些参数在保存时会加密。
例如:以下 XML 加密并保存用户名、密码和 SAN IP 地址:
POST /ovirt-engine/api/storagedomains/
<storage_domain> <name>kamniraio-cinder</name> <type>managed_block_storage</type> <storage> <type>managed_block_storage</type> <driver_options> <property> <name>san_ip</name> <value>192.168.1.1</value> </property> <property> <name>san_login</name> <value>username</value> </property> <property> <name>san_password</name> <value>password</value> </property> <property> <name>use_multipath_for_image_xfer</name> <value>true</value> </property> <property> <name>volume_driver</name> <value>cinder.volume.drivers.kaminario.kaminario_iscsi.KaminarioISCSIDriver</value> </property> </driver_options> <driver_sensitive_options> <property> <name>username</name> <value>admin</value> </property> <property> <name>password</name> <value>123</value> </property> <property> <name>san_ip</name> <value>192.168.1.1</value> </property> </driver_sensitive_options> </storage> <host> <name>host</name> </host> </storage_domain>
7.132.3. nfs_retrans
在尝试进一步恢复操作前重试请求的次数。该值必须在 0 到 65535 之间。详情请查看 nfs
man page 中 retrans
挂载选项的描述。
7.132.4. nfs_timeo
在重试 NFS 请求前等待响应的秒中的时间。该值必须在 0 到 65535 之间。如需了解更多详细信息,请参阅 nfs
man page 中 timeo
挂载选项的描述。
表 7.180. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.133. HostType enum
此枚举类型用于确定主机使用哪种类型的操作系统。
表 7.181. 值概述
名称 | 概述 |
---|---|
| 主机包含红帽虚拟化主机(RHVH):红帽企业虚拟化系统管理程序(RHEV-H)的全新实施,它使用与红帽企业 Linux、CentOS 或 Fedora 相同的安装程序。 |
| 该主机包含完整的 Red Hat Enterprise Linux、CentOS 或 Fedora 安装。 |
| 该主机包含红帽企业虚拟化管理程序(RHEV-H),这是红帽企业 Linux、CentOS 或 Fedora 的小型版本,专门用于托管虚拟机。 |
7.133.1. ovirt_node
主机包含红帽虚拟化主机(RHVH):红帽企业虚拟化系统管理程序(RHEV-H)的全新实施,它使用与红帽企业 Linux、CentOS 或 Fedora 相同的安装程序。RHVH 与传统 RHEV-H 之间的主要区别在于,RHVH 具有可写入文件系统,并将自行处理安装,而不是像在传统 RHEV-H 中一样由管理器推送 RPM。
7.133.2. rhev_h
该主机包含红帽企业虚拟化管理程序(RHEV-H),这是红帽企业 Linux、CentOS 或 Fedora 的小型版本,专门用于托管虚拟机。
此属性不再相关,因为 Vintage 节点不再被支持,且已弃用。
7.134. HostedEngine struct
7.135. Icon struct
虚拟机或模板的图标.
表 7.183. 属性概述
7.135.1. media_type
图标文件格式.
其中之一:
-
image/jpeg
-
image/png
-
image/gif
7.136. Identified struct
这个接口是所有代表有标识符的对象类型的基本模型。
7.137. 镜像 结构
代表镜像实体。
表 7.185. 属性概述
表 7.186. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 与此映像关联的存储域。 |
7.138. ImageFileType enum
表示镜像的文件类型。
表 7.187. 值概述
名称 | 概述 |
---|---|
| 映像是一种磁盘格式,可用作虚拟机的磁盘。 |
| 映像是可附加到虚拟机的软盘,例如在 Windows 中安装 VirtIO 驱动程序。 |
| 图像是 ' |
7.138.1. iso
映像是 a .iso
文件,可用作 CD-ROM 来引导和安装虚拟机。
7.139. ImageTransfer struct
此类型包含有关正在执行的映像传输的信息。
表 7.188. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指明此传输是否至少有一个活跃的会话,即客户端和守护进程之间至少有一个实时迁移会话。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
|
该方向指示传输是发送镜像数据( | |
| 上传期间上传或收到的数据格式。 | |
| 唯一标识符。 | |
| 不活跃客户端的超时时间,之后被 Red Hat Virtualization Manager 中止。 | |
| 纯文本中的人类可读名称。 | |
| 镜像传输的当前阶段正在进行中。 | |
| 用户输入或输出的代理服务器的 URL。 | |
| 仅下载指定的映像,而不是整个镜像链。 | |
| 超时策略决定当客户端闲置超过不活动超时时系统如何处理传输。 | |
| 用户可以直接输入或输出的守护进程服务器的 URL。 | |
| 表示已传输的字节数。 |
7.139.1. 方向
该方向指示传输是发送镜像数据(上传
)还是接收镜像数据(下载
)。
如果在添加新传输期间未设置方向,则 上传
传输的默认方向。
7.139.2. 格式
上传期间上传或收到的数据格式。如果没有指定,则默认为磁盘格式。
7.139.3. inactivity_timeout
不活跃客户端的超时时间,之后被 Red Hat Virtualization Manager 中止。要禁用不活动超时,请指定 '0'。如果没有指定,则该值默认为 engine-config
值: TransferImageClientInactivityTimeoutInSeconds。
7.139.4. phase
镜像传输的当前阶段正在进行中。每次传输都需要一个托管的会话,必须打开该会话供用户输入或输出镜像。有关更多文档,请参阅图像传送。
7.139.5. proxy_url
用户输入或输出的代理服务器的 URL。只有镜像传输处于传输阶段时,此属性才可用。详情请查看 阶段
。
7.139.6. Kow
仅下载指定的映像,而不是整个镜像链。
如果为 true,在使用格式="raw" 和方向="download" 时,传输仅包含来自指定磁盘快照的数据,未分配区域则报告为漏洞。默认情况下,传输包含来自所有磁盘快照的数据。
指定磁盘快照时,传输仅包含指定磁盘快照的数据。指定磁盘时,传输仅包含来自活动磁盘 snaphost 的数据。
如果没有使用 format="raw" 或方向="upload",这个参数无效。
示例:下载一个快照:
<image_transfer> <snapshot id="2fb24fa2-a5db-446b-b733-4654661cd56d"/> <direction>download</direction> <format>raw</format> <shallow>true</shallow> </image_transfer>
要下载活跃的快照磁盘镜像(这不能作为磁盘快照访问),请指定磁盘:
<image_transfer> <disk id="ff6be46d-ef5d-41d6-835c-4a68e8956b00"/> <direction>download</direction> <format>raw</format> <shallow>true</shallow> </image_transfer>
在这两种情况下,您现在可以使用 imageio 客户端下载 qcow2 镜像:
from ovirt_imageio import client client.download( transfer.transfer_url, "51275e7d-42e9-491f-9d65-b9211c897eac", backing_file="07c0ccac-0845-4665-9097-d0a3b16cf43b", backing_format="qcow2")
7.139.7. transfer_url
用户可以直接输入或输出的守护进程服务器的 URL。
这是 proxy_url
的替代选择。I.例如,如果客户端可以访问主机计算机,它可以绕过代理并直接传输至主机,从而可能提高吞吐量性能。只有镜像传输处于传输阶段时,此属性才可用。详情请查看 阶段
。
表 7.189. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 与映像传输关联的备份。 | |
| 用于输入或输出的磁盘。 | |
| 用于写入映像的主机,该映像作为输入或输出目标。 | |
| 用于输入或输出的镜像。 | |
| 用于输入或输出的磁盘快照。 |
7.139.8. backup
与映像传输关联的备份。在为作为备份一部分的磁盘启动镜像传输时指定。
7.139.9. 主机
用于写入映像的主机,该映像作为输入或输出目标。如果未指定,将从数据中心随机选择活动主机。
7.139.10. image
用于输入或输出的镜像。
此属性已弃用,因为引擎的版本 4.2。改为使用 disk
或 snapshot
属性。
7.140. ImageTransferDirection enum
在添加新传输时,用户可以选择转让是至映像,选择 上传
,还是从映像中进行传输 - 选择 download
作为 ImageTransferDirection。
表 7.190. 值概述
名称 | 概述 |
---|---|
|
当用户想从镜像流传输数据时,用户必须选择 |
|
当用户想要将数据流传输到镜像时,用户可以选择 |
7.141. ImageTransferPhase enum
映像传输实体可能阶段的列表。这些值各自定义传输流中的特定点。
表 7.191. 值概述
名称 | 概述 |
---|---|
| 此阶段将因用户取消转让而设置。 |
| 此阶段将因系统取消传输而设置。 |
| 此阶段将因用户取消转让而设置。 |
| 此阶段表示用户取消转让,正在进行必要的清理。 |
| 此阶段只能在管理门户中设置,并且表示转移期间出现错误,而且正在最终完成该阶段失败。 |
| |
| 此阶段表示用户取消转让,并进行了必要的清理。 |
| 表示目标镜像失败验证,且无法使用。 |
| 表示传输会话已成功关闭,目标镜像已验证并就绪可用。 |
| 映像传输的初始阶段。 |
| 此阶段表示会话超时,或者出现此传输时出现的一些其他错误;例如 ovirt-imageio-daemon 没有在所选主机上运行。 |
| 此阶段是因为用户使用 pause 进行暂停调用。 |
| |
| 打开传输会话的阶段,客户端可以使用首选工具输入或输出所需的镜像。 |
| 一个未知的阶段。 |
7.141.1. cancelled
此阶段将因用户取消转让而设置。取消只能在管理门户中执行。
7.141.2. finalizing_success
此阶段将在用户调用完成时设置。调用完成对完成传输会话非常重要,并使用目标镜像完成。完成之后,该阶段将更改为 completed_success 或
completed _failure
。
7.141.3. finished_failure
表示目标镜像失败验证,且无法使用。达到此阶段后,镜像传输实体将被删除,目标映像将设置为非法。系统取消传输也将导致.
7.141.4. finished_success
表示传输会话已成功关闭,目标镜像已验证并就绪可用。达到此阶段后,映像传输实体将被删除。
7.141.5. 初始化
映像传输的初始阶段。它在转移会话建立期间设定。会话设定后,阶段将更改为 传输
7.141.6. paused_system
此阶段表示会话超时,或者出现此传输时出现的一些其他错误;例如 ovirt-imageio-daemon 没有在所选主机上运行。要恢复会话,客户端应调用 restore。恢复后,该阶段将变为 恢复。
7.141.7. 恢复
客户端调用恢复了转让的阶段。恢复一个新的会话,在调用新会话后,阶段将更改为 传输
阶段,如果失败,则会更改为 paused_system
。
7.141.8. Unknown
一个未知的阶段。只有在出现无法预计的错误时才会设置此设置。
7.142. ImageTransferTimeoutPolicy enum
定义当客户端在不活动超时秒内不活动时系统如何处理传输。
表 7.192. 值概述
名称 | 概述 |
---|---|
| 取消传输并解锁磁盘。 |
| 强制政策将保留默认设置的传统功能。 |
| 暂停转让。 |
7.142.1. 取消
取消传输并解锁磁盘。对于使用上传方向进行镜像传输,该磁盘将被删除。
7.142.2. legacy
强制政策将保留默认设置的传统功能。如果方向是下载,则默认行为将取消转让,并在上传该方向时暂停传输。
7.142.3. pause
暂停转让。用户可恢复或取消转让。传输暂停时磁盘将保持锁定状态。
7.143. InheritableBoolean enum
代表可以设置或从更高级别上继承的布尔值的枚举。继承顺序为虚拟机 → cluster → engine-config。
表 7.193. 值概述
名称 | 概述 |
---|---|
| 在此级别上将值设为 false。 |
| 继承更高级别的值。 |
| 在此级别上将值设为 true。 |
7.144. Initialization struct
表 7.194. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| 指定 cloud-init 配置的已弃用属性。 | |
| 属性指定用于格式化 cloud-init 网络参数的 cloud-init 协议。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
7.144.1. cloud_init
指定 cloud-init 配置的已弃用属性。
此属性和 CloudInit 类型已弃用,并将在以后的中删除。要指定 cloud-init 配置,请使用 Initialization 类型内的属性。这两种类型的属性之间的映射如下:
CloudInit | 初始化 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7.144.2. cloud_init_network_protocol
属性指定用于格式化 cloud-init 网络参数的 cloud-init 协议。如果省略,则会使用默认值,如 CloudInitNetworkProtocol所述
7.145. InstanceType struct
描述虚拟机的硬件配置。
例如,Migration
实例类型包括 1 个虚拟 CPU 和 4 GiB 内存。它是顶级实体(例如,不绑定到任何数据中心或群集)。用于实例类型以及虚拟机和模板类型常用的属性有:
-
console
-
cpu
-
custom_cpu_model
-
custom_emulated_machine
-
display
-
high_availability
-
io
-
内存
-
memory_policy
-
迁移
-
migration_downtime
-
OS
-
rng_device
-
soundcard_enabled
-
usb
-
virtio_scsi
从实例类型和模板创建虚拟机时,虚拟机将从实例类型继承硬件配置
实例类型继承模板实体的属性,尽管大多数模板属性不在实例类型中使用。
表 7.195. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指定是否以及如何应用自动 CPU 和 NUMA 配置。 | |
| 参考虚拟机的 BIOS 配置. | |
| 包含有关此对象的注释的免费文本。 | |
| 为此虚拟机配置的控制台。 | |
| 虚拟机 CPU 的配置。 | |
| 指定是否以及如何应用 CPU 和 NUMA 配置。 | |
| ||
| 虚拟机创建日期。 | |
| 虚拟机自定义兼容性版本. | |
| ||
| ||
| 发送到 VDSM 的属性,以配置各种 hook。 | |
|
如果为 | |
| 以纯文本格式人类可读的描述。 | |
| 虚拟机显示配置。 | |
| 为此虚拟机配置的域. | |
| 虚拟机高可用性配置。 | |
| 唯一标识符。 | |
| 引用虚拟机的初始化配置. | |
| 用于 IO 线程性能调优。 | |
| 虚拟机的大图标. | |
| 虚拟机/模板租用所在存储域的引用。 | |
| 虚拟机的内存,以字节为单位。 | |
| 参考虚拟机的内存管理配置. | |
| 有关将正在运行的虚拟机迁移到另一台主机的配置。 | |
| 虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。 | |
|
如果为 | |
| 纯文本中的人类可读名称。 | |
| 此虚拟机的起源。 | |
| 虚拟机上安装的操作系统类型。 | |
| 虚拟机放置策略的配置。 | |
| 此虚拟机的随机数字生成器设备配置。 | |
| 集群中虚拟机的序列号. | |
| 虚拟机的小图标. | |
|
如果为 | |
| 此虚拟机被配置至单点登录配置的引用。 | |
|
如果为 | |
|
如果为 | |
| 模板的状态。 | |
| 确定存储错误后如何恢复虚拟机。 | |
| 虚拟机的时区由 oVirt 设置。 | |
|
如果为 | |
|
如果为 | |
| 确定虚拟机是为桌面还是服务器优化。 | |
| 配置此虚拟机的 USB 设备(count、类型)。 | |
| 指明这是基本版本还是另一个模板的子版本。 | |
| 参考 VirtIO SCSI 配置. | |
| 这个字段的 Virtio-SCSI contoller 队列数量需要 virtioScsiMultiQueuesEnabled。如需更多信息,请参阅 virtioScsiMultiQueuesEnabled | |
|
如果为 | |
| 与此模板关联的虚拟机配置。 |
7.145.1. auto_pinning_policy
指定是否以及如何应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后可能会删除它。请使用 CpuPinningPolicy。
7.145.2. cpu
虚拟机 CPU 的配置。
可以在不重新启动虚拟机的情况下更新套接字配置。内核和线程需要重启。
例如:要将套接字数量立即更改为 4,并在重启后将内核和线程数量改为 2,发送以下请求:
PUT /ovirt-engine/api/vms/123
通过请求正文:
<vm> <cpu> <topology> <sockets>4</sockets> <cores>2</cores> <threads>2</threads> </topology> </cpu> </vm>
7.145.3. cpu_pinning_policy
指定是否以及如何应用 CPU 和 NUMA 配置。如果没有指定 CPU 固定字符串之前的行为,则会决定 CpuPinningPolicy 到 None 或 Manual。
7.145.4. custom_compatibility_version
虚拟机自定义兼容性版本.
使虚拟机能够根据自己的兼容性版本进行自定义。如果设置了 custom_compatibility_version
,它将覆盖该特定虚拟机的集群的兼容性版本。
虚拟机的兼容性版本受位于的数据中心的限制,并根据虚拟机计划在其上运行的主机进行检查。
7.145.5. high_availability
虚拟机高可用性配置。如果设置,虚拟机将在意外停机时自动重新启动。
7.145.6. 初始化
引用虚拟机的初始化配置.
自 Red Hat Virtualization 4.1.8 起,可以通过发送空标签来清除此属性。
例如,清除 初始化
属性会发送类似如下的请求:
PUT /ovirt-engine/api/vms/123
这样的请求正文:
<vm> <initialization/> </vm>
对此类请求的响应和带有标头 All-Content: true
的请求仍将包含此属性。
7.145.7. large_icon
虚拟机的大图标.用户设置或引用根据操作系统设置的镜像集.
7.145.8. lease
虚拟机/模板租用所在存储域的引用。
使用租用运行的虚拟机需要检查运行时不会由另一主机获取租期,从而防止此虚拟机的另一个实例在另一主机上运行。这可防止高可用性虚拟机中的脑裂。模板也可为租用定义存储域,以便从该模板创建虚拟机,预先配置此存储域作为租用位置。
7.145.9. 内存
虚拟机的内存,以字节为单位。
例如,要更新虚拟机使其包含 1 Gibibyte(GiB)内存,请发送以下请求:
PUT /ovirt-engine/api/vms/123
使用以下请求正文:
<vm> <memory>1073741824</memory> </vm>
Red Hat Virtualization 3.6 支持内存热插拔。在虚拟机处于 up 状态时,您可以使用上述示例来增加内存。增量的大小必须可以被分成 HotPlugMemoryBlockSizeMb
配置值(默认为256 MiB)。如果此值无法分隔内存大小递增,则内存大小更改仅存储在下一次运行配置中。每个成功的内存热插拔操作都会创建一个或两个新内存设备。
从 Red Hat Virtualization 4.2 开始支持内存热插拔。内存热拔头只能在虚拟机处于启动状态时执行。只有之前热插拔内存设备才能通过热拔出操作删除。请求的内存减少向下舍入,以匹配之前热插拔内存设备的组合大小。请求的内存值存储在下一次运行配置中,而不舍入。
这个示例中的内存会被转换为字节:
1 GiB = 230 字节 = 1073741824 字节。
红帽虚拟化管理器内部将值向下舍入到整个 MiB(1MiB = 220 字节)
7.145.10. migration_downtime
虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。
为虚拟机明确设置,或者使用 engine-config -s DefaultMaximumMigrationDowntime=[value]
7.145.11. Origin
此虚拟机的起源。
可能的值:
-
ovirt
-
rhev
-
vmware
-
Xen
-
external
-
hosted_engine
-
managed_hosted_engine
-
kvm
-
physical_machine
-
hyperv
7.145.12. placement_policy
虚拟机放置策略的配置。
此配置可以更新为将虚拟机固定到一个或多个主机。
固定到多个主机的虚拟机无法实时迁移,但在主机出现故障时,任何配置为高可用性的虚拟机都会自动在虚拟机要固定到的其他主机上重新启动。
例如,要将虚拟机固定到两个主机,请发送以下请求:
PUT /api/vms/123
这样的请求正文:
<vm> <high_availability> <enabled>true</enabled> <priority>1</priority> </high_availability> <placement_policy> <hosts> <host> <name>Host1</name> </host> <host> <name>Host2</name> </host> </hosts> <affinity>pinned</affinity> </placement_policy> </vm>
7.145.13. small_icon
虚拟机的小图标.用户设置或引用根据操作系统设置的镜像集.
7.145.14. sso
此虚拟机被配置至单点登录配置的引用。打开控制台时,可以在虚拟机的操作系统中自动签署该用户。
7.145.15. tpm_enabled
如果为 true
,则会在虚拟机中添加 TPM 设备。默认值为 false
。只有在设置了 "All-Content=true" 标头时,此属性才能在获取时可见。
表 7.196. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用附加到模板的 CD-ROM 设备。 | |
| 虚拟机所属群集的引用。 | |
| 引用此虚拟机使用的 CPU 配置集。 | |
| 引用模板所连接的磁盘。 | |
| 引用附加到模板的图形控制台。 | |
| 介质设备配置. | |
| 引用附加到模板的网络接口。 | |
| 引用附加到模板的用户权限。 | |
| 引用为此虚拟机设置的配额配置。 | |
| 虚拟机所属存储域的引用。 | |
| 引用附加到模板的标签。 | |
| 引用模板所连接的 watchdog 设备。 |
7.146. Io struct
表 7.197. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.147. Ip struct
表示网络接口的 IP 配置。
表 7.198. 属性概述
7.147.1. 地址
IP 地址的文本表示。
例如,IPv4 地址将如下所示:
<ip> <address>192.168.0.1</address> ... </ip>
IPv6 地址将按如下表示:
<ip> <address>2620:52:0:20f0:4216:7eff:feaa:1b50</address> ... </ip>
7.147.2. 子网掩码
网络掩码。
对于 IPv6 地址,该值是 0-128 范围内的整数,代表子网前缀。
7.147.3. version
IP 协议的版本。
从 Manager 的 4.1 版本,此属性为可选,未提供值时,将从 address
属性的值中推断出来。
7.148. IpAddressAssignment struct
表示网络设备的 IP 地址分配。
对于静态启动协议分配,必须在 IP 配置中提供子网掩码和 IP 地址(以及可选的默认网关)。
表 7.199. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 设置用于分配网络设备 IP 配置的引导协议。 | |
| 设置网络设备的 IP 配置。 |
7.149. IpVersion enum
定义 IP 协议版本的值。
表 7.200. 值概述
名称 | 概述 |
---|---|
| IPv4. |
| IPv6. |
7.150. IscsiBond struct
表 7.201. 属性概述
表 7.202. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.151. IscsiDetails struct
7.152. Job struct
表示作业,用于监控系统中某个流的执行。个作业可以在层次结构结构中包含多个步骤。这些步骤可以并行处理,具体取决于流程的实施。
表 7.204. 属性概述
7.152.1. external
指明作业是否源自外部系统。外部作业由作业的创建者从外部进行管理。
7.153. JobStatus enum
表示作业的状态。
表 7.206. 值概述
名称 | 概述 |
---|---|
| 中止的作业状态。 |
| 失败的任务状态。 |
| 完成的作业状态。 |
| 启动的作业状态。 |
| 未知的作业状态。 |
7.153.1. 中止
中止的作业状态。此状态适用于强制中止的外部作业。
7.153.2. 完成
完成的作业状态。此状态描述了已完成的作业执行。
7.153.3. Started
启动的作业状态。此状态表示当前正在执行的作业。
7.153.4. Unknown
未知的作业状态。此状态表示其解析未知的作业,即系统意外重启之前执行的作业。
7.154. KatelloErratum struct
键入代表 Katello 勘误。
表 7.207. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 签发 Katello 勘误的日期。 | |
| 纯文本中的人类可读名称。 | |
| 解决 Katello 勘误报告的问题的软件包列表。 | |
| Katello 勘误的严重性。 | |
| Katello 勘误描述的问题的解决方案。 | |
| Katello 勘误摘要。 | |
| Katello 勘误的标题。 | |
| Katello 勘误的类型。 |
7.154.1. 严重性
Katello 勘误的严重性。
支持的严重级别为 中等
、重要
或 关键
。
7.154.2. type
Katello 勘误的类型。
支持的类型有 漏洞修复
、增强
或 安全性
。
7.155. KdumpStatus enum
表 7.209. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.156. 内核 结构
表 7.210. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.157. ksm struct
7.158. LinkLayerDiscoveryProtocolElement struct
代表由链路层发现协议(LLDP)接收的信息元素。IEEE 802.1AB 将类型、长度、值(TLV)定义为"短语,信息元素的变量长度编码"。此类型表示此类信息元素。
属性 名称
是一个人类可读的字符串,用于描述值的用途,可能不唯一。名称具有冗余性,因为它可以从 类型
、optional oui
和 subtype
创建。名称
的目的是简化对信息元素的阅读。属性 的名称
与 IEEE 802.1AB 第 8 章中使用的字符串完全相同。
特定于组织的信息元素的 类型为
127 种,以及
属性 和
子类型
。
例如,信息元素的 XML 表述可能类似如下:
<link_layer_discovery_protocol_element> <name>Port VLAN Id</name> <oui>32962</oui> <properties> <property> <name>vlan id</name> <value>488</value> </property> <property> <name>vlan name</name> <value>v2-0488-03-0505</value> </property> </properties> <subtype>3</subtype> <type>127</type> </link_layer_discovery_protocol_element>
表 7.212. 属性概述
7.158.1. OUI
组织唯一标识符(OUI)编码为整数。仅在 类型为
127
时可用.
7.158.2. 子类型
组织化定义的子类型,编码为一个整数。仅在 类型为
127
时可用.
7.159. LogMaxMemoryUsedThresholdType enum
描述系统支持的所有最大内存阈值类型。
表 7.213. 值概述
名称 | 概述 |
---|---|
| 绝对值阈值类型. |
| 百分比阈值类型. |
7.159.1. absolute_value_in_mb
绝对值阈值类型.
当指定绝对值时,如果 MB 中的可用内存低于 LogMaxMemoryUsedThreshold
中指定的值,则会记录审计日志事件。
7.159.2. 百分比
百分比阈值类型.
当指定百分比时,如果所使用的内存超过 LogMaxMemoryUsedThreshold
中指定的值,则会记录审计日志事件。
7.160. LogSeverity enum
代表事件的严重性的枚举。
表 7.214. 值概述
名称 | 概述 |
---|---|
| 警报严重性. |
| 错误严重性. |
| 普通严重性. |
| Warning 严重性. |
7.160.1. alert
警报严重性.用于指定需要立即关注的条件。
7.160.2. 错误
错误严重性.用于指定是否存在需要检查的错误。
7.160.3. Normal
普通严重性.用于信息事件.
7.160.4. warning
Warning 严重性.用于警告可能出错的内容。
7.161. LogicalUnit struct
表 7.215. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 单个操作中逻辑单元的底层存储可以丢弃的最大字节数。 | |
| 正确,如果之前在逻辑单元的底层存储中丢弃的块会写回为零。 | |
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
7.161.1. discard_max_size
单个操作中逻辑单元的底层存储可以丢弃的最大字节数。0 表示该设备不支持丢弃功能。
这是软件限制,而非硬件限制,如用于 discard_max_bytes
。
的 queue-sysfs
的文档 中所述
7.161.2. discard_zeroes_data
正确,如果之前在逻辑单元的底层存储中丢弃的块会写回为零。如需更多信息,请参阅用于 discard_zeroes_data
的 queue-sysfs
文档。
自系统版本 4.2.1 起,已删除对此属性的支持,因为 sysfs 文件 discard_zeroes_data
已在内核中弃用。它保留下来以便向后兼容,但值始终为 false
。
7.162. LunStatus enum
表 7.216. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.163. MDevType struct
调解设备是一种软件设备,允许分割物理设备的资源。
详情请查看 Libvirt-MDEV。
7.164. Mac struct
代表虚拟网络接口的 MAC 地址。
表 7.218. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| MAC 地址. |
7.165. MacPool struct
代表 MAC 地址池。
MAC 地址池的 XML 表示示例:
<mac_pool href="/ovirt-engine/api/macpools/123" id="123"> <name>Default</name> <description>Default MAC pool</description> <allow_duplicates>false</allow_duplicates> <default_pool>true</default_pool> <ranges> <range> <from>00:1A:4A:16:01:51</from> <to>00:1A:4A:16:01:E6</to> </range> </ranges> </mac_pool>
表 7.219. 属性概述
7.165.1. allow_duplicates
定义是否允许池中重复的 MAC 地址。如果没有指定,则默认为 false
。
7.165.2. default_pool
定义这是否为默认池。如果没有指定,则默认为 false
。
7.165.3. 范围
定义池的 MAC 地址范围。可以定义多个范围。
表 7.220. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 返回对与 MacPool 相关联的权限的引用。 |
7.166. MemoryOverCommit struct
表 7.221. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.167. MemoryPolicy struct
类似虚拟机实体的内存相关属性的逻辑分组.
表 7.222. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 以字节为单位的内存量,保证不会排空 Balloon 机制。 | |
| 最大虚拟机内存,以字节为单位. | |
| ||
|
7.167.1. Guaranteed
以字节为单位的内存量,保证不会排空 Balloon 机制。
红帽虚拟化管理器内部将此值向下舍入到整个 MiB(1MiB = 220 字节)。
由于 Red Hat Virtualization 4.2 以后,可以更新它,在同一请求中更新提供的内存,并且虚拟机处于 up 状态。
7.167.2. Max
最大虚拟机内存,以字节为单位.
用户以字节为单位提供值,Red Hat Virtualization Manager 会将值向下舍入到最接近的 MiB 值。
例如,如果用户输入值 1073741825(1 GiB + 1 字节),则红帽虚拟化管理器会将该值截断到最接近的最小 MiB 边界:本例中为 1073741824(1 GiB)。
7.168. MessageBrokerType enum
弃用的消息代理类型。
忽略,因为自 Red Hat Virtualization 4.4.0 起,OpenStack Neutron 代理的部署已被丢弃。
表 7.223. 值概述
名称 | 概述 |
---|---|
| |
|
7.169. Method struct
表 7.224. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.170. MigrateOnError enum
表 7.225. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.171. MigrationBandwidth struct
定义迁移所用的带宽。
表 7.226. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 用于分配带宽的方法。 | |
| 以 Mbps 为单位的自定义带宽. |
7.171.1. custom_value
以 Mbps 为单位的自定义带宽.只有在 assignmentMethod
属性是 custom
时才会应用。
7.172. MigrationBandwidthAssignmentMethod enum
定义如何分配迁移带宽。
表 7.227. 值概述
名称 | 概述 |
---|---|
| 如果定义了服务质量,则从服务质量获取带宽。 |
| 以 Mbit/s 为单位的自定义定义带宽. |
| 取系统管理程序上配置的值。 |
7.172.1. auto
如果定义了服务质量,则从服务质量获取带宽。如果未定义服务质量,则从检测到使用的链接速度获取带宽。如果未检测到任何内容,带宽将退回到 hypervisor_default 值。
7.173. MigrationOptions struct
迁移选项的类型。
表 7.228. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 允许被迁移使用的带宽。 | |
| ||
| 指定是否应加密迁移。 |
表 7.229. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
对迁移策略的引用,如使用 |
7.174. MigrationPolicy struct
描述如何处理迁移的策略,如聚合或允许并行迁移数量。
7.175. Network struct
逻辑网络的类型。
逻辑网络 JSON 表示形式的示例:
{ "network" : [ { "data_center" : { "href" : "/ovirt-engine/api/datacenters/123", "id" : "123" }, "stp" : "false", "mtu" : "0", "usages" : { "usage" : [ "vm" ] }, "name" : "ovirtmgmt", "description" : "Management Network", "href" : "/ovirt-engine/api/networks/456", "id" : "456", "link" : [ { "href" : "/ovirt-engine/api/networks/456/permissions", "rel" : "permissions" }, { "href" : "/ovirt-engine/api/networks/456/vnicprofiles", "rel" : "vnicprofiles" }, { "href" : "/ovirt-engine/api/networks/456/labels", "rel" : "labels" } ] } ] }
同一逻辑网络 XML 表示的示例:
<network href="/ovirt-engine/api/networks/456" id="456"> <name>ovirtmgmt</name> <description>Management Network</description> <link href="/ovirt-engine/api/networks/456/permissions" rel="permissions"/> <link href="/ovirt-engine/api/networks/456/vnicprofiles" rel="vnicprofiles"/> <link href="/ovirt-engine/api/networks/456/labels" rel="labels"/> <data_center href="/ovirt-engine/api/datacenters/123" id="123"/> <stp>false</stp> <mtu>0</mtu> <usages> <usage>vm</usage> </usages> </network>
表 7.231. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 弃用的"usages"应该用于将网络定义为显示网络。 | |
| 使用 GET 检索网络时,将报告 DNS 解析器配置。 | |
| 唯一标识符。 | |
| 已弃用,不在使用中。 | |
| 指定网络的最大传输单元。 | |
| 纯文本中的人类可读名称。 | |
| 定义是否在此网络上阻止了同一主机上运行的虚拟机之间的通信。 | |
| 指定在创建网络时是否应自动创建虚拟网络接口配置文件。 | |
| 定义是否对群集中的所有主机强制使用网络。 | |
| 网络的状态。 | |
| 指定网络是否启用了范围树协议。 | |
| 定义网络的一组使用元素。 | |
| 主机上使用的网络的名称。 | |
| VLAN 标签。 |
7.175.1. dns_resolver_configuration
使用 GET 检索网络时,将报告 DNS 解析器配置。在创建新网络或更新现有网络时,这是可选的。
7.175.2. port_isolation
定义是否在此网络上阻止了同一主机上运行的虚拟机之间的通信。仅适用于虚拟机网络。网络管理员负责确保多个主机之间的通信已被阻止。此属性只能在创建网络时设置,且无法编辑。如果未设置值,则允许同一主机上运行的虚拟机之间的通信。
7.175.3. 必需
定义是否对群集中的所有主机强制使用网络。如果主机中省略了"必需" 操作
网络,则该主机将被标记为 non_operational
,
7.175.4. status
网络的状态。non_operational
(如果定义为"必需"的网络并且从任何活跃的集群主机中省略了网络)。运行性,否则 操作
.
7.175.5. 使用方法
定义网络的一组使用元素。
例如,用户可以指定网络将用于虚拟机流量,也可使用 vm
和 display 值来显示
流量。
7.175.6. vdsm_name
主机上使用的网络的名称。当网络名称不适合充当主机上的网桥名称时,VDSM 会自动生成这个替代名称。不合适的名称包含空格、特殊字符或超过 15 个字符,并替换为主机上的 UUID。此参数为只读。设置该设置无效。
表 7.232. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 附加对这个网络的集群的引用。 | |
| 网络所属的数据中心的引用。 | |
| 可选引用创建该网络的 OpenStack 网络提供程序。 | |
| 对网络的可选引用,应用于物理网络访问。 | |
| 对分配给网络的标签的引用。 | |
| 对网络权限的引用。 | |
| 提及服务质量. | |
| 网络配置文件的引用。 |
7.175.7. cluster
附加对这个网络的集群的引用。只有从群集级别访问网络时,才会填充。
7.175.8. external_provider
可选引用创建该网络的 OpenStack 网络提供程序。
如果在创建网络时指定,也会创建匹配的 OpenStack 网络。
7.175.9. external_provider_physical_network
对网络的可选引用,应用于物理网络访问。仅在指定了 external_provider
时有效。
7.176. NetworkAttachment struct
描述主机如何连接到网络。
主机上网络附加的 XML 表示:
<network_attachment href="/ovirt-engine/api/hosts/123/nics/456/networkattachments/789" id="789"> <network href="/ovirt-engine/api/networks/234" id="234"/> <host_nic href="/ovirt-engine/api/hosts/123/nics/123" id="123"/> <in_sync>true</in_sync> <ip_address_assignments> <ip_address_assignment> <assignment_method>static</assignment_method> <ip> <address>192.168.122.39</address> <gateway>192.168.122.1</gateway> <netmask>255.255.255.0</netmask> <version>v4</version> </ip> </ip_address_assignment> </ip_address_assignments> <reported_configurations> <reported_configuration> <name>mtu</name> <expected_value>1500</expected_value> <actual_value>1500</actual_value> <in_sync>true</in_sync> </reported_configuration> <reported_configuration> <name>bridged</name> <expected_value>true</expected_value> <actual_value>true</actual_value> <in_sync>true</in_sync> </reported_configuration> ... </reported_configurations> </network_attachment>
需要具有 名称或
id
的网络元素,才能将网络附加到网络接口卡(NIC)。
例如,要将网络附加到主机网络接口卡,请发送类似如下的请求:
POST /ovirt-engine/api/hosts/123/nics/456/networkattachments
这样的请求正文:
<networkattachment> <network id="234"/> </networkattachment>
要将网络附加到主机,请发送类似如下的请求:
POST /ovirt-engine/api/hosts/123/networkattachments
这样的请求正文:
<network_attachment> <network id="234"/> <host_nic id="456"/> </network_attachment>
ip_address_assignments
和 properties
元素是 updatable 后创建。
例如,要更新网络附加,请发送如下请求:
PUT /ovirt-engine/api/hosts/123/nics/456/networkattachments/789
这样的请求正文:
<network_attachment> <ip_address_assignments> <ip_address_assignment> <assignment_method>static</assignment_method> <ip> <address>7.1.1.1</address> <gateway>7.1.1.2</gateway> <netmask>255.255.255.0</netmask> <version>v4</version> </ip> </ip_address_assignment> </ip_address_assignments> </network_attachment>
要从网络接口卡分离网络,发送类似如下的请求:
DELETE /ovirt-engine/api/hosts/123/nics/456/networkattachments/789
必须明确提交对网络附加配置的更改。
网络附加 的属性
子集合的 XML 表示:
<network_attachment> <properties> <property> <name>bridge_opts</name> <value> forward_delay=1500 group_fwd_mask=0x0 multicast_snooping=1 </value> </property> </properties> ... </network_attachment>
表 7.233. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 使用 GET 检索网络附加时,将报告 DNS 解析器配置。 | |
| 唯一标识符。 | |
| ||
| 网络的 IP 配置。 | |
| 纯文本中的人类可读名称。 | |
| 定义网络配置的自定义属性。 | |
| 配置属性的只读列表。 |
7.176.1. dns_resolver_configuration
使用 GET 检索网络附加时,将报告 DNS 解析器配置。它是在创建新网络附加或更新现有网络时可选的。
7.176.2. 属性
定义网络配置的自定义属性。
网桥选项的集合名称为 bridge_opts。使用空白字符分隔多个条目。以下密钥对 bridge_opts
有效:
名称 | 默认值 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7.177. NetworkConfiguration struct
7.178. NetworkFilter struct
网络过滤器根据定义的规则过滤发送到虚拟机的 NIC 的数据包。
基于 libvirt 支持多种类型的网络过滤器。有关不同网络过滤器的更多详细信息,请参阅此处。
默认网络过滤器基于网络类型和配置。如果 EnableMACAntiSpoofingFilterRules
为 True,则 VM 网络的默认过滤器为 vdsm-no-mac-spoof
,否则不会为未配置过滤器的 OVN
网络配置过滤器。
除了 libvirt 的网络过滤器外,还有两个额外的网络过滤器:第一个过滤器名为 vdsm-no-mac-spoofing
,它由 no-mac-spoofing
和 no-arp-mac-spoofing
组成。第二个称为 ovirt-no-filter
,在为虚拟机的 NIC 定义网络过滤器时使用。ovirt-no-filter
网络过滤器仅用于内部实施,且 NIC 中不存在。
这是 XML 表述的示例:
<network_filter id="00000019-0019-0019-0019-00000000026c"> <name>example-filter</name> <version> <major>4</major> <minor>0</minor> <build>-1</build> <revision>-1</revision> </version> </network_filter>
如果任何部分版本不存在,它将由 -1 表示。
表 7.236. 属性概述
7.178.1. version
特定 NetworkFilter 的最低支持版本。这是 NetworkFilter 首次引入的版本。
7.179. NetworkFilterParameter struct
详情请查看 Libvirt-Filters。这是 XML 表述的示例:
<network_filter_parameter id="123"> <name>IP</name> <value>10.0.1.2</value> </network_filter_parameter>
表 7.237. 属性概述
表 7.238. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 参数与虚拟机 NIC 关联至. |
7.180. NetworkLabelst ruct
表示可添加到主机网络接口和网络的标签。标签通过标签 id
将网络绑定到主机网络接口。
表 7.239. 属性概述
7.181. NetworkPluginType enum
网络插件类型.
指定主机上的供应商驱动程序实现。
自 Red Hat Virtualization Manager 版本 4.2 起,此类型已弃用,以代表 OpenStackNetworkProvider
类型的 external_plugin_type
属性。
表 7.241. 值概述
名称 | 概述 |
---|---|
| Open vSwitch. |
7.181.1. open_vswitch
Open vSwitch.
指定应该将基于 Open vSwitch 的驱动程序实施用于此提供程序。
自 Red Hat Virtualization Manager 版本 4.2 起,这个值已被弃用。改为使用 OpenStackNetworkProvider.external
。
_plugin_type 属性中的字符串 open_
vswitch
7.182. NetworkStatus enum
表 7.242. 值概述
名称 | 概述 |
---|---|
| |
|
7.183. NetworkUsage 枚举
此类型表示在集群中使用网络的用途。
表 7.243. 值概述
名称 | 概述 |
---|---|
| 主机的默认网关和 DNS 解析器配置将从此网络获取。 |
| 网络将用于 SPICE 和 VNC 通信。 |
| 网络将用于 Gluster(brick)数据流量。 |
| 该网络将用于红帽虚拟化管理器和节点之间的通信。 |
| 网络将用于虚拟机迁移。 |
|
7.183.1. default_route
主机的默认网关和 DNS 解析器配置将从此网络获取。
如果此网络附加到主机,则将从网络附加的 dns_resolver_configuration
属性获取 DNS 解析器配置。如果网络附加中没有 dns_resolver_configuration
属性,则会从网络本身的 dns_resolver_configuration
中获取它们。如果 dns_resolver_configuration
属性也没有,则不会设置 DNS 解析器配置。
如果在网络中设置此标记,则主机的默认网关将从网络附加的 ip_address_assignment
的 gateway
属性获取。
7.183.2. 管理
该网络将用于红帽虚拟化管理器和节点之间的通信。这是创建 ovirtmgmt 网桥的网络。
7.184. NfsProfileDetail struct
表 7.244. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.185. NfsVersion enum
表 7.245. 值概述
名称 | 概述 |
---|---|
| |
| |
| |
| NFS 4. |
| |
| NFS 4. |
7.185.1. v4_0
NFS 4.0.
7.185.2. v4_2
NFS 4.2.
7.186. Nic struct
表示虚拟机 NIC.
例如,NIC 的 XML 表示方式如下:
<nic href="/ovirt-engine/api/vms/123/nics/456" id="456"> <name>nic1</name> <vm href="/ovirt-engine/api/vms/123" id="123"/> <interface>virtio</interface> <linked>true</linked> <mac> <address>02:00:00:00:00:00</address> </mac> <plugged>true</plugged> <vnic_profile href="/ovirt-engine/api/vnicprofiles/789" id="789"/> </nic>
表 7.246. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义如何为 NIC 分配 IP 地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 用于 NIC 的驱动程序类型。 | |
| 定义 NIC 是否链接到虚拟机。 | |
| 接口的 MAC 地址。 | |
| 纯文本中的人类可读名称。 | |
| 定义是否应在操作系统启动时激活网络接口。 | |
| 定义是否将 NIC 插入到虚拟机。 | |
| 定义虚拟机的 NIC 配置是否与引擎表示的配置同步。 |
表 7.247. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| 对接口应连接到的网络的引用。 | |
| 与主机 NIC 关联的网络附加的集合链接。 | |
| 到网络过滤器参数的链接。 | |
| 与主机 NIC 关联的网络标签集合链接。 | |
| 与虚拟网络接口关联的已报告设备的集合链接。 | |
| NIC 的统计信息链接。 | |
| (可选)引用设备使用的模板。 | |
| 到允许附加到 SR-IOV NIC 的虚拟功能的网络标签集合的链接。 | |
| 到允许附加到 SR-IOV NIC 的虚拟功能的网络集合的链接。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 | |
| 到关联的虚拟网络接口配置文件的链接。 |
7.186.1. network
对接口应连接到的网络的引用。允许空白网络 ID。
此元素用于创建或更新 NIC 已弃用;改为使用 vnic_profile
。它会被保留,因为它仍然被 初始化
元素使用,作为 IP 地址和其他网络详细信息的拥有者。
7.186.2. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.187. NicConfiguration struct
type 描述了虚拟网络接口的配置。
表 7.248. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| IPv4 引导协议. | |
| IPv4 地址详细信息. | |
| IPv6 地址详细信息. | |
| IPv6 引导协议. | |
| 网络接口名称. | |
| 指定是否应在虚拟机客户机操作系统启动时激活网络接口。 |
7.188. NicInterface enum
定义模拟虚拟网络接口设备模型的选项。
表 7.249. 值概述
名称 | 概述 |
---|---|
| e1000. |
| e1000e. |
| PCI 直通. |
| rtl8139. |
| 双模式 rtl8139, VirtIO. |
| sPAPR VLAN. |
| VirtIO. |
7.189. NicStatus enum
网络接口卡状态.
表 7.250. 值概述
名称 | 概述 |
---|---|
| NIC 已停机且不可访问。 |
| NIC 已启动,可访问。 |
7.190. NotableEvent enum
键入代表 Red Hat Virtualization 服务器中的一个事件子集:用户可能订阅的事件,以接收有关.
表 7.251. 值概述
名称 | 概述 |
---|---|
| HA 保留检查失败 |
| HA 保留检查已过 |
| ETL Service 错误 |
| ETL Service Stopped |
| 引擎备份成功完成 |
| 引擎备份失败 |
| 引擎备份已启动 |
| 引擎 CA 的认证已过期 |
| 引擎 CA 的认证即将过期 |
| 引擎的认证已过期 |
| 引擎的认证即将过期 |
| 引擎已停止 |
| 主机上出现故障的多路径路径 |
| 检测到 brick 状态的变化 |
| 在冲突服务器上添加 Gluster Hook 失败 |
| 添加了 Gluster Hook |
| 在 Gluster Hook 中检测到冲突 |
| 检测到删除 Gluster Hook |
| 检测到新的 Gluster Hook |
| Gluster Hook Disabled |
| 禁用 Gluster Hook 失败 |
| 启用 Gluster Hook |
| 启用 Gluster Hook 失败 |
| 从集群中删除 Gluster Hook 失败 |
| 删除了 Gluster Hook |
| 添加 Gluster 服务器失败 |
| Gluster 服务器已删除 |
| 删除 Gluster 服务器失败 |
| 重新启动 Gluster 服务失败 |
| 重新启动了 Gluster 服务 |
| 启动 Gluster 服务失败 |
| Gluster 服务已启动 |
| 停止 Gluster 服务失败 |
| Gluster 服务已停止 |
| 添加了 Gluster 卷 brick |
| 在 Gluster 卷中添加 brick 失败 |
| 删除卷快照失败 |
| 卷上删除的所有快照 |
| 替换了 Gluster 卷 Brick |
| 确认卷的空间较低 |
| 已创建 Gluster 卷 |
| 无法创建 Gluster 卷 |
| Gluster 卷已删除 |
| 无法删除 Gluster 卷 |
| 用于删除 brick 的 Gluster 卷迁移 |
| 添加了 Gluster 卷选项 |
| 已修改 Gluster 卷选项 |
| 无法设置 Gluster 卷选项 |
| Gluster 卷选项重置 |
| 重置所有 Gluster 卷选项 |
| 无法重置 Gluster 卷选项 |
| Gluster 卷配置文件已启动 |
| 启动 Gluster 卷配置文件失败 |
| Gluster 卷配置文件已停止 |
| 停止 Gluster 卷配置文件失败 |
| Gluster 卷重新平衡完成 |
| 无法从 CLI 查找重新平衡卷的信息。 |
| 已启动 Gluster 卷重新平衡 |
| 从 CLI 开始重新平衡 gluster 卷 |
| 无法启动 Gluster 卷重新平衡 |
| Gluster 卷重新平衡已停止 |
| 无法停止 Gluster 卷重新平衡 |
| Gluster 卷 Bricks Removed |
| 无法删除 Gluster 卷 Bricks |
| 停止从 Gluster 卷移除 brick |
| 从 Gluster 卷停止删除 brick 失败 |
| Gluster 卷替换 Brick Failed |
| Gluster 卷替换 Brick Started |
| 无法启动 Gluster 卷替换 Brick |
| 在卷中激活快照失败 |
| 卷中激活的快照 |
| 无法为集群 ${clusterName} 上的卷 ${glusterVolumeName} 创建快照。 |
| 为集群 ${clusterName} 上的卷 ${glusterVolumeName} 创建的快照 ${snapname}. |
| 在卷中取消激活快照失败 |
| 卷中取消激活的快照 |
| 删除卷快照失败 |
| 卷上删除的快照 |
| 在卷中恢复快照失败 |
| 卷中恢复快照 |
| Gluster 卷已启动 |
| 无法启动 Gluster 卷 |
| Gluster 卷已停止 |
| 无法停止 Gluster 卷 |
| 高可用 VM 失败 |
| 高可用虚拟机重启失败 |
| 激活主机失败 |
| 主机已激活,但托管引擎 HA 服务可能仍然处于维护模式 |
| 批准主机失败 |
| 主机的绑定从状态更改为 down |
| 主机的证书包含无效的主题备用名称(SAN) |
| 主机的证书已过期 |
| 主机的认证即将过期 |
| 主机不响应 |
| 主机 CPU 用量超过定义阈值 |
| 主机内存用量超过定义阈值 |
| 主机交换内存用量超过定义阈值 |
| 在不同主机上重启虚拟机失败 |
| 主机安装失败 |
| 主机网络接口使用量超过定义阈值 |
| 主机的接口将状态更改为 down |
| 主机可用内存低于定义阈值 |
| 主机可用交换内存低于定义阈值 |
| 主机无法恢复 |
| 主机状态设置为不可运行 |
| 由于无法访问的存储域,主机状态设置为不可运行 |
| 因为缺少接口,主机状态被设置为不可运行 |
| 存储响应时间较慢 |
| 主机具有时间drift |
| 主机状态设置为不可运行。 |
| 主机有可用的更新 |
| 主机具有可更新的可用软件包 |
| 从可信集群导入到非可信集群的模板 |
| 从非可信集群导入到可信集群的模板 |
| 将 VM 从可信集群导入到非可信集群 |
| 将虚拟机从不受信任的集群导入到可信集群 |
| 确认低磁盘空间 |
| 低磁盘空间 |
| 非常低的磁盘空间 |
| 访问存储失败 |
| 具有外部 MAC 地址的虚拟机 |
| 主机上没有有效路径的多路径设备 |
| 使用活跃虚拟机在集群中更新了显示网络 |
| 在带有活跃虚拟机的主机上更新了显示网络 |
| 主机上没有出现故障的多路径路径 |
| 存储域的 LV 数量超过阈值 |
| 无法从 CLI 找到用于删除卷上 brick 的信息。 |
| 开始从卷中删除 brick |
| 从 CLI 中为卷上的 brick 移除检测到开始 |
| 无法删除卷 brick |
| 为 Data-Center 选择 SPM 失败 |
| Storage Domain state 设置为 inactive |
| 非可信虚拟机是从可信模板创建的 |
| 从不受信任的模板中创建可信虚拟机 |
| 从可信虚拟机创建不可信模板 |
| 从不受信任的虚拟机中创建可信模板 |
| 主机已切换到维护模式 |
| 主机切换到维护模式,但无法启用托管引擎 HA 维护模式 |
| 将 Host 切换到维护模式失败 |
| 虚拟机从可信集群移到非可信集群 |
| 虚拟机从不受信任的集群移到可信集群 |
| 模板从可信集群移到非可信集群 |
| 模板从不受信任的集群移到可信集群 |
| 连接的虚拟机控制台 |
| 虚拟机控制台断开连接 |
| VM 停机并显示错误 |
| 虚拟机无法在主机上找到 |
| 迁移失败 |
| 开始迁移虚拟机 |
| 虚拟机迁移到目标主机失败 |
| VM 没有响应 |
| VM 已暂停 |
| 虚拟机因为存储 I/O 错误而暂停 |
| 虚拟机因为缺少存储空间而暂停 |
| 由于存储读/写权限问题,虚拟机已被暂停 |
| 虚拟机已暂停,因为未知存储错误 |
| 虚拟机已经恢复为已暂停备份至运行 |
| 虚拟机控制台会话已启动 |
| VM 状态恢复 |
7.190.1. gluster_volume_rebalance_not_found_from_cli
无法从 CLI 查找重新平衡卷的信息。将它标记为 unknown。
7.190.2. host_untrusted
主机状态设置为不可运行。主机不受 attestation 服务信任
7.190.3. remove_gluster_volume_bricks_not_found_from_cli
无法从 CLI 找到用于删除卷上 brick 的信息。将它标记为 unknown。
7.191. NotificationMethod enum
键入代表事件订阅的通知方法。目前,API 只支持 SMTP,未来可能会添加对 SNMP 通知的支持。
表 7.252. 值概述
名称 | 概述 |
---|---|
| 通过电子邮件发送通知. |
| SNMP 通知. |
7.191.1. smtp
通过电子邮件发送通知.
采用 SMTP 通知方法的 event-subscriptions 将在 address 字段中包含一个电子邮件地址。
7.191.2. SNMP
SNMP 通知.
使用 SNMP 通知方法的事件订阅将在地址字段中包含 SNMP 地址。
7.192. NumaNo destruct
代表物理 NUMA 节点。
XML 表述示例:
<host_numa_node href="/ovirt-engine/api/hosts/0923f1ea/numanodes/007cf1ab" id="007cf1ab"> <cpu> <cores> <core> <index>0</index> </core> </cores> </cpu> <index>0</index> <memory>65536</memory> <node_distance>40 20 40 10</node_distance> <host href="/ovirt-engine/api/hosts/0923f1ea" id="0923f1ea"/> </host_numa_node>
表 7.253. 属性概述
表 7.254. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| 每一主机 NUMA 节点资源公开一个统计子集合,用于主机 NUMA 节点特定统计信息。 |
7.192.1. statistics
每一主机 NUMA 节点资源公开一个统计子集合,用于主机 NUMA 节点特定统计信息。
XML 表述示例:
<statistics> <statistic href="/ovirt-engine/api/hosts/123/numanodes/456/statistics/789" id="789"> <name>memory.total</name> <description>Total memory</description> <kind>gauge</kind> <type>integer</type> <unit>bytes</unit> <values> <value> <datum>25165824000</datum> </value> </values> <host_numa_node href="/ovirt-engine/api/hosts/123/numanodes/456" id="456" /> </statistic> ... </statistics>
这个统计子集合是只读的。
下表显示了主机 NUMA 节点的统计类型:
名称 | 描述 |
---|---|
| NUMA 节点上的内存总量,以字节为单位。 |
| NUMA 节点上使用的内存(以字节为单位)。 |
| NUMA 节点上空闲的内存(以字节为单位)。 |
| 用户片段的 CPU 使用量百分比. |
| 系统的 CPU 使用量百分比. |
| 空闲 CPU 使用率的百分比. |
7.193. NumaNodePin struct
表示虚拟 NUMA 节点固定到物理 NUMA 节点。
表 7.255. 属性概述
7.193.1. host_numa_node
弃用.没有功能。
7.193.2. pinned
弃用.应该始终为 true
。
7.194. NumaTuneMode enum
表 7.256. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.195. OpenStackImage struct
表 7.257. 属性概述
表 7.258. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.196. OpenStackImageProvider struct
表 7.259. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义外部提供程序身份验证 URL 地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 定义用户在身份验证过程中的密码。 | |
| 提供程序名称/值属性数组。 | |
| 定义是否需要供应商身份验证。 | |
| 定义 OpenStack Identity API v2 的租户名称。 | |
| 定义外部提供程序的 URL 地址。 | |
| 定义要在身份验证过程中使用的用户名。 |
7.196.1. required_authentication
定义是否需要供应商身份验证。
如果需要身份验证,则身份验证期间将使用 用户名和密码
属性。
7.196.2. tenant_name
定义 OpenStack Identity API v2.0 的租户名称。
表 7.260. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.197. OpenStackNetwork struct
表 7.261. 属性概述
表 7.262. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.198. OpenStackNetworkProvider struct
表 7.263. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 弃用的代理配置设置. | |
| 定义外部提供程序身份验证 URL 地址。 | |
| ||
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 网络插件类型. | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 定义用户在身份验证过程中的密码。 | |
| 网络插件类型. | |
| 定义 OpenStack Identity API v3 的项目域名。 | |
| 定义 OpenStack Identity API v3 的项目名称。 | |
| 提供程序名称/值属性数组。 | |
| 指示提供程序是否只读。 | |
| 定义是否需要供应商身份验证。 | |
| 定义 OpenStack Identity API v2 的租户名称。 | |
| 提供程序的类型。 | |
| 指明该提供程序是否由红帽虚拟化管理。 | |
| 定义外部提供程序的 URL 地址。 | |
|
在 ExternalProvider 中为 OpenStack Identity API v3 定义 | |
| 定义要在身份验证过程中使用的用户名。 |
7.198.1. agent_configuration
弃用的代理配置设置.
忽略,因为自 Red Hat Virtualization 4.4.0 起,OpenStack Neutron 代理的部署已被丢弃。
7.198.2. auto_sync
如果为 true
,则此供应商的网络将自动同步到 Red Hat Virtualization。这意味着此供应商的所有新网络都会被导入,所有丢弃的网络都将从所有将此外部供应商作为默认供应商的集群中删除。如果供应商上更改了网络名称,则会将更改同步到 Red Hat Virtualization 中的网络实体。另外,如果添加了一个具有提供程序作为默认供应商的新集群,则已导入的网络将在同步期间附加到此新群集。
自动启动的导入会触发以下步骤:
- 外部供应商的网络将导入到集群数据中心中拥有该外部供应商作为默认供应商的每个数据中心。
- 将为每个涉及的数据中心和网络创建一个 vNIC 配置集。
- 网络将分配给拥有该外部供应商作为默认供应商的每个集群。
所有用户都可以使用新的 vNIC 配置文件。
默认值为 false
,用于向后兼容。
7.198.3. external_plugin_type
网络插件类型.
通过此属性,您可以在主机上添加或修改外部 NIC 时选择正确的提供程序驱动程序。如果支持自动安装驱动程序(仅适用于某些预定义实施,如 ovirt-provider-ovn
),此属性还允许系统决定在新添加的主机上安装哪些驱动程序实施。
7.198.4. plugin_type
网络插件类型.
自 Red Hat Virtualization Manager 版本 4.2 起,此属性在支持 external_plugin_type
时已弃用。此属性仅对类型为 open_vswitch
的提供商有效,且仅在 external_plugin_type 属性值等于
的值时返回。
open_
vswitch
如果在更新过程中指定了 plugin
,则 _type
和 external_plugin_typeplugin_type
的值将被忽略。
对于外部供应商,这个值不会显示,并在更新请求期间被忽略。
7.198.5. read_only
指示提供程序是否只读。
只读供应商不允许添加、修改或删除网络或子网。允许与端口相关的操作,因为调配虚拟 NIC 需要它们。
7.198.6. required_authentication
定义是否需要供应商身份验证。
如果需要身份验证,则身份验证期间将使用 用户名和密码
属性。
7.198.7. tenant_name
定义 OpenStack Identity API v2.0 的租户名称。
7.198.8. 非受管
指明该提供程序是否由红帽虚拟化管理。
如果为 true
,身份验证和子网控制完全由外部供应商控制,且由 Red Hat Virtualization 管理。
默认值为 false
,用于向后兼容。
表 7.264. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用证书列表。 | |
| 参考 OpenStack 网络列表。 | |
| 引用 OpenStack 网络子网列表。 |
7.199. OpenStackNetworkProviderType enum
OpenStack 网络提供程序可以由 OpenStack Neutron 实施(在这种情况下,Neutron 代理自动安装到主机上),也可以是实施 OpenStack API 的外部提供程序,在这种情况下,虚拟接口驱动程序是手动安装的自定义解决方案。
表 7.265. 值概述
名称 | 概述 |
---|---|
| 表示该提供程序是外部提供商,它实施 OpenStack Neutron API。 |
| 表示提供程序为 OpenStack Neutron。 |
7.199.1. external
表示该提供程序是外部提供商,它实施 OpenStack Neutron API。在这种情况下,虚拟接口驱动程序由外部提供程序实施。
7.199.2. Neutron
表示提供程序为 OpenStack Neutron。标准 OpenStack Neutron 代理用作虚拟接口驱动程序。
7.200. OpenStackProvider struct
表 7.266. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义外部提供程序身份验证 URL 地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 定义用户在身份验证过程中的密码。 | |
| 提供程序名称/值属性数组。 | |
| 定义是否需要供应商身份验证。 | |
| 定义 OpenStack Identity API v2 的租户名称。 | |
| 定义外部提供程序的 URL 地址。 | |
| 定义要在身份验证过程中使用的用户名。 |
7.200.1. required_authentication
定义是否需要供应商身份验证。
如果需要身份验证,则身份验证期间将使用 用户名和密码
属性。
7.200.2. tenant_name
定义 OpenStack Identity API v2.0 的租户名称。
7.201. OpenStackSubnet struct
表 7.267. 属性概述
7.201.1. ip_version
定义 IP 版本。
IPv4 的值可以是 v4,对于 IPv6,可以是 'v
6。
表 7.268. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用管理 OpenStack 网络的服务。 |
7.202. OpenStackVolumeProvider struct
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 7.269. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义外部提供程序身份验证 URL 地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 定义用户在身份验证过程中的密码。 | |
| 提供程序名称/值属性数组。 | |
| 定义是否需要供应商身份验证。 | |
| 定义 OpenStack Identity API v2 的租户名称。 | |
| 定义外部提供程序的 URL 地址。 | |
| 定义要在身份验证过程中使用的用户名。 |
7.202.1. required_authentication
定义是否需要供应商身份验证。
如果需要身份验证,则身份验证期间将使用 用户名和密码
属性。
7.202.2. tenant_name
定义 OpenStack Identity API v2.0 的租户名称。
表 7.270. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
|
7.203. OpenStackVolumeType struct
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 7.271. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
|
表 7.272. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.204. OpenstackVolumeAuthenticationKey struct
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 7.273. 属性概述
表 7.274. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.205. OpenstackVolumeAuthenticationKeyUsageType enum
OpenStack 卷(Cinder)集成已被 Managed Block Storage 替代。
表 7.275. 值概述
名称 | 概述 |
---|---|
|
7.206. OperatingSystem struct
描述操作系统的信息.这同时用于虚拟机和主机。
表 7.276. 属性概述
7.206.1. 引导
配置启动序列。
不用于主机.
7.206.2. cmdline
如果使用 Linux 操作系统,用于启动虚拟机的自定义内核参数。
不用于主机.
7.206.3. custom_kernel_cmdline
主机内核命令行的自定义部分。这将与现有内核命令行合并。
您必须重新安装,然后重新启动主机,以应用此属性所实施的更改。
在每个主机部署过程中,使用 grubby --update-kernel DEFAULT --remove-args <previous_custom_params>
以及当前的内核命令行自定义使用 grubby --update-kernel DEFAULT --args <custom_params>
来应用当前的内核命令行自定义。Manager 在内部跟踪最近应用的内核参数自定义。
此属性目前仅用于主机。
7.206.4. initrd
如果使用 Linux 操作系统,则在 ISO 存储域中自定义初始 ramdisk 的路径.
例如 iso://initramfs-3.10.0-514.6.1.el7.x86_64.img
。
不用于主机.
7.206.5. kernel
如果使用 Linux 操作系统,ISO 存储域中自定义内核的路径.
例如 iso://vmlinuz-3.10.0-514.6.1.el7.x86_64
。
不用于主机.
7.206.6. reported_kernel_cmdline
运行的主机报告的主机内核命令行。
这是一个只读属性。更改此属性的尝试会被静默忽略。
此属性目前仅用于主机。
7.206.7. type
人类可读的操作系统名称。
例如 Fedora
或 RHEL
。通常,操作系统服务返回的其中一个名称。
主机只读.
7.207. OperatingSystemInfo struct
表示客户机操作系统.
表 7.277. 属性概述
7.207.1. large_icon
客户机操作系统的大图标.最大尺寸:宽 150px,高度 120px.
7.207.2. small_icon
客户机操作系统的小图标.最大尺寸:宽度 43px,高度 43px.
7.208. Option struct
7.209. OStype enum
键入代表操作系统的类型。
随着 OperatingSystemInfo 类型的引入,此类型已弃用。操作系统作为 API 中的顶层集合提供:oper_systems
最终用户通过选择这些值之一来声明虚拟机(guest 操作系统)中安装的操作系统类型。此声明使系统能够调优虚拟机配置,以获得更好的用户体验。例如,系统选择最适合操作系统的设备。请注意,系统依赖于用户的选择,且不会通过检查安装的实际 guest 操作系统进行验证。
表 7.279. 值概述
名称 | 概述 |
---|---|
| 其他类型的操作系统,并未由其他值指定。 |
| 除其他值指定的 Linux 之外的 Linux 发行版。 |
| 红帽企业 Linux 3 32 位. |
| 红帽企业 Linux 3 64 位. |
| 红帽企业 Linux 4 32 位. |
| 红帽企业 Linux 4 64 位. |
| 红帽企业 Linux 5 32 位. |
| 红帽企业 Linux 5 64 位. |
| 红帽企业 Linux 6 32 位. |
| 红帽企业 Linux 6 64 位. |
|
此值映射到 |
| Windows 2003 32-bit. |
| Windows 2003 64-bit. |
| Windows 2008 32-bit. |
| Windows 2008 R2 64-bit. |
| Windows 2008 64-bit. |
| Windows 2012 64-bit. |
| Windows 7 32-bit. |
| Windows 7 64-bit. |
| Windows 8 32-bit. |
| Windows 8 64-bit. |
| Windows XP. |
7.210. 软件包 结构
键入代表包.
这是软件包元素的一个示例:
<package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package>
表 7.280. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 软件包的名称。 |
7.211. Payload struct
表 7.281. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.212. PayloadEncoding 枚举
表 7.282. 值概述
名称 | 概述 |
---|---|
| |
|
7.213. Permission struct
类型表示权限。
表 7.283. 属性概述
7.214. Permit struct
类型表示允许。
表 7.285. 属性概述
表 7.286. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对允许所属角色的引用。 |
7.215. PmProxy struct
表 7.287. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.216. PmProxyType enum
表 7.288. 值概述
名称 | 概述 |
---|---|
| 隔离代理从与隔离的主机相同的集群中选择。 |
| 隔离代理从与隔离的主机相同的数据中心选择。 |
| 隔离代理是从与隔离的主机不同的数据中心选择的。 |
7.217. PolicyUnitType enum
包含所有内部策略单元类型的类型。
表 7.289. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.218. PortMirroring struct
7.219. PowerManagement struct
表 7.290. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 主机的主机名或 IP 地址。 | |
| 当使用多个隔离时,指定隔离代理选项。 | |
| 切换主机的自动电源控制以节省能源。 | |
| 指明电源管理配置是启用或禁用的。 | |
| 在关闭 kdump 前,切换是否在主机上运行 kdump。 | |
| 使用选项 name="" 和 value="" 字符串指定的 type= 的隔离选项。 | |
| 有效、稳定的电源管理密码. | |
| 确定电源管理代理。 | |
| 确定主机的电源状态。 | |
| 隔离设备代码. | |
| 用于电源管理的有效用户名。 |
7.219.1. 代理
当使用多个隔离时,指定隔离代理选项。
使用排序子元素来优先选择隔离代理。代理会按照其顺序按顺序运行,直到隔离操作成功为止。当两个或多个隔离代理具有相同的顺序时,它们会被同时运行。其他子元素包括 type、ip、user、password 和 options。
7.219.2. automatic_pm_enabled
切换主机的自动电源控制以节省能源。当设置为 true 时,如果集群的负载较低,则主机将自动关闭,并在需要时再次打开。当主机创建时,这设置为 true,除非被用户禁用。
7.219.3. kdump_detection
在关闭 kdump 前,切换是否在主机上运行 kdump。当设置为 true
时,主机不会在 kdump 过程中关闭。当主机启用了电源管理时,这设置为 true
,除非用户禁用。
7.219.4. type
隔离设备代码.
功能
集合中提供了有效隔离设备代码的列表。
7.220. PowerManagementStatus enum
表 7.291. 值概述
名称 | 概述 |
---|---|
| 主机为 OFF。 |
| 主机是 ON. |
| 未知状态. |
7.221. 产品 结构
7.222. ProductInfo struct
产品信息.
入口点包含一个 product_info
元素,可帮助 API 用户确定 Red Hat Virtualization 环境的真实性。这包括产品的名称、供应商和
版本
。
验证真正的红帽虚拟化环境
以下元素确定真正的 Red Hat Virtualization 环境:
<api> ... <product_info> <name>oVirt Engine</name> <vendor>ovirt.org</vendor> <version> <build>0</build> <full_version>4.1.0_master</full_version> <major>4</major> <minor>1</minor> <revision>0</revision> </version> </product_info> ... </api>
表 7.293. 属性概述
7.222.1. vendor
供应商的名称,如 ovirt.org
。
7.223. ProfileDetail struct
表 7.294. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| ||
|
7.224. 属性 结构
7.225. ProxyTicket struct
表 7.296. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.226. QcowVersion enum
QCOW 版本将卷支持的 qemu 版本指定为 qemu 版本。
该字段可以使用更新 API 进行更新,并且仅报告 QCOW 卷,由创建磁盘的存储域版本决定。版本低于 V4 的存储域支持 QCOW2 版本 2 卷,而 V4 存储域也支持 QCOW2 版本 3。有关不同 QCOW 版本功能的更多信息,请参阅这里。
表 7.297. 值概述
名称 | 概述 |
---|---|
| Copy On Write 默认兼容性版本意味着每个 QEMU 都可以使用它。 |
| QEMU 1 中引入的 Copy On Write 兼容性版本。 |
7.226.1. qcow2_v3
QEMU 1.1 中引入的 Copy On Write 兼容性版本意味着新的格式正在使用中。
7.227. Qos struct
此类型表示用于定义服务质量(QoS)的属性。
对于存储,类型为
storage 的属性 max_throughput
、max_read_throughput
、max_write_throughput
、max_iops
、max_read_iops
和 max_write_iops
相关。
对于具有计算能力的资源,类型为
cpu,属性 cpu_limit
相关。
对于虚拟机网络,类型为 network
,in bound _average、inbound
_peak、in
bound_burst
、outbound_average
、outbound_peak
和 outbound_burst
相关。
对于主机网络,类型为
hostnetwork,属性 outbound _average_linkshare
、outbound_average_upperlimit
和 outbound_average_realtime
相关。
表 7.298. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| % 的最大处理能力. | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 所需的平均入站位率以 Mbps 为单位(每秒多位数)。 | |
| 单个突发中可以传输的数据量(以 MB 为单位)。 | |
| Mbps 的最大入站率(每秒的兆位数)。 | |
| 每秒允许的输入和输出操作数上限。 | |
| 每秒允许的输入操作数量上限。 | |
| 读取操作允许的最大吞吐量. | |
| 允许的最大总吞吐量数. | |
| 每秒允许的输出操作数量上限。 | |
| 写入操作允许的最大吞吐量。 | |
| 纯文本中的人类可读名称。 | |
| 以 Mbps 为单位所需的平均出站位率(每秒Megabits)。 | |
| 加权份额. | |
| 提交率(以 Mbps 为单位)。 | |
| 网络以 Mbps 为单位使用的最大带宽(每 sec 的 Megabits)。 | |
| 单个突发中可以发送的数据量(以 MB 为单位)。 | |
| Mbps 中最大出站率(每 sec 兆位数)。 | |
| 可为此条目分配的资源类型。 |
7.227.1. cpu_limit
% 的最大处理能力.
用于配置计算资源。
7.227.2. inbound_average
所需的平均入站位率以 Mbps 为单位(每秒多位数)。
用于配置虚拟机网络。如果定义,还必须设置 inbound
。
_peak
和 inbound_burst
详情请查看 Libvirt-QOS。
7.227.3. inbound_burst
单个突发中可以传输的数据量(以 MB 为单位)。
用于配置虚拟机网络。如果定义,还必须设置 inbound
。
_average
和 inbound_peak
详情请查看 Libvirt-QOS。
7.227.4. inbound_peak
Mbps 的最大入站率(每秒的兆位数)。
用于配置虚拟机网络。如果定义,还必须设置 inbound
。
_average
和 inbound_burst
详情请查看 Libvirt-QOS。
7.227.5. max_iops
每秒允许的输入和输出操作数上限。
用于配置存储。如果设置了 max_read_iops 或 max_
。
write_iops
,则不得设置 max_read_iops
7.227.6. max_read_iops
每秒允许的输入操作数量上限。
用于配置存储。如果设置了 max_iops,则不能设置 max_iops
。
7.227.7. max_read_throughput
读取操作允许的最大吞吐量.
用于配置存储。如果设置了 max_throughput,则不能设置 max_throughput
。
7.227.8. max_throughput
允许的最大总吞吐量数.
用于配置存储。如果设置了 max_read_throughput 或 max_
。
write_throughput
,则不能设置 max_read_throughput
7.227.9. max_write_iops
每秒允许的输出操作数量上限。
用于配置存储。如果设置了 max_iops,则不能设置 max_iops
。
7.227.10. max_write_throughput
写入操作允许的最大吞吐量。
用于配置存储。如果设置了 max_throughput,则不能设置 max_throughput
。
7.227.11. outbound_average
以 Mbps 为单位所需的平均出站位率(每秒Megabits)。
用于配置虚拟机网络。如果定义,还必须设置 outbound
。
_peak
和 outbound_burst
详情请查看 Libvirt-QOS。
7.227.12. outbound_average_linkshare
加权份额.
用于配置主机网络。相对于附加到同一逻辑链接的其他网络,表示应分配特定网络的逻辑网络的容量。确切的共享取决于该链接上所有网络的共享总和。默认情况下,这是 1 到 100 范围内的一个数字。
7.227.13. outbound_average_realtime
提交率(以 Mbps 为单位)。
用于配置主机网络。网络需要的最小带宽。请求的提交率不受保证,并且将根据网络基础架构和其他网络在同一逻辑链路上请求的提交费率而有所不同。
7.227.14. outbound_average_upperlimit
网络以 Mbps 为单位使用的最大带宽(每 sec 的 Megabits)。
用于配置主机网络。如果提供了 outboundAverageUpperlimit
和 outbound_average_realtime
,则 出站_averageUpperlimit
不能低于 outbound _average_realtime
。
详情请查看 Libvirt-QOS。
7.227.15. outbound_burst
单个突发中可以发送的数据量(以 MB 为单位)。
用于配置虚拟机网络。如果定义,还必须设置 outbound
。
_average
和 outbound_peak
详情请查看 Libvirt-QOS。
7.227.16. outbound_peak
Mbps 中最大出站率(每 sec 兆位数)。
用于配置虚拟机网络。如果定义,还必须设置 outbound
。
_average
和 outbound_burst
详情请查看 Libvirt-QOS。
表 7.299. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| QoS 分配到的数据中心。 |
7.228. QosType enum
此类型表示可分配给服务质量(QoS) 的资源类型。
7.229. Quota struct
代表配额对象。
配额的 XML 示例:
<quota href="/ovirt-engine/api/datacenters/7044934e/quotas/dcad5ddc" id="dcad5ddc"> <name>My Quota</name> <description>A quota for my oVirt environment</description> <cluster_hard_limit_pct>0</cluster_hard_limit_pct> <cluster_soft_limit_pct>0</cluster_soft_limit_pct> <data_center href="/ovirt-engine/api/datacenters/7044934e" id="7044934e"/> <storage_hard_limit_pct>0</storage_hard_limit_pct> <storage_soft_limit_pct>0</storage_soft_limit_pct> </quota>
表 7.301. 属性概述
表 7.302. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.230. QuotaClusterLimit struct
表 7.303. 属性概述
7.231. QuotaModeType enum
表 7.305. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.232. QuotaStorageLimit struct
表 7.306. 属性概述
表 7.307. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.233. Range struct
7.234. Rate struct
确定随机数字生成器设备的最大字节消耗速度。
7.235. RegistrationAffinityGroupMapping struct
此类型描述了如何在对象注册过程中映射关联性组。对象可以是虚拟机、模板等。
使用这个映射的 XML 表述示例:
<action> <registration_configuration> <affinity_group_mappings> <registration_affinity_group_mapping> <from> <name>affinity</name> </from> <to> <name>affinity2</name> </to> </registration_affinity_group_mapping> </affinity_group_mappings> </registration_configuration> </action>
表 7.310. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用原始关联性组。 | |
| 引用目标关联性组。 |
7.235.1. 来自
引用原始关联性组。它可以通过 名称
来指定。
7.236. RegistrationAffinityLabelMapping struct
此类型描述了如何在对象注册过程中映射关联性标签。对象可以是虚拟机、模板等。
使用映射的 XML 表示示例:
<action> <registration_configuration> <affinity_label_mappings> <registration_affinity_label_mapping> <from> <name>affinity_label</name> </from> <to> <name>affinity_label2</name> </to> </registration_affinity_label_mapping> </affinity_label_mappings> </registration_configuration> </action>
表 7.311. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用原始关联性标签。 | |
| 引用目的地关联性标签。 |
7.236.1. 来自
引用原始关联性标签。它可以通过 名称
来指定。
7.237. RegistrationClusterMapping struct
此类型描述了如何在对象注册过程中映射集群。对象可以是虚拟机、模板等。
使用这个映射的 XML 表述示例:
<action> <registration_configuration> <cluster_mappings> <registration_cluster_mapping> <from> <name>myoriginalcluster</name> </from> <to> <name>mynewcluster</name> </to> </registration_cluster_mapping> </cluster_mappings> </registration_configuration> </action>
7.237.1. 来自
引用原始集群。它可使用 id
或 名称
指定。
7.237.2. 为
引用目标集群。它可使用 id
或 名称
指定。
7.238. RegistrationConfiguration struct
此类型描述了对象(虚拟机、模板等)如何注册,用于灾难恢复解决方案的实施。
此类型中包含的每个映射都可用于将原始系统中的对象映射到注册虚拟机或模板的系统中对应的对象。例如,可能会有一个主设置,其中包含在群集 A 上配置的虚拟机,以及一个带有集群 B 的活动次要设置。集群 B 与该虚拟机兼容,如果发生灾难恢复方案,存储域可以导入到次要设置,用户可以将虚拟机注册到群集 B。
在这种情况下,我们可以通过定义集群映射来自动执行恢复过程。注册实体后,其 OVF 将指示它属于群集 A,但映射将指示群集 A 将替换为群集 B。红帽虚拟化管理器应执行该交换机,并将虚拟机注册到次要站点中的群集 B。
集群映射只是一个示例,有不同的映射类型:
- 群集映射.
- LUN 映射.
- 角色映射.
- 域映射.
- 权限映射.
- 关联性组映射.
- 关联性标签映射.
- 虚拟 NIC 配置文件映射.
在 Red Hat Virtualization Manager 中执行寄存器操作后,每个映射都将用于其特定的 OVF 数据。
使用映射的 XML 表述示例:
<action> <registration_configuration> <cluster_mappings> <registration_cluster_mapping> <from> <name>myoriginalcluster</name> </from> <to> <name>mynewcluster</name> </to> </registration_cluster_mapping> </cluster_mappings> <role_mappings> <registration_role_mapping> <from> <name>SuperUser</name> </from> <to> <name>UserVmRunTimeManager</name> </to> </registration_role_mapping> </role_mappings> <domain_mappings> <registration_domain_mapping> <from> <name>redhat</name> </from> <to> <name>internal</name> </to> </registration_domain_mapping> </domain_mappings> <lun_mappings> <registration_lun_mapping> <from id="111"> </from> <to id="222"> <alias>weTestLun</alias> <lun_storage> <type>iscsi</type> <logical_units> <logical_unit id="36001405fb1ddb4b91e44078f1fffcfef"> <address>44.33.11.22</address> <port>3260</port> <portal>1</portal> <target>iqn.2017-11.com.name.redhat:444</target> </logical_unit> </logical_units> </lun_storage> </to> </registration_lun_mapping> </lun_mappings> <affinity_group_mappings> <registration_affinity_group_mapping> <from> <name>affinity</name> </from> <to> <name>affinity2</name> </to> </registration_affinity_group_mapping> </affinity_group_mappings> <affinity_label_mappings> <registration_affinity_label_mapping> <from> <name>affinity_label</name> </from> <to> <name>affinity_label2</name> </to> </registration_affinity_label_mapping> </affinity_label_mappings> <vnic_profile_mappings> <registration_vnic_profile_mapping> <from> <name>gold</name> <network> <name>red</name> </network> </from> <to id="738dd914-8ec8-4a8b-8628-34672a5d449b"/> </registration_vnic_profile_mapping> <registration_vnic_profile_mapping> <from> <name>silver</name> <network> <name>blue</name> </network> </from> <to> <name>copper</name> <network> <name>orange</name> </network> </to> </registration_vnic_profile_mapping> </vnic_profile_mappings> </registration_configuration> </action>
表 7.313. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 描述如何映射关联性组。 | |
| 描述如何映射关联性标签。 | |
| 描述如何映射对象引用的集群。 | |
| 描述如何映射用户的域。 | |
| 描述如何映射 LUN。 | |
| 描述如何映射角色。 | |
| 映射将在注册过程中应用的虚拟 NIC 配置集的规则。 |
7.239. RegistrationDomainMapping struct
此类型描述了如何在对象注册过程中映射用户的域。对象可以是虚拟机、模板等。注意:这是基于用户名相同且仅更改域名这一假设。
使用这个映射的 XML 表述示例:
<action> <registration_configuration> <domain_mappings> <registration_domain_mapping> <from> <name>redhat</name> </from> <to> <name>internal</name> </to> </registration_domain_mapping> </domain_mappings> </registration_configuration> </action>
7.239.1. 来自
引用原始域.它可以通过 名称
来指定。
7.240. RegistrationLunMapping struct
此类型描述了如何在对象注册过程中映射 LUN。对象可以是虚拟机、模板等。
外部 LUN 磁盘是不驻留于存储域中的实体。必须指定它,因为它不需要存在于对象注册的环境中。使用这个映射的 XML 表述示例:
<action> <registration_configuration> <lun_mappings> <registration_lun_mapping> <lun_mappings> <registration_lun_mapping> <from id="111"> </from> <to id="222"> <alias>weTestLun</alias> <lun_storage> <type>iscsi</type> <logical_units> <logical_unit id="36001405fb1ddb4b91e44078f1fffcfef"> <address>44.33.11.22</address> <port>3260</port> <portal>1</portal> <target>iqn.2017-11.com.name.redhat:444</target> </logical_unit> </logical_units> </lun_storage> </to> </registration_lun_mapping> </lun_mappings> </registration_configuration> </action>
7.240.1. 来自
引用原始 LUN。这必须使用 id
属性指定。
7.241. RegistrationRoleMapping struct
此类型描述了如何在对象注册过程中映射角色。对象可以是虚拟机、模板等。
角色映射旨在映射主站点和次要站点之间的角色关联。例如,注册的虚拟机可能有权限,角色 UserVmRunTimeManager
角色。因此,我们可以发送一个映射,它将使用 SuperUser
角色而不是 UserVmRunTimeManager
在第二个设置中注册虚拟机。使用这个映射的 XML 表示示例:
<action> <registration_configuration> <role_mappings> <registration_eole_mapping> <from> <name>SuperUser</name> </from> <to> <name>UserVmRunTimeManager</name> </to> </registration_role_mapping> </role_mappings> </registration_configuration> </action>
7.241.1. 来自
对原始角色的引用.它可以通过 名称
来指定。
7.242. RegistrationVnicProfileMapping struct
将外部虚拟 NIC 配置集映射到 Red Hat Virtualization Manager 中存在的 NIC 配置集。目标可指定为配置文件 ID 或一对配置文件名称和网络名称。
例如,如果所需的虚拟 NIC 配置集映射包括以下行:
源网络名称 | 源网络配置集名称 | 目标虚拟 NIC 配置集 ID\names |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
然后,应将以下代码片段添加到 RegistrationConfiguration
<vnic_profile_mappings> <registration_vnic_profile_mapping> <from> <name>gold</name> <network> <name>red</name> </network> </from> <to id="738dd914-8ec8-4a8b-8628-34672a5d449b"/> </registration_vnic_profile_mapping> <registration_vnic_profile_mapping> <from> <name></name> <network> <name></name> </network> </from> <to id="892a12ec-2028-4451-80aa-ff3bf55d6bac"/> </registration_vnic_profile_mapping> <registration_vnic_profile_mapping> <from> <name>silver</name> <network> <name>blue</name> </network> </from> <to> <name>copper</name> <network> <name>orange</name> </network> </to> </registration_vnic_profile_mapping> <registration_vnic_profile_mapping> <from> <name>platinum</name> <network> <name>yellow</name> </network> </from> <to> <name></name> <network> <name></name> </network> </to> </registration_vnic_profile_mapping> <registration_vnic_profile_mapping> <from> <name>bronze</name> <network> <name>green</name> </network> </from> </registration_vnic_profile_mapping> </vnic_profile_mappings>
表 7.317. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对外部网络和外部网络配置文件的引用。 | |
| 引用现有虚拟 NIC 配置文件. |
7.242.1. 来自
对外部网络和外部网络配置文件的引用。这两个都应通过其 名称
来指定。
7.242.2. 为
引用现有虚拟 NIC 配置文件.它应使用其 名称或
ID
指定。应指定 name
或 id
,但不指定两者。
7.243. ReportedConfiguration struct
7.244. ReportedDevice struct
表 7.319. 属性概述
表 7.320. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.245. ReportedDeviceType enum
表 7.321. 值概述
名称 | 概述 |
---|---|
|
7.246. ResolutionType 枚举
表 7.322. 值概述
名称 | 概述 |
---|---|
| |
|
7.247. RngDevice struct
随机数字生成器(RNG)设备模型.
7.248. RngSource enum
代表随机生成器后端类型.
表 7.324. 值概述
名称 | 概述 |
---|---|
|
从 |
|
从 |
|
从 |
7.248.1. urandom
从 /dev/urandom
设备获取随机数据。
此 RNG 源旨在为非集群识别实体(如 Blank 模板和实例类型)和与具有兼容性版本 4.1 或更高版本的集群关联的实体替换 随机
RNG 源。
7.249. Role struct
代表系统角色。
表 7.325. 属性概述
7.249.1. 可变
定义更新或删除角色的功能。
将 mutable 设置为 false
的角色是预定义角色。
7.250. RoleType enum
键入 表示角色是否为管理角色。授予至少一个管理角色的用户被视为管理员。
表 7.327. 值概述
名称 | 概述 |
---|---|
| 管理角色. |
| 用户角色. |
7.251. SchedulingPolicy struct
表 7.328. 属性概述
7.252. SchedulingPolicyUnit struct
表 7.330. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| ||
| 唯一标识符。 | |
| ||
| 纯文本中的人类可读名称。 | |
| ||
|
7.253. ScsiGenericIO enum
当直接 LUN 磁盘使用 SCSI 直通时,特权 I/O 策略由这个枚举决定。
表 7.331. 值概述
名称 | 概述 |
---|---|
| 禁用 SCSI 直通。 |
| 不允许特权 SCSI I/O。 |
| 允许特权 SCSI I/O. |
7.254. SeLinux struct
在系统中表示 SELinux.
表 7.332. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| SELinux 当前模式. |
7.255. SeLinuxMode enum
表示 SELinux 强制模式.
表 7.333. 值概述
名称 | 概述 |
---|---|
| SELinux 在内核中被禁用。 |
| SELinux 正在运行并强制实施权限。 |
| SELinux 运行和记录,但不强制实施权限。 |
7.256. SerialNumber struct
表 7.334. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
|
7.257. SerialNumberPolicy enum
键入 代表序列号策略。
表 7.335. 值概述
名称 | 概述 |
---|---|
| 此策略允许用户提供任意字符串作为 Serial Number。 |
| 此策略是传统策略。 |
| 此策略用于删除 Serial Number 策略,并将其移到 default: null。 |
| 此策略将使用虚拟机 ID 作为串行号。 |
7.257.1. 主机
此策略是传统策略。它将使用主机 ID 作为串行号。
7.258. Session struct
描述虚拟机的用户会话。
表 7.336. 属性概述
7.258.1. console_user
指明这是否为控制台会话。
控制台用户(SPICE 或 VNC)的值为 true
,其他人(如 RDP 或 SSH)的 值为 false
。
7.258.2. ip
用户从中连接的 IP 地址。
目前仅适用于控制台用户。
7.258.3. 协议
会话使用的协议。
当前未使用.用于关于如何连接用户的信息:通过 SPICE、VNC、SSH 或 RDP.
7.258.4. user
与这个会话相关的用户。
如果用户是控制台用户,则此为实际 Red Hat Virtualization 用户的链接。否则,仅提供用户名。
7.259. SkipIfConnectivityBroken struct
7.259.1. enabled
如果启用,我们将不会在群集中主机超过连接丢失百分比时隔离主机。这可用于防止在群集中存在全局网络问题时出现隔离风暴。
7.259.2. threshold
连接测试的阈值.如果群集中的至少阈值百分比的主机丢失了连接,则不会发生隔离。
7.260. SkipIfSdActive struct
此类型代表隔离策略中与存储相关的配置。
表 7.339. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 如果启用,我们将在主机在存储中维持其租用时跳过隔离。 |
7.260.1. enabled
如果启用,我们将在主机在存储中维持其租用时跳过隔离。这意味着,如果主机仍具有存储访问权限,则它不会被隔离。
7.261. Snapshot struct
表示快照对象。
XML 表述示例:
<snapshot id="456" href="/ovirt-engine/api/vms/123/snapshots/456"> <actions> <link rel="restore" href="/ovirt-engine/api/vms/123/snapshots/456/restore"/> </actions> <vm id="123" href="/ovirt-engine/api/vms/123"/> <description>Virtual Machine 1 - Snapshot A</description> <type>active</type> <date>2010-08-16T14:24:29</date> <persist_memorystate>false</persist_memorystate> </snapshot>
表 7.340. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指定是否以及如何应用自动 CPU 和 NUMA 配置。 | |
| 参考虚拟机的 BIOS 配置. | |
| 包含有关此对象的注释的免费文本。 | |
| 为此虚拟机配置的控制台。 | |
| 虚拟机 CPU 的配置。 | |
| 指定是否以及如何应用 CPU 和 NUMA 配置。 | |
| ||
| 虚拟机创建日期。 | |
| 虚拟机自定义兼容性版本. | |
| ||
| ||
| 发送到 VDSM 的属性,以配置各种 hook。 | |
| 创建此快照的日期。 | |
|
如果为 | |
| 以纯文本格式人类可读的描述。 | |
| 虚拟机显示配置。 | |
| 为此虚拟机配置的域. | |
| 虚拟机的完全限定域名. | |
| 虚拟机上安装什么操作系统. | |
| 虚拟机使用什么时区(由虚拟客户机代理返回)。 | |
|
指明虚拟机是否有带有 | |
| 虚拟机高可用性配置。 | |
| 唯一标识符。 | |
| 引用虚拟机的初始化配置. | |
| 用于 IO 线程性能调优。 | |
| 虚拟机的大图标. | |
| 虚拟机/模板租用所在存储域的引用。 | |
| 虚拟机的内存,以字节为单位。 | |
| 参考虚拟机的内存管理配置. | |
| 有关将正在运行的虚拟机迁移到另一台主机的配置。 | |
| 虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。 | |
|
如果为 | |
| 纯文本中的人类可读名称。 | |
| 虚拟机配置已更改,需要重启虚拟机。 | |
| 如何应用 NUMA 拓扑。 | |
| 此虚拟机的起源。 | |
| 虚拟机上安装的操作系统类型。 | |
| 虚拟机的可选有效负载,用于 ISO 进行配置。 | |
| 指明虚拟机的内存内容是否包含在快照中。 | |
| 虚拟机放置策略的配置。 | |
| 此虚拟机的随机数字生成器设备配置。 | |
|
如果为 | |
| 集群中虚拟机的序列号. | |
| 虚拟机的小图标. | |
| 快照的状态. | |
| 快照类型。 | |
|
如果为 | |
| 此虚拟机被配置至单点登录配置的引用。 | |
|
如果为 | |
| 虚拟机启动的日期。 | |
|
如果为 | |
| 虚拟机的当前状态。 | |
| 当前状态人类可读的详细信息. | |
| 虚拟机被停止的原因。 | |
| 虚拟机停止的日期。 | |
| 确定存储错误后如何恢复虚拟机。 | |
| 虚拟机的时区由 oVirt 设置。 | |
|
如果为 | |
|
如果为 | |
| 确定虚拟机是为桌面还是服务器优化。 | |
| 配置此虚拟机的 USB 设备(count、类型)。 | |
|
如果为 | |
| 参考 VirtIO SCSI 配置. | |
| 这个字段的 Virtio-SCSI contoller 队列数量需要 virtioScsiMultiQueuesEnabled。如需更多信息,请参阅 virtioScsiMultiQueuesEnabled | |
|
如果为 |
7.261.1. auto_pinning_policy
指定是否以及如何应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后可能会删除它。请使用 CpuPinningPolicy。
7.261.2. cpu
虚拟机 CPU 的配置。
可以在不重新启动虚拟机的情况下更新套接字配置。内核和线程需要重启。
例如:要将套接字数量立即更改为 4,并在重启后将内核和线程数量改为 2,发送以下请求:
PUT /ovirt-engine/api/vms/123
通过请求正文:
<vm> <cpu> <topology> <sockets>4</sockets> <cores>2</cores> <threads>2</threads> </topology> </cpu> </vm>
7.261.3. cpu_pinning_policy
指定是否以及如何应用 CPU 和 NUMA 配置。如果没有指定 CPU 固定字符串之前的行为,则会决定 CpuPinningPolicy 到 None 或 Manual。
7.261.4. custom_compatibility_version
虚拟机自定义兼容性版本.
使虚拟机能够根据自己的兼容性版本进行自定义。如果设置了 custom_compatibility_version
,它将覆盖该特定虚拟机的集群的兼容性版本。
虚拟机的兼容性版本受位于的数据中心的限制,并根据虚拟机计划在其上运行的主机进行检查。
7.261.5. high_availability
虚拟机高可用性配置。如果设置,虚拟机将在意外停机时自动重新启动。
7.261.6. 初始化
引用虚拟机的初始化配置.
自 Red Hat Virtualization 4.1.8 起,可以通过发送空标签来清除此属性。
例如,清除 初始化
属性会发送类似如下的请求:
PUT /ovirt-engine/api/vms/123
这样的请求正文:
<vm> <initialization/> </vm>
对此类请求的响应和带有标头 All-Content: true
的请求仍将包含此属性。
7.261.7. large_icon
虚拟机的大图标.用户设置或引用根据操作系统设置的镜像集.
7.261.8. lease
虚拟机/模板租用所在存储域的引用。
使用租用运行的虚拟机需要检查运行时不会由另一主机获取租期,从而防止此虚拟机的另一个实例在另一主机上运行。这可防止高可用性虚拟机中的脑裂。模板也可为租用定义存储域,以便从该模板创建虚拟机,预先配置此存储域作为租用位置。
7.261.9. 内存
虚拟机的内存,以字节为单位。
例如,要更新虚拟机使其包含 1 Gibibyte(GiB)内存,请发送以下请求:
PUT /ovirt-engine/api/vms/123
使用以下请求正文:
<vm> <memory>1073741824</memory> </vm>
Red Hat Virtualization 3.6 支持内存热插拔。在虚拟机处于 up 状态时,您可以使用上述示例来增加内存。增量的大小必须可以被分成 HotPlugMemoryBlockSizeMb
配置值(默认为256 MiB)。如果此值无法分隔内存大小递增,则内存大小更改仅存储在下一次运行配置中。每个成功的内存热插拔操作都会创建一个或两个新内存设备。
从 Red Hat Virtualization 4.2 开始支持内存热插拔。内存热拔头只能在虚拟机处于启动状态时执行。只有之前热插拔内存设备才能通过热拔出操作删除。请求的内存减少向下舍入,以匹配之前热插拔内存设备的组合大小。请求的内存值存储在下一次运行配置中,而不舍入。
这个示例中的内存会被转换为字节:
1 GiB = 230 字节 = 1073741824 字节。
红帽虚拟化管理器内部将值向下舍入到整个 MiB(1MiB = 220 字节)
7.261.10. migration_downtime
虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。
为虚拟机明确设置,或者使用 engine-config -s DefaultMaximumMigrationDowntime=[value]
7.261.11. next_run_configuration_exists
虚拟机配置已更改,需要重启虚拟机。更改的配置在处理虚拟机的关机时应用。
7.261.12. numa_tune_mode
如何应用 NUMA 拓扑。弃用了每个 vNUMA 节点的 NUMA 调优。
7.261.13. Origin
此虚拟机的起源。
可能的值:
-
ovirt
-
rhev
-
vmware
-
Xen
-
external
-
hosted_engine
-
managed_hosted_engine
-
kvm
-
physical_machine
-
hyperv
7.261.14. persist_memorystate
指明虚拟机的内存内容是否包含在快照中。
创建快照时,默认值为 true
。
7.261.15. placement_policy
虚拟机放置策略的配置。
此配置可以更新为将虚拟机固定到一个或多个主机。
固定到多个主机的虚拟机无法实时迁移,但在主机出现故障时,任何配置为高可用性的虚拟机都会自动在虚拟机要固定到的其他主机上重新启动。
例如,要将虚拟机固定到两个主机,请发送以下请求:
PUT /api/vms/123
这样的请求正文:
<vm> <high_availability> <enabled>true</enabled> <priority>1</priority> </high_availability> <placement_policy> <hosts> <host> <name>Host1</name> </host> <host> <name>Host2</name> </host> </hosts> <affinity>pinned</affinity> </placement_policy> </vm>
7.261.16. small_icon
虚拟机的小图标.用户设置或引用根据操作系统设置的镜像集.
7.261.17. sso
此虚拟机被配置至单点登录配置的引用。打开控制台时,可以在虚拟机的操作系统中自动签署该用户。
7.261.18. stop_reason
虚拟机被停止的原因。关闭虚拟机时由用户设置(可选)。
7.261.19. tpm_enabled
如果为 true
,则会在虚拟机中添加 TPM 设备。默认值为 false
。只有在设置了 "All-Content=true" 标头时,此属性才能在获取时可见。
表 7.341. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 可选。 | |
| 在虚拟机上安装的应用程序列表。 | |
| 引用挂载到 CDROM 的 ISO。 | |
| 虚拟机所属群集的引用。 | |
| 引用此虚拟机使用的 CPU 配置集。 | |
| 引用附加到虚拟机的磁盘。 | |
| 链接到快照的磁盘列表。 | |
| 虚拟机 CPU 的动态配置。 | |
| ||
| 引用挂载到软盘的 ISO。 | |
| 为此虚拟机配置的图形控制台列表。 | |
| 引用正在运行的虚拟机的主机。 | |
| 参考与此虚拟机关联的设备。 | |
| 虚拟机配置(可选)可通过其中一个实例类型预定义。 | |
| 列出分配到虚拟机的所有 Katello 勘误表。 | |
| 介质设备配置. | |
| 参考虚拟机上的网络接口设备列表。 | |
| 指此虚拟机使用的 NUMA 节点配置。 | |
| 引用用于创建虚拟机的原始模板。 | |
| 为此虚拟机设置权限. | |
| 引用为此虚拟机设置的配额配置。 | |
| ||
| 为此虚拟机打开的用户会话列表。 | |
| 指的是从虚拟机获取的所有快照。 | |
| 从此虚拟机收集的统计信息。 | |
| 虚拟机所属存储域的引用。 | |
| ||
| 对虚拟机所基于的模板的引用。 | |
| 为此快照所生成的虚拟机。 | |
| 虚拟机所属池的引用(可选) | |
| 引用 Watchdog 配置。 |
7.261.20. affinity_labels
可选。用于标记子集群。
7.261.21. katello_errata
列出分配到虚拟机的所有 Katello 勘误表。
GET /ovirt-engine/api/vms/123/katelloerrata
您将在 XML 中收到类似以下的响应:
<katello_errata> <katello_erratum href="/ovirt-engine/api/katelloerrata/456" id="456"> <name>RHBA-2013:XYZ</name> <description>The description of the erratum</description> <title>some bug fix update</title> <type>bugfix</type> <issued>2013-11-20T02:00:00.000+02:00</issued> <solution>Few guidelines regarding the solution</solution> <summary>Updated packages that fix one bug are now available for XYZ</summary> <packages> <package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package> ... </packages> </katello_erratum> ... </katello_errata>
7.261.22. original_template
引用用于创建虚拟机的原始模板。
如果虚拟机是从模板或其他虚拟机克隆的,则 模板
链接到空白模板,而 original_template
则用于跟踪历史记录。
否则,模板
和 original_template
相同。
7.261.23. statistics
从此虚拟机收集的统计信息。
请注意,只有在虚拟机上安装 Red Hat Virtualization 客户机代理 时才提供一些统计,特别是 memory.buffered
和 memory.cached
。
7.262. SnapshotStatus enum
表示快照的当前状态。
表 7.342. 值概述
名称 | 概述 |
---|---|
| 快照正在预览。 |
| 快照已被锁定。 |
| 快照是确定的。 |
7.262.1. Locked
快照已被锁定。
快照的创建、删除、恢复或预览过程中将锁定。
7.263. SnapshotType enum
表示快照的类型。
表 7.343. 值概述
名称 | 概述 |
---|---|
| 引用虚拟机的当前配置。 |
|
如果 |
| 用户创建的快照. |
| 为无状态虚拟机内部创建的快照。 |
7.263.1. 预览
如果 正在
预览
某些快照,活动快照将变为预览。
换句话说,这是预览前 的活动
快照。
7.263.2. 无状态
为无状态虚拟机内部创建的快照。
此快照在虚拟机启动时创建,并在虚拟机关闭时恢复。
7.264. SpecialObjects struct
此类型包含对特殊对象的引用,如空白模板和标签层次结构的根。
7.265. Spm struct
7.266. SpmStatus enum
表 7.346. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.267. Ssh struct
表 7.347. 属性概述
7.267.1. 指纹
主机 SSH 公钥的指纹.此字段自 4.4.5 起已弃用,并将在以后的中删除。
请改为使用公钥。
7.267.2. public_key
使用 RFC4253 中定义的 SSH 公钥格式的 SSH 公钥。https://tools.ietf.org/html/rfc4253
7.268. SshAuthenticationMethod enum
表 7.348. 值概述
名称 | 概述 |
---|---|
| |
|
7.269. SshPublicKey struct
表 7.349. 属性概述
表 7.350. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.270. Sso struct
表 7.351. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
7.271. SsoMethod enum
表 7.352. 值概述
名称 | 概述 |
---|---|
|
7.272. Statisticst ruct
用于所有统计数据的通用类型。
统计包含各种实体的统计值。以下对象包含统计信息:
- Disk
- 主机
- HostNic
- NumaNode
- NIC
- VM
- GlusterBrick
- 步骤
- GlusterVolume
XML 表述示例:
<statistics> <statistic id="1234" href="/ovirt-engine/api/hosts/1234/nics/1234/statistics/1234"> <name>data.current.rx</name> <description>Receive data rate</description> <values type="DECIMAL"> <value> <datum>0</datum> </value> </values> <type>GAUGE</type> <unit>BYTES_PER_SECOND</unit> <host_nic id="1234" href="/ovirt-engine/api/hosts/1234/nics/1234"/> </statistic> ... </statistics>
这个统计子集合是只读的。
表 7.353. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 统计测量结果的类型。 | |
| 纯文本中的人类可读名称。 | |
| 后续统计值的数据类型。 | |
| 测量统计值的单位或速率。 | |
|
包含 |
表 7.354. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
|
与包含 | |
| ||
| ||
| 对主机 NIC 的引用。 | |
| ||
| ||
| ||
|
7.273. StatisticKind enum
表 7.355. 值概述
名称 | 概述 |
---|---|
| |
|
7.274. StatisticUnit enum
表 7.356. 值概述
名称 | 概述 |
---|---|
| |
| |
| |
| |
| |
| |
|
7.275. Step struct
表示步骤,这是 作业
执行的一部分。步骤用于描述和跟踪作为更广泛的序列一部分的特定执行单元。某些步骤支持报告其进度。
表 7.357. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 步骤的结束时间。 | |
| 指明该步骤是否源自外部系统。 | |
| 步骤中引用的外部系统。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 当前层次结构级别中步骤的顺序. | |
| 步骤进度(如已报告)以百分比表示。 | |
| 步骤的开始时间。 | |
| 步骤的状态。 | |
| 步骤的类型。 |
7.275.1. external
指明该步骤是否源自外部系统。外部步骤由步骤的创建者从外部进行管理。
表 7.358. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 用于步骤执行的主机(可选)。 | |
|
引用当前步骤层次结构顶部 | |
| 引用层次结构中当前步骤的父步骤。 | |
|
7.276. StepEnum enum
键入代表步骤类型。
表 7.359. 值概述
名称 | 概述 |
---|---|
| 执行步骤类型。 |
| 强制步骤类型。 |
|
|
|
|
| 未知步骤类型。 |
| 验证步骤类型。 |
7.276.1. 执行
执行步骤类型。用于跟踪作业的主要执行块。它通常是多个子步骤的父步骤,用于描述执行步骤的部分内容。
7.276.2. 挪威
强制步骤类型。描述完成 该作业
所需的执行后步骤。
7.276.3. rebalancing_volume
重新平衡卷
步骤类型。描述作为 Gluster
流一部分的步骤类型。
7.276.4. removing_bricks
删除 brick
步骤类型。描述作为 Gluster
流一部分的步骤类型。
7.276.5. Unknown
未知步骤类型。描述其原始卷未知的步骤类型。
7.276.6. 验证
验证步骤类型。用于验证参数的正确性和参数执行前的有效性。
7.277. StepStatus enum
表示步骤的状态。
表 7.360. 值概述
名称 | 概述 |
---|---|
| 中止的步骤状态。 |
| 失败的步骤状态。 |
| 完成的步骤状态。 |
| 已启动步骤状态。 |
| 未知步骤状态。 |
7.277.1. 中止
中止的步骤状态。此状态适用于强制中止的外部步骤。
7.277.2. 完成
完成的步骤状态。此状态描述了完成的步骤执行。
7.277.3. Started
已启动步骤状态。此状态代表当前正在执行的一个步骤。
7.277.4. Unknown
未知步骤状态。此状态表示其解析未知的步骤,即系统意外重启之前执行的步骤。
7.278. StorageConnection struct
表示存储服务器连接。
XML 表述示例:
<storage_connection id="123"> <address>mynfs.example.com</address> <type>nfs</type> <path>/exports/mydata</path> </storage_connection>
表 7.361. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 存储服务器连接的地址。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| NFS 存储服务器连接的挂载选项。 | |
| 纯文本中的人类可读名称。 | |
| NFS 存储服务器连接的 NFS 重新传输值。 | |
| NFS 存储服务器连接的 NFS 时间值。 | |
| NFS 存储服务器连接的 NFS 版本。 | |
| iSCSI 存储服务器连接的密码。 | |
| NFS 存储服务器连接的路径。 | |
| iSCSI 存储服务器连接的端口。 | |
| iSCSI 存储服务器连接的门户。 | |
| iSCSI 存储服务器连接的目标。 | |
| 存储服务器连接的类型。 | |
| iSCSI 存储服务器连接的用户名。 | |
| NFS 存储服务器连接的 VFS 类型。 |
表 7.362. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 链接供该存储域使用的 gluster 卷。 | |
|
7.279. StorageConnectionExtension struct
表 7.363. 属性概述
表 7.364. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.280. StorageDomain struct
存储域.
NFS 存储域的 XML 表示,其标识符为 123
:
<storage_domain href="/ovirt-engine/api/storagedomains/123" id="123"> <name>mydata</name> <description>My data</description> <available>38654705664</available> <committed>1073741824</committed> <critical_space_action_blocker>5</critical_space_action_blocker> <external_status>ok</external_status> <master>true</master> <storage> <address>mynfs.example.com</address> <nfs_version>v3</nfs_version> <path>/exports/mydata</path> <type>nfs</type> </storage> <storage_format>v3</storage_format> <type>data</type> <used>13958643712</used> <warning_low_space_indicator>10</warning_low_space_indicator> <wipe_after_delete>false</wipe_after_delete> <data_centers> <data_center href="/ovirt-engine/api/datacenters/456" id="456"/> </data_centers> </storage_domain>
表 7.365. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| 此属性指示数据存储域是否用作备份域。 | |
| 指定存储域的块大小,以字节为单位。 | |
| 包含有关此对象的注释的免费文本。 | |
| ||
| ||
| 以纯文本格式人类可读的描述。 | |
| ||
| ||
| 唯一标识符。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| ||
| ||
| ||
| 指明块存储域是否支持丢弃操作。 | |
| 指明块存储域是否支持丢弃零数据的属性。 | |
| ||
| ||
| ||
|
7.280.1. backup
此属性指示数据存储域是否用作备份域。如果将域设置为 backup,它将用于存储虚拟机和模板用于灾难恢复目的,方式与使用导出存储域相同。此属性仅可用于数据存储域,不适用于 ISO 域或导出存储域。用户可以在创建数据存储域或导入数据存储域时使用此功能。
7.280.2. block_size
指定存储域的块大小,以字节为单位。可以省略,并且在那种情况下,将默认为 512 字节。并非所有存储域都支持所有可能的大小。
7.280.3. discard_after_delete
如果为 true,且此存储域中的磁盘启用了 wipe_after_delete
值,则当磁盘被删除时:
- 首先被擦除。
- 然后丢弃其块。
- 最后它将被删除。
请注意:
-
对于非块存储类型,删除后丢弃始终为
false
。 -
只有存储域 支持丢弃时,
才可
在删除后丢弃。
7.280.4. supports_discard
指明块存储域是否支持丢弃操作。仅当从支持丢弃构建的所有逻辑单元都是 逻辑单元时,存储域 才支持丢弃;也就是说,如果每个逻辑单元的 discard_max_size
值大于 0。这是此存储域中虚拟磁盘启用其 pass_discard
属性的先决条件之一。
7.280.5. supports_discard_zeroes_data
指明块存储域是否支持丢弃零数据的属性。存储域 仅支持从其构建的所有 逻辑单元都支持丢弃零数据的属性;也就是说,如果每个逻辑单元的 discard_zeroes_data
值为 true。
自系统版本 4.2.1 起,已删除对此属性的支持,因为 sysfs 文件 discard_zeroes_data
已在内核中弃用。它保留下来以便向后兼容,但值始终为 false
。
7.280.6. wipe_after_delete
作为此 存储域 上 磁盘的 wipe_after_delete
的默认值。
也就是说,默认情况下,新创建的磁盘将从其存储域中获得其 wipe_after_delete
值。请注意,配置值 SANWipeAfterDelete
作为块存储域的 wipe_after_delete
值的默认值。
表 7.366. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 存储域所连接的数据中心的链接。 | |
| 到存储域所连接的数据中心的一组链接。 | |
| ||
| ||
| ||
| ||
| 主机仅在创建时相关。 | |
| ||
| ||
| ||
| ||
|
7.280.7. data_center
存储域所连接的数据中心的链接。这仅用于向后兼容,因为存储域可以连接到多个数据中心(如果是 ISO 域)。改为使用 dataCenters
元素。
7.281. StorageDomainLease struct
表示驻留于存储域上的租用。
租期是一个位于存储域上特殊卷的 Sanlock 资源,这个 Sanlock 资源用于提供存储基础锁定。
表 7.367. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用锁定所在的存储域。 |
7.282. StorageDomainStatus enum
表 7.368. 值概述
名称 | 概述 |
---|---|
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
7.283. StorageDomainType enum
表 7.369. 值概述
名称 | 概述 |
---|---|
| 数据域用于存储系统中虚拟机和模板的磁盘和快照。 |
| 导出域是用于在数据中心和红帽虚拟化环境之间复制和移动虚拟机和模板的临时存储库。 |
| 映像域存储可以从外部系统导入的映像。 |
| ISO 域存储用于为虚拟机安装和启动操作系统及应用的 ISO 文件(或逻辑 CD)。 |
| 在块存储设备上创建托管块存储域。 |
| 卷域存储逻辑卷,它们可以用作虚拟机的磁盘。 |
7.283.1. data
数据域用于存储系统中虚拟机和模板的磁盘和快照。此外,磁盘快照也存储在数据域中。数据域无法在数据中心间共享。
7.283.2. export
导出域是用于在数据中心和红帽虚拟化环境之间复制和移动虚拟机和模板的临时存储库。导出域也可用于备份虚拟机。导出域可以在数据中心之间移动,但一次只能在一个数据中心内处于活动状态。
7.283.3. image
映像域存储可以从外部系统导入的映像。例如,来自 OpenStack Glance 镜像存储库的镜像。
7.283.4. iso
ISO 域存储用于为虚拟机安装和启动操作系统及应用的 ISO 文件(或逻辑 CD)。ISO 域消除了数据中心对物理介质的需求。ISO 域可以在不同的数据中心之间共享。
7.283.5. managed_block_storage
在块存储设备上创建托管块存储域。这些域由 Cinder 访问和管理。
7.283.6. 卷
卷域存储逻辑卷,它们可以用作虚拟机的磁盘。例如,来自 OpenStack Cincer 块存储服务的卷。
7.284. StorageFormat enum
表 7.370. 值概述
名称 | 概述 |
---|---|
| 存储域格式的版本 1 适用于 NFS、iSCSI 和 FC 存储域。 |
| 存储域格式的版本 2 适用于 iSCSI 和 FC 存储域。 |
| 存储域格式的版本 3 适用于 NFS、POSIX、iSCSI 和 FC 存储域。 |
| 存储域格式的版本 4。 |
| 存储域格式的版本 5 适用于 NFS、POSIX 和 Gluster 存储域。 |
7.284.1. v1
存储域格式的版本 1 适用于 NFS、iSCSI 和 FC 存储域。
每个存储域包含描述其自身结构的元数据,以及用于支持虚拟机磁盘映像的所有物理卷名称。主域还包含存储池中所有域和物理卷名称的元数据。此元数据的总大小限制为 2 KiB,限制池中的存储域数量。模板和虚拟机基础映像是只读的。
7.284.2. v2
存储域格式的版本 2 适用于 iSCSI 和 FC 存储域。
所有存储域和池元数据都存储为逻辑卷标签,而不是写入逻辑卷。有关虚拟机磁盘卷的元数据仍然存储在域中的逻辑卷中。元数据中不再包含物理卷名称。模板和虚拟机基础映像是只读的。
7.284.3. v3
存储域格式的版本 3 适用于 NFS、POSIX、iSCSI 和 FC 存储域。
所有存储域和池元数据都存储为逻辑卷标签,而不是写入逻辑卷。有关虚拟机磁盘卷的元数据仍然存储在域中的逻辑卷中。虚拟机和模板基础映像不再只读。此更改启用实时快照、实时迁移和快照克隆。添加了对 Unicode 元数据的支持,用于非英语卷名称。
7.284.4. v5
存储域格式的版本 5 适用于 NFS、POSIX 和 Gluster 存储域。
添加了对 4096 字节块大小和变量符号链接的支持。
7.285. StorageType enum
键入代表存储域类型。
表 7.371. 值概述
名称 | 概述 |
---|---|
| Cinder 存储域. |
| Fibre-Channel 存储域. |
| Glance 存储域. |
| Gluster-FS 存储域. |
| iSCSI 存储域. |
| 本地存储上的存储域. |
| 托管块存储域. |
| NFS 存储域. |
| POSIX-FS 存储域. |
7.285.1. cinder
Cinder 存储域.有关 Cinder 的更多详细信息,请转至 Cinder。
7.285.2. Glance
Glance 存储域.有关 Glance 的更多详细信息,请转至 Glance。
7.285.3. glusterfs
Gluster-FS 存储域.如需关于 Gluster 的更多详细信息,请参阅 Gluster。
7.285.4. managed_block_storage
托管块存储域.使用 cinderlib 管理的存储域.有关支持的存储驱动程序,请参阅可用驱动程序。
7.286. SwitchType enum
描述 Manager 支持的所有交换机类型。
表 7.372. 值概述
名称 | 概述 |
---|---|
| 原生交换机类型。 |
| Open vSwitch 类型。 |
7.287. SystemOptionst ruct
键入,表示系统的配置选项。
表 7.373. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 各种系统版本的 选项值。 |
7.288. SystemOptionValue struct
键入 表示配置选项的一对值和版本。
7.289. Tag struct
表示系统中的标签。
表 7.375. 属性概述
7.290. Template struct
代表虚拟机模板的类型。模板支持快速实例化具有常见配置和磁盘状态的虚拟机。
表 7.377. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指定是否以及如何应用自动 CPU 和 NUMA 配置。 | |
| 参考虚拟机的 BIOS 配置. | |
| 包含有关此对象的注释的免费文本。 | |
| 为此虚拟机配置的控制台。 | |
| 虚拟机 CPU 的配置。 | |
| 指定是否以及如何应用 CPU 和 NUMA 配置。 | |
| ||
| 虚拟机创建日期。 | |
| 虚拟机自定义兼容性版本. | |
| ||
| ||
| 发送到 VDSM 的属性,以配置各种 hook。 | |
|
如果为 | |
| 以纯文本格式人类可读的描述。 | |
| 虚拟机显示配置。 | |
| 为此虚拟机配置的域. | |
| 虚拟机高可用性配置。 | |
| 唯一标识符。 | |
| 引用虚拟机的初始化配置. | |
| 用于 IO 线程性能调优。 | |
| 虚拟机的大图标. | |
| 虚拟机/模板租用所在存储域的引用。 | |
| 虚拟机的内存,以字节为单位。 | |
| 参考虚拟机的内存管理配置. | |
| 有关将正在运行的虚拟机迁移到另一台主机的配置。 | |
| 虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。 | |
|
如果为 | |
| 纯文本中的人类可读名称。 | |
| 此虚拟机的起源。 | |
| 虚拟机上安装的操作系统类型。 | |
| 虚拟机放置策略的配置。 | |
| 此虚拟机的随机数字生成器设备配置。 | |
| 集群中虚拟机的序列号. | |
| 虚拟机的小图标. | |
|
如果为 | |
| 此虚拟机被配置至单点登录配置的引用。 | |
|
如果为 | |
|
如果为 | |
| 模板的状态。 | |
| 确定存储错误后如何恢复虚拟机。 | |
| 虚拟机的时区由 oVirt 设置。 | |
|
如果为 | |
|
如果为 | |
| 确定虚拟机是为桌面还是服务器优化。 | |
| 配置此虚拟机的 USB 设备(count、类型)。 | |
| 指明这是基本版本还是另一个模板的子版本。 | |
| 参考 VirtIO SCSI 配置. | |
| 这个字段的 Virtio-SCSI contoller 队列数量需要 virtioScsiMultiQueuesEnabled。如需更多信息,请参阅 virtioScsiMultiQueuesEnabled | |
|
如果为 | |
| 与此模板关联的虚拟机配置。 |
7.290.1. auto_pinning_policy
指定是否以及如何应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后可能会删除它。请使用 CpuPinningPolicy。
7.290.2. cpu
虚拟机 CPU 的配置。
可以在不重新启动虚拟机的情况下更新套接字配置。内核和线程需要重启。
例如:要将套接字数量立即更改为 4,并在重启后将内核和线程数量改为 2,发送以下请求:
PUT /ovirt-engine/api/vms/123
通过请求正文:
<vm> <cpu> <topology> <sockets>4</sockets> <cores>2</cores> <threads>2</threads> </topology> </cpu> </vm>
7.290.3. cpu_pinning_policy
指定是否以及如何应用 CPU 和 NUMA 配置。如果没有指定 CPU 固定字符串之前的行为,则会决定 CpuPinningPolicy 到 None 或 Manual。
7.290.4. custom_compatibility_version
虚拟机自定义兼容性版本.
使虚拟机能够根据自己的兼容性版本进行自定义。如果设置了 custom_compatibility_version
,它将覆盖该特定虚拟机的集群的兼容性版本。
虚拟机的兼容性版本受位于的数据中心的限制,并根据虚拟机计划在其上运行的主机进行检查。
7.290.5. high_availability
虚拟机高可用性配置。如果设置,虚拟机将在意外停机时自动重新启动。
7.290.6. 初始化
引用虚拟机的初始化配置.
自 Red Hat Virtualization 4.1.8 起,可以通过发送空标签来清除此属性。
例如,清除 初始化
属性会发送类似如下的请求:
PUT /ovirt-engine/api/vms/123
这样的请求正文:
<vm> <initialization/> </vm>
对此类请求的响应和带有标头 All-Content: true
的请求仍将包含此属性。
7.290.7. large_icon
虚拟机的大图标.用户设置或引用根据操作系统设置的镜像集.
7.290.8. lease
虚拟机/模板租用所在存储域的引用。
使用租用运行的虚拟机需要检查运行时不会由另一主机获取租期,从而防止此虚拟机的另一个实例在另一主机上运行。这可防止高可用性虚拟机中的脑裂。模板也可为租用定义存储域,以便从该模板创建虚拟机,预先配置此存储域作为租用位置。
7.290.9. 内存
虚拟机的内存,以字节为单位。
例如,要更新虚拟机使其包含 1 Gibibyte(GiB)内存,请发送以下请求:
PUT /ovirt-engine/api/vms/123
使用以下请求正文:
<vm> <memory>1073741824</memory> </vm>
Red Hat Virtualization 3.6 支持内存热插拔。在虚拟机处于 up 状态时,您可以使用上述示例来增加内存。增量的大小必须可以被分成 HotPlugMemoryBlockSizeMb
配置值(默认为256 MiB)。如果此值无法分隔内存大小递增,则内存大小更改仅存储在下一次运行配置中。每个成功的内存热插拔操作都会创建一个或两个新内存设备。
从 Red Hat Virtualization 4.2 开始支持内存热插拔。内存热拔头只能在虚拟机处于启动状态时执行。只有之前热插拔内存设备才能通过热拔出操作删除。请求的内存减少向下舍入,以匹配之前热插拔内存设备的组合大小。请求的内存值存储在下一次运行配置中,而不舍入。
这个示例中的内存会被转换为字节:
1 GiB = 230 字节 = 1073741824 字节。
红帽虚拟化管理器内部将值向下舍入到整个 MiB(1MiB = 220 字节)
7.290.10. migration_downtime
虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。
为虚拟机明确设置,或者使用 engine-config -s DefaultMaximumMigrationDowntime=[value]
7.290.11. Origin
此虚拟机的起源。
可能的值:
-
ovirt
-
rhev
-
vmware
-
Xen
-
external
-
hosted_engine
-
managed_hosted_engine
-
kvm
-
physical_machine
-
hyperv
7.290.12. placement_policy
虚拟机放置策略的配置。
此配置可以更新为将虚拟机固定到一个或多个主机。
固定到多个主机的虚拟机无法实时迁移,但在主机出现故障时,任何配置为高可用性的虚拟机都会自动在虚拟机要固定到的其他主机上重新启动。
例如,要将虚拟机固定到两个主机,请发送以下请求:
PUT /api/vms/123
这样的请求正文:
<vm> <high_availability> <enabled>true</enabled> <priority>1</priority> </high_availability> <placement_policy> <hosts> <host> <name>Host1</name> </host> <host> <name>Host2</name> </host> </hosts> <affinity>pinned</affinity> </placement_policy> </vm>
7.290.13. small_icon
虚拟机的小图标.用户设置或引用根据操作系统设置的镜像集.
7.290.14. sso
此虚拟机被配置至单点登录配置的引用。打开控制台时,可以在虚拟机的操作系统中自动签署该用户。
7.290.15. tpm_enabled
如果为 true
,则会在虚拟机中添加 TPM 设备。默认值为 false
。只有在设置了 "All-Content=true" 标头时,此属性才能在获取时可见。
表 7.378. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用附加到模板的 CD-ROM 设备。 | |
| 虚拟机所属群集的引用。 | |
| 引用此虚拟机使用的 CPU 配置集。 | |
| 引用模板所连接的磁盘。 | |
| 引用附加到模板的图形控制台。 | |
| 介质设备配置. | |
| 引用附加到模板的网络接口。 | |
| 引用附加到模板的用户权限。 | |
| 引用为此虚拟机设置的配额配置。 | |
| 虚拟机所属存储域的引用。 | |
| 引用附加到模板的标签。 | |
| 引用模板所连接的 watchdog 设备。 |
7.291. TemplateStatus enum
键入代表虚拟机模板状态的状态。
表 7.379. 值概述
名称 | 概述 |
---|---|
| 此状态表示模板中至少有一个磁盘是非法的。 |
| 此状态表示一些操作会阻止通过模板执行其他操作。 |
| 此状态表示模板有效且可供使用。 |
7.292. TemplateVersion struct
键入表示虚拟机模板版本。
7.292.1. version_number
此版本在模板的版本层次结构中的索引。索引 1 代表模板的原始版本,它也称为基础版本。
表 7.381. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 引用此版本关联的模板。 |
7.293. Ticketst ruct
键入代表允许虚拟机访问的票据。
7.294. TimeZone struct
时区表示.
7.294.1. utc_offset
UTC 偏移.
与 UTC 偏移.
7.295. TransparentHugePages struct
输入代表透明大内存页(THP)支持的内容。
表 7.384. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 启用 THP 支持。 |
7.296. TransportType enum
用于访问 Gluster 卷的协议。
表 7.385. 值概述
名称 | 概述 |
---|---|
| 远程直接内存访问. |
| TCP: |
7.297. UnmanagedNetwork struct
表 7.386. 属性概述
7.298. Usb struct
配置虚拟机的 USB 设备.
7.299. UsbType enum
USB 设备重定向的类型。
表 7.389. 值概述
名称 | 概述 |
---|---|
| 传统 USB 重定向. |
| 本地 USB 重定向. |
7.299.1. legacy
传统 USB 重定向.
从引擎版本 3.6 起,此 USB 类型已弃用,并在版本 4.1 中完全删除。它只会保留,以避免现有脚本中的语法错误。如果使用它,系统将自动替换为 native
。
7.299.2. native
本地 USB 重定向.
本地 USB 重定向允许 Linux 和 Windows 虚拟机的 KVM/SPICE USB 重定向.虚拟机(客户机)计算机不需要针对本地 USB 的客户机安装代理或驱动程序。在 Linux 客户端上,USB 重定向所需的所有软件包都由 virt-viewer
软件包提供。在 Windows 客户端上,还必须安装 usbdk
软件包。
7.300. 用户 结构
代表系统中的用户。
表 7.390. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| ||
| 以纯文本格式人类可读的描述。 | |
| ||
| ||
| 唯一标识符。 | |
| ||
| ||
| 纯文本中的人类可读名称。 | |
| 用户所在的命名空间。 | |
| ||
|
与 | |
| 用户的用户名. | |
| 用户选项允许您保存用于为每个用户自定义设置的键/值属性。 |
7.300.1. namespace
用户所在的命名空间。在使用在 LDAP 服务器中存储用户的授权提供商时,此属性等同于 LDAP 服务器的命名上下文。如需更多信息,请参阅 https://github.com/oVirt/ovirt-engine-extension-aaa-ldap。使用在数据库中存储用户的内置授权提供程序时,此属性将被忽略。如需更多信息,请参阅 https://github.com/oVirt/ovirt-engine-extension-aaa-jdbc。
7.300.2. principal
与 user_name
类似.格式取决于 LDAP 提供程序。对于大多数 LDAP 提供程序,这是 uid
LDAP 属性的值。对于 Active Directory,这是用户主体名称(UPN)。
7.300.3. user_name
用户的用户名.格式取决于授权提供程序类型。在大多数 LDAP 提供程序中,这是 uid
LDAP 属性的值。在 Active Directory 中,它是用户主体名称(UPN)。UPN
或 uid
后必须跟着授权提供程序名称。例如,如果是 LDAP 的 uid
属性,则为:my user@myextension-authz
.对于使用 UPN
的 Active Directory,它为 :myuser@mysubdomain.mydomain.com@myextension-authz
。此属性是添加新用户时必需的参数。
7.300.4. user_options
用户选项允许您保存用于为每个用户自定义设置的键/值属性。请注意,由于版本 4.4.5 已弃用,并保留此属性仅用于向后兼容。以后会将其移除。请改为使用选项端点。
表 7.391. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
| ||
| ||
| 到用户资源的角色子集合的链接。 | |
| ||
| 到用户资源的标签子集合的链接。 |
7.301. UserOptionst ruct
用户选项允许您保存用于为每个用户自定义设置的键/值属性。
表 7.392. 属性概述
7.301.1. 内容
JSON 内容编码为字符串。支持任何有效的 JSON。
表 7.393. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.302. Value struct
7.303. ValueType enum
表 7.395. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.304. VcpuPin struct
7.305. Vendor struct
7.306. 版本 结构
7.307. VgpuPlacement enum
vGPU 放置策略。
它可将 vGPU 放置到第一个可用的物理卡上,或者将它们分布到多个物理卡上。
表 7.399. 值概述
名称 | 概述 |
---|---|
| 使用整合放置. |
| 使用分隔放置. |
7.307.1. 合并
使用整合放置.每个 vGPU 放置在第一个带有可用空间的物理卡上。
这是默认放置,利用物理卡上的所有可用空间。
7.307.2. separated
使用分隔放置.每个 vGPU 都放置在单独的物理卡上(如果可能)。
这对提高 vGPU 性能非常有用。
7.308. VirtioScsi struct
键入代表 virtio-SCSI 支持的内容。如果支持,我们将 virtio 驱动程序用于 SCSI 客户机设备。
表 7.400. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 启用 Virtio SCSI 支持。 |
7.309. VirtualNumaNode struct
代表虚拟 NUMA 节点。
XML 表述示例:
<vm_numa_node href="/ovirt-engine/api/vms/123/numanodes/456" id="456"> <cpu> <cores> <core> <index>0</index> </core> </cores> </cpu> <index>0</index> <memory>1024</memory> <numa_node_pins> <numa_node_pin> <index>0</index> </numa_node_pin> </numa_node_pins> <vm href="/ovirt-engine/api/vms/123" id="123" /> </vm_numa_node>
表 7.401. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| ||
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| ||
| NUMA 节点的内存(以 MB 为单位)。 | |
| 纯文本中的人类可读名称。 | |
| ||
| ||
| 如何应用 NUMA 拓扑。 |
表 7.402. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
| 每一主机 NUMA 节点资源公开一个统计子集合,用于主机 NUMA 节点特定统计信息。 | |
|
7.309.1. statistics
每一主机 NUMA 节点资源公开一个统计子集合,用于主机 NUMA 节点特定统计信息。
XML 表述示例:
<statistics> <statistic href="/ovirt-engine/api/hosts/123/numanodes/456/statistics/789" id="789"> <name>memory.total</name> <description>Total memory</description> <kind>gauge</kind> <type>integer</type> <unit>bytes</unit> <values> <value> <datum>25165824000</datum> </value> </values> <host_numa_node href="/ovirt-engine/api/hosts/123/numanodes/456" id="456" /> </statistic> ... </statistics>
这个统计子集合是只读的。
下表显示了主机 NUMA 节点的统计类型:
名称 | 描述 |
---|---|
| NUMA 节点上的内存总量,以字节为单位。 |
| NUMA 节点上使用的内存(以字节为单位)。 |
| NUMA 节点上空闲的内存(以字节为单位)。 |
| 用户片段的 CPU 使用量百分比. |
| 系统的 CPU 使用量百分比. |
| 空闲 CPU 使用率的百分比. |
7.310. Vlan struct
键入代表虚拟 LAN(VLAN)类型。
表 7.403. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 虚拟局域网 ID. |
7.311. Vm struct
表示虚拟机.
表 7.404. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指定是否以及如何应用自动 CPU 和 NUMA 配置。 | |
| 参考虚拟机的 BIOS 配置. | |
| 包含有关此对象的注释的免费文本。 | |
| 为此虚拟机配置的控制台。 | |
| 虚拟机 CPU 的配置。 | |
| 指定是否以及如何应用 CPU 和 NUMA 配置。 | |
| ||
| 虚拟机创建日期。 | |
| 虚拟机自定义兼容性版本. | |
| ||
| ||
| 发送到 VDSM 的属性,以配置各种 hook。 | |
|
如果为 | |
| 以纯文本格式人类可读的描述。 | |
| 虚拟机显示配置。 | |
| 为此虚拟机配置的域. | |
| 虚拟机的完全限定域名. | |
| 虚拟机上安装什么操作系统. | |
| 虚拟机使用什么时区(由虚拟客户机代理返回)。 | |
|
指明虚拟机是否有带有 | |
| 虚拟机高可用性配置。 | |
| 唯一标识符。 | |
| 引用虚拟机的初始化配置. | |
| 用于 IO 线程性能调优。 | |
| 虚拟机的大图标. | |
| 虚拟机/模板租用所在存储域的引用。 | |
| 虚拟机的内存,以字节为单位。 | |
| 参考虚拟机的内存管理配置. | |
| 有关将正在运行的虚拟机迁移到另一台主机的配置。 | |
| 虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。 | |
|
如果为 | |
| 纯文本中的人类可读名称。 | |
| 虚拟机配置已更改,需要重启虚拟机。 | |
| 如何应用 NUMA 拓扑。 | |
| 此虚拟机的起源。 | |
| 虚拟机上安装的操作系统类型。 | |
| 虚拟机的可选有效负载,用于 ISO 进行配置。 | |
| 虚拟机放置策略的配置。 | |
| 此虚拟机的随机数字生成器设备配置。 | |
|
如果为 | |
| 集群中虚拟机的序列号. | |
| 虚拟机的小图标. | |
|
如果为 | |
| 此虚拟机被配置至单点登录配置的引用。 | |
|
如果为 | |
| 虚拟机启动的日期。 | |
|
如果为 | |
| 虚拟机的当前状态。 | |
| 当前状态人类可读的详细信息. | |
| 虚拟机被停止的原因。 | |
| 虚拟机停止的日期。 | |
| 确定存储错误后如何恢复虚拟机。 | |
| 虚拟机的时区由 oVirt 设置。 | |
|
如果为 | |
|
如果为 | |
| 确定虚拟机是为桌面还是服务器优化。 | |
| 配置此虚拟机的 USB 设备(count、类型)。 | |
|
如果为 | |
| 参考 VirtIO SCSI 配置. | |
| 这个字段的 Virtio-SCSI contoller 队列数量需要 virtioScsiMultiQueuesEnabled。如需更多信息,请参阅 virtioScsiMultiQueuesEnabled | |
|
如果为 |
7.311.1. auto_pinning_policy
指定是否以及如何应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后可能会删除它。请使用 CpuPinningPolicy。
7.311.2. cpu
虚拟机 CPU 的配置。
可以在不重新启动虚拟机的情况下更新套接字配置。内核和线程需要重启。
例如:要将套接字数量立即更改为 4,并在重启后将内核和线程数量改为 2,发送以下请求:
PUT /ovirt-engine/api/vms/123
通过请求正文:
<vm> <cpu> <topology> <sockets>4</sockets> <cores>2</cores> <threads>2</threads> </topology> </cpu> </vm>
7.311.3. cpu_pinning_policy
指定是否以及如何应用 CPU 和 NUMA 配置。如果没有指定 CPU 固定字符串之前的行为,则会决定 CpuPinningPolicy 到 None 或 Manual。
7.311.4. custom_compatibility_version
虚拟机自定义兼容性版本.
使虚拟机能够根据自己的兼容性版本进行自定义。如果设置了 custom_compatibility_version
,它将覆盖该特定虚拟机的集群的兼容性版本。
虚拟机的兼容性版本受位于的数据中心的限制,并根据虚拟机计划在其上运行的主机进行检查。
7.311.5. high_availability
虚拟机高可用性配置。如果设置,虚拟机将在意外停机时自动重新启动。
7.311.6. 初始化
引用虚拟机的初始化配置.
自 Red Hat Virtualization 4.1.8 起,可以通过发送空标签来清除此属性。
例如,清除 初始化
属性会发送类似如下的请求:
PUT /ovirt-engine/api/vms/123
这样的请求正文:
<vm> <initialization/> </vm>
对此类请求的响应和带有标头 All-Content: true
的请求仍将包含此属性。
7.311.7. large_icon
虚拟机的大图标.用户设置或引用根据操作系统设置的镜像集.
7.311.8. lease
虚拟机/模板租用所在存储域的引用。
使用租用运行的虚拟机需要检查运行时不会由另一主机获取租期,从而防止此虚拟机的另一个实例在另一主机上运行。这可防止高可用性虚拟机中的脑裂。模板也可为租用定义存储域,以便从该模板创建虚拟机,预先配置此存储域作为租用位置。
7.311.9. 内存
虚拟机的内存,以字节为单位。
例如,要更新虚拟机使其包含 1 Gibibyte(GiB)内存,请发送以下请求:
PUT /ovirt-engine/api/vms/123
使用以下请求正文:
<vm> <memory>1073741824</memory> </vm>
Red Hat Virtualization 3.6 支持内存热插拔。在虚拟机处于 up 状态时,您可以使用上述示例来增加内存。增量的大小必须可以被分成 HotPlugMemoryBlockSizeMb
配置值(默认为256 MiB)。如果此值无法分隔内存大小递增,则内存大小更改仅存储在下一次运行配置中。每个成功的内存热插拔操作都会创建一个或两个新内存设备。
从 Red Hat Virtualization 4.2 开始支持内存热插拔。内存热拔头只能在虚拟机处于启动状态时执行。只有之前热插拔内存设备才能通过热拔出操作删除。请求的内存减少向下舍入,以匹配之前热插拔内存设备的组合大小。请求的内存值存储在下一次运行配置中,而不舍入。
这个示例中的内存会被转换为字节:
1 GiB = 230 字节 = 1073741824 字节。
红帽虚拟化管理器内部将值向下舍入到整个 MiB(1MiB = 220 字节)
7.311.10. migration_downtime
虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。
为虚拟机明确设置,或者使用 engine-config -s DefaultMaximumMigrationDowntime=[value]
7.311.11. next_run_configuration_exists
虚拟机配置已更改,需要重启虚拟机。更改的配置在处理虚拟机的关机时应用。
7.311.12. numa_tune_mode
如何应用 NUMA 拓扑。弃用了每个 vNUMA 节点的 NUMA 调优。
7.311.13. Origin
此虚拟机的起源。
可能的值:
-
ovirt
-
rhev
-
vmware
-
Xen
-
external
-
hosted_engine
-
managed_hosted_engine
-
kvm
-
physical_machine
-
hyperv
7.311.14. placement_policy
虚拟机放置策略的配置。
此配置可以更新为将虚拟机固定到一个或多个主机。
固定到多个主机的虚拟机无法实时迁移,但在主机出现故障时,任何配置为高可用性的虚拟机都会自动在虚拟机要固定到的其他主机上重新启动。
例如,要将虚拟机固定到两个主机,请发送以下请求:
PUT /api/vms/123
这样的请求正文:
<vm> <high_availability> <enabled>true</enabled> <priority>1</priority> </high_availability> <placement_policy> <hosts> <host> <name>Host1</name> </host> <host> <name>Host2</name> </host> </hosts> <affinity>pinned</affinity> </placement_policy> </vm>
7.311.15. small_icon
虚拟机的小图标.用户设置或引用根据操作系统设置的镜像集.
7.311.16. sso
此虚拟机被配置至单点登录配置的引用。打开控制台时,可以在虚拟机的操作系统中自动签署该用户。
7.311.17. stop_reason
虚拟机被停止的原因。关闭虚拟机时由用户设置(可选)。
7.311.18. tpm_enabled
如果为 true
,则会在虚拟机中添加 TPM 设备。默认值为 false
。只有在设置了 "All-Content=true" 标头时,此属性才能在获取时可见。
表 7.405. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 可选。 | |
| 在虚拟机上安装的应用程序列表。 | |
| 引用挂载到 CDROM 的 ISO。 | |
| 虚拟机所属群集的引用。 | |
| 引用此虚拟机使用的 CPU 配置集。 | |
| 引用附加到虚拟机的磁盘。 | |
| 虚拟机 CPU 的动态配置。 | |
| ||
| 引用挂载到软盘的 ISO。 | |
| 为此虚拟机配置的图形控制台列表。 | |
| 引用正在运行的虚拟机的主机。 | |
| 参考与此虚拟机关联的设备。 | |
| 虚拟机配置(可选)可通过其中一个实例类型预定义。 | |
| 列出分配到虚拟机的所有 Katello 勘误表。 | |
| 介质设备配置. | |
| 参考虚拟机上的网络接口设备列表。 | |
| 指此虚拟机使用的 NUMA 节点配置。 | |
| 引用用于创建虚拟机的原始模板。 | |
| 为此虚拟机设置权限. | |
| 引用为此虚拟机设置的配额配置。 | |
| ||
| 为此虚拟机打开的用户会话列表。 | |
| 指的是从虚拟机获取的所有快照。 | |
| 从此虚拟机收集的统计信息。 | |
| 虚拟机所属存储域的引用。 | |
| ||
| 对虚拟机所基于的模板的引用。 | |
| 虚拟机所属池的引用(可选) | |
| 引用 Watchdog 配置。 |
7.311.19. affinity_labels
可选。用于标记子集群。
7.311.20. katello_errata
列出分配到虚拟机的所有 Katello 勘误表。
GET /ovirt-engine/api/vms/123/katelloerrata
您将在 XML 中收到类似以下的响应:
<katello_errata> <katello_erratum href="/ovirt-engine/api/katelloerrata/456" id="456"> <name>RHBA-2013:XYZ</name> <description>The description of the erratum</description> <title>some bug fix update</title> <type>bugfix</type> <issued>2013-11-20T02:00:00.000+02:00</issued> <solution>Few guidelines regarding the solution</solution> <summary>Updated packages that fix one bug are now available for XYZ</summary> <packages> <package> <name>libipa_hbac-1.9.2-82.11.el6_4.i686</name> </package> ... </packages> </katello_erratum> ... </katello_errata>
7.311.21. original_template
引用用于创建虚拟机的原始模板。
如果虚拟机是从模板或其他虚拟机克隆的,则 模板
链接到空白模板,而 original_template
则用于跟踪历史记录。
否则,模板
和 original_template
相同。
7.311.22. statistics
从此虚拟机收集的统计信息。
请注意,只有在虚拟机上安装 Red Hat Virtualization 客户机代理 时才提供一些统计,特别是 memory.buffered
和 memory.cached
。
7.312. VmAffinity enum
表 7.406. 值概述
名称 | 概述 |
---|---|
| |
| |
|
7.313. VmBase struct
表示基本虚拟机配置.这供虚拟机、模板和实例类型使用。
表 7.407. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指定是否以及如何应用自动 CPU 和 NUMA 配置。 | |
| 参考虚拟机的 BIOS 配置. | |
| 包含有关此对象的注释的免费文本。 | |
| 为此虚拟机配置的控制台。 | |
| 虚拟机 CPU 的配置。 | |
| 指定是否以及如何应用 CPU 和 NUMA 配置。 | |
| ||
| 虚拟机创建日期。 | |
| 虚拟机自定义兼容性版本. | |
| ||
| ||
| 发送到 VDSM 的属性,以配置各种 hook。 | |
|
如果为 | |
| 以纯文本格式人类可读的描述。 | |
| 虚拟机显示配置。 | |
| 为此虚拟机配置的域. | |
| 虚拟机高可用性配置。 | |
| 唯一标识符。 | |
| 引用虚拟机的初始化配置. | |
| 用于 IO 线程性能调优。 | |
| 虚拟机的大图标. | |
| 虚拟机/模板租用所在存储域的引用。 | |
| 虚拟机的内存,以字节为单位。 | |
| 参考虚拟机的内存管理配置. | |
| 有关将正在运行的虚拟机迁移到另一台主机的配置。 | |
| 虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。 | |
|
如果为 | |
| 纯文本中的人类可读名称。 | |
| 此虚拟机的起源。 | |
| 虚拟机上安装的操作系统类型。 | |
| 虚拟机放置策略的配置。 | |
| 此虚拟机的随机数字生成器设备配置。 | |
| 集群中虚拟机的序列号. | |
| 虚拟机的小图标. | |
|
如果为 | |
| 此虚拟机被配置至单点登录配置的引用。 | |
|
如果为 | |
|
如果为 | |
| 确定存储错误后如何恢复虚拟机。 | |
| 虚拟机的时区由 oVirt 设置。 | |
|
如果为 | |
|
如果为 | |
| 确定虚拟机是为桌面还是服务器优化。 | |
| 配置此虚拟机的 USB 设备(count、类型)。 | |
| 参考 VirtIO SCSI 配置. | |
| 这个字段的 Virtio-SCSI contoller 队列数量需要 virtioScsiMultiQueuesEnabled。如需更多信息,请参阅 virtioScsiMultiQueuesEnabled | |
|
如果为 |
7.313.1. auto_pinning_policy
指定是否以及如何应用自动 CPU 和 NUMA 配置。
由于引擎的 4.5 版已弃用,因此仅保留以向后兼容。以后可能会删除它。请使用 CpuPinningPolicy。
7.313.2. cpu
虚拟机 CPU 的配置。
可以在不重新启动虚拟机的情况下更新套接字配置。内核和线程需要重启。
例如:要将套接字数量立即更改为 4,并在重启后将内核和线程数量改为 2,发送以下请求:
PUT /ovirt-engine/api/vms/123
通过请求正文:
<vm> <cpu> <topology> <sockets>4</sockets> <cores>2</cores> <threads>2</threads> </topology> </cpu> </vm>
7.313.3. cpu_pinning_policy
指定是否以及如何应用 CPU 和 NUMA 配置。如果没有指定 CPU 固定字符串之前的行为,则会决定 CpuPinningPolicy 到 None 或 Manual。
7.313.4. custom_compatibility_version
虚拟机自定义兼容性版本.
使虚拟机能够根据自己的兼容性版本进行自定义。如果设置了 custom_compatibility_version
,它将覆盖该特定虚拟机的集群的兼容性版本。
虚拟机的兼容性版本受位于的数据中心的限制,并根据虚拟机计划在其上运行的主机进行检查。
7.313.5. high_availability
虚拟机高可用性配置。如果设置,虚拟机将在意外停机时自动重新启动。
7.313.6. 初始化
引用虚拟机的初始化配置.
自 Red Hat Virtualization 4.1.8 起,可以通过发送空标签来清除此属性。
例如,清除 初始化
属性会发送类似如下的请求:
PUT /ovirt-engine/api/vms/123
这样的请求正文:
<vm> <initialization/> </vm>
对此类请求的响应和带有标头 All-Content: true
的请求仍将包含此属性。
7.313.7. large_icon
虚拟机的大图标.用户设置或引用根据操作系统设置的镜像集.
7.313.8. lease
虚拟机/模板租用所在存储域的引用。
使用租用运行的虚拟机需要检查运行时不会由另一主机获取租期,从而防止此虚拟机的另一个实例在另一主机上运行。这可防止高可用性虚拟机中的脑裂。模板也可为租用定义存储域,以便从该模板创建虚拟机,预先配置此存储域作为租用位置。
7.313.9. 内存
虚拟机的内存,以字节为单位。
例如,要更新虚拟机使其包含 1 Gibibyte(GiB)内存,请发送以下请求:
PUT /ovirt-engine/api/vms/123
使用以下请求正文:
<vm> <memory>1073741824</memory> </vm>
Red Hat Virtualization 3.6 支持内存热插拔。在虚拟机处于 up 状态时,您可以使用上述示例来增加内存。增量的大小必须可以被分成 HotPlugMemoryBlockSizeMb
配置值(默认为256 MiB)。如果此值无法分隔内存大小递增,则内存大小更改仅存储在下一次运行配置中。每个成功的内存热插拔操作都会创建一个或两个新内存设备。
从 Red Hat Virtualization 4.2 开始支持内存热插拔。内存热拔头只能在虚拟机处于启动状态时执行。只有之前热插拔内存设备才能通过热拔出操作删除。请求的内存减少向下舍入,以匹配之前热插拔内存设备的组合大小。请求的内存值存储在下一次运行配置中,而不舍入。
这个示例中的内存会被转换为字节:
1 GiB = 230 字节 = 1073741824 字节。
红帽虚拟化管理器内部将值向下舍入到整个 MiB(1MiB = 220 字节)
7.313.10. migration_downtime
虚拟机在实时迁移到 ms 中另一主机期间可以不响应的最大时间。
为虚拟机明确设置,或者使用 engine-config -s DefaultMaximumMigrationDowntime=[value]
7.313.11. Origin
此虚拟机的起源。
可能的值:
-
ovirt
-
rhev
-
vmware
-
Xen
-
external
-
hosted_engine
-
managed_hosted_engine
-
kvm
-
physical_machine
-
hyperv
7.313.12. placement_policy
虚拟机放置策略的配置。
此配置可以更新为将虚拟机固定到一个或多个主机。
固定到多个主机的虚拟机无法实时迁移,但在主机出现故障时,任何配置为高可用性的虚拟机都会自动在虚拟机要固定到的其他主机上重新启动。
例如,要将虚拟机固定到两个主机,请发送以下请求:
PUT /api/vms/123
这样的请求正文:
<vm> <high_availability> <enabled>true</enabled> <priority>1</priority> </high_availability> <placement_policy> <hosts> <host> <name>Host1</name> </host> <host> <name>Host2</name> </host> </hosts> <affinity>pinned</affinity> </placement_policy> </vm>
7.313.13. small_icon
虚拟机的小图标.用户设置或引用根据操作系统设置的镜像集.
7.313.14. sso
此虚拟机被配置至单点登录配置的引用。打开控制台时,可以在虚拟机的操作系统中自动签署该用户。
7.313.15. tpm_enabled
如果为 true
,则会在虚拟机中添加 TPM 设备。默认值为 false
。只有在设置了 "All-Content=true" 标头时,此属性才能在获取时可见。
表 7.408. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 虚拟机所属群集的引用。 | |
| 引用此虚拟机使用的 CPU 配置集。 | |
| 引用为此虚拟机设置的配额配置。 | |
| 虚拟机所属存储域的引用。 |
7.314. VmDeviceType enum
表 7.409. 值概述
名称 | 概述 |
---|---|
| |
|
7.315. VmMediatedDevice struct
VM mediated device 是一个虚拟设备,用于指定 vGPU 介质设备的属性。它并不是实际设备,它正作为指定如何配置主机设备的一部分的方法。
表 7.410. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| 纯文本中的人类可读名称。 | |
| 设备的属性。 |
表 7.411. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.315.1. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.316. VmPlacementPolicy struct
表 7.412. 属性概述
名称 | 类型 | 概述 |
---|---|---|
|
表 7.413. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
|
7.317. vmPool struct
类型,代表虚拟机池。
表 7.414. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 指明池是否应该在复制模板的多个存储域中自动分发虚拟机的磁盘。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 为池中的虚拟机配置的显示设置。 | |
| 唯一标识符。 | |
| 池中可以分配给特定用户的最大虚拟机数量。 | |
| 纯文本中的人类可读名称。 | |
| 系统尝试从池中预启动指定数量的虚拟机。 | |
| 为池中的虚拟机配置的随机数生成器设备。 | |
| 池中虚拟机的数量。 | |
| 指明是否应为池中的虚拟机配置声卡。 | |
| 虚拟机池的有状态标志. | |
|
如果为 | |
| 池中虚拟机的取消分配策略。 | |
| 指明池中的虚拟机是否已更新为池所基于的较新版本的模板。 |
7.317.1. auto_storage_select
指明池是否应该在复制模板的多个存储域中自动分发虚拟机的磁盘。
当池使用的模板存在于多个存储域中时,池中的虚拟机磁盘将创建在其中一个存储域中。默认情况下,或者此属性的值为 false
时,该存储域会在池创建时选择,并且所有虚拟机都将使用相同的存储域。如果此属性为 true
,那么当虚拟机添加到池中时,系统会选择具有更多可用空间的存储域。
7.317.2. prestarted_vms
系统尝试从池中预启动指定数量的虚拟机。
这些虚拟机已启动,无需附加到任何用户。这样,用户可以更快地从池中获取虚拟机。
7.317.3. 有状态
虚拟机池的有状态标志.
有状态虚拟机池的虚拟机始终以有状态模式启动(不会创建无状态快照)。即使虚拟机传递给其他用户,虚拟机的状态也会保留。
7.317.4. tpm_enabled
如果为 true
,则会在虚拟机中添加 TPM 设备。默认值为 false
。只有在设置了 "All-Content=true" 标头时,此属性才能在获取时可见。
表 7.415. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 对池驻留的集群的引用。 | |
| 引用此池所基于的实例类型。 | |
| 为此虚拟机池设置权限。 | |
| 对池基于的模板的引用。 | |
| 对属于池的任意虚拟机的引用. |
7.317.5. instance_type
引用此池所基于的实例类型。它只能在创建池时设置,且不可编辑。
7.317.6. vm
对属于池的任意虚拟机的引用.
请注意,此虚拟机可能不以池模板的最新版本为基础。
7.318. VmPoolType enum
在虚拟机池中表示虚拟机取消分配策略的类型。
表 7.416. 值概述
名称 | 概述 |
---|---|
| 此策略表示池中的虚拟机自动由系统取消分配。 |
| 此策略表示管理员手动取消池中的虚拟机分配。 |
7.318.1. 自动
此策略表示池中的虚拟机自动由系统取消分配。
通过此策略,当虚拟机属于池并分配给用户时,虚拟机会从用户分离,其状态将恢复到池的默认状态,虚拟机将返回到池(即,可以将虚拟机分配给另一个用户)。
7.318.2. Manual
此策略表示管理员手动取消池中的虚拟机分配。
采用此策略时,属于池的虚拟机仍会分配给其用户,并在关机时保持其状态。要将虚拟机返回到池,管理员需要通过删除用户在该虚拟机上的权限来显式取消分配。
7.319. VmStatus enum
类型,代表虚拟机的状态。
表 7.417. 值概述
名称 | 概述 |
---|---|
| 此状态表示虚拟机进程未在运行。 |
| 此状态表示虚拟机进程没有运行,并且虚拟机磁盘上有一些操作会阻止它启动。 |
| 此状态表示虚拟机进程正在运行,并且虚拟机正在从一个主机迁移到另一个主机。 |
| 此状态表示系统管理程序检测到虚拟机没有响应。 |
| 此状态表示虚拟机进程正在运行,并且虚拟机已暂停。 |
| 此状态表示虚拟机进程正在运行,并即将停止运行。 |
| 此状态表示虚拟机进程正在运行,并且正在加载客户机操作系统。 |
| 此状态表示虚拟机进程正在运行,并且客户机操作系统正在重启。 |
| 此状态表示虚拟机进程即将运行,并且虚拟机也将从休眠中中止。 |
| 此状态表示虚拟机进程正在运行,并且虚拟机正在休眠。 |
| 此状态表示虚拟机进程未在运行,并且已保存虚拟机的运行状态。 |
| 当收到无效状态时,会设置此状态。 |
| 此状态表示系统无法确定虚拟机的状态。 |
| 此状态表示虚拟机进程正在运行,并且已加载客户机操作系统。 |
| 此状态表示虚拟机进程即将运行。 |
7.319.1. paused
此状态表示虚拟机进程正在运行,并且虚拟机已暂停。这在两种情形中可能会发生:运行虚拟机时为暂停模式,以及虚拟机因错误而自动暂停时。
7.319.2. powering_up
此状态表示虚拟机进程正在运行,并且正在加载客户机操作系统。请注意,如果没有安装 guest-agent,则在运行虚拟机时,会为预定义的时间(默认为 60 秒)设置此状态。
7.319.3. restoring_state
此状态表示虚拟机进程即将运行,并且虚拟机也将从休眠中中止。在此状态下,正在恢复虚拟机的运行状态。
7.319.4. saving_state
此状态表示虚拟机进程正在运行,并且虚拟机正在休眠。在此状态下,将保存虚拟机的运行状态。请注意,此状态并不意味着客户机操作系统正在休眠。
7.319.5. 暂停
此状态表示虚拟机进程未在运行,并且已保存虚拟机的运行状态。这个状态与 Down 类似,但在此状态下启动虚拟机时,其保存的运行状态将被恢复,而不是使用普通的 procedue 启动。
7.319.6. Unknown
此状态表示系统无法确定虚拟机的状态。虚拟机进程可能正在运行或未在此状态中运行。例如,当主机变得不响应时,其上运行的虚拟机将设置为此状态。
7.319.7. up
此状态表示虚拟机进程正在运行,并且已加载客户机操作系统。请注意,如果没有安装 guest-agent,则在预定义的时间后(默认为 60 秒)在运行虚拟机时设置此状态。
7.319.8. wait_for_launch
此状态表示虚拟机进程即将运行。当运行虚拟机的请求到达主机时,会设置此状态。虚拟机进程可能无法运行。
7.320. VmStorageErrorResumeBehaviour enum
如果存储此虚拟机具有部分磁盘无响应,则虚拟机将暂停。
这是可能的选项,在存储再次可用时虚拟机应发生什么情况。
表 7.418. 值概述
名称 | 概述 |
---|---|
| 当存储再次可用时,虚拟机会自动恢复。 |
| 虚拟机将在超时后终止(可在系统管理程序上配置)。 |
| 切勿与虚拟机执行任何操作。 |
7.320.1. auto_resume
当存储再次可用时,虚拟机会自动恢复。
这是 4.2 之前唯一可用的行为。
7.320.2. kill
虚拟机将在超时后终止(可在系统管理程序上配置)。
这是对具有租用的高可用性虚拟机唯一支持的选项。原因在于,高可用性虚拟机使用基础架构重新启动,并且任何类型的恢复风险都存在脑裂的风险。
7.320.3. leave_paused
切勿与虚拟机执行任何操作。
如果实施了自定义故障转移,并且用户不希望虚拟机恢复,则非常有用。
7.321. VmSummary struct
类型,包含与特定主机上虚拟机相关的信息。
7.322. VmType enum
类型表示要优化的虚拟机。
表 7.420. 值概述
名称 | 概述 |
---|---|
| 虚拟机旨在用作桌面。 |
| 虚拟机旨在用作高性能虚拟机。 |
| 虚拟机旨在用作服务器。 |
7.322.1. desktop
虚拟机旨在用作桌面。
目前,这意味着声调设备将自动添加到虚拟机中。
7.322.2. high_performance
虚拟机旨在用作高性能虚拟机。
目前,其含义在于,虚拟机配置将自动设置为以最高性能运行,并且具有尽可能接近裸机的性能指标。
无法自动设置适用于最高性能的部分推荐配置设置;建议在运行虚拟机前手动设置它们。
以下配置更改会自动设置:
- 启用无外设模式.
- 启用串行控制台.
- 启用传递主机 CPU。
- 启用 I/O 线程。
- 启用 I/O 线程固定并设置固定拓扑。
- 启用半虚拟化随机数字生成器 PCI(virtio-rng)设备。
- 禁用所有 USB 设备.
- 禁用声卡设备。
- 禁用智能卡设备.
- 禁用内存气球设备。
- 禁用 watchdog 设备。
- 禁用迁移。
- 禁用高可用性。
以下推荐的配置更改必须由用户手动设置:
- 启用 CPU 固定拓扑。
- 启用非统一内存访问(NUMA)固定拓扑。
- 启用和设置巨页配置。
- 禁用内核同页合并(KSM)。
7.322.3. server
虚拟机旨在用作服务器。
目前,其含义在于音响设备不会自动添加到虚拟机中。
7.323. VnicPassThrough struct
表 7.421. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 定义 vNIC 将实施为虚拟设备,还是作为传递到主机设备的直通实现。 |
7.324. VnicPassThroughMode enum
描述 vNIC 作为直通设备或虚拟设备实施。
表 7.422. 值概述
名称 | 概述 |
---|---|
| 作为虚拟设备实施。 |
| 作为直通设备实施。 |
7.325. VnicProfile struct
vNIC 配置集是一组可应用于单个 NIC 的设置。
表 7.423. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 包含有关此对象的注释的免费文本。 | |
| 应用到 vNIC 配置集的自定义属性。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
|
标记 | |
| 纯文本中的人类可读名称。 | |
| 启用传递给启用了 SR-IOV 的主机 NIC。 | |
| 启用端口镜像。 |
7.325.1. migratable
标记 pass_through
NIC 是否是 migratable。
如果将 pass_through.mode
设置为 disabled
这个选项没有含义,它将被视为 true
。如果您从请求中省略这个选项,则默认为 true
。
迁移虚拟机时,只有在所有 pass_through
NIC 都标记为 migratable
时,才会迁移此虚拟机。
7.325.2. pass_through
启用传递给启用了 SR-IOV 的主机 NIC。
vNIC 配置集允许 NIC 直接连接到支持 SR-IOV 的主机 NIC 的虚拟功能(VF )(如果启用了 passthrough)。然后 NIC 将绕过软件网络虚拟化,并直接连接到 VF 进行直接设备分配。
如果 vNIC 配置集已附加到 NIC,则无法启用 passthrough。如果启用了 passthrough 配置集,则 vNIC 配置集会禁用 qos
和 port_mirroring
。
7.325.3. port_mirroring
启用端口镜像。
端口镜像会将给定逻辑网络和 主机上的第 3 层网络流量复制到虚拟机上的 NIC。此虚拟机可用于网络调试和调优、入侵检测,以及监控同一主机和逻辑网络上其他虚拟机的行为。复制的唯一流量是一台主机上一个逻辑网络的内部流量。主机外部的网络上的流量不会增加;但是,与其他虚拟机相比,启用了端口镜像的虚拟机会使用更多的主机 CPU 和 RAM。
端口镜像有以下限制:
- 不支持使用启用了端口镜像的 vNIC 配置文件热插拔 NIC。
- 当 vNIC 配置集附加到虚拟机时,无法更改端口镜像。
鉴于上述限制,建议您在额外的专用 vNIC 配置集上启用端口镜像。
启用端口镜像可以降低其他网络用户的隐私。
表 7.424. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| SR-IOV 迁移的故障切换 vNIC 配置集,无需停机 | |
| 引用 vNIC 配置集应用到的网络。 | |
| 引用应用到使用此配置集的 NIC 的顶级网络过滤器。 | |
| 允许使用 vNIC 配置集的权限。 | |
| 引用应用到 vNIC 配置集的服务属性质量。 |
7.325.4. network_filter
引用应用到使用此配置集的 NIC 的顶级网络过滤器。
网络过滤器增强了管理进出虚拟机的网络数据包流量的能力。网络过滤器可以包含对其他过滤器的引用、流量过滤规则或两者的组合。
7.325.5. qos
引用应用到 vNIC 配置集的服务属性质量。
Service 属性的质量控制 NIC 的入站和出站网络流量。
7.326. VnicProfileMapping struct
将外部虚拟 NIC 配置集映射到 Red Hat Virtualization Manager 中存在的已弃用类型。
例如,如果所需的虚拟 NIC 配置集映射包括以下两行:
源网络名称 | 源网络配置集名称 | 目标虚拟 NIC 配置集 ID |
---|---|---|
|
|
|
|
|
|
以下表单自 4.2.1 起已弃用,并将在以后的中删除:
<vnic_profile_mappings> <vnic_profile_mapping> <source_network_name>red</source_network_name> <source_network_profile_name>gold</source_network_profile_name> <target_vnic_profile id="738dd914-8ec8-4a8b-8628-34672a5d449b"/> </vnic_profile_mapping> <vnic_profile_mapping> <source_network_name>blue</source_network_name> <source_network_profile_name>silver</source_network_profile_name> <target_vnic_profile id="892a12ec-2028-4451-80aa-ff3bf55d6bac"/> </vnic_profile_mapping> </vnic_profile_mappings>
表 7.425. 属性概述
7.326.1. source_network_name
描述外部网络名称的属性。
请注意,此属性自引擎版本 4.2.1 起已弃用,仅用于向后兼容。以后会将其移除。
7.326.2. source_network_profile_name
描述外部网络配置文件名称的属性。
请注意,此属性自引擎版本 4.2.1 起已弃用,仅用于向后兼容。以后会将其移除。
表 7.426. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| 描述现有虚拟 NIC 配置文件的已弃用属性。 |
7.326.3. target_vnic_profile
描述现有虚拟 NIC 配置文件的已弃用属性。
请注意,此属性自引擎版本 4.2.1 起已弃用,仅用于向后兼容。以后会将其移除。
7.327. VolumeGroup struct
表 7.427. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| ||
| ||
|
7.328. Watchdog struct
此类型代表 watchdog 配置。
表 7.428. 属性概述
名称 | 类型 | 概述 |
---|---|---|
| 触发 watchdog 时执行的 watchdog 操作。 | |
| 包含有关此对象的注释的免费文本。 | |
| 以纯文本格式人类可读的描述。 | |
| 唯一标识符。 | |
| watchdog 设备模型. | |
| 纯文本中的人类可读名称。 |
7.328.1. model
watchdog 设备模型.目前仅支持 I6300ESB。
表 7.429. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| (可选)引用设备使用的实例类型。 | |
| (可选)引用设备使用的模板。 | |
|
不要使用此元素,而是使用 | |
| 引用使用此设备的虚拟机。 |
7.328.2. vms
引用使用此设备的虚拟机。个设备可以由多个虚拟机使用;例如,我的共享磁盘由两个或多个虚拟机同时使用。
7.329. WatchdogAction enum
此类型描述了可用的 watchdog 操作。
表 7.430. 值概述
名称 | 概述 |
---|---|
| 虚拟机进程将核心转储到主机上的默认路径。 |
| 触发 watchdog 操作时不会执行任何操作。 |
| 触发 watchdog 操作时,虚拟机将暂停。 |
| 触发 watchdog 操作时,虚拟机将被关闭。 |
| 触发 watchdog 操作时,虚拟机将重新启动。 |
7.329.1. none
触发 watchdog 操作时不会执行任何操作。但是,仍会生成日志消息。
7.330. WatchdogModel enum
这个类型代表 watchdog 模型。
表 7.431. 值概述
名称 | 概述 |
---|---|
| S390X 计算机的 watchdog 模型。 |
| 基于 PCI 的监控模型. |
7.330.1. diag288
S390X 计算机的 watchdog 模型。
S390X 具有集成的 watchdog 设备,可通过 DIAG288 指令控制。对 S390X 虚拟机使用此模型。
7.330.2. i6300esb
基于 PCI 的监控模型.
将 I6300ESB watchdog 用于 x86_64 和 PPC64 虚拟机。
7.331. Weight struct
表 7.432. 属性概述
表 7.433. 链接摘要
名称 | 类型 | 概述 |
---|---|---|
| ||
|
附录 A. 原语类型
本节论述了 API 支持的原始数据类型。
A.1. 字符串 原语
无限的 Unicode 字符序列。
A.2. 布尔值 原语
代表数学逻辑中使用的假和 真实概念。
有效值是字符串 false
和 true
。
引擎将忽略大小写,例如 False
和 FALSE
也有效值。但是,服务器将始终返回小写值。
为了与较旧版本的引擎向后兼容,也接受值 0
和 1
。值 0
的含义与 false
相同,1
的含义与 true
相同。尽量避免使用这些值,因为将来可能会删除对这些值的支持。
A.3. 整数 原语
代表整数的数学概念。
有效值是十进制数字的有限序列。
目前引擎使用签名的 32 位整数实施此类型,因此最小值为 -231(-2147483648),最大值为 231-1(2147483647)。
但是,系统中有一些属性,其中可能具有 32 位的值范围不够。在这些情况下,引擎使用 64 位整数,特别是以下属性:
-
disk.actual_size
-
Disk.provisioned_size
-
GlusterClient.bytes_read
-
GlusterClient.bytes_written
-
Host.max_scheduling_memory
-
Host.memory
-
HostNic.speed
-
LogicalUnit.size
-
MemoryPolicy.guaranteed
-
NumaNode.memory
-
QuotaStorageLimit.limit
-
StorageDomain.available
-
StorageDomain.used
-
StorageDomain.committed
-
VmBase.memory
在这些例外情况下,最小值为 -263 (-9223372036854775808),最大值为 263-1(9223372036854775807)。
将来,整数类型将使用无限制的前序整数实施,因此上述限制和例外最终会消失。
A.4. 十进制 原语
代表真实数字的数学概念。
目前,引擎使用 32 位IEEE 754 单精确浮动点数实施此类型。
对于某些属性而言,这不够精确。在这种特殊情况下,引擎使用 64 位双精确浮动点数,特别是以下属性:
-
QuotaStorageLimit.usage
-
QuotaStorageLimit.memory_limit
-
QuotaStorageLimit.memory_usage
将来,十进制类型将使用无限制的十进制数字实施,因此上述限制和例外最终会消失。
A.5. 日期 原语
表示日期和时间。
引擎返回的格式是请求 XML Schema 规格中描述的格式。例如,如果您发送类似此请求来检索虚拟机的 XML 表述:
GET /ovirt-engine/api/vms/123 Accept: application/xml
响应正文将包含以下 XML 文档:
<vm id="123" href="/ovirt-engine/api/vms/123"> ... <creation_time>2016-09-08T09:53:35.138+02:00</creation_time> ... </vm>
在请求 JSON 表示时,引擎使用不同的格式:整数,其包含自1970 年 1 月 1 日起的毫秒数,也称为epoch 时间。例如,如果您发送类似此请求,以检索虚拟机的 JSON 表示形式:
GET /ovirt-engine/api/vms/123 Accept: application/json
响应正文将包含以下 JSON 文档:
{ "id": "123", "href="/ovirt-engine/api/vms/123", ... "creation_time": 1472564909990, ... }
在这两种情况下,引擎返回的日期使用运行它的服务器中配置的时区,在上面的示例中是 UTC+2。
附录 B. API 版本 4 的更改
本节说明了从 API 版本 4 开始的后向兼容性破坏所引入的更改。
B.1. API 版本 4.0 的更改(显示版本 3.6)
B.1.1. 删除了 YAML 支持
对 YAML 的支持已完全删除。
B.1.2. 重新命名复杂的类型
以下 XML 模式复杂类型已被重命名:
第 3 版 | 第 4 版 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B.1.3. 使用 enum 类型替换 Status
类型
目前,不同对象的状态是使用 Status
类型报告,它包含一个 状态
字符串和另一个详细信息 字符串
以了解更多详细信息。例如,当前报告因为 IO 错误而暂停的虚拟机的状态,如下所示:
<vm> ... <status> <state>paused</state> <detail>eio</detail> </status> ... </vm>
在 API 的版本 4 中,此 Status
类型已删除,并被 enum type 替换。需要额外的 详细信息
字符串时,它已被额外的 status_detail
属性替代。例如,同一虚拟机的状态现在将报告如下:
<vm> ... <status>paused</status> <status_detail>eio</status_detail> ... </vm>
B.1.4. 删除 NIC 网络和
port_mirroring
属性
NIC 网络和
port_mirroring
元素已被 vnic_profile
元素替代,因此在创建或更新 NIC 时,不会指定网络和端口镜像配置,这些会预先指定创建 vNIC 配置集:
POST /ovirt-engine/api/vnicprofiles
<vnic_profile> <name>myprofile</name> <network id="..."/> <port_mirroring>true</port_mirroring> </vnic_profile>
然后,创建 NIC 或引用现有的 vNIC 配置集:
PUT /ovirt-engine/api/vms/123/nics/456
<nic> <vnic_profile id="/vnicprofiles/..."> </nic>
旧元素及其含义保留下来,以便向后兼容,但现已完全删除。
请注意,网络
元素尚未从 XML 架构中删除,因为它仍由 初始化
元素使用,但是如果在创建或更新 NIC 时提供,则完全被忽略。
B.1.5. 删除 NIC active
属性
NIC active
属性在一段时间前被 插入
。现在它已被完全删除。
B.1.6. 删除磁盘 类型
属性
磁盘 的类型
属性已被删除,但保留在 XML 架构中并忽略。现在它已被完全删除。
B.1.7. 删除 磁盘大小
属性
磁盘大小
属性在之前已被 provisioned_size
替代。现在它已被完全删除。
B.1.8. 删除了对将虚拟机固定到单一主机的支持
在版本 3.6 之前,API 可以使用 VM 实体的 placement_policy
元素将虚拟机固定到单一主机上:
PUT /ovirt-engine/api/vms/123
<vm> <placement_policy> <host id="456"/> </placement_policy> <vm>
在版本 3.6 中,这个功能被改进来支持多个主机,并添加了一个新的 主机
元素:
PUT /ovirt-engine/api/vms/123
<vm> <placement_policy> <hosts> <host id="456"/> <host id="789"/> ... </hosts> </placement_policy> <vm>
为了保持向后兼容性,单一 主机
元素已被保留。在 4.0 中,这已被删除,因此即使固定到单个主机,应用也需要使用 hosts
元素。
B.1.9. 删除了 capabilities.permits
元素
对于每个集群级别,其允许列表可能有所不同,而且几年前已添加到 version
元素中,但它也保留在 capabilities
元素中,只是为了向后兼容。
在 4.0 中,
服务替代。要查找集群级别 4.0 支持的允许,应使用如下请求:
功能
服务已被完全删除,并被新的集群级别
GET /ovirt-engine/api/clusterlevels/4.0
结果将是包含特定于该集群级别的信息的文档,特别是所支持的允许集合:
<cluster_level id="4.0" href="/clusterlevels/4.0"> ... <permits> <permit id="1"> <name>create_vm</name> <administrative>false</administrative> </permit> ... </permits> </cluster_level>
B.1.10. 删除了 storage_manager
元素
storage_manager
元素在一段时间前已被 spm
元素取代。旧版本保留为向后兼容性,但现已完全删除。
B.1.11. 删除了数据中心 storage_type
元素
数据中心过去与特定的存储类型(NFS、光纤通道、iSCSI 等)关联,但是它们已经进行了更改,使得只有两种类型:本地存储以及共享存储。引入了一个新的 本地
元素来指示这一点,并且保留了旧的 storage_type
元素,以便向后兼容。这个旧元素现已完全删除。
B.1.12. 删除 timezone
元素
用于包含用于表示时区的 timezone
元素的虚拟机资源。这个元素只允许字符串:
<vm> <timezone>Europe/Madrid</timezone> </vm>
这不允许扩展,因为需要添加 UTC 偏移,它被替换为一个新的结构化 time_zone
元素:
<vm> <time_zone> <name>Europe/Madrid</name> <utc_offset>GMT+1</utc_offset> </time_zone> </vm>
旧 时区
元素已被保留,但现已完全删除。
B.1.13. 删除了 guest_info
元素
guest_info
元素用于存放客户机代理收集的信息,如 IP 地址和完全限定主机名。此信息在其他地点也可获得。例如,IP 地址在 VM 资源中可用:
GET /ovirt-engine/api/vms/123
<vm> <guest_info> <ips> <ip address="192.168.122.30"/> </ips> <fqdn>myvm.example.com</fqdn> </guest_info> </vm>
另外,在 NIC 资源中使用较新的 reporting _devices
元素:
GET /ovirt-engine/api/vms/{vm:id}/nics/{nic:id}
<nic> <reported_devices> <reported_device> <name>eth0</name> <mac address="00:1a:4a:b5:4c:94"/> <ips> <ip address="192.168.1.115" version="v4"/> <ip address="fe80::21a:4aff:feb5:4c94" version="v6"/> <ip address="::1:21a:4aff:feb5:4c94" version="v6"/> </ips> </reported_device> </reported_devices> </nic>
此外,这个较新的 report_devices
元素还提供更完整的信息,如多个 IP 地址、MAC 地址等。
为删除此重复 ,guest_info
元素已被删除。
为了支持完全限定域名,在 VM 资源中添加了新的 fqdn
元素:
GET /ovirt-engine/api/vms/123
<vm> <fqdn>myvm.example.com</fqdn> </vms>
此命令将包含 guest_info.fqdn
用于包含的相同信息。
B.1.14. 使用 type
元素替换 CPU id
属性
用于具有代表 CPU 类型的 id
属性的 cpu
元素:
<cpu id="Intel Nehalem Family"> <architecture>X86_64</architecture> ... </cpu>
这与 API 模型的其余元素有关,其中 id
属性用于不透明标识符。这个 id
属性已被一个新的 type
元素替代:
<cpu> <type>Intel Nehalem Family</type> <architecture>X86_64</architecture> </cpu>
B.1.15. 在 CPU 拓扑中使用元素而不是属性
在过去,CPU 拓扑元素将属性用作其属性:
<cpu> <topology sockets="1" cores="1" threads="1"/> ... </cpu>
这与 API 中的常见做法相反。它们已被内联元素取代:
<cpu> <topology> <sockets>1<sockets> <cores>1<cores> <threads>1<threads> </topology> ... </cpu>
B.1.16. 在 VCPU pin 中使用元素而不是属性
在过去,VCPU pin 元素将属性用作其属性:
<cpu_tune> <vcpu_pin vcpu="0" cpu_set="0"/> </cpu_tune>
这与 API 中的常见做法相反。它们已被内联元素取代:
<cpu_tune> <vcpu_pin> <vcpu>0</vcpu> <cpu_set>0</cpu_set> </vcpu_pin> </cpu_tune>
B.1.17. 在 VCPU pin 中使用元素而不是属性
在过去,version
元素的属性是它的属性:
<version major="3" minor="5" ../>
这与 API 中的常见做法相反。它们已被内联元素取代:
<version> <major>3</minor> <minor>5</minor> ... </version>
B.1.18. 在内存过量使用中使用元素而不是属性
过去,过量使用
元素的属性是它的属性:
<memory_policy> <overcommit percent="100"/> ... </memory_policy>
这与 API 中的常见做法相反。它们已被内联元素取代:
<memory_policy> <overcommit> <percent>100</percent> </overcommit> ... </memory_policy>
B.1.19. 在控制台中
使用元素而不是属性
在过去,console 元素
将属性用作其属性:
<console enabled="true"/>
这与 API 中的常见做法相反。它们已被内联元素取代:
<console> <enabled>true</enabled> </console>
B.1.20. 在 VIRTIO SCSI 中使用元素而不是属性
在过去,VIRTIO ISCSI 元素在其属性中使用属性:
<virtio_scsi enabled="true"/>
这与 API 中的常见做法相反。它们已被内联元素取代:
<virtio_scsi> <enabled>true</enabled> </virtio_scsi>
B.1.21. 对于电源管理代理 类型
,使用 element 而不是 属性
电源管理 类型
属性表示为属性:
<agent type="apc"> <username>myuser</username> ... </agent>
这与 API 中的常见做法相反。它已被一个内部元素替代:
<agent> <type>apc</type> <username>myuser</username> ... </agent>
B.1.22. 在电源管理代理选项中使用元素而不是属性
在过去,电源管理代理选项元素在其属性中使用属性:
<options> <option name="port" value="22"/> <option name="slot" value="5"/> ... </options>
这与 API 中的常见做法相反。它们已被内联元素取代:
<options> <option> <name>port</name> <value>22</value> </option> <option> <name>slot</name> <value>5</value> </option> ... </options>
B.1.23. 在 IP 地址中使用元素而不是属性:
在过去,IP 地址元素将属性用作其属性:
<ip address="192.168.122.1" netmask="255.255.255.0"/>
这与 API 中的常见做法相反。它们已被内联元素取代:
<ip> <address>192.168.122.1</address> <netmask>255.255.255.0</netmask> </ip>
B.1.24. 在 MAC 地址中使用元素而不是属性:
在过去,MAC 地址元素将属性用作其属性:
<mac address="66:f2:c5:5f:bb:8d"/>
这与 API 中的常见做法相反。它们已被内联元素取代:
<mac> <address>66:f2:c5:5f:bb:8d</address> </mac>
B.1.25. 在引导设备中使用元素而不是属性:
在过去,引导设备元素将属性用作其属性:
<boot dev="cdrom"/>
这与 API 中的常见做法相反。它们已被内联元素取代:
<boot> <dev>cdrom</dev> </boot>
B.1.26. 对于操作系统 类型
,使用 element 而不是 属性
操作系统 类型
属性表示为属性:
<os type="other"> ... </os>
这与 API 中的常见做法相反。它已被一个内部元素替代:
<os> <type>other</type> ... </os>
B.1.27. 从请求中删除了 force
参数,以检索主机
在从数据库检索之前,要检索用于支持 强制
矩阵参数的主机的请求,以指示应该刷新主机数据(扩展 VDSM 以重新加载主机功能和设备):
GET /ovirt-engine/api/hosts/123;force
此 force
参数已被主机 刷新
操作取代,但保留为向后兼容性。现在它已被完全删除。需要此功能的应用程序应执行两个请求,第一个用于刷新主机:
POST /ovirt-engine/api/hosts/123/refresh
<action/>
然后,在没有 force
参数的情况下检索它:
GET /ovirt-engine/api/hosts/123
B.1.28. 删除了已弃用的主机电源管理配置
主机电源管理配置过去是主机资源的一部分,使用嵌入式配置元素:
<power_management type="apc"> <enabled>true</enabled> <address>myaddress</address> <username>myaddress</username> <options> <option name="port" value="22/> </option name="slot" value="5/> </options> ... </power_management>
这在几年前已经改变,为了支持多个电源管理代理,引入一个新的 /hosts/123/fenceagents
集合。
旧 类型
属性、旧 地址
、用户名和密码
元素以及直接在
power_management
内的内 代理
元素保留下来,以便向后兼容性。所有这些元素已完全删除,因此查询或修改电源管理代理的唯一方法是 /hosts/123/fenceagents
子集合。
B.1.29. 使用多个 boot.devices.device
而不是多次 引导
过去,在启动虚拟机时指定启动序列的方法是使用多个 引导
元素,每个元素包含一个 dev
元素。例如,指定虚拟机应首先尝试从 CDROM 引导,然后从硬盘引导,并使用以下请求:
POST /ovirt-engine/api/vms/123/start
<action> <vm> ... <boot> <dev>cdrom</dev> </boot> <boot> <dev>hd</dev> </boot> </vm> </action>
API 其它部分的常见做法是使用 wrapper 元素表示数组。在这种情况下,wrapper 元素可以命名为 boots ,
但这并不合理,因为此处的有多个值是引导设备,而不是启动序列。要修复这个不一致性的问题,这个错误已被一个可以包含多个设备的 引导
元素替代:
POST /ovirt-engine/api/vms/123/start
<action> <vm> ... <boot> <devices> <device>cdrom</device> <device>hd</device> </devices> </boot> </vm> </action>
B.1.30. 删除了 disk .clone
和 disk.detach_only
元素
这些元素不是磁盘表示的一部分,而是添加和删除虚拟机的操作参数。
disks.clone
元素用于指示必须克隆新虚拟机的磁盘:
POST /ovirt-engine/api/vms
<vm> ... <disks> <clone>true</clone> </disks> <vm>
现在,这已被删除,并使用一个新的 克隆
查询参数替换:
POST /ovirt-engine/api/vms?clone=true
<vm> ... </vm>
disks.detach_only
元素用于指示在删除虚拟机时磁盘不必删除,而是从虚拟机分离:
DELETE /ovirt-engine/api/vms/123
<action> <vm> <disks> <detach_only>true</detach_only> </disks> </vm> </action>
现在,这已被删除,并被一个新的 detach_only
查询参数替代:
DELETE /ovirt-engine/api/vms/123?detach_only=true
B.1.31. 将元素 vmpool
重命名为 vm_pool
代表虚拟机池的元素的名称,如 vmpool 和 vm
pools
。它们已被重命名为 vm_pool
和 vm_pools
,以便在复杂类型的名称(本例中为VmPool
和 VmPools
)和元素之间保持一致。
B.1.32. 使用 logical_units
而不是多个 logical_units
作为卷组的一部分的逻辑单元,报告为未绑定的 logical_unit
元素。例如,当报告存储域详情时:
GET /ovirt-engine/api/storagedomains/123
<storage_domain> ... <storage> ... <volume_group> <logical_unit> <!-- First LU --> </logical_unit> <logical_unit> <!-- Second LU --> </logical_unit> ... </volume_group> </storage> </storage_domain>
这与 API 中的常见做法相反,因为元素列表始终包含在元素中。这个问题现已解决,因此逻辑单元列表将与 logical_units
元素一起换行:
GET /ovirt-engine/api/storagedomains/123
<storage_domain> ... <storage> ... <volume_group> <logical_units> <logical_unit> <!-- First LU --> </logical_unit> <logical_unit> <!-- Second LU --> </logical_unit> ... </logical_units> </volume_group> </storage> </storage_domain>
B.1.33. 删除了 snapshot .collapse_snapshots
元素
此元素实际上不是快照表示的一部分,而是从导出存储域导入虚拟机的操作参数:
POST /ovirt-engine/api/storagedomains/123/vms/456/import
<action> <vm> <snapshots> <collapse_snapshots>true</collapse_snapshots> </snapshots> </vm> </action>
现在,这已被删除,并被一个新的 折叠_snapshots
查询参数替代:
POST /ovirt-engine/api/storagedomains/123/vms/456/import?collapse_snapshots=true
<action/>
B.1.34. 重命名 存储和
host_storage
元素
主机存储集合使用 存储和
host_storage
元素以及 Storage 和
HostStorage
复杂类型来报告与主机关联的存储:
GET /ovirt-engine/api/hosts/123/storage
<host_storage> <storage> ... </storage> <storage> ... </storage> ... </host_storage>
这不遵循 API 的其余部分中使用的模式,其中外部元素是复数名称,内元素是同名,但单数表示。现在,它已被修改为使用 host_storages
作为外部元素,host_storage
作为内部元素:
GET /ovirt-engine/api/hosts/123/storage
<host_storages> <host_storage> ... </host_storage> <host_storage> ... </host_storage> ... </host_storage>
B.1.35. 删除了 permissions.clone
元素
此元素不是权限表示的一部分,而是创建虚拟机或模板的操作参数:
POST /ovirt-engine/api/vms
<vm> <template id="..."> <permissions> <clone>true</clone> </permissions> </template> </action>
POST /ovirt-engine/api/templates
<template> <vm id="..."> <permissions> <clone>true</clone> </permissions> </vm> </template>
现在,这已被删除,并被新的 clone_permissions
查询参数替代:
POST /ovirt-engine/api/vms?clone_permissions=true
<vm> <template id="..."/> </vm>
POST /ovirt-engine/api/templates?clone_permissions=true
<template> <vm id="..."/> </template>
B.1.36. 重新命名随机数生成器 源
元素
用来使用一组源元素来报告随机数生成器 源
,以一个元素括起,名称应反映其用途。例如,以前报告的集群的随机数字生成器源如下:
GET /ovirt-engine/api/clusters/123
<cluster> ... <required_rng_sources> <source>random</source> </required_rng_sources> ... </cluster>
以及一个用于报告的主机的随机数字生成器源,如下所示:
GET /ovirt-engine/api/hosts/123
<host> ... <hardware_information> <supported_rng_sources> <source>random</source> </supported_rng_sources> </hardware_information> ... </host>
这与 API 的其余部分不一致,其中集合用一个名称括起,以单数形式按相同名称括起元素。这个问题现已解决。现在会报告所需的随机数生成器源,如下所示:
GET /ovirt-engine/api/clusters/123
<cluster> <required_rng_sources> <required_rng_sources>random</required_rng_source> </required_rng_sources> ... </cluster>
主机支持的随机数生成器源将报告如下:
GET /ovirt-engine/api/hosts/123
<host> ... <hardware_information> <supported_rng_sources> <supported_rng_source>random</supported_rng_source> </supported_rng_sources> </hardware_information> ... </host>
注意 required_rng_source 和
的使用,而不是只使用 supported_
rng_sourcesource
。
B.1.37. 删除了中间 标签.parent
元素
关系建立标签,过去使用非终端父标签表示 的父
标签,后者包含另一个 标签
元素:
<tag> <name>mytag</name> <parent> <tag id="..." href="..."/> </parent> </tag>
这个结构已被简化,现在只使用一个 父
元素:
<tag> <name>mytag</name> <parent id="..." href="..."/> </tag>
B.1.38. 删除调度内置名称和阈值
在过去,集群的调度策略的规格基于内置名称和阈值。例如,使用均匀分布式调度策略的集群被表示如下 :
<cluster> <name>mycluster</name> <scheduling_policy> <policy>evenly_distributed</policy> <thresholds high="80" duration="120"/> </scheduling_policy> ... </cluster>
这种机制被一个顶层 /schedulingpolicies
集合替代,在这里可以使用任意名称和属性定义调度策略。例如,相同的调度策略在顶级集合中被表示如下:
<scheduling_policy> <name>evenly_distributed</name> <properties> <property> <name>CpuOverCommitDurationMinutes</name> <value>2</value> </property> <property> <name>HighUtilization</name> <value>80</value> </property> </properties> </scheduling_policy>
集群的表示法引用调度策略及其标识符:
<cluster> <name>mycluster</name> <scheduling_policy id="..."/> ... </cluster>
为保持向后兼容性,旧 策略
和 阈值
元素得以保留。嵌入在集群中的调度策略表示也被保留。所有这些操作现已被完全删除,因此在检索、创建或更新集群时引用调度策略的唯一方法是使用其标识符引用现有的集群。例如,当检索集群时,只会填充 id
(和 href
):
GET /ovirt-engine/api/clusters/123
<cluster> ... <scheduling_policy id="..." href="..."/> ... </cluster>
在创建或更新集群时,仅接受 id
。
B.1.39. 删除了 bricks .replica_count
和 bricks.stripe_count
元素
这些元素实际上不是 brick 集合表示的一部分,而是用于添加和删除 brick 的操作参数。现在删除了它们,并被新的 replica_count
和 stripe_count 参数
替代:
POST .../bricks?replica_count=3&stripe_count=2
DELETE .../bricks?replica_count=3
B.1.40. 将统计 类型
属性重命名为 kind
用于使用表示统计 类型的类型
元素(计量、计数器等)以及表示值类型(整数、字符串等)的 type
属性来表示统计:
<statistic> <type>GAUGE</type> <values type="INTEGER"> <value>...</value> <value>...</value> ... </values> </statistic>
为避免对第两种事物都使用 类型
概念,现在 kind
和
type
都是元素:
<statistic> <kind>gauge</kind> <type>integer</type> <values> <value>...</value> <value>...</value> ... </values> </statistic>
B.1.41. 使用多个 vcpu_pins.vcpu_pin
,而不是多个 vcpu_pin
过去,将虚拟机的虚拟 CPU 固定指定为物理 CPU 固定的方法是使用多个 vcpu_pin
元素:
<vm> <cpu> <cpu_tune> <vcpu_pin>...</vcpu_pin> <vcpu_pin>...</vcpu_pin> ... </cpu_tune> </cpu> </vm>
为了遵循 API 其它部分中的常见做法,它已改为使用 wrapper 元素,本例中为 vcpu_pins
:
<vm> <cpu> <cpu_tune> <vcpu_pins> <vcpu_pin>...</vcpu_pin> <vcpu_pin>...</vcpu_pin> ... </vcpu_pins> </cpu_tune> </cpu> </vm>
B.1.42. 使用 force
参数强制删除数据中心
删除数据中心的操作支持 force
参数。要使用它来支持可选的 action 参数,请执行 DELETE
操作:
DELETE /ovirt-engine/api/datacenters/123
<action> <force>true</force> </action>
此可选的 action 参数已被一个可选参数替代:
DELETE /ovirt-engine/api/datacenters/123?force=true
B.1.43. 使用 force
参数强制删除主机
删除主机的 操作支持 force
参数。要使用它来支持可选的 action 参数,请执行 DELETE
操作:
DELETE /ovirt-engine/api/host/123
<action> <force>true</force> </action>
此可选的 action 参数已被一个可选参数替代:
DELETE /ovirt-engine/api/host/123?force=true
B.1.44. 使用参数强制删除存储域
删除存储域的操作支持 强制
、销毁和主机
参数。这些参数使用作为正文的存储域表示给
DELETE
方法:
DELETE /ovirt-engine/api/storagedomains/123
<storage_domain> <force>...</force> <destroy>...</destroy> <host id="..."> <name>...</name> </host> </storage_domain>
这个问题存在问题,因为 HTTP DELETE
参数不应具有正文,并且存储域的表示形式不应包含存储域属性之外的内容,而是包含操作的参数。
force
、delete
和 host
属性已被等同的参数替代,操作现在不接受正文。例如,现在使用 force
参数删除存储域的正确方法是:
DELETE /ovirt-engine/api/storagedomain/123?host=myhost&force=true
使用 destroy
参数删除:
DELETE /ovirt-engine/api/storagedomain/123?host=myhost&destroy=true
B.1.45. 使用 主机
参数删除存储服务器连接
删除存储服务器连接的操作支持 主机
参数。要使用它来支持可选的 action 参数,请使用 DELETE
方法:
DELETE /ovirt-engine/api/storageconnections/123
<action> <host id="..."> <name>...</name> </host> </action>
此可选的 action 参数已被一个可选参数替代:
DELETE /ovirt-engine/api/storageconnections/123?host=myhost
B.1.46. 使用 force
和 storage_domain
参数来删除模板磁盘
删除模板磁盘的操作支持 force
和 storage_domain
参数。要使用它,可使用 DELETE
方法来支持可选的 action 参数:
DELETE /ovirt-engine/api/templates/123/disks/456
<action> <force>...</force> <storage_domain id="..."/> </action>
在 API 版本 4 中,此操作被移到新的 磁盘附加集合中
,请求正文已被查询参数 force
和 storage_domain
替代:
DELETE /ovirt-engine/api/templates/123/disksattachments/456?force=true
DELETE /ovirt-engine/api/templates/123/disksattachments/456?storage_domain=123
B.1.47. 不要通过 VM 磁盘 API 删除磁盘
通过删除 /vms/123/disks/456
来删除实体意味着删除虚拟机与磁盘之间的关系 - 例如,此操作应该仅仅将磁盘从虚拟机分离。此操作无法从系统完全删除磁盘,这容易出现用户错误,并产生无法更正的后果。要删除磁盘,请使用 /disk/456
API:
DELETE /ovirt-engine/api/disks/456
B.1.48. 使用 强制
查询参数强制删除虚拟机
删除虚拟机的操作支持 force
参数。要使用它来支持可选的 action 参数,请使用 DELETE
方法:
DELETE /ovirt-engine/api/vms/123
<action> <force>true</force> </action>
此可选的 action 参数已被一个可选的查询参数替代:
DELETE /ovirt-engine/api/vms/123?force=true
B.1.49. 使用 POST
而不是 DELETE
来删除多个 brick
删除多个 Gluster brick 的操作是使用 DELETE
方法实施的,并将 brick 列表作为请求的正文传递:
DELETE /ovirt-engine/api/clusters/123/glustervolumes/456/bricks
<bricks> <bricks id="..."/> <bricks id="..."/> ... </bricks>
这有问题,因为 DELETE
方法不应该有正文,因此它已被使用 POST
方法的新 删除
操作替代:
POST /ovirt-engine/api/clusters/123/glustervolumes/456/bricks/remove
<bricks> <bricks id="..."/> <bricks id="..."/> ... </bricks>
B.1.50. 删除 scheduling_policy.policy
元素
该元素保留下来以便向后兼容。改为使用 scheduling_policy.name
。
POST /ovirt-engine/api/schedulingpolicies
<scheduling_policy> ... <name>policy_name</name> ... </scheduling_policy>
PUT /ovirt-engine/api/schedulingpolicies/123
<scheduling_policy> ... <name>policy_name</name> ... </scheduling_policy>
B.1.51. 添加了 snapshot.snapshot_type
API 正在逐渐引入枚举。直到现在为止,一些将成为字符串的字段被替换为适当的枚举。其中一个字段是 vm.type。但是,此字段由快照继承,快照类型与 vm 类型不同。因此,快照实体添加了一个新字段: snapshot.snapshot_type
。
<snapshot> ... <snapshot_type>regular|active|stateless|preview</snapshot_type> ... </snapshot>
B.1.52. 从 虚拟机
中删除了 移动
操作
虚拟机
实体已弃用 的移动
操作已被删除。相反,您可以移动内置磁盘。
B.1.53. 将 report _configurations.in_sync
移到 network_attachment
在 API 的版本 3 中,XML 模式类型 ReportedConfigurations
具有 in_sync
属性:
<network_attachment> <reported_configurations> <in_sync>true</in_sync> <reported_configuration> ... </reported_configuration> ... </reported_configurations> </network_attachment>
在 API 版本 4 使用的规范机制中,这无法表达,因为列表类型(报告配置列表)不能有属性。为了代表它,属性已被移到括起的 network_attachment 中
:
<network_attachment> <in_sync>true</in_sync> <reported_configurations> <reported_configuration> ... </reported_configuration> ... </reported_configurations> </network_attachment>
B.1.54. 使用集群级别替换 的功能
顶级 功能
集合已被新的 集群级别集合
取代。这个新集合将包含模型中不可用的信息,如每个集群级别的 CPU 类型列表:
GET /ovirt-engine/api/clusterlevels
这将返回一个 ClusterLevel
对象列表,其中包含系统支持的所有集群级别的详情:
<cluster_levels> <cluster_level id="3.6" href="/clusterlevels/3.6"> <cpu_types> <cpu_type> <name>Intel Nehalem Family</name> <level>2</level> <architecture>x86_64</architecture> </cpu_type> ... </cpu_types> ... </cluster_level> </cluster_levels>
每个特定集群级别都有自己的子资源,由版本本身标识:
GET /ovirt-engine/api/clusterlevels/3.6
这将返回该版本的详情:
<cluster_level id="3.6" href="/clusterlevels/3.6"> <cpu_types> <cpu_type> <name>Intel Nehalem Family</name> <level>2</level> <architecture>x86_64</architecture> </cpu_type> ... </cpu_types> ... </cluster_level>
B.1.55. 使用 磁盘
附加替换的磁盘
在 API 虚拟机的版本 3 中,模板有一个 磁盘
集合,其中包含附加的磁盘的所有信息。在 API 版本 4 中,这些 磁盘
集合已删除,并替换为一个新的 磁盘附加集合
,该集合将仅包含对磁盘的引用以及磁盘与其附加的虚拟机或模板之间的关系特定属性: 接口和可
启动
。
要查找附加到虚拟机的磁盘,例如,发送如下请求:
GET /ovirt-engine/api/vms/123/diskattachments
这会返回类似如下的响应:
<disk_attachments> <disk_attachment href="/vms/123/diskattachments/456" id="456"> <bootable>false</bootable> <interface>virtio</interface> <disk href="/disks/456" id="456"/> <vm href="/vms/123" id="123"/> </disk_attachment> ... <disk_attachments>
要查找磁盘的其余详细信息,请使用提供的链接。
在虚拟机或模板中添加磁盘也使用新的 disk_attachment
元素:如下请求:
POST /ovirt-engine/api/vms/123/diskattachments
如果磁盘不存在且您要创建它,请使用以下正文:
<disk_attachment> <bootable>false</bootable> <interface>virtio</interface> <disk> <description>My disk</description> <format>cow</format> <name>mydisk</name> <provisioned_size>1048576</provisioned_size> <storage_domains> <storage_domain> <name>mydata</name> </storage_domain> </storage_domains> </disk> </disk_attachment>
或者,如果磁盘已存在,则使用以下正文,且您只想将其附加到虚拟机:
<disk_attachment> <bootable>false</bootable> <interface>virtio</interface> <disk id="456"/> </disk_attachment>
考虑 vm.disks 和
attribtes 具有所有使用的 template.
disksdisk_attachments
。例如,在创建模板时,vm.disks
元素用于指示在其中创建模板磁盘的存储域。这个用法已被 vm.disk_attachments
替代,因此,在特定存储域中创建带有磁盘的模板的请求现在类似如下:
<template> <name>mytemplate</name> <vm id="123"> <disk_attachments> <disk_attachment> <disk id="456"> <storage_domains> <storage_domain id="789"/> </storage_domains> </disk> </disk_attachment> ... </disk_attachments> </vm> </template>
B.1.56. 使用 iscsi_targets
元素发现未注册的存储
在 API 版本 3 中,使用多个 iscsi_target
元素来发现用于接收 iSCSI 目标列表的未注册存储域的操作:
POST /ovirt-engine/api/hosts/123/unregisteredstoragedomaindiscover
<action> <iscsi> <address>myiscsiserver</address> </iscsi> <iscsi_target>iqn.2016-07.com.example:mytarget1</iscsi_target> <iscsi_target>iqn.2016-07.com.example:mytarget2</iscsi_target> </action>
在 API 版本 4 中,所有重复元素(本例中为 iscsi_target
)都使用另一个元素 iscsi_targets 进行打包,以防出现 iscsi_targets
。因此,同一请求现在应类似如下:
POST /ovirt-engine/api/hosts/123/unregisteredstoragedomaindiscover
<action> <iscsi> <address>myiscsiserver</address> </iscsi> <iscsi_targets> <iscsi_target>iqn.2016-07.com.example:mytarget1</iscsi_target> <iscsi_target>iqn.2016-07.com.example:mytarget2</iscsi_target> </iscsi_targets> </action>
B.2. Engine 版本 4.5 中的更改
B.2.1. 由 Managed Block Storage 取代的 OpenStack 卷(Cinder)集成。
附录 C. 法律通知
Copyright © 2022 Red Hat, Inc.
Licensed under the (Creative Commons Attribution–ShareAlike 4.0 International License).从(oVirt Project)的文档衍生而来。如果您发布本文档或对其进行改编,您必须提供原始版本的 URL。
修改后的版本必须删除所有红帽商标。
Red Hat、Red Hat Enterprise Linux、Red Hat 商标、Shadowman 商标、JBoss、OpenShift、Fedora、Infinity 商标以及 RHCE 都是在美国及其他国家的注册商标。
Linux® 是 Linus Torvalds 在美国和其他国家/地区的注册商标。
Java® 是 Oracle 和/或其附属公司的注册商标。
XFS® 是 Silicon Graphics International Corp. 或其子公司在美国和/或其他国家的商标。
MySQL® 是 MySQL AB 在美国、欧盟和其他国家/地区的注册商标。
Node.js® 是 Joyent 的官方商标。Red Hat Software Collections 与官方 Joyent Node.js 开源或商业项目没有正式关联或被正式认可。
The OpenStack® Word Mark 和 OpenStack 标识是 OpenStack Foundation 在美国及其他国家的注册商标/服务标记或商标/服务标记,可根据 OpenStack Foundation 授权使用。我们不附属于 OpenStack Foundation 或 OpenStack 社区。
所有其他商标均由其各自所有者所有。