Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1695852 - Unable to determine osd id when dmcrypt is enabled [NEEDINFO]
Summary: Unable to determine osd id when dmcrypt is enabled
Alias: None
Product: Red Hat Ceph Storage
Classification: Red Hat
Component: Container
Version: 3.2
Hardware: Unspecified
OS: Linux
Target Milestone: z2
: 3.2
Assignee: Dimitri Savineau
QA Contact: Vasishta
Depends On:
TreeView+ depends on / blocked
Reported: 2019-04-03 19:35 UTC by Dimitri Savineau
Modified: 2019-04-13 02:18 UTC (History)
5 users (show)

Fixed In Version: ceph-3.2-rhel-7-containers-candidate-46897-20190403200403
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed:
Target Upstream Version:
tserlin: needinfo? (vashastr)

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Github ceph ceph-container issues 1343 None None None 2019-04-03 19:37:25 UTC
Github ceph ceph-container pull 1344 None None None 2019-04-03 19:37:25 UTC

Description Dimitri Savineau 2019-04-03 19:35:48 UTC
Description of problem:
When trying to deploy OSD using ceph-disk and dmcrypt (either bluestore or filestore), the container process will fail to start because the OSD ID can't be found via the mounts table.
The OSD id is determined by looking the dmcrypt partition in /proc/mounts but we're looking for /dev/dm-X instead of the /dev/mapper/{UUID} due to the readlink -f command.

Version-Release number of selected component (if applicable):
RHCS 3.2 container image rhceph-3-rhel7:3-23
ceph version 12.2.8-89.el7cp (2f66ab2fa63b2879913db6d6cf314572a83fd1f0) luminous (stable)

How reproducible:

Steps to Reproduce:
1. Deploy OSD with dmcrypt enabled (-e OSD_DMCRYPT=1) and ceph-disk (-e CEPH_DAEMON=OSD_CEPH_DISK_ACTIVATE)

ceph-ansible config used:
osd_scenario: collocated
dmcrypt: true
  - /dev/sdb
  - /dev/sdc
  - /dev/sdd
  - /dev/sde

Actual results:
the container fails to start due to OSD ID variable empty on the ceph-osd process

: exec: PID 29737: spawning /usr/bin/ceph-osd --cluster ceph -f -i  --setuser ceph --setgroup disk
: exec: Waiting 29737 to quit
: teardown: managing teardown after SIGCHLD
: teardown: Waiting PID 29737 to terminate
: teardown: Process 29737 is terminated
: teardown: Bye Bye, container will die with return code -1
: teardown: if you don't want me to die and have access to a shell to debug this situation, next time run me with '-e DEBUG=stayalive'

Expected results:
the container should start.

: exec: PID 31469: spawning /usr/bin/ceph-osd --cluster ceph -f -i 0 --setuser ceph --setgroup disk
: exec: Waiting 31469 to quit
: starting osd.0 at - osd_data /var/lib/ceph/osd/ceph-0 /var/lib/ceph/osd/ceph-0/journal

Note You need to log in before you can comment on or make changes to this bug.