'--cidfile',
runtime_dir + '/ceph-%s@%s.%s.service-cid' % (fsid, daemon_type, daemon_id),
])
- if ctx.container_engine.version >= CGROUPS_SPLIT_PODMAN_VERSION:
+ if ctx.container_engine.version >= CGROUPS_SPLIT_PODMAN_VERSION and not ctx.no_cgroups_split:
container_args.append('--cgroups=split')
return CephContainer.for_daemon(
action='store_true',
default=not CONTAINER_INIT,
help='Do not run podman/docker with `--init`')
+ parser.add_argument(
+ '--no-cgroups-split',
+ action='store_true',
+ default=False,
+ help='Do not run containers with --cgroups=split (currently only relevant when using podman)')
subparsers = parser.add_subparsers(help='sub-command')
default=8765,
desc='cephadm service discovery port'
),
+ Option(
+ 'cgroups_split',
+ type='bool',
+ default=True,
+ desc='Pass --cgroups=split when cephadm creates containers (currently podman only)'
+ ),
]
def __init__(self, *args: Any, **kwargs: Any):
self.apply_spec_fails: List[Tuple[str, str]] = []
self.max_osd_draining_count = 10
self.device_enhanced_scan = False
+ self.cgroups_split = True
self.notify(NotifyType.mon_map, None)
self.config_notify()
if not self.mgr.container_init:
final_args += ['--no-container-init']
+ if not self.mgr.cgroups_split:
+ final_args += ['--no-cgroups-split']
+
# subcommand
final_args.append(command)