On a system with
$ juju config nova-compute aa-profile-mode
enforce
Nova compute fails to start with
Apr 22 07:52:00 node09s01 nova-compute[2721160]: Error in sys.excepthook:
Apr 22 07:52:00 node09s01 nova-compute[2721160]: Traceback (most recent call last):
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 72, in apport_excepthook
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from apport.fileutils import likely_packaged, get_recent_crashes
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from apport.report import Report
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/apport/report.py", line 32, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: import apport.fileutils
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 27, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from apport.packaging_impl import impl as packaging
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 23, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: import apt
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/apt/__init__.py", line 36, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: apt_pkg.init_system()
Apr 22 07:52:00 node09s01 nova-compute[2721160]: apt_pkg.Error: E:Error reading the CPU table
Apr 22 07:52:00 node09s01 nova-compute[2721160]: Original exception was:
Apr 22 07:52:00 node09s01 nova-compute[2721160]: Traceback (most recent call last):
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/bin/nova-compute", line 6, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from nova.cmd.compute import main
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/nova/cmd/__init__.py", line 16, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: import nova.monkey_patch # noqa
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/nova/monkey_patch.py", line 108, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: _monkey_patch()
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/nova/monkey_patch.py", line 77, in _monkey_patch
Apr 22 07:52:00 node09s01 nova-compute[2721160]: import oslo_service # noqa
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/oslo_service/__init__.py", line 16, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from oslo_log import log as logging
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/oslo_log/log.py", line 42, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from oslo_config import cfg
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/oslo_config/cfg.py", line 45, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from oslo_config import types
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/oslo_config/types.py", line 28, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: from debtcollector import removals
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/debtcollector/__init__.py", line 19, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: __version__ = pbr.version.VersionInfo(
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pbr/version.py", line 467, in version_string
Apr 22 07:52:00 node09s01 nova-compute[2721160]: return self.semantic_version().brief_string()
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pbr/version.py", line 462, in semantic_version
Apr 22 07:52:00 node09s01 nova-compute[2721160]: self._semantic = self._get_version_from_pkg_resources()
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pbr/version.py", line 439, in _get_version_from_pkg_resources
Apr 22 07:52:00 node09s01 nova-compute[2721160]: import pkg_resources
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 3254, in <module>
Apr 22 07:52:00 node09s01 nova-compute[2721160]: def _initialize_master_working_set():
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 3237, in _call_aside
Apr 22 07:52:00 node09s01 nova-compute[2721160]: f(*args, **kwargs)
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 3266, in _initialize_master_working_set
Apr 22 07:52:00 node09s01 nova-compute[2721160]: working_set = WorkingSet._build_master()
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 575, in _build_master
Apr 22 07:52:00 node09s01 nova-compute[2721160]: ws = cls()
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 568, in __init__
Apr 22 07:52:00 node09s01 nova-compute[2721160]: self.add_entry(entry)
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 624, in add_entry
Apr 22 07:52:00 node09s01 nova-compute[2721160]: for dist in find_distributions(entry, True):
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2066, in find_on_path
Apr 22 07:52:00 node09s01 nova-compute[2721160]: for dist in factory(fullpath):
Apr 22 07:52:00 node09s01 nova-compute[2721160]: File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 2128, in distributions_from_metadata
Apr 22 07:52:00 node09s01 nova-compute[2721160]: if len(os.listdir(path)) == 0:
Apr 22 07:52:00 node09s01 nova-compute[2721160]: PermissionError: [Errno 13] Permission denied: '/usr/local/lib/python3.8/dist-packages/charmhelpers-1.2.1.dist-info'
On syslog:
Apr 22 07:58:18 node09s01 kernel: [6958161.557731] audit: type=1400 audit(1650614298.930:496381): apparmor="DENIED" operation="open" profile="/usr/bin/nova-compute" name="/etc/apt/apt.conf.d/" pid=2752812 comm="nova-compute" requested_mask="r" denied_mask="r" fsuid=64060 ouid=0
Workaround:
juju config nova-compute aa-profile-mode=complain
Then nova-compute starts correctly
Charm rev. 337