Thanks for you advices.
I thus created a new replica profile :
     "rule_id": 2,
     "rule_name": "replicated3over2rooms",
     "ruleset": 2,
     "type": 1,
     "min_size": 3,
     "max_size": 4,
     "steps": [
             "op": "take",
             "item": -1,
             "item_name": "default"
             "op": "choose_firstn",
             "num": 0,
             "type": "room"
             "op": "chooseleaf_firstn",
             "num": 2,
             "type": "host"
# et c'est fini
             "op": "emit"
It works well.

Now I am concerned by the pool in erasure coding. The point is that it's the data pool for cephfs (the metadata is in replica 3 and now replicated over our two rooms).
For now, the data pool for cephfs is in erasure coding k=3, m=2 (at the creation of the cluster we had only 5 osd servers). As noticed befors by Paul Emmerich, this cannot be redundantly splitted over 2 rooms (as 3 chunks are required to reconstruct the datas).
Now, we have 6 OSD servers, and soon it will be 7, thus I was thinking to create a new pool (eg. k=4, m=2 or k=3, m=3) and a rule to split the chunks over our 2 rooms and to use this new pool as cache tier to migrate softly all the datas from the old pool to the new one. But according to
"You can use the cache tier method to migrate from a replicated pool to either an erasure coded or another replicated pool. Migrating from an erasure coded pool is not supported."
Warning: You Cannot Migrate RBD Images and CephFS Exports to an EC Pool
You cannot migrate RBD images and CephFS exports from a replicated pool to an EC pool. EC pools can store data but not metadata. The header object of the RBD will fail to be flushed. The same applies for CephFS.

Thus my question is how can I migrate a data pool in EC of a cephfs to another EC pool ?
Thanks for your advices.

Le 03/12/2019 à 04:07, Konstantin Shalygin a écrit :
On 12/2/19 5:56 PM, Francois Legrand wrote:
For replica, what is the best way to change crush profile ? Is it to create a new replica profile, and set this profile as crush rulest for the pool (something like ceph osd pool set {pool-name} crush_ruleset my_new_rule) ?

Indeed. Then you can delete/do what you want with old crush rule.