This section describes how to create a DNS zone and a record in the created DNS zone on the MCP cluster where Designate is deployed.
To create a DNS zone and record:
Log in to the Salt Master node.
Create a test DNS zone called testdomain.tld. by running
the following command against one of the controller nodes
where Designate is deployed. For example, ctl01.
salt 'ctl01*' cmd.run ". /root/keystonercv3; openstack zone create \
--email dnsmaster@testdomain.tld testdomain.tld."
Once the change is applied to one controller node, the updated distributed database replicates this change between all controller nodes.
Example of system response:
ctl01.virtual-mcp-ocata-ovs.local:
 +----------------+--------------------------------------+
 | Field          | Value                                |
 +----------------+--------------------------------------+
 | action         | CREATE                               |
 | attributes     |                                      |
 | created_at     | 2017-08-01T12:25:33.000000           |
 | description    | None                                 |
 | email          | dnsmaster@testdomain.tld             |
 | id             | ce9836a9-ba78-4960-9c89-6a4989a9e095 |
 | masters        |                                      |
 | name           | testdomain.tld.                      |
 | pool_id        | 794ccc2c-d751-44fe-b57f-8894c9f5c842 |
 | project_id     | 49c11a3aa9534d8b897cf06890871840     |
 | serial         | 1501590333                           |
 | status         | PENDING                              |
 | transferred_at | None                                 |
 | ttl            | 3600                                 |
 | type           | PRIMARY                              |
 | updated_at     | None                                 |
 | version        | 1                                    |
 +----------------+--------------------------------------+
Verify that a DNS zone is successfully created and is in the ACTIVE
status:
salt 'ctl01*' cmd.run ". /root/keystonercv3; openstack zone list"
Example of system response:
ctl01.virtual-mcp-ocata-ovs.local:
 +------------------------------------+---------------+-------+-----------+------+------+
 |id                                  |name           |type   |serial     |status|action|
 +------------------------------------+---------------+-------+-----------+------+------+
 |571243e5-17dd-49bd-af09-de6b0c175d8c|example.tld.   |PRIMARY| 1497877051|ACTIVE|NONE  |
 |7043de84-3a40-4b44-ad4c-94dd1e802370|domain.tld.    |PRIMARY| 1498209223|ACTIVE|NONE  |
 |ce9836a9-ba78-4960-9c89-6a4989a9e095|testdomain.tld.|PRIMARY| 1501590333|ACTIVE|NONE  |
 +------------------------------------+---------------+-------+-----------+------+------+
Create a record in the new DNS zone by running the command below.
Use any IPv4 address to test that it works.
For example, 192.168.0.1.
salt 'ctl01*' cmd.run ". /root/keystonercv3; openstack recordset create \
--records '192.168.0.1' --type A testdomain.tld. tstserver01"
Example of system response:
ctl01.virtual-mcp-ocata-ovs.local:
 +-------------+--------------------------------------+
 | Field       | Value                                |
 +-------------+--------------------------------------+
 | action      | CREATE                               |
 | created_at  | 2017-08-01T12:28:37.000000           |
 | description | None                                 |
 | id          | d099f013-460b-41ee-8cf1-3cf0e3c49bc7 |
 | name        | tstserver01.testdomain.tld.         |
 | project_id  | 49c11a3aa9534d8b897cf06890871840     |
 | records     | 192.168.0.1                          |
 | status      | PENDING                              |
 | ttl         | None                                 |
 | type        | A                                    |
 | updated_at  | None                                 |
 | version     | 1                                    |
 | zone_id     | ce9836a9-ba78-4960-9c89-6a4989a9e095 |
 | zone_name   | testdomain.tld.                      |
 +-------------+--------------------------------------+
Verify that the record is successfully created and is in the ACTIVE
status by running the openstack recordset list [zone_id]
command. The zone_id parameter can be found in the output
of the command described in the previous step.
Example:
salt 'ctl01*' cmd.run ". /root/keystonercv3; openstack recordset list \
ce9836a9-ba78-4960-9c89-6a4989a9e095"
ctl01.virtual-mcp-ocata-ovs.local:
+---+---------------------------+----+----------------------------------------------------------+------+------+
| id| name                      |type|records                                                   |status|action|
+---+---------------------------+----+----------------------------------------------------------+------+------+
|...|testdomain.tld.            |SOA |ns1.example.org. dnsmaster.testdomain.tld. 1501590517 3598|ACTIVE|NONE  |
|...|testdomain.tld.            |NS  |ns1.example.org.                                          |ACTIVE|NONE  |
|...|tstserver01.testdomain.tld.|A   |192.168.0.1                                               |ACTIVE|NONE  |
+---+---------------------------+----+----------------------------------------------------------+------+------+
Verify that the DNS record can be resolved by running the
nslookup tstserver01.domain.tld [dns server address]
command. In the example below, the DNS server address of the
Designate back end is 10.0.0.1.
Example:
nslookup tstserver01.testdomain.tld 10.0.0.1
Server:     10.0.0.1
Address:    10.0.0.1#53
Name:   tstserver01.testdomain.tld
Address: 192.168.0.1