Comment 0 for bug 1030860

Revision history for this message
Raphaƫl Badin (rvb) wrote : DNS is not enabled.

To enable DNS we need to:
- make sure that bind9utils dnsutils bind9 python-netaddr are installed (new dependencies)
- make sure that the directory /etc/bind/maas (etc/celeryconfig.py:DNS_CONFIG_DIR) is created
- call `sudo maas set_up_dns` (this will create an empty [i.e. no DNS zone] configuration with the required rndc key in etc/celeryconfig.py:DNS_CONFIG_DIR : /etc/bind/maas)
- add the result of `sudo get_named_conf` to named.conf.local
- restart bind9

How to test this:
$ sudo maas shell
from django.core.management import call_command
from maasserver.models import DHCPLease, NodeGroup, Node, MACAddress
# Create the master nodegroup, jtv is fixing the code to get that done as part of a migration
call_command('config_master_dhcp', subnet_mask='255.255.0.0', broadcast_ip='10.111.255.255', ip_range_low= '10.111.123.9', ip_range_high= '10.111.244.18', router_ip='10.111.123.9')
# At this stage, the zone is defined and all the auto-generated hostname are in place:
# dig @127.0.0.1 10-111-123-9.master +short

# Create a node in that nodegroup. Its hostname is 'myhostname'
master = NodeGroup.objects.get(id=1)
node = Node(hostname='myhostname', nodegroup=master)
node.save()
mac = MACAddress(node=node, mac_address='11:22:33:44:55:66')
mac.save()
# Create a lease for that node:
DHCPLease.objects.update_leases(master, {'10.111.123.10': '11:22:33:44:55:66'})
# Now the hostname of the node can be queried:
# dig @127.0.0.1 myhostname.master +short