$ Jun 17 12:25:22 maas maas.calls: [INFO] Starting task 'write_full_dns_config' with args: () {'zones': [<provisioningserver.dns.zoneconfig.DNSForwardZoneConfig object at 0x7f7e90c10dd0>, <provisioningserver.dns.zoneconfig.DNSReverseZoneConfig object at 0x7f7e92521d90>], 'callback': provisioningserver.tasks.rndc_command([u'reload'], False), 'upstream_dns': u'8.8.8.8', 'trusted_networks': u'192.168.2.0/24;'}
Jun 17 12:25:22 maas maas.calls: [INFO] Starting task 'rndc_command' with args: ([u'reload'], False) {}
Jun 17 12:25:22 maas maas.tasks: [ERROR] rndc_command failed: Command `rndc -c /etc/bind/maas/rndc.conf.maas reload` returned non-zero exit status 1:#012rndc: connection to remote host closed#012This may indicate that#012* the remote server is using an older version of the command protocol,#012* this host is not authorized to connect,#012* the clocks are not synchronized, or#012* the key is invalid.
Jun 17 12:25:22 maas maas.tasks: [ERROR] rndc_command: Command `rndc -c /etc/bind/maas/rndc.conf.maas reload` returned non-zero exit status 1:#012rndc: connection to remote host closed#012This may indicate that#012* the remote server is using an older version of the command protocol,#012* this host is not authorized to connect,#012* the clocks are not synchronized, or#012* the key is invalid.
Jun 17 12:25:22 maas maas.tasks: [ERROR] write_full_dns_config: Command `rndc -c /etc/bind/maas/rndc.conf.maas reload` returned non-zero exit status 1:#012rndc: connection to remote host closed#012This may indicate that#012* the remote server is using an older version of the command protocol,#012* this host is not authorized to connect,#012* the clocks are not synchronized, or#012* the key is invalid.
ERROR 2015-06-17 12:25:22,493 django.request Internal Server Error: /MAAS/clusters/6e051520-ed1c-4d2a-a1df-7ea93a35e175/interfaces/eth0/edit/
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/django/core/handlers/base.py", line 112, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.7/dist-packages/django/contrib/auth/decorators.py", line 22, in _wrapped_view
return view_func(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/views/generic/base.py", line 69, in view
return self.dispatch(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/views/generic/base.py", line 87, in dispatch
return handler(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/views/generic/edit.py", line 228, in post
return super(BaseUpdateView, self).post(request, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/views/generic/edit.py", line 171, in post
return self.form_valid(form)
File "/usr/lib/python2.7/dist-packages/maasserver/views/clusters.py", line 224, in form_valid
return super(ClusterInterfaceEdit, self).form_valid(form)
File "/usr/lib/python2.7/dist-packages/django/views/generic/edit.py", line 147, in form_valid
self.object = form.save()
File "/usr/lib/python2.7/dist-packages/maasserver/forms.py", line 1510, in save
interface = super(NodeGroupInterfaceForm, self).save(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/forms/models.py", line 446, in save
construct=False)
File "/usr/lib/python2.7/dist-packages/django/forms/models.py", line 99, in save_instance
instance.save()
File "/usr/lib/python2.7/dist-packages/maasserver/models/cleansave.py", line 38, in save
return super(CleanSave, self).save(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/maasserver/models/timestampedmodel.py", line 55, in save
return super(TimestampedModel, self).save(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 545, in save
force_update=force_update, update_fields=update_fields)
File "/usr/lib/python2.7/dist-packages/django/db/models/base.py", line 582, in save_base
update_fields=update_fields, raw=raw, using=using)
File "/usr/lib/python2.7/dist-packages/django/dispatch/dispatcher.py", line 185, in send
response = receiver(signal=self, sender=sender, **named)
File "/usr/lib/python2.7/dist-packages/maasserver/dns/connect.py", line 61, in dns_post_save_NodeGroupInterface
write_full_dns_config()
File "/usr/lib/python2.7/dist-packages/maasserver/utils/__init__.py", line 193, in call_with_lock
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/maasserver/dns/config.py", line 142, in write_full_dns_config
trusted_networks=get_trusted_networks())
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 452, in delay
return self.apply_async(args, kwargs)
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 546, in apply_async
link=link, link_error=link_error, **options)
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 727, in apply
request=request, propagate=throw)
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 315, in eager_trace_task
uuid, args, kwargs, request)
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 218, in trace_task
R = retval = fun(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/provisioningserver/logger/utils.py", line 42, in wrapper
func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/provisioningserver/tasks.py", line 52, in wrapper
func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/provisioningserver/tasks.py", line 116, in write_full_dns_config
callback.delay()
File "/usr/lib/python2.7/dist-packages/celery/canvas.py", line 167, in delay
return self.apply_async(partial_args, partial_kwargs)
File "/usr/lib/python2.7/dist-packages/celery/canvas.py", line 237, in apply_async
return _apply(args, kwargs, **options)
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 546, in apply_async
link=link, link_error=link_error, **options)
File "/usr/lib/python2.7/dist-packages/celery/app/task.py", line 727, in apply
request=request, propagate=throw)
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 315, in eager_trace_task
uuid, args, kwargs, request)
File "/usr/lib/python2.7/dist-packages/celery/app/trace.py", line 218, in trace_task
R = retval = fun(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/provisioningserver/logger/utils.py", line 42, in wrapper
func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/provisioningserver/tasks.py", line 52, in wrapper
func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/provisioningserver/tasks.py", line 83, in rndc_command
execute_rndc_command(arguments)
File "/usr/lib/python2.7/dist-packages/provisioningserver/dns/config.py", line 170, in execute_rndc_command
call_and_check(rndc_cmd)
File "/usr/lib/python2.7/dist-packages/provisioningserver/utils/shell.py", line 146, in call_and_check
raise ExternalProcessError(process.returncode, command, output=stderr)
ExternalProcessError: Command `rndc -c /etc/bind/maas/rndc.conf.maas reload` returned non-zero exit status 1:
rndc: connection to remote host closed
This may indicate that
* the remote server is using an older version of the command protocol,
* this host is not authorized to connect,
* the clocks are not synchronized, or
* the key is invalid.
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: p4p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:1b:c5:09:24:97 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.1/24 brd 192.168.2.255 scope global p4p1
valid_lft forever preferred_lft forever
inet6 fe80::21b:c5ff:fe09:2497/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:80:8e:8a:8e:38 brd ff:ff:ff:ff:ff:ff
inet 10.19.83.182/24 brd 10.19.83.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::280:8eff:fe8a:8e38/64 scope link
valid_lft forever preferred_lft forever
## Where to log. This log can be rotated by sending SIGUSR1 to the
## running server.
#
# logfile: "pserv.log"
logfile: "/var/log/maas/pserv.log"
## TFTP configuration.
#
tftp:
# The "root" setting has been replaced by "resource_root". The old setting
# is used one final time when upgrading a pre-14.04 cluster controller to a
# 14.04 version. After that upgrade, it can be removed.
#
# resource_root: /var/lib/maas/boot-resources/current/
I can reproduce I believe:
$ Jun 17 12:25:22 maas maas.calls: [INFO] Starting task 'write_ full_dns_ config' with args: () {'zones': [<provisionings erver.dns. zoneconfig. DNSForwardZoneC onfig object at 0x7f7e90c10dd0>, <provisioningse rver.dns. zoneconfig. DNSReverseZoneC onfig object at 0x7f7e92521d90>], 'callback': provisioningser ver.tasks. rndc_command( [u'reload' ], False), 'upstream_dns': u'8.8.8.8', 'trusted_networks': u'192.168.2.0/24;'} maas/rndc. conf.maas reload` returned non-zero exit status 1:#012rndc: connection to remote host closed#012This may indicate that#012* the remote server is using an older version of the command protocol,#012* this host is not authorized to connect,#012* the clocks are not synchronized, or#012* the key is invalid. maas/rndc. conf.maas reload` returned non-zero exit status 1:#012rndc: connection to remote host closed#012This may indicate that#012* the remote server is using an older version of the command protocol,#012* this host is not authorized to connect,#012* the clocks are not synchronized, or#012* the key is invalid. dns_config: Command `rndc -c /etc/bind/ maas/rndc. conf.maas reload` returned non-zero exit status 1:#012rndc: connection to remote host closed#012This may indicate that#012* the remote server is using an older version of the command protocol,#012* this host is not authorized to connect,#012* the clocks are not synchronized, or#012* the key is invalid. 6e051520- ed1c-4d2a- a1df-7ea93a35e1 75/interfaces/ eth0/edit/ python2. 7/dist- packages/ django/ core/handlers/ base.py" , line 112, in get_response callback( request, *callback_args, **callback_kwargs) python2. 7/dist- packages/ django/ contrib/ auth/decorators .py", line 22, in _wrapped_view python2. 7/dist- packages/ django/ views/generic/ base.py" , line 69, in view request, *args, **kwargs) python2. 7/dist- packages/ django/ views/generic/ base.py" , line 87, in dispatch python2. 7/dist- packages/ django/ views/generic/ edit.py" , line 228, in post eView, self).post(request, *args, **kwargs) python2. 7/dist- packages/ django/ views/generic/ edit.py" , line 171, in post valid(form) python2. 7/dist- packages/ maasserver/ views/clusters. py", line 224, in form_valid terfaceEdit, self).form_ valid(form) python2. 7/dist- packages/ django/ views/generic/ edit.py" , line 147, in form_valid python2. 7/dist- packages/ maasserver/ forms.py" , line 1510, in save InterfaceForm, self).save(*args, **kwargs) python2. 7/dist- packages/ django/ forms/models. py", line 446, in save False) python2. 7/dist- packages/ django/ forms/models. py", line 99, in save_instance python2. 7/dist- packages/ maasserver/ models/ cleansave. py", line 38, in save python2. 7/dist- packages/ maasserver/ models/ timestampedmode l.py", line 55, in save edModel, self).save(*args, **kwargs) python2. 7/dist- packages/ django/ db/models/ base.py" , line 545, in save update= force_update, update_ fields= update_ fields) python2. 7/dist- packages/ django/ db/models/ base.py" , line 582, in save_base fields= update_ fields, raw=raw, using=using) python2. 7/dist- packages/ django/ dispatch/ dispatcher. py", line 185, in send signal= self, sender=sender, **named) python2. 7/dist- packages/ maasserver/ dns/connect. py", line 61, in dns_post_ save_NodeGroupI nterface full_dns_ config( ) python2. 7/dist- packages/ maasserver/ utils/_ _init__ .py", line 193, in call_with_lock python2. 7/dist- packages/ maasserver/ dns/config. py", line 142, in write_full_ dns_config networks= get_trusted_ networks( )) python2. 7/dist- packages/ celery/ app/task. py", line 452, in delay async(args, kwargs) python2. 7/dist- packages/ celery/ app/task. py", line 546, in apply_async link_error, **options) python2. 7/dist- packages/ celery/ app/task. py", line 727, in apply request, propagate=throw) python2. 7/dist- packages/ celery/ app/trace. py", line 315, in eager_trace_task python2. 7/dist- packages/ celery/ app/trace. py", line 218, in trace_task python2. 7/dist- packages/ provisioningser ver/logger/ utils.py" , line 42, in wrapper python2. 7/dist- packages/ provisioningser ver/tasks. py", line 52, in wrapper python2. 7/dist- packages/ provisioningser ver/tasks. py", line 116, in write_full_ dns_config delay() python2. 7/dist- packages/ celery/ canvas. py", line 167, in delay async(partial_ args, partial_kwargs) python2. 7/dist- packages/ celery/ canvas. py", line 237, in apply_async python2. 7/dist- packages/ celery/ app/task. py", line 546, in apply_async link_error, **options) python2. 7/dist- packages/ celery/ app/task. py", line 727, in apply request, propagate=throw) python2. 7/dist- packages/ celery/ app/trace. py", line 315, in eager_trace_task python2. 7/dist- packages/ celery/ app/trace. py", line 218, in trace_task python2. 7/dist- packages/ provisioningser ver/logger/ utils.py" , line 42, in wrapper python2. 7/dist- packages/ provisioningser ver/tasks. py", line 52, in wrapper python2. 7/dist- packages/ provisioningser ver/tasks. py", line 83, in rndc_command rndc_command( arguments) python2. 7/dist- packages/ provisioningser ver/dns/ config. py", line 170, in execute_ rndc_command and_check( rndc_cmd) python2. 7/dist- packages/ provisioningser ver/utils/ shell.py" , line 146, in call_and_check Error(process. returncode, command, output=stderr) Error: Command `rndc -c /etc/bind/ maas/rndc. conf.maas reload` returned non-zero exit status 1:
Jun 17 12:25:22 maas maas.calls: [INFO] Starting task 'rndc_command' with args: ([u'reload'], False) {}
Jun 17 12:25:22 maas maas.tasks: [ERROR] rndc_command failed: Command `rndc -c /etc/bind/
Jun 17 12:25:22 maas maas.tasks: [ERROR] rndc_command: Command `rndc -c /etc/bind/
Jun 17 12:25:22 maas maas.tasks: [ERROR] write_full_
ERROR 2015-06-17 12:25:22,493 django.request Internal Server Error: /MAAS/clusters/
Traceback (most recent call last):
File "/usr/lib/
response = wrapped_
File "/usr/lib/
return view_func(request, *args, **kwargs)
File "/usr/lib/
return self.dispatch(
File "/usr/lib/
return handler(request, *args, **kwargs)
File "/usr/lib/
return super(BaseUpdat
File "/usr/lib/
return self.form_
File "/usr/lib/
return super(ClusterIn
File "/usr/lib/
self.object = form.save()
File "/usr/lib/
interface = super(NodeGroup
File "/usr/lib/
construct=
File "/usr/lib/
instance.save()
File "/usr/lib/
return super(CleanSave, self).save(*args, **kwargs)
File "/usr/lib/
return super(Timestamp
File "/usr/lib/
force_
File "/usr/lib/
update_
File "/usr/lib/
response = receiver(
File "/usr/lib/
write_
File "/usr/lib/
return func(*args, **kwargs)
File "/usr/lib/
trusted_
File "/usr/lib/
return self.apply_
File "/usr/lib/
link=link, link_error=
File "/usr/lib/
request=
File "/usr/lib/
uuid, args, kwargs, request)
File "/usr/lib/
R = retval = fun(*args, **kwargs)
File "/usr/lib/
func(*args, **kwargs)
File "/usr/lib/
func(*args, **kwargs)
File "/usr/lib/
callback.
File "/usr/lib/
return self.apply_
File "/usr/lib/
return _apply(args, kwargs, **options)
File "/usr/lib/
link=link, link_error=
File "/usr/lib/
request=
File "/usr/lib/
uuid, args, kwargs, request)
File "/usr/lib/
R = retval = fun(*args, **kwargs)
File "/usr/lib/
func(*args, **kwargs)
File "/usr/lib/
func(*args, **kwargs)
File "/usr/lib/
execute_
File "/usr/lib/
call_
File "/usr/lib/
raise ExternalProcess
ExternalProcess
rndc: connection to remote host closed
This may indicate that
* the remote server is using an older version of the command protocol,
* this host is not authorized to connect,
* the clocks are not synchronized, or
* the key is invalid.
$ ip a UP,LOWER_ UP> mtu 65536 qdisc noqueue state UNKNOWN group default MULTICAST, UP,LOWER_ UP> mtu 1500 qdisc mq state UP group default qlen 1000 c5ff:fe09: 2497/64 scope link MULTICAST, UP,LOWER_ UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 8eff:fe8a: 8e38/64 scope link
1: lo: <LOOPBACK,
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: p4p1: <BROADCAST,
link/ether 00:1b:c5:09:24:97 brd ff:ff:ff:ff:ff:ff
inet 192.168.2.1/24 brd 192.168.2.255 scope global p4p1
valid_lft forever preferred_lft forever
inet6 fe80::21b:
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,
link/ether 00:80:8e:8a:8e:38 brd ff:ff:ff:ff:ff:ff
inet 10.19.83.182/24 brd 10.19.83.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::280:
valid_lft forever preferred_lft forever
$ cat /etc/maas/ maas_cluster. conf /etc/maas/ maas_local_ settings. py /etc/maas/ pserv.yaml maas_cluster. conf: Permission denied maas_local_ settings. py: Permission denied
cat: /etc/maas/
cat: /etc/maas/
##
## Provisioning Server (pserv) configuration.
##
## Where to log. This log can be rotated by sending SIGUSR1 to the maas/pserv. log"
## running server.
#
# logfile: "pserv.log"
logfile: "/var/log/
## TFTP configuration. maas/boot- resources/ current/
#
tftp:
# The "root" setting has been replaced by "resource_root". The old setting
# is used one final time when upgrading a pre-14.04 cluster controller to a
# 14.04 version. After that upgrade, it can be removed.
#
# resource_root: /var/lib/
# port: 69 localhost/ MAAS/api/ 1.0/pxeconfig/ localhost/ MAAS/api/ 1.0/pxeconfig/
## The URL to be contacted to generate PXE configurations.
# generator: http://
generator: http://