Bug 1314858

Summary: Ceph installer - Journal configuration
Product: [Red Hat Storage] Red Hat Storage Console Reporter: Nishanth Thomas <nthomas>
Component: ceph-installerAssignee: Christina Meno <gmeno>
Status: CLOSED NOTABUG QA Contact: ceph-qe-bugs <ceph-qe-bugs>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 2CC: adeza, ceph-eng-bugs, gmeno, japplewh, mlawrenc, nlevine, nthomas, sankarshan, yweinste
Target Milestone: ---Flags: adeza: needinfo-
Target Release: 2   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: 1.0.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-05-06 20:43:28 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:
Bug Depends On:    
Bug Blocks: 1291304    

Description Nishanth Thomas 2016-03-04 17:04:00 UTC
ceph installer should support journal configuration while creating the OSDs:

1. journal co-residing on the OSD
2. journal resides on a dedicated disk
3. user provides the size of the journal, the installer create it on the dedicated disk or on the same disk based the configuration

Comment 2 Alfredo Deza 2016-03-08 14:09:40 UTC
(In reply to Nishanth Thomas from comment #0)
> ceph installer should support journal configuration while creating the OSDs:
> 
> 1. journal co-residing on the OSD
> 2. journal resides on a dedicated disk
> 3. user provides the size of the journal, the installer create it on the
> dedicated disk or on the same disk based the configuration

We are not going to support collocation of an OSD with a Journal as that creates a big performance impact and is merely a convenient thing to do.

The only OSD deployment scenario that the installer is going to expose is #2

#3 Should not be needed because the format required is: 

    {"/path/to/osd/device": "/path/to/journal/device"}

There is no need to provide the size of the journal.

Comment 3 Alfredo Deza 2016-03-08 14:15:49 UTC
Collocation of an OSD and a Journal, as well as "OSD in a directory" are not ideal OSD deployments and will go against "best practices".

See: https://bugzilla.redhat.com/show_bug.cgi?id=1213084

Comment 4 Nishanth Thomas 2016-03-12 07:02:24 UTC
So let me summarize:

1. journal co-residing on the OSD - not supported
2. journal resides on a dedicated disk - supported. But there will not be any option to specify the journal size. That means the whole disk will be consumed as the OSD journal.

There was a discussion in sds-mgmt around the journal configuration which is different than this. I will reply to that mail with this Bz so that everyone in the loop

Comment 5 Alfredo Deza 2016-03-14 12:42:18 UTC
(In reply to Nishanth Thomas from comment #4)
> So let me summarize:
> 
> 1. journal co-residing on the OSD - not supported
> 2. journal resides on a dedicated disk - supported. But there will not be
> any option to specify the journal size. That means the whole disk will be
> consumed as the OSD journal.
> 
> There was a discussion in sds-mgmt around the journal configuration which is
> different than this. I will reply to that mail with this Bz so that everyone
> in the loop

I can't edit my previous comment. Apologies. It is possible to specify the size of the journal and that can be set when configuring OSDs:

http://docs.ceph.com/ceph-installer/docs/#post--api-osd-configure-

It is a required field.

Comment 6 Nishanth Thomas 2016-03-14 17:11:20 UTC
So that means if I give disk of size 10 GB and specify journal size as 2 GB, the ceph-installer will create a lv out of 2 GB and allocated to the requesting OSD. Another OSDs can also use the same disk as journal if space is available. Does my understanding is right?

Comment 7 Alfredo Deza 2016-03-15 12:09:59 UTC
(In reply to Nishanth Thomas from comment #6)
> So that means if I give disk of size 10 GB and specify journal size as 2 GB,
> the ceph-installer will create a lv out of 2 GB and allocated to the
> requesting OSD. Another OSDs can also use the same disk as journal if space
> is available. Does my understanding is right?

Yes that is correct.

1 journal device can be used for more than 1 OSD. The request allows this kind of mapping:

    
    {"/dev/sdb": "/dev/sdx", "/dev/sdc": "/dev/sdx"}

      ^ OSD      ^ Journal    ^ OSD       ^ Same Journal

Comment 8 Jeff Applewhite 2016-03-16 19:07:37 UTC
We should allow multiple journals to reside on SSD devices up to a max of 6 (for this release - it's simple let's start here - there are more complicated scenarios later). 

*We should not allow multiple journals on spinning media. 

In the SSD scenario I would imagine we simply add default journal partition sizes to the disk after zapping it.

are we utilizing the salt parted module?

https://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.parted.html

Comment 9 Yuri Weinstein 2016-03-16 20:35:49 UTC
Hi Gregory, can you please set the "dev_ack" flag to "+"?

Comment 10 Mike McCune 2016-03-28 22:39:30 UTC
This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions

Comment 13 Alfredo Deza 2016-05-06 20:43:28 UTC
I am closing this since we are allowing the configuration for different journals per OSD.

Feel free to re-open if the documented configure options are not adequate:

http://docs.ceph.com/ceph-installer/docs/#post--api-osd-configure-