Bug 1269329
Summary: | [Director] [doc] Colocated Ceph journal partitions are not created when empty journal location is given in hiera -- regression | ||
---|---|---|---|
Product: | Red Hat OpenStack | Reporter: | jliberma <jliberma> |
Component: | documentation | Assignee: | RHOS Documentation Team <rhos-docs> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | RHOS Documentation Team <rhos-docs> |
Severity: | unspecified | Docs Contact: | |
Priority: | high | ||
Version: | 7.0 (Kilo) | CC: | dmacpher, gfidente, hbrock, jliberma, kschinck, lbopf, mburns, rhel-osp-director-maint, rlopez, scohen, srevivo, vcojot |
Target Milestone: | --- | Keywords: | Documentation |
Target Release: | 7.0 (Kilo) | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2016-08-16 17:29:15 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
jliberma@redhat.com
2015-10-07 02:34:59 UTC
hi, if I understand correctly you did get all the HDDs provisioned as OSDs but the journal files are pointing to {} rather than the actual partition on the HDD? there could be an issue with parsing the data, can you try with: ceph::profile::params::osds: /dev/sdb: {} /dev/sdc: {} /dev/sdd: {} by omitting the definition of journal (rather than passing empty hash) it is assumed to be on the same HDD and the partitions should be created as well. (In reply to Giulio Fidente from comment #2) > hi, if I understand correctly you did get all the HDDs provisioned as OSDs > but the journal files are pointing to {} rather than the actual partition on > the HDD? > > there could be an issue with parsing the data, can you try with: > > ceph::profile::params::osds: > /dev/sdb: {} > /dev/sdc: {} > /dev/sdd: {} > > by omitting the definition of journal (rather than passing empty hash) it is > assumed to be on the same HDD and the partitions should be created as well. Hello Giulio, I'm working with Jacob on this env. I just redeployed with your recommendation but seeing the exact same results. [heat-admin@overcloud-cephstorage-0 ~]$ ls -al /var/lib/ceph/osd/ceph-*/journal lrwxrwxrwx. 1 root root 2 Oct 7 10:05 /var/lib/ceph/osd/ceph-12/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:05 /var/lib/ceph/osd/ceph-16/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:05 /var/lib/ceph/osd/ceph-20/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:05 /var/lib/ceph/osd/ceph-24/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:05 /var/lib/ceph/osd/ceph-29/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:06 /var/lib/ceph/osd/ceph-32/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:06 /var/lib/ceph/osd/ceph-35/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:06 /var/lib/ceph/osd/ceph-38/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:06 /var/lib/ceph/osd/ceph-39/journal -> {} lrwxrwxrwx. 1 root root 2 Oct 7 10:05 /var/lib/ceph/osd/ceph-8/journal -> {} Giulio, Is the alternative to create the journal and OSD partitions explicitly prior to installation, and then reference them in the ceph.yaml? The syntax in the bug description worked with GA/0-day OSPd. Leaving the journal device string empty in hiera resulted in journal partitions created on the OSD disks automatically. Should we consider this a regression? Thanks, Jacob The recommendation does work. I accidentally placed the modified ceph.yaml in the wrong location. Once I placed it in the /home/stack/templates/openstack-tripleo-heat-templates/puppet/hierdata it did work. Removing the journal line with the brackets {} did the trick. snippet of ceph.yaml file that works correctly: ceph::profile::params::osds: '/dev/sdb': {} '/dev/sdc': {} '/dev/sdd': {} '/dev/sde': {} '/dev/sdf': {} '/dev/sdg': {} '/dev/sdh': {} '/dev/sdi': {} '/dev/sdj': {} '/dev/sdk': {} Output of it working: # ls -al /var/lib/ceph/osd/ceph-*/journal lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-13/journal -> /dev/disk/by-partuuid/2fe9adb7-f547-497d-a043-a1fbbbfbacc0 lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-17/journal -> /dev/disk/by-partuuid/e5a5cf23-51d1-4a39-9f96-45cf439e9657 lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-1/journal -> /dev/disk/by-partuuid/df5f2b10-547c-4ed7-adbd-0f19a7e21d90 lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-21/journal -> /dev/disk/by-partuuid/6a04c461-b617-49fd-bb14-c731b1206b34 lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-25/journal -> /dev/disk/by-partuuid/4b5bc37a-e00b-4c00-acd6-cd0a7119f231 lrwxrwxrwx. 1 root root 58 Oct 7 13:28 /var/lib/ceph/osd/ceph-29/journal -> /dev/disk/by-partuuid/4cd1c940-9eb2-467d-853e-b240efc3192b lrwxrwxrwx. 1 root root 58 Oct 7 13:28 /var/lib/ceph/osd/ceph-33/journal -> /dev/disk/by-partuuid/c7151ac9-6553-47cc-82e3-85196460dda1 lrwxrwxrwx. 1 root root 58 Oct 7 13:28 /var/lib/ceph/osd/ceph-37/journal -> /dev/disk/by-partuuid/3b4ace81-3ce3-449b-a052-13de3eda74a1 lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-5/journal -> /dev/disk/by-partuuid/a133526c-acfd-4245-b17f-6bb15066c4ef lrwxrwxrwx. 1 root root 58 Oct 7 13:27 /var/lib/ceph/osd/ceph-9/journal -> /dev/disk/by-partuuid/4e2bd71e-cb57-4117-808d-33865574885b I'd be inclined to reassign this as a Doc bug. We shouldn't pass 'journal:' and point it to empty string or empty hash when there is no external journal disk. That might have worked but I don't think it was ever intended to be supported. Instead, from my experience setting a param to empty string means we want puppet to set it empty string in the target config file. At least the puppet-neutron or puppet-nova modules behaves so. I think What do you think? It looks to me that reassigning to Doc so that we remove any reference to 'journal: ""' or 'journal: {}' is best. Giulio, we tested and the syntax you recommended works. Some of the options in the ceph.yaml are still ignored, but the journals create successfully. I will remove references to the previous syntax, which did work in the prior version of OSP director, but will not work going forward. This procedure is not documented in the product docs yet. So I don't think it's necessary to make this a doc bug. We can close it as not a bug. Thanks! Jacob, did you open a separate docs bug for this? If so, please reference it here and I'll close this bug. Else, we can move this bug to 'documentation' component, prefixing the title with [Director] Dan, please see: https://bugzilla.redhat.com/show_bug.cgi?id=1269329#c2 This is the new default journal location syntax for ceph with OSPd 7.1. This update would go into section 6.3.6 of the product docs: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux_OpenStack_Platform/7/html/Director_Installation_and_Usage/sect-Advanced-Scenario_3_Using_the_CLI_to_Create_an_Advanced_Overcloud_with_Ceph_Nodes.html Change: ceph::profile::params::osds: '/dev/sdb': journal: {} '/dev/sdc': journal: {} to ceph::profile::params::osds: '/dev/sdb': {} '/dev/sdc': {} The syntax in the docs for the scenario where there are no separate journal disks seems good to me. Dan, can we close this? |