I set up an erasure coded pool via Ceph Dashboard, and changed the rule later by manually editing the CRUSH map:
The goal was to have the EC pool still being available if one host is down for maintenance.
When I stopped the OSDs on one host (simulating maintenance), the some PGs got unavailable.
In Proxmox, the pool was shown with "size 6, min. size 5" — I changed that to "size 6, min. size 4", and now it seems to work.
I could stop the OSDs on one host and still access the data (and put new data as well).
Can someone explain how size/min in Proxmox UI works with erasure coded pools? (I know they're not fully supported yet.)
Code:
rule erasurecode {
id 6
type erasure
step set_chooseleaf_tries 5
step set_choose_tries 100
step take default class hdd-cached
step choose indep 3 type host
step choose indep 2 type osd
step emit
}
The goal was to have the EC pool still being available if one host is down for maintenance.
When I stopped the OSDs on one host (simulating maintenance), the some PGs got unavailable.
In Proxmox, the pool was shown with "size 6, min. size 5" — I changed that to "size 6, min. size 4", and now it seems to work.
I could stop the OSDs on one host and still access the data (and put new data as well).
Can someone explain how size/min in Proxmox UI works with erasure coded pools? (I know they're not fully supported yet.)