Skip to content

rgw: multisite: enable slave lc if lc is enabled from master#34553

Closed
IlsooByun wants to merge 1 commit intoceph:masterfrom
IlsooByun:enable_slave_lc
Closed

rgw: multisite: enable slave lc if lc is enabled from master#34553
IlsooByun wants to merge 1 commit intoceph:masterfrom
IlsooByun:enable_slave_lc

Conversation

@IlsooByun
Copy link
Contributor

@IlsooByun IlsooByun commented Apr 14, 2020

Fixes: https://tracker.ceph.com/issues/44268
Related PR: #33524

Signed-off-by: Ilsoo Byun ilsoobyun@linecorp.com

Checklist

  • References tracker ticket
  • Updates documentation if necessary
  • Includes tests for new functionality or reproducer for bug

Show available Jenkins commands
  • jenkins retest this please
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test dashboard backend
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox

Signed-off-by: Ilsoo Byun <ilsoobyun@linecorp.com>
@cbodley cbodley self-requested a review April 23, 2020 14:04
@mattbenjamin
Copy link
Contributor

Hi @IlsooByun I think this is a valid improvement, but I think we need to handle the special case where we are syncing to an archive zone. In that case, the current consensus is that ordinary lifecycle policy must not take effect on the archive zone--otherwise, data would tend to be eliminated there precisely when it was expired on the active sites, preventing recovery from the archive. We think it -does- make sense to enable explicit policy for data reduction/expiration in archive zone, but we thought a) such policy should need to be applied explicitly in the archive zone; and b) possibly needs to be introduced as an extension to the lifecycle grammar so that ordinary policies can't be applied by mistake.

@IlsooByun
Copy link
Contributor Author

IlsooByun commented Apr 23, 2020

@mattbenjamin Thank you for a detailed explanation.
I understand that there could be other scenarios that require different LC policies.
In our environment, multi-site feature is used for DR. And both master and secondary zones are limited in storage capacity. So LC policy was applied to the master zone, but not long after, I could figure out that the secondary zone’s capacity was exhausted. The reason is that LC didn’t work in the secondary zone.
To deal with the cases like this, I think there should be a way to explicitly apply LC to the slave zone, whether it is same or not. The current operation looks like a bug to the user because LC does not work while copying the LC policy during bucket replication.
You told me you were considering another design related to this, is there anything I can refer to?

@mattbenjamin
Copy link
Contributor

Hi @IlsooByun Sorry, let me clarify: there is no other design, I agree with your analysis. I'm suggesting that I think this change needs to protect archive zone from modification, in addition to what it currently does.

@stale
Copy link

stale bot commented Jun 23, 2020

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@stale stale bot added the stale label Jun 23, 2020
@stale
Copy link

stale bot commented Oct 4, 2020

This pull request has been automatically closed because there has been no activity for 90 days. Please feel free to reopen this pull request (or open a new one) if the proposed change is still appropriate. Thank you for your contribution!

@stale stale bot closed this Oct 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants