0

So my pools has 5 nodes with 12 osds each of 8tb.

Currently I am trying to create an erasure coded pool of k=8 m=2, however after adding this profile and create an ecpool with this profile the pools is always stuck on creating+incomplete.

If I create anything that is less than 6 disks in any combination of k+m = 6 then it the pool is created successfully and pgs enter an active+clean state.

But anthing more than 6 disks and the pool is forever stuck in creating+incomplete state.

I have been scratching my head over this for the past two days and since I couldn't find any thing anywhere in the documentation, I have come here to find some help with this.

Can anyone assist me on where I could be going wrong?

I am using ceph mimic 13.2.4 (latest stable) on centos 7

Vish
  • 176
  • 5

1 Answers1

0

If you use failure domain "host", then it is in fact impossible to set up the pool with fewer than k+m hosts. You can change your crush rules to use a failure domain of OSD (disk) instead. Then your pool will initialize properly. But you will lose availability whenever a host is down. This is a classical trade-off.

sleinen
  • 241
  • 1
  • 2
  • Hi, I am using osd as the failure domain. – Vish Jan 14 '19 at 03:23
  • I have add a look at the crush rules and it looks good as well. – Vish Jan 14 '19 at 03:24
  • Can you tell me how can I choose if I wanted to at max 2 osds from the same host.... This would mean that if a single node goes down, it can't take down any bits of data as atleast 8 shards (2 shards per the remaining 4 nodes) will keep a full copy readable. – Vish Jan 14 '19 at 03:26