DNS API

有关如何使用 dns 的详细信息,请参阅 使用 OpenStack DNS

DNS 类

DNS 高级接口可通过 Connection 对象的 dns 成员获得。只有检测到该服务时,才会添加 dns 成员。

DNS 区域操作

class openstack.dns.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)
zones(**query)

检索区域生成器

参数:

query (dict) –

可选查询参数,用于限制返回的资源。

  • name: 区域名称字段。

  • type: 区域类型字段。

  • email: 区域电子邮件字段。

  • status: 区域状态。

  • ttl: TTL 字段过滤器。abs

  • description: 区域描述字段过滤器。

返回值:

区域 (Zone) 实例的生成器。

create_zone(**attrs)

从属性创建新区域

参数:

attrs (dict) – 关键字参数,将用于创建 Zone,包含 Zone 类上的属性。

返回值:

区域创建的结果。

返回类型:

区域

get_zone(zone)

获取区域

参数:

zone – 该值可以是区域的 ID 或 Zone 实例。

返回值:

区域实例。

返回类型:

区域

delete_zone(zone, ignore_missing=True, delete_shares=False)

删除区域

参数:
  • zone – 该值可以是区域的 ID 或 Zone 实例。

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

  • delete_shares (bool) – 如果为 True,则连同区域一起删除区域共享。

返回值:

区域已被删除

返回类型:

区域

find_zone(name_or_id, ignore_missing=True)

查找单个区域

参数:
  • name_or_id – 区域的名称或 ID

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

返回值:

区域

abandon_zone(zone, **attrs)

放弃区域

参数:

zone – 该值可以是将被放弃的区域的 ID 或 ZoneExport 实例。

返回值:

xfr_zone(zone, **attrs)

触发辅助区域的更新

参数:

zone – 该值可以是将被放弃的区域的 ID 或 ZoneExport 实例。

返回值:

记录集操作

class openstack.dns.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)
recordsets(zone=None, **query)

检索记录集生成器

参数:
  • zone – 可选值可以是区域的 ID 或 Zone 实例。如果未提供,将检索租户所有区域的所有记录集

  • query (dict) –

    可选查询参数,用于限制返回的资源。

    • name: 记录集名称字段。

    • type: 类型字段。

    • status: 记录集状态。

    • ttl: TTL 字段过滤器。

    • description: 记录集描述字段过滤器。

返回值:

区域 (Recordset) 实例的生成器

create_recordset(zone, **attrs)

在区域中创建新的记录集

参数:
  • zone – 该值可以是区域的 ID 或 Zone 实例。

  • attrs (dict) – 关键字参数,将用于创建 Recordset,包含 Recordset 类上的属性。

返回值:

区域创建的结果

返回类型:

记录集

update_recordset(recordset, **attrs)

更新记录集属性

参数:

attrs (dict) – 关键字参数,将用于创建 Recordset,包含 Recordset 类上的属性。

返回值:

区域创建的结果

返回类型:

记录集

get_recordset(recordset, zone)

获取记录集

参数:
  • zone – 该值可以是区域的 ID 或 Zone 实例。

  • recordset – 该值可以是记录集的 ID 或 Recordset 实例。

返回值:

记录集实例

返回类型:

记录集

delete_recordset(recordset, zone=None, ignore_missing=True)

删除区域

参数:
  • recordset – 该值可以是记录集的 ID 或 Recordset 实例。

  • zone – 该值可以是区域的 ID 或 Zone 实例。

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

返回值:

记录集实例已被删除

返回类型:

记录集

区域导入操作

class openstack.dns.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)
zone_imports(**query)

检索区域导入生成器

参数:

query (dict) –

可选查询参数,用于限制返回的资源。

  • zone_id: 区域 I 字段。

  • message: 消息字段。

  • status: 区域导入记录的状态。

返回值:

区域 (ZoneImport) 实例的生成器。

create_zone_import(**attrs)

从属性创建新的区域导入

参数:

attrs (dict) – 关键字参数,将用于创建 ZoneImport,包含 ZoneImport 类上的属性。

返回值:

区域创建的结果。

返回类型:

ZoneImport

get_zone_import(zone_import)

获取区域导入记录

参数:

zone – 该值可以是区域导入的 ID 或 ZoneImport 实例。

返回值:

ZoneImport 实例。

返回类型:

ZoneImport

delete_zone_import(zone_import, ignore_missing=True)

删除区域导入

参数:
  • zone_import – 该值可以是区域导入的 ID 或 ZoneImport 实例。

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

返回值:

区域导出操作

class openstack.dns.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)
zone_exports(**query)

检索区域导出生成器

参数:

query (dict) –

可选查询参数,用于限制返回的资源。

  • zone_id: 区域 I 字段。

  • message: 消息字段。

  • status: 区域导入记录的状态。

返回值:

区域 (ZoneExport) 实例的生成器。

create_zone_export(zone, **attrs)

从属性创建新的区域导出

参数:
  • zone – 该值可以是将被导出的区域的 ID 或 ZoneExport 实例。

  • attrs (dict) – 关键字参数,用于创建 ZoneExport,包含 ZoneExport 类中的属性。

返回值:

区域创建的结果。

返回类型:

ZoneExport

get_zone_export(zone_export)

获取区域导出记录

参数:

zone – 该值可以是区域导入的 ID 或 ZoneExport 实例。

返回值:

ZoneExport 实例。

返回类型:

ZoneExport

get_zone_export_text(zone_export)

获取区域导出记录的文本

参数:

zone – 该值可以是区域导入的 ID 或 ZoneExport 实例。

