[SOLVED] Ceph and erasure code profile

kejar31

New Member
Jan 15, 2024
2
1
3
So I have some servers where I am trying to setup the ssd to utilize erasure-coding. Problem is there are hdd's on as well and I needed to set the device class to ssd.. So using the instructions I was able to create the profile I wanted using the following command

Code:
ceph osd erasure-code-profile set ssd_ecprofile crush-device-class=ssd k=3 m=2

After that was created I checked to using the get command to make sure it created with the parameters I wanted..

Finally, when I went to create the pool using this profile as indicated on proxmox's instructions I got an error.

Code:
root@cfhvmhost1pm:~# pveceph pool create ssd_ec --erasure-coding profile=ssd_ecprofile
400 Parameter verification failed.
erasure-coding: invalid format - format error
erasure-coding.k: property is missing and it is not optional
erasure-coding.m: property is missing and it is not optional

Any ideas I what I did wrong here?
 
Last edited:
  • Like
Reactions: StreetPiet
figured it out. Just in case someone else runs into this...

Even though when you create your erasure-coding profile using the commands from the official ceph docs as requested, you still need to add the k=x,m=x

This is the command that ended up working for me.

Code:
pveceph pool create ssd_ec --erasure-coding k=3,m=2,profile=ssd_ecprofile

IDK if its just me but this is not what is explained at all in the proxmox documents. which is the following

Code:
If there is a need to further customize the EC profile, you can do so by creating it with the Ceph tools directly [13], and specify the profile to use with the profile parameter.

For example:

pveceph pool create <pool-name> --erasure-coding profile=<profile-name>