Bug 1919084 - [GSS][ceph-ansible] Creating OSD with device name as by-path fails if we are using dedicated_devices.
Summary: [GSS][ceph-ansible] Creating OSD with device name as by-path fails if we are ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Ceph Storage
Classification: Red Hat Storage
Component: Ceph-Ansible
Version: 4.1
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
: 4.2z2
Assignee: Dimitri Savineau
QA Contact: Ameena Suhani S H
URL:
Whiteboard:
Depends On:
Blocks: 1760354
TreeView+ depends on / blocked
 
Reported: 2021-01-22 04:54 UTC by Lijo Stephen Thomas
Modified: 2024-06-13 23:59 UTC (History)
15 users (show)

Fixed In Version: ceph-ansible-4.0.54-1.el8cp, ceph-ansible-4.0.54-1.el7cp
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-06-15 17:13:37 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github ceph ceph-ansible pull 6209 0 None open facts: support device aliases for (dedicated|bluestore_wal)_devices (bp #5584) 2021-02-08 23:56:33 UTC
Red Hat Product Errata RHSA-2021:2445 0 None None None 2021-06-15 17:14:01 UTC

Description Lijo Stephen Thomas 2021-01-22 04:54:59 UTC
Description of problem:
-----------------------

---- Creating OSD with persistent device naming i.e if we are using by-path it recognizes devices but fails to recognize dedicated_devices.

---- It fails due to below task:-

~~~~~
roles/ceph-facts/tasks/facts.yml:224
- name: resolve device link(s)
  command: readlink -f {{ item }}
  changed_when: false
  check_mode: no
  with_items: "{{ devices }}"                <----------
  register: devices_prepare_canonicalize
  when:
    - devices is defined
    - inventory_hostname in groups.get(osd_group_name, [])
    - not osd_auto_discovery | default(False) | bool
~~~~


Version-Release number of selected component (if applicable):
RHCS 4.x


How reproducible:

Steps to Reproduce:
-------------------

1. Deploy RHCS 4.1 with persistent device naming by using by-path.

2. Use below scenario:
~~~
egrep -v "^#|^$" group_vars/osds.yml
---
dummy:
osd_scenario: lvm
devices:
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:6
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:7
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:4
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:5
dedicated_devices:
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:2
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:2
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:1
  - /dev/disk/by-path/pci-0000:00:05.0-scsi-0:0:0:1
~~~


Actual results:
---------------
Fails to deploy OSDs in the cluster

Expected results:
-----------------
Should be able to deploy OSDs.


Additional info:
----------------

Ref:- 
- https://github.com/ceph/ceph-ansible/blob/master/roles/ceph-facts/tasks/facts.yml#L193-L202
- https://github.com/ceph/ceph-ansible/pull/5584

Comment 5 errata-xmlrpc 2021-06-15 17:13:37 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Important: Red Hat Ceph Storage 4.2 Security and Bug Fix Update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2021:2445


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