diff options
Diffstat (limited to 'doc/source/reference/designate-guide.rst')
| -rw-r--r-- | doc/source/reference/designate-guide.rst | 122 |
1 files changed, 122 insertions, 0 deletions
diff --git a/doc/source/reference/designate-guide.rst b/doc/source/reference/designate-guide.rst new file mode 100644 index 000000000..3c4b39047 --- /dev/null +++ b/doc/source/reference/designate-guide.rst @@ -0,0 +1,122 @@ +.. _designate-guide: + +================== +Designate in Kolla +================== + +Overview +======== +Designate provides DNSaaS services for OpenStack: + + - REST API for domain/record management + - Multi-tenant + - Integrated with Keystone for authentication + - Framework in place to integrate with Nova and Neutron + notifications (for auto-generated records) + - Support for PowerDNS and Bind9 out of the box + +Configuration on Kolla deployment +--------------------------------- + +Enable Designate service in ``/etc/kolla/globals.yml`` + +.. code-block:: console + + enable_designate: "yes" + +Configure Designate options in ``/etc/kolla/globals.yml`` + +.. important:: + + Designate MDNS node requires the ``dns_interface`` to be reachable from + public network. + +.. code-block:: console + + dns_interface: "eth1" + designate_backend: "bind9" + designate_ns_record: "sample.openstack.org" + +Neutron and Nova Integration +---------------------------- + +Create default Designate Zone for Neutron: + +.. code-block:: console + + $ openstack zone create --email admin@sample.openstack.org sample.openstack.org. + +Create designate-sink custom configuration folder: + +.. code-block:: console + + $ mkdir -p /etc/kolla/config/designate/ + +Append Designate Zone ID in ``/etc/kolla/config/designate/designate-sink.conf`` + +.. code-block:: console + + [handler:nova_fixed] + zone_id = <ZONE_ID> + [handler:neutron_floatingip] + zone_id = <ZONE_ID> + +Reconfigure Designate: + +.. code-block:: console + + $ kolla-ansible reconfigure -i <INVENTORY_FILE> --tags designate + +Verify operation +---------------- + +List available networks: + +.. code-block:: console + + $ openstack network list + +Associate a domain to a network: + +.. code-block:: console + + $ neutron net-update <NETWORK_ID> --dns_domain sample.openstack.org. + +Start an instance: + +.. code-block:: console + + $ openstack server create \ + --image cirros \ + --flavor m1.tiny \ + --key-name mykey \ + --nic net-id=${NETWORK_ID} \ + my-vm + +Check DNS records in Designate: + +.. code-block:: console + + $ openstack recordset list sample.openstack.org. + +--------------------------------------+---------------------------------------+------+---------------------------------------------+--------+--------+ + | id | name | type | records | status | action | + +--------------------------------------+---------------------------------------+------+---------------------------------------------+--------+--------+ + | 5aec6f5b-2121-4a2e-90d7-9e4509f79506 | sample.openstack.org. | SOA | sample.openstack.org. | ACTIVE | NONE | + | | | | admin.sample.openstack.org. 1485266928 3514 | | | + | | | | 600 86400 3600 | | | + | 578dc94a-df74-4086-a352-a3b2db9233ae | sample.openstack.org. | NS | sample.openstack.org. | ACTIVE | NONE | + | de9ff01e-e9ef-4a0f-88ed-6ec5ecabd315 | 192-168-190-232.sample.openstack.org. | A | 192.168.190.232 | ACTIVE | NONE | + | f67645ee-829c-4154-a988-75341050a8d6 | my-vm.None.sample.openstack.org. | A | 192.168.190.232 | ACTIVE | NONE | + | e5623d73-4f9f-4b54-9045-b148e0c3342d | my-vm.sample.openstack.org. | A | 192.168.190.232 | ACTIVE | NONE | + +--------------------------------------+---------------------------------------+------+---------------------------------------------+--------+--------+ + +Query instance DNS information to Designate ``dns_interface`` IP address: + +.. code-block:: console + + $ dig +short -p 5354 @<DNS_INTERFACE_IP> my-vm.sample.openstack.org. A + 192.168.190.232 + +For more information about how Designate works, see +`Designate, a DNSaaS component for OpenStack +<https://docs.openstack.org/designate/latest/>`__. |
