I noticed that cinder-backup container lacks /etc/cinder/rootwrap.d/volume.filters. As a result, my container fails to successfully backup a volume using nfs backup driver. I can see it tries to mount the NFS share but fails:
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher Traceback (most recent call last):
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 138, in _dispatch_and_reply
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher incoming.message))
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 185, in _dispatch
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 127, in _do_dispatch
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher result = func(ctxt, **new_args)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/manager.py", line 977, in create_backup
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher return self.manager.create_backup(context, backup)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/manager.py", line 405, in create_backup
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher self._update_backup_error(backup, context, six.text_type(err))
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in __exit__
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher self.force_reraise()
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in force_reraise
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/manager.py", line 399, in create_backup
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher self._run_backup(context, backup, volume)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/manager.py", line 426, in _run_backup
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher backup_service = self.service.get_backup_driver(context)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/drivers/nfs.py", line 80, in get_backup_driver
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher return NFSBackupDriver(context)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/drivers/nfs.py", line 55, in __init__
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher backup_path = self._init_backup_repo_path()
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/cinder/backup/drivers/nfs.py", line 75, in _init_backup_repo_path
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher remotefsclient.mount(self.backup_share)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/os_brick/remotefs/remotefs.py", line 110, in mount
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher self._mount_nfs(share, mount_path, flags)
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher File "/usr/lib/python2.7/dist-packages/os_brick/remotefs/remotefs.py", line 150, in _mount_nfs
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher 'error': mnt_errors})
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher BrickException: NFS mount failed for share 10.242.8.20:/backup. Error - {'pnfs': u"Unexpected error while running command.\nCommand: sudo cinder-rootwrap /etc/cinder/rootwrap.conf mount -t nfs -o None,vers=4,minorversion=1 10.242.8.20:/backup /var/lib/cinder/backup_mount/1feaa597e85925087ed4fa69cbbd1265\nExit code: 99\nStdout: u''\nStderr: u'/usr/bin/cinder-rootwrap: Unauthorized command: mount -t nfs -o None,vers=4,minorversion=1 10.242.8.20:/backup /var/lib/cinder/backup_mount/1feaa597e85925087ed4fa69cbbd1265 (no filter matched)\\n'", 'nfs': u"Unexpected error while running command.\nCommand: sudo cinder-rootwrap /etc/cinder/rootwrap.conf mount -t nfs -o None 10.242.8.20:/backup /var/lib/cinder/backup_mount/1feaa597e85925087ed4fa69cbbd1265\nExit code: 99\nStdout: u''\nStderr: u'/usr/bin/cinder-rootwrap: Unauthorized command: mount -t nfs -o None 10.242.8.20:/backup /var/lib/cinder/backup_mount/1feaa597e85925087ed4fa69cbbd1265 (no filter matched)\\n'"}
2016-12-01 22:45:32.169 7 ERROR oslo_messaging.rpc.dispatcher
I could find out that the cinder-volume package is the only one that contains the volume.filters file:
root@d1a08b725a88:/# apt-file search /etc/cinder/rootwrap.d
cinder-volume: /etc/cinder/rootwrap.d/volume.filters
This file exists in the source containers and works correctly. So this affects binary only (potentially only Ubuntu)