返回值:

ZoneExport 实例。

返回类型:

ZoneExport

delete_zone_export(zone_export, ignore_missing=True)

删除区域导出

参数:
  • zone_export – 该值可以是区域导入的 ID 或 ZoneExport 实例。

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

返回值:

浮动 IP 操作

class openstack.dns.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)
floating_ips(**query)

检索记录集生成器

参数:

query (dict) –

可选查询参数,用于限制返回的资源。

  • name: 记录集名称字段。

  • type: 类型字段。

  • status: 记录集状态。

  • ttl: TTL 字段过滤器。

  • description: 记录集描述字段过滤器。

返回值:

浮动 IP (FloatingIP) 实例的生成器

get_floating_ip(floating_ip)

获取浮动 IP

参数:

floating_ip – 该值可以是浮动 IP 的 ID 或 FloatingIP 实例。ID 的格式为“region_name:floatingip_id”

返回值:

FloatingIP 实例。

返回类型:

FloatingIP

update_floating_ip(floating_ip, **attrs)

更新浮动 IP 属性

参数:
  • floating_ip – ID 或 FloatingIP 的实例。

  • attrs (dict) – 用于更新 FloatingIP 的属性。

返回类型:

FloatingIP

区域传输操作

class openstack.dns.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)
zone_transfer_requests(**query)

检索区域传输请求的生成器

参数:

query (dict) –

可选查询参数,用于限制返回的资源。

  • status: 记录集状态。

返回值:

传输请求 (ZoneTransferRequest) 实例的生成器

get_zone_transfer_request(request)

获取区域传输请求信息

参数:

request – 该值可以是传输请求的 ID 或 ZoneTransferRequest 实例。

返回值:

区域传输请求实例。

返回类型:

ZoneTransferRequest

create_zone_transfer_request(zone, **attrs)

从属性创建新的区域传输请求

参数:
  • zone – 该值可以是将被传输的区域的 ID 或 ZoneExport 实例。

  • attrs (dict) – 关键字参数,用于创建 ZoneTransferRequest,包含 ZoneTransferRequest 类中的属性。

返回值:

区域传输请求创建的结果。

返回类型:

ZoneTransferRequest

update_zone_transfer_request(request, **attrs)

更新区域传输请求属性

参数:
返回类型:

ZoneTransferRequest

delete_zone_transfer_request(request, ignore_missing=True)

删除区域传输请求

参数:
  • request – 该值可以是区域传输请求的 ID 或 ZoneTransferRequest 实例。

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

返回值:

zone_transfer_accepts(**query)

检索区域传输接受的生成器

参数:

query (dict) –

可选查询参数,用于限制返回的资源。

  • status: 记录集状态。

返回值:

传输接受 (ZoneTransferAccept) 实例的生成器

get_zone_transfer_accept(accept)

获取区域传输接受信息

参数:

request – 该值可以是传输接受的 ID 或 ZoneTransferAccept 实例。

返回值:

区域传输请求实例。

返回类型:

ZoneTransferAccept

create_zone_transfer_accept(**attrs)

从属性创建新的区域传输接受

参数:

attrs (dict) – 关键字参数,用于创建 ZoneTransferAccept,包含 ZoneTransferAccept 类中的属性。

返回值:

区域传输请求创建的结果。

返回类型:

ZoneTransferAccept

区域共享操作

class openstack.dns.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)
zone_shares(zone, **query)

检索区域共享的生成器

参数:
  • zone – 区域 ID 或 Zone 实例

  • query (dict) –

    可选查询参数,用于限制返回的资源。

    • target_project_id: 目标项目 ID 字段。

返回值:

区域共享 ZoneShare 实例的生成器。

get_zone_share(zone, zone_share)

获取区域共享

参数:
  • zone – 该值可以是区域的 ID 或 Zone 实例。

  • zone_share – 区域共享可以是区域共享的 ID 或 ZoneShare 实例,该区域共享属于该区域。

返回值:

ZoneShare 实例。

返回类型:

ZoneShare

find_zone_share(zone, zone_share_id, ignore_missing=True)

查找单个区域共享

参数:
  • zone – 该值可以是区域的 ID 或 Zone 实例。

  • zone_share_id – 区域共享 ID

  • ignore_missing (bool) – 当设置为 False 时,如果区域共享不存在,将引发 NotFoundException。当设置为 True 时,尝试查找不存在的区域共享时将返回 None。

返回值:

ZoneShare

create_zone_share(zone, **attrs)

从属性创建新的区域共享

参数:
  • zone – 区域 ID 或 Zone 实例

  • attrs (dict) – 关键字参数,用于创建 ZoneShare,包含 ZoneShare 类中的属性。

返回值:

区域共享创建的结果

返回类型:

ZoneShare

delete_zone_share(zone, zone_share, ignore_missing=True)

删除区域共享

参数:
  • zone – 区域 ID 或 Zone 实例

  • zone_share – 区域共享可以是区域共享的 ID 或 ZoneShare 实例,该区域共享属于该区域。

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

返回值:

限制操作

class openstack.dns.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)
limits(**query)

检索限制的生成器

返回值:

限制 (Limit) 实例的生成器

服务状态操作

class openstack.dns.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)
service_statuses()

检索服务状态的生成器

返回值:

服务状态 ServiceStatus 实例的生成器。

get_service_status(service)

获取 Designate 系统中服务的状态

参数:

service – 该值可以是服务的 ID 或 ServiceStatus 实例。

返回值:

ServiceStatus 实例。

返回类型:

ServiceStatus