区域所有权转移

Designate 允许您在项目之间转移区域的所有权。例如,工程团队项目可能希望将 ‘wow.example.com.’ 区域的所有权从工程项目转移到营销团队的项目。

这可以在无需云管理员干预的情况下,使用 Designate 中的区域转移功能完成。发送和接收项目都必须使用区域转移流程同意此次转移。

区域转移请求

创建区域转移请求

要创建区域转移请求,我们可以在 Designate 中创建一个区域转移请求。您可以选择在请求中提供目标项目 ID,以将转移锁定到特定项目。在使用目标项目 ID 时,不允许其他项目接受区域转移。如果您没有提供目标项目 ID,任何拥有转移请求 ID 和密钥的项目都可以接收区域转移。

注意

目标项目 ID 必须作为 ID 提供,而不是项目名称。

要将区域 ‘wow.example.com.’ 转移到项目 1d12e87fad0d437286c2873b36a12316,您将运行

$ openstack zone transfer request create --target-project-id 1d12e87fad0d437286c2873b36a12316 wow.example.com.

+-------------------+-----------------------------------------------------+
| Field             | Value                                               |
+-------------------+-----------------------------------------------------+
| created_at        | 2022-05-26T22:06:39.000000                          |
| description       | None                                                |
| id                | 63cab5e5-65fa-4480-b26c-c16c267c44b2                |
| key               | BIFJIQWH                                            |
| links             | {'self': 'http://127.0.0.1:60053/v2/zones/tasks/tra |
|                   | nsfer_requests/63cab5e5-65fa-4480-b26c-c16c267c44b2 |
|                   | '}                                                  |
| project_id        | 6265985fc493465db6a978b318a01996                    |
| status            | ACTIVE                                              |
| target_project_id | 1d12e87fad0d437286c2873b36a12316                    |
| updated_at        | None                                                |
| zone_id           | 962f08b4-b671-4096-bf24-8908c9d4af0c                |
| zone_name         | wow.example.com.                                    |
+-------------------+-----------------------------------------------------+

然后,您将向接收项目的成员提供 ID 和密钥。

显示区域转移请求

要显示您在上一节中创建的区域转移请求,您将运行

$ openstack zone transfer request show 63cab5e5-65fa-4480-b26c-c16c267c44b2

+-------------------+-----------------------------------------------------+
| Field             | Value                                               |
+-------------------+-----------------------------------------------------+
| created_at        | 2022-05-26T22:06:39.000000                          |
| description       | None                                                |
| id                | 63cab5e5-65fa-4480-b26c-c16c267c44b2                |
| key               | BIFJIQWH                                            |
| links             | {'self': 'http://127.0.0.1:60053/v2/zones/tasks/tra |
|                   | nsfer_requests/63cab5e5-65fa-4480-b26c-c16c267c44b2 |
|                   | '}                                                  |
| project_id        | 6265985fc493465db6a978b318a01996                    |
| status            | ACTIVE                                              |
| target_project_id | 1d12e87fad0d437286c2873b36a12316                    |
| updated_at        | None                                                |
| zone_id           | 962f08b4-b671-4096-bf24-8908c9d4af0c                |
| zone_name         | wow.example.com.                                    |
+-------------------+-----------------------------------------------------+

列出区域转移请求

您可以使用 openstack zone transfer request list 命令列出所有现有的区域转移请求

$ openstack zone transfer request list

+----------+----------+-----------+------------+-------------------+--------+----------+
| id       | zone_id  | zone_name | project_id | target_project_id | status | key      |
+----------+----------+-----------+------------+-------------------+--------+----------+
| 63cab5e5 | 962f08b4 | wow.examp | 6265985fc4 | 1d12e87fad0d43728 | ACTIVE | BIFJIQWH |
| -65fa-44 | -b671-40 | le.com.   | 93465db6a9 | 6c2873b36a12316   |        |          |
| 80-b26c- | 96-bf24- |           | 78b318a019 |                   |        |          |
| c16c267c | 8908c9d4 |           | 96         |                   |        |          |
| 44b2     | af0c     |           |            |                   |        |          |
+----------+----------+-----------+------------+-------------------+--------+----------+

更新区域转移请求

Designate 允许您更新区域转移请求上的有限数量的字段,例如描述和目标项目 ID。

要添加描述到上述区域转移请求,您将运行以下命令

$ openstack zone transfer request set --description "wow zone transfer" 63cab5e5-65fa-4480-b26c-c16c267c44b2

+-------------------+-----------------------------------------------------+
| Field             | Value                                               |
+-------------------+-----------------------------------------------------+
| created_at        | 2022-05-26T22:06:39.000000                          |
| description       | wow zone transfer                                   |
| id                | 63cab5e5-65fa-4480-b26c-c16c267c44b2                |
| key               | BIFJIQWH                                            |
| links             | {'self': 'http://127.0.0.1:60053/v2/zones/tasks/tra |
|                   | nsfer_requests/63cab5e5-65fa-4480-b26c-c16c267c44b2 |
|                   | '}                                                  |
| project_id        | 6265985fc493465db6a978b318a01996                    |
| status            | ACTIVE                                              |
| target_project_id | 1d12e87fad0d437286c2873b36a12316                    |
| updated_at        | 2022-05-27T20:52:08.000000                          |
| zone_id           | 962f08b4-b671-4096-bf24-8908c9d4af0c                |
| zone_name         | wow.example.com.                                    |
+-------------------+-----------------------------------------------------+

删除区域转移请求

如果您想取消区域转移,可以使用 openstack zone transfer request delete 命令删除区域转移请求

$ openstack zone transfer request delete 63cab5e5-65fa-4480-b26c-c16c267c44b2

区域转移请求删除命令没有输出。

区域转移接受

接受区域转移请求

一旦您拥有区域转移请求 ID 和密钥,您就可以创建一个 zone transfer accept 来完成区域转移。

接受我们在 区域转移请求 部分创建的区域转移的示例

$ openstack zone transfer accept request --transfer-id 63cab5e5-65fa-4480-b26c-c16c267c44b2 --key BIFJIQWH

+--------------------------+----------------------------------------------+
| Field                    | Value                                        |
+--------------------------+----------------------------------------------+
| created_at               | 2022-05-27T21:37:43.000000                   |
| id                       | a4c4f872-c98c-411b-a787-58ed0e2dce11         |
| key                      | BIFJIQWH                                     |
| links                    | {'self': 'http://127.0.0.1:60053/v2/zones/ta |
|                          | sks/transfer_accepts/a4c4f872-c98c-411b-a787 |
|                          | -58ed0e2dce11', 'zone': 'http://127.0.0.1:60 |
|                          | 053/v2/zones/962f08b4-b671-4096-bf24-8908c9d |
|                          | 4af0c'}                                      |
| project_id               | 1d12e87fad0d437286c2873b36a12316             |
| status                   | COMPLETE                                     |
| updated_at               | 2022-05-27T21:37:43.000000                   |
| zone_id                  | 962f08b4-b671-4096-bf24-8908c9d4af0c         |
| zone_transfer_request_id | 63cab5e5-65fa-4480-b26c-c16c267c44b2         |
+--------------------------+----------------------------------------------+

显示区域转移接受

要检查您的区域转移接受的状态,您可以使用 openstack zone transfer accept 命令

$ openstack zone transfer accept show a4c4f872-c98c-411b-a787-58ed0e2dce11

+--------------------------+----------------------------------------------+
| Field                    | Value                                        |
+--------------------------+----------------------------------------------+
| created_at               | 2022-05-27T21:37:43.000000                   |
| id                       | a4c4f872-c98c-411b-a787-58ed0e2dce11         |
| key                      | None                                         |
| links                    | {'self': 'http://127.0.0.1:60053/v2/zones/ta |
|                          | sks/transfer_accepts/a4c4f872-c98c-411b-a787 |
|                          | -58ed0e2dce11', 'zone': 'http://127.0.0.1:60 |
|                          | 053/v2/zones/962f08b4-b671-4096-bf24-8908c9d |
|                          | 4af0c'}                                      |
| project_id               | 1d12e87fad0d437286c2873b36a12316             |
| status                   | COMPLETE                                     |
| updated_at               | 2022-05-27T21:37:43.000000                   |
| zone_id                  | 962f08b4-b671-4096-bf24-8908c9d4af0c         |
| zone_transfer_request_id | 63cab5e5-65fa-4480-b26c-c16c267c44b2         |
+--------------------------+----------------------------------------------+

列出区域转移接受

Designate 可以使用 openstack zone transfer accept list 命令提供现有区域转移接受记录的列表

注意

默认情况下,只有具有 ‘admin’ 角色的用户才能列出区域转移接受记录。

$ openstack zone transfer accept list

+-------------+-------------+-------------+--------------------------+----------+-----+
| id          | zone_id     | project_id  | zone_transfer_request_id | status   | key |
+-------------+-------------+-------------+--------------------------+----------+-----+
| a4c4f872-c9 | 962f08b4-b6 | 1d12e87fad0 | 63cab5e5-65fa-4480-b26c- | COMPLETE |     |
| 8c-411b-a78 | 71-4096-bf2 | d437286c287 | c16c267c44b2             |          |     |
| 7-58ed0e2dc | 4-8908c9d4a | 3b36a12316  |                          |          |     |
| e11         | f0c         |             |                          |          |     |
+-------------+-------------+-------------+--------------------------+----------+-----+