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).
In RHOSP 17.1, multiple pools are not supported.
Procedure
Source your credentials file.
Example
$ source ~/overcloudrc
You run the
designate-manage pool
commands from thedesignate-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=//')
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
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
TipUse 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
Source your credentials file.
Example
$ source ~/overcloudrc
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 | +--------------+---------+-------------------------------------------------+