All of lore.kernel.org
 help / color / mirror / Atom feed
* the question of way to modify bucket metadata
@ 2016-12-16 14:20 Scott Jing
  2016-12-16 16:34 ` Casey Bodley
  0 siblings, 1 reply; 2+ messages in thread
From: Scott Jing @ 2016-12-16 14:20 UTC (permalink / raw)
  To: ceph-devel

Hi,

I'm Wenjun Jing from China Mobile(suzhou). Recently ceph multisite is
applied to our production onest, short for Object-Orient Storage
System,
which is a object storage production based on ceph. Needless to say,
the feature of active-active is awesome! But there are also some
features
which may not be supported very well and the community is improving
them constantly. So we want to discuss with you to comfirm the roadmap
of them.

This is the fact that if creating bucket on the secondary
zone/zonegroup. The request would send to meta master and the bucket
will be created
on meta master firstly, then it will be created locally.

Some metadata/feature of bucket in the process upper is not synced to
secondary zone or zonegroup. For instance, the bucket acl and bucket
versionning cannot be modified on the slave zone/zonegroup, which has
been fixed in the jewel. Now, we want to ack you to get the
development
direction(way) of the bucket metadata to modify.

The below are some ways which I've thought out currently.

1. All the bucket metadata will be modified in the meta master firstly
and then modify the metadata
locally according to the status retured from meta master. Considering
this way, some metadata (eg. creation time)
may not consistent with the meta master, which doesn't improve user experience.

2. All the bucket metadata will be modified in the meta master firstly
and sync the changed bucket metadata to slave zone or zonegroup.

3. The other alternative way to handle this situation? Could you
discribe to me detailedly?

Once the upper way could be comfirmed Definitely, we can make some
contribution to the community.

Look forward to your kind reply.
Thanks!

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: the question of way to modify bucket metadata
  2016-12-16 14:20 the question of way to modify bucket metadata Scott Jing
@ 2016-12-16 16:34 ` Casey Bodley
  0 siblings, 0 replies; 2+ messages in thread
From: Casey Bodley @ 2016-12-16 16:34 UTC (permalink / raw)
  To: Scott Jing, ceph-devel


On 12/16/2016 09:20 AM, Scott Jing wrote:
> Hi,
>
> I'm Wenjun Jing from China Mobile(suzhou). Recently ceph multisite is
> applied to our production onest, short for Object-Orient Storage
> System,
> which is a object storage production based on ceph. Needless to say,
> the feature of active-active is awesome! But there are also some
> features
> which may not be supported very well and the community is improving
> them constantly. So we want to discuss with you to comfirm the roadmap
> of them.
>
> This is the fact that if creating bucket on the secondary
> zone/zonegroup. The request would send to meta master and the bucket
> will be created
> on meta master firstly, then it will be created locally.
>
> Some metadata/feature of bucket in the process upper is not synced to
> secondary zone or zonegroup. For instance, the bucket acl and bucket
> versionning cannot be modified on the slave zone/zonegroup, which has
> been fixed in the jewel. Now, we want to ack you to get the
> development
> direction(way) of the bucket metadata to modify.
>
> The below are some ways which I've thought out currently.
>
> 1. All the bucket metadata will be modified in the meta master firstly
> and then modify the metadata
> locally according to the status retured from meta master. Considering
> this way, some metadata (eg. creation time)
> may not consistent with the meta master, which doesn't improve user experience.
>
> 2. All the bucket metadata will be modified in the meta master firstly
> and sync the changed bucket metadata to slave zone or zonegroup.
>
> 3. The other alternative way to handle this situation? Could you
> discribe to me detailedly?
>
> Once the upper way could be comfirmed Definitely, we can make some
> contribution to the community.
>
> Look forward to your kind reply.
> Thanks!
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

Hi,

#2 is the current strategy for updates, but there's been some discussion 
about this related to the fix for bucket versioning at 
https://github.com/ceph/ceph/pull/12444. The issue here is that if you 
enable bucket versioning on a non-master zone, the change is not 
reflected on that zone until the background sync process reads it from 
the metadata master.

That pull request changes RGWSetBucketVersioning to use strategy #1, but 
as you point out, this can lead to inconsistent metadata. It also 
introduces the potential to overwrite the results of other operations 
applied on the metadata master.

I think the ideal solution would involve getting the updated metadata 
from the master (either in the reply to our forwarded request, or with a 
separate request to /admin/metadata) and writing that locally. We'd just 
have to make sure that this write respects the same object versioning 
requirements as other updates from metadata sync - I think 
RGWBucketInstanceMetadataHandler::put() takes care of for us, but it 
needs to be tested.

I created an issue to track this at http://tracker.ceph.com/issues/18292.

Thanks,
Casey

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-12-16 16:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-16 14:20 the question of way to modify bucket metadata Scott Jing
2016-12-16 16:34 ` Casey Bodley

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.