Chapter 10. Troubleshooting the DNS service

By reviewing the Red Hat OpenStack Platform DNS service (designate) logs and using some simple commands, you can verify that the service is running properly. These actions are the first steps in troubleshooting the DNS service.

The topics included in this section are:

10.1. DNS service and BIND logs

Reviewing the Red Hat OpenStack Platform DNS service (designate) logs, can be useful when troubleshooting issues.

The DNS service logs are located in /var/log/containers/designate. There is one log for each of the component services:

  • central.log
  • designate-api.log
  • mdns.log
  • producer.log
  • worker.log

The logs for the BIND server that Red Hat supplies with the RHOSP DNS service are located in /var/log/containers/designate/designate-bind:

  • central.log
  • designate-api.log

10.2. Exporting the DNS service pool configuration

You can use a copy of the DNS pool configuration to troubleshoot the Red Hat OpenStack Platform (RHOSP) DNS service (designate).

Note

In RHOSP 17.1, multiple pools are not supported.

Procedure

  1. Source your credentials file.

    Example

    $ source ~/overcloudrc

  2. You run the designate-manage pool commands from the designate-central container. First, get the IP address of the control plane VM instance.

    Example

    In this example, the name of the controller is overcloud-controller-0:

    $ CTRL_IP=$(openstack server list -f value -c Networks \
    --name overcloud-controller-0 | sed 's/ctlplane=//')
  3. Log in to one of the Controller nodes and display the current running DNS service pool configuration to the console:

    $ ssh tripleo-admin@${CTRL_IP} sudo podman exec -i -u root \
    designate-central designate-manage pool show_config

    Sample output

    Pool Configuration:
    -------------------
    also_notifies: []
    attributes: {}
    description: Default Pool
    id: 794ccc2c-d751-44fe-b57f-8894c9f5c842
    name: default
    nameservers:
    - host: 192.0.2.111
      port: 53
    - host: 192.0.2.109
      port: 53
    - host: 192.0.2.131
      port: 53
    ns_records:
    - hostname: ns2.example.com.
      priority: 2
    - hostname: ns1.example.com.
      priority: 1
    - hostname: ns3.example.com.
      priority: 3
    targets:
    - description: BIND9 Server 3
      masters:
      - host: 192.0.2.137
        port: 16002
      - host: 192.0.2.137
        port: 16001
      - host: 192.0.2.137
        port: 16000
      options:
        host: 192.0.2.111
        port: '53'
        rndc_config_file: /etc/designate/private/bind3.conf
        rndc_host: 192.0.2.111
        rndc_port: '953'
      type: bind9
    - description: BIND9 Server 2
      masters:
      - host: 192.0.2.137
        port: 16001
      - host: 192.0.2.137
        port: 16002
      - host: 192.0.2.137
        port: 16000
      options:
        host: 192.0.2.131
        port: '53'
        rndc_config_file: /etc/designate/private/bind2.conf
        rndc_host: 192.0.2.131
        rndc_port: '953'
      type: bind9
    - description: BIND9 Server 1
      masters:
      - host: 192.0.2.137
        port: 16002
      - host: 192.0.2.137
        port: 16001
      - host: 192.0.2.137
        port: 16000
      options:
        host: 192.0.2.109
        port: '53'
        rndc_config_file: /etc/designate/private/bind1.conf
        rndc_host: 192.0.2.109
        rndc_port: '953'
      type: bind9

  4. If you want to export the current pool configuration to a file, use the designate-manage pool generate_file command:

    Example

    $ sudo podman exec -i designate-manage pool generate_file \
    --file ~/my_dns_service_config.yaml

    Tip

    Use the podman cp command to copy files from a container to your local system.

10.3. Listing available DNS service endpoints

Determining the Red Hat OpenStack Platform DNS service (designate) endpoint and its status, can be useful when troubleshooting issues.

Procedure

  1. Source your credentials file.

    Example

    $ source ~/overcloudrc

  2. List the RHOSP service endpoints:

    $ openstack endpoint list -c "Service Name" -c Enabled -c URL

    Sample output

    +--------------+---------+-------------------------------------------------+
    | Service Name | Enabled | URL                                             |
    +--------------+---------+-------------------------------------------------+
    | swift        | True    | http://198.51.100.61:8080                       |
    | designate    | True    | http://203.0.113.103:9001                       |
    | heat-cfn     | True    | http://192.0.2.137:8000/v1                      |
    | designate    | True    | http://192.0.2.137:9001                         |
    | placement    | True    | http://203.0.113.103:8778/placement             |
    | cinderv3     | True    | http://203.0.113.103:8776/v3/%(tenant_id)s      |
    | heat         | True    | http://203.0.113.103:8004/v1/%(tenant_id)s      |
    | heat-cfn     | True    | http://203.0.113.103:8000/v1                    |
    | nova         | True    | http://203.0.113.103:8774/v2.1                  |
    | heat         | True    | http://192.0.2.137:8004/v1/%(tenant_id)s        |
    | glance       | True    | http://203.0.113.103:9292                       |
    | heat         | True    | http://203.0.113.103:8004/v1/%(tenant_id)s      |
    | glance       | True    | http://203.0.113.103:9292                       |
    | neutron      | True    | http://203.0.113.103:9696                       |
    | nova         | True    | http://192.0.2.137:8774/v2.1                    |
    | cinderv3     | True    | http://192.0.2.137:8776/v3/%(tenant_id)s        |
    | placement    | True    | http://203.0.113.103:8778/placement             |
    | keystone     | True    | http://192.168.24.17:35357                      |
    | neutron      | True    | http://192.0.2.137:9696                         |
    | nova         | True    | http://203.0.113.103:8774/v2.1                  |
    | heat-cfn     | True    | http://203.0.113.103:8000/v1                    |
    | cinderv3     | True    | http://203.0.113.103:8776/v3/%(tenant_id)s      |
    | glance       | True    | http://192.0.2.137:9292                         |
    | placement    | True    | http://192.0.2.137:8778/placement               |
    | swift        | True    | http://198.51.100.61:8080/v1/AUTH_%(tenant_id)s |
    | swift        | True    | http://192.0.2.137:8080/v1/AUTH_%(tenant_id)s   |
    | designate    | True    | http://203.0.113.103:9001                       |
    | keystone     | True    | http://192.0.2.137:5000                         |
    | neutron      | True    | http://203.0.113.103:9696                       |
    | keystone     | True    | http://203.0.113.103:5000                       |
    +--------------+---------+-------------------------------------------------+