Correct Migration Workflow Replicated -> Erasure Code
Hi Everyone, So, I'm in the process of trying to migrate our rgw.buckets.data pool from a replicated rule pool to an erasure coded pool. I've gotten the EC pool set up, good EC profile and crush ruleset, pool created successfully, but when I go to "rados cppool xxx.rgw.buckets.data xxx.rgw.buckets.data.new", I get this error after it transfers 4GB of data: error copying object: (2) No such file or directory error copying pool xxx.rgw.buckets.data => xxx.rgw.buckets.data.new: (2) No such file or directory Is "rados cppool" still the blessed way to do the migration, or has something better/not deprecated been developed that I can use? Thanks, Mac
On 10/29/19 1:40 AM, Mac Wynkoop wrote:
So, I'm in the process of trying to migrate our rgw.buckets.data pool from a replicated rule pool to an erasure coded pool. I've gotten the EC pool set up, good EC profile and crush ruleset, pool created successfully, but when I go to "rados cppool xxx.rgw.buckets.data xxx.rgw.buckets.data.new", I get this error after it transfers 4GB of data:
error copying object: (2) No such file or directory error copying pool xxx.rgw.buckets.data => xxx.rgw.buckets.data.new: (2) No such file or directory
Is "rados cppool" still the blessed way to do the migration, or has something better/not deprecated been developed that I can use?
rados cppool AFAIK lack of support of copy from replicated to EC. May be now is wrong. Also you can use rados import/export. k
We've solved this off-list (because I already got access to the cluster) For the list: Copying on rados level is possible, but requires to shut down radosgw to get a consistent copy. This wasn't feasible here due to the size and performance. We've instead added a second zone where the placement maps to an EC pool to the zonegroup and it's currently copying over data. We'll then make the second zone master and default and ultimately delete the first one. This allows for a migration without downtime. Another possibility would be using a Transition lifecycle rule, but that's not ideal because it doesn't actually change the bucket. I don't think it would be too complicated to add a native bucket migration mechanism that works similar to "bucket rewrite" (which is intended for something similar but different). Paul -- Paul Emmerich Looking for help with your Ceph cluster? Contact us at https://croit.io croit GmbH Freseniusstr. 31h 81247 München www.croit.io Tel: +49 89 1896585 90 On Wed, Oct 30, 2019 at 6:46 AM Konstantin Shalygin <k0ste@k0ste.ru> wrote:
On 10/29/19 1:40 AM, Mac Wynkoop wrote:
So, I'm in the process of trying to migrate our rgw.buckets.data pool from a replicated rule pool to an erasure coded pool. I've gotten the EC pool set up, good EC profile and crush ruleset, pool created successfully, but when I go to "rados cppool xxx.rgw.buckets.data xxx.rgw.buckets.data.new", I get this error after it transfers 4GB of data:
error copying object: (2) No such file or directory error copying pool xxx.rgw.buckets.data => xxx.rgw.buckets.data.new: (2) No such file or directory
Is "rados cppool" still the blessed way to do the migration, or has something better/not deprecated been developed that I can use?
rados cppool AFAIK lack of support of copy from replicated to EC. May be now is wrong.
Also you can use rados import/export.
k _______________________________________________ ceph-users mailing list -- ceph-users@ceph.io To unsubscribe send an email to ceph-users-leave@ceph.io
RADOS import/export? Will look into that. I ended up going with Paul's suggestion, and created a separate zone under the main zonegroup with another RGW instance running that zone, and had it sync the data into the Erasure-Coded zone. Made it very easy to do! Thanks, Mac On Wed, Oct 30, 2019 at 12:46 AM Konstantin Shalygin <k0ste@k0ste.ru> wrote:
On 10/29/19 1:40 AM, Mac Wynkoop wrote:
So, I'm in the process of trying to migrate our rgw.buckets.data pool from a replicated rule pool to an erasure coded pool. I've gotten the EC pool set up, good EC profile and crush ruleset, pool created successfully, but when I go to "rados cppool xxx.rgw.buckets.data xxx.rgw.buckets.data.new", I get this error after it transfers 4GB of data:
error copying object: (2) No such file or directory error copying pool xxx.rgw.buckets.data => xxx.rgw.buckets.data.new: (2) No such file or directory
Is "rados cppool" still the blessed way to do the migration, or has something better/not deprecated been developed that I can use?
rados cppool AFAIK lack of support of copy from replicated to EC. May be now is wrong.
Also you can use rados import/export.
k
Hi, I created a secondary zone where the placement maps to an EC pool. 2 zones are under the same zonegroup and same cluster. But the secondary zone or EC pool did not receive any data (only user info is synced). So how do you make it work? Thanks
participants (4)
-
Huy Nguyen
-
Konstantin Shalygin
-
Mac Wynkoop
-
Paul Emmerich