Accelerator API

Accelerator 类

Accelerator 的高级接口通过 Connection 对象的 accelerator 成员可用。只有检测到服务时,才会添加 accelerator 成员。

可部署操作

class openstack.accelerator.v2._proxy.Proxy(session, **, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
deployables(**query)

检索可部署项生成器。

参数:

query (kwargs) – 可选的查询参数,用于限制要返回的可部署项。

返回值:

可部署实例的生成器。

get_deployable(uuid, fields=None)

获取单个可部署项。

参数:

uuid – 该值可以是可部署项的 UUID。

返回值:

一个 Deployable

引发:

NotFoundException 在未找到匹配标准的任何可部署项时引发。

update_deployable(uuid, patch)

使用新的 bitstream 重新配置 FPGA。

参数:
  • uuid – 该值可以是可部署项的 UUID

  • patch – 要重新配置的信息。

返回值:

FPGA 重新配置的结果。

设备操作

class openstack.accelerator.v2._proxy.Proxy(session, **, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
devices(**query)

检索设备生成器。

参数:

query (kwargs) –

可选的查询参数,用于限制要返回的设备。可用的参数包括

  • hostname: 设备的 hostname。

  • type: 设备的类型。

  • vendor: 设备的 vendor ID。

  • sort: 用逗号分隔的排序键列表。每个排序键可以选择性地附加一个排序方向修饰符,可以是 ascdesc

  • limit: 请求查询返回指定大小的项目。返回最多指定限制值数量的项目。

  • marker: 指定上次看到项目的 ID。使用 limit 参数进行初始的有限请求,并将响应中上次看到项目的 ID 作为 marker 参数值用于后续的有限请求。

返回值:

设备实例的生成器。

get_device(uuid, fields=None)

获取单个设备。

参数:

uuid – 该值可以是设备的 UUID。

返回值:

一个 Device

引发:

NotFoundException 在未找到匹配标准的任何设备时引发。

设备配置文件操作

class openstack.accelerator.v2._proxy.Proxy(session, **, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
device_profiles(**query)

检索设备配置文件生成器。

参数:

query (kwargs) – 可选的查询参数,用于限制要返回的设备配置文件。

返回值:

设备配置文件实例的生成器。

create_device_profile(**attrs)

创建一个设备配置文件。

参数:

attrs (kwargs) – 一个设备配置文件的列表。

返回值:

创建的设备配置文件列表

delete_device_profile(device_profile, ignore_missing=True)

删除一个设备配置文件

参数:
  • device_profile – 该值可以是设备配置文件的 ID 或一个 DeviceProfile 实例。

  • ignore_missing (bool) – 当设置为 False 时,如果设备配置文件不存在,将引发 NotFoundException。当设置为 True 时,尝试删除不存在的设备配置文件时不会设置任何异常。

返回值:

get_device_profile(uuid, fields=None)

获取单个设备配置文件。

参数:

uuid – 该值可以是设备配置文件的 UUID。

返回值:

一个 :class: ~openstack.accelerator.v2.device_profile.DeviceProfile

引发:

NotFoundException 在未找到匹配标准的任何设备配置文件时引发。

Accelerator 请求操作

class openstack.accelerator.v2._proxy.Proxy(session, **, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
accelerator_requests(**query)

检索 accelerator 请求生成器。

参数:

query (kwargs) – 可选的查询参数,用于限制要返回的 accelerator 请求。

返回值:

accelerator 请求实例的生成器。

create_accelerator_request(**attrs)

为单个设备配置文件创建一个 ARQ。

参数:

attrs (kwargs) – 请求体。

返回值:

创建的 accelerator 请求实例。

delete_accelerator_request(accelerator_request, ignore_missing=True)

删除一个设备配置文件

参数:
  • device_profile – 该值可以是设备配置文件的 ID 或一个 DeviceProfile 实例。

  • ignore_missing (bool) – 当设置为 False 时,如果设备配置文件不存在,将引发 NotFoundException。当设置为 True 时,尝试删除不存在的 accelerator 请求时不会设置任何异常。

返回值:

get_accelerator_request(uuid, fields=None)

获取单个 accelerator 请求。

参数:

uuid – 该值可以是 accelerator 请求的 UUID。

返回值:

一个 :class: ~openstack.accelerator.v2.accelerator_request.AcceleratorRequest

引发:

NotFoundException 当未找到匹配标准的加速器请求时。

update_accelerator_request(uuid, properties)

绑定/解绑加速器到虚拟机。

参数:
  • uuid – 要绑定/解绑的 accelerator_request 的 UUID。

  • properties – 将绑定/解绑加速器的虚拟机信息。

返回值:

如果绑定/解绑成功则返回 True,否则返回 False。

属性操作

class openstack.accelerator.v2._proxy.Proxy(session, **, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
attributes(**query)

检索属性生成器。

参数:

query (kwargs) – 可选的查询参数,用于限制要返回的属性。

返回值:

属性实例的生成器。

create_attribute(**attrs)

创建属性。

参数:

attrs (kwargs) – 属性列表。

返回值:

创建的属性列表

delete_attribute(attribute, ignore_missing=True)

删除属性

参数:
  • attribute – 该值可以是属性的 ID 或 Attributes 实例。

  • ignore_missing (bool) – 当设置为 False 时,如果设备配置文件不存在,将引发 ResourceNotFound。当设置为 True 时,在尝试删除不存在的设备配置文件时不会引发异常。

返回值:

get_attribute(uuid, fields=None)

获取单个设备配置文件。

参数:

uuid – 该值可以是属性的 UUID。

返回值:

一个 :class: ~openstack.accelerator.v2.attribute.Attribute

引发:

ResourceNotFound 当未找到匹配标准的设备配置文件时。

辅助函数

class openstack.accelerator.v2._proxy.Proxy(session, **, service_type=None, service_name=None, interface=None, region_name=None, endpoint_override=None, version=None, auth=None, user_agent=None, connect_retries=None, logger=None, allow=None, additional_headers=None, client_name=None, client_version=None, allow_version_hack=None, global_request_id=None, min_version=None, max_version=None, default_microversion=None, status_code_retries=None, retriable_status_codes=None, raise_exc=None, rate_limit=None, concurrency=None, connect_retry_delay=None, status_code_retry_delay=None, statsd_client=None, statsd_prefix=None, prometheus_counter=None, prometheus_histogram=None, influxdb_config=None, influxdb_client=None)
wait_for_status(res, status, failures=None, interval=2, wait=None, attribute='status', callback=None)

等待资源达到特定状态。

参数:
  • session – 用于发出此请求的会话。

  • resource – 要等待达到状态的资源。资源必须具有通过 attribute 指定的状态属性。

  • status – 资源的期望状态。

  • failures – 将指示转换失败的状态,例如“ERROR”。默认为 [“ERROR”]。

  • interval – 两次检查之间的秒数。

  • wait – 等待转换的最大秒数。设置为 None 以无限期等待。

  • attribute – 包含状态的资源属性的名称。

  • callback – 回调函数。将使用单个值(进度)调用它。这特定于 API,但通常是 0-100 的百分比值。

返回值:

更新后的资源。

引发:

ResourceTimeout 如果在 wait 秒内未能过渡到状态。

引发:

ResourceFailure 如果资源过渡到 failures 中的状态之一。

引发:

AttributeError 如果资源没有 status 属性

wait_for_delete(res, interval=2, wait=120, callback=None)

等待资源被删除。

参数:
  • res – 要等待被删除的资源。

  • interval – 两次连续检查之间的秒数。

  • wait – 在更改之前等待的最大秒数。

  • callback – 回调函数。将使用单个值(进度)调用它,该值是 0-100 的百分比值。

返回值:

成功时返回资源。

引发:

ResourceTimeout 如果在指定秒内未能过渡到删除。