MAAS 3.4 installed with deb fails to start the rack due to permission error

Bug #2026802 reported by Jacopo Rota
22
This bug affects 4 people
Affects Status Importance Assigned to Milestone
MAAS
Fix Released
High
Jacopo Rota
3.3
Fix Released
Critical
Jacopo Rota
3.4
Fix Released
Critical
Jacopo Rota
3.5
Fix Released
High
Jacopo Rota

Bug Description

MAAS 3.4 rack controller fails to start after a fresh installation with deb on ubuntu 22.04 due to

Traceback (most recent call last):
  File "/usr/sbin/rackd", line 33, in <module>
    sys.exit(load_entry_point('maas==3.4.0rc1', 'console_scripts', 'rackd')())
  File "/usr/lib/python3/dist-packages/provisioningserver/server.py", line 95, in run
    runService("maas-rackd")
  File "/usr/lib/python3/dist-packages/provisioningserver/server.py", line 90, in runService
    UnixApplicationRunner(config).run()
  File "/usr/lib/python3/dist-packages/twisted/application/app.py", line 370, in run
    self.application = self.createOrGetApplication()
  File "/usr/lib/python3/dist-packages/twisted/application/app.py", line 432, in createOrGetApplication
    ser = plg.makeService(self.config.subOptions)
  File "/usr/lib/python3/dist-packages/provisioningserver/plugin.py", line 276, in makeService
    secret = MAAS_SHARED_SECRET.get()
  File "/usr/lib/python3/dist-packages/provisioningserver/utils/env.py", line 64, in get
    self.path.read_text(encoding="ascii")
  File "/usr/lib/python3.10/pathlib.py", line 1134, in read_text
    with self.open(mode='r', encoding=encoding, errors=errors) as f:
  File "/usr/lib/python3.10/pathlib.py", line 1119, in open
    return self._accessor.open(self, mode, buffering, encoding, errors,
PermissionError: [Errno 13] Permission denied: '/var/lib/maas/secret'

How to reproduce:

Install the region controller:

apt-add-repository ppa:maas/3.4-next
apt update
apt install maas-region-controller
maas createadmin

Install the rack controller on another machine:

apt-add-repository ppa:maas/3.4-next
apt update
apt install maas-rack-controller
maas-rack register --url http://192.168.122.XXX:5240/MAAS --secret $SECRET

Related branches

Jacopo Rota (r00ta)
description: updated
description: updated
Alberto Donato (ack)
Changed in maas:
milestone: none → 3.4.0
Changed in maas:
milestone: 3.5.0 → 3.5.0-beta1
status: Fix Committed → Fix Released
Revision history for this message
Felipe Alencastro (falencastro) wrote (last edit ):
Download full text (3.8 KiB)

This issue appears to still be present in MAAS 3.5

Had this while installing a new region controller, maas-region-api deb version 1:3.5.0-16308-g.c799a1080-0ubuntu1~22.04.1

Workaround was: chown maas:maas /var/lib/maas/secret; systemctl restart maas-regiond.service

1- apt install maas-rack-controller maas-region-api
2- maas-rack register --url http://192.168.0.1:80/MAAS --secret XXXXXXXXXXXXXXX
3- Copied /etc/maas/regiond.conf from other controller
4- systemctl start maas-regiond.service
5- ls -ltrh /var/lib/maas/secret
-rw-r----- 1 root maas 32 Jul 30 15:10 /var/lib/maas/secret

systemd[1]: Started MAAS Region Controller.
regiond[37664]: twisted.scripts: [info] twistd 22.1.0 (/usr/bin/python3 3.10.12) starting up.
regiond[37664]: twisted.scripts: [info] reactor class: twisted.internet.asyncioreactor.AsyncioSelectorReactor.
regiond[37664]: maasserver.eventloop_37664.master: [info] Calling start_up to start region process
regiond[37664]: maasserver.start_up: [error] Error during start-up.
regiond[37664]: Traceback (most recent call last):
regiond[37664]: File "/usr/lib/python3/dist-packages/maasserver/start_up.py", line 217, in start_up
regiond[37664]: yield deferToDatabase(inner_start_up, master=master)
regiond[37664]: File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 244, in inContext
regiond[37664]: result = inContext.theWork() # type: ignore[attr-defined]
regiond[37664]: File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 260, in <lambda>
regiond[37664]: inContext.theWork = lambda: context.call( # type: ignore[attr-defined]
regiond[37664]: File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 117, in callWithContext
regiond[37664]: return self.currentContext().callWithContext(ctx, func, *args, **kw)
regiond[37664]: File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 82, in callWithContext
regiond[37664]: return func(*args, **kw)
regiond[37664]: File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py", line 856, in callInContext
regiond[37664]: return func(*args, **kwargs)
regiond[37664]: File "/usr/lib/python3/dist-packages/provisioningserver/utils/twisted.py", line 203, in wrapper
regiond[37664]: result = func(*args, **kwargs)
regiond[37664]: File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 726, in call_with_connection
regiond[37664]: return func(*args, **kwargs)
regiond[37664]: File "/usr/lib/python3/dist-packages/maasserver/utils/__init__.py", line 177, in call_with_lock
regiond[37664]: return func(*args, **kwargs)
regiond[37664]: File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 771, in call_within_transaction
regiond[37664]: return func_outside_txn(*args, **kwargs)
regiond[37664]: File "/usr/lib/python3/dist-packages/maasserver/utils/orm.py", line 574, in retrier
regiond[37664]: return func(*args, **kwargs)
regiond[37664]: File "/usr/lib/python3.10/contextlib.py", line 79, in inner
regiond[37664]: return func(*args, **kwds)
regiond[37664]: File "/usr/lib/python3/dist-packages/maasserver/start_up.py", line 277, in inner_start_up...

Read more...

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.