Re: Lifecycle question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



If you really do need it to run more frequently, you could try adding a cron job to run the lifecycle and gc just for the required bucket. That way the time units all remain the same.

But, you do have to be aware of the overhead (less for just nominated buckets), and I don't know what would happen if cron jobs and/or the inbuilt midnight lifecycle overlap.

For a while, on one cluster, we had two buckets on which the lifecycle never ran. We didn't get to the bottom of why, but it was fixed in 19.2.1. Until then we had a cron job that ran at 0100 each day.

Chris

On 31/03/2025 17:14, Daniel Gryniewicz wrote:
This can be done in RGW, sort of.  We have a debug config option (rgw_lc_debug_interval) which changes "days" so some other configurable interval.  We use this for testing lifecycle in minutes rather than in days.  However, it is intended for debug testing only, and is a *very* large hammer.  It just runs all of lifecycle processing every <interval> seconds, rather than a midnight.

If you really want to run this in a production environment, keep several things in mind:

1. All lifecycle is affected.  For every setting that refers to a day, it now refers to <interval>.

2. This means all policy is wrong, and everyone writing lifecycle policy needs to know this, and write policy shifted to <interval> rather than days.

3. This also means the overhead of lifecycle is massively increased. Lifecycle scans every object in every bucket with policy every <interval>.  This is not usually a problem, because it happens once per day, and has 24 hours to complete (but in large systems, it can even take more than 24 hours to complete).  Make sure your cluster is small enough that all lifecycle can be processed in <interval>, or it will generally back up and not process things in time.


So, basically, it can sort of be done, but it's a very bad idea.


Daniel

On 3/27/25 10:49 AM, Anthony D'Atri wrote:
A bit of context:

LC processing normally only happens once a day, so smaller granularity for the age here couldn’t be implemented as expected.  This would be tantamount to an RFE to fundamentally change the LC workflow.

On Mar 27, 2025, at 10:31 AM, Konstantin Shalygin <k0ste@xxxxxxxx> wrote:

Hi,

Do you try to contact with Amazon to change lifecycle specs and add hours and minutes support? Without spec Ceph can't operate non Days field


k
Sent from my iPhone

On 27 Mar 2025, at 10:50, Szabo, Istvan (Agoda) <Istvan.Szabo@xxxxxxxxx> wrote:

Hi,

Is there a way to have hourly or minute based lifecycle rather than a 1 day set on a bucket?

When I checked multiple xml rules all of them day based and can't set hour or minute value:

Multipart cleaning:
            <?xml version="1.0" ?>
            <LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/";>
                        <Rule>
                                    <ID>Incomplete Multipart Uploads</ID>
                                    <Prefix/>
                                    <Status>Enabled</Status>
                                    <AbortIncompleteMultipartUpload>
                                                <DaysAfterInitiation>1</DaysAfterInitiation>
                                    </AbortIncompleteMultipartUpload>
                        </Rule>
            </LifecycleConfiguration>

Basic retention:            
<?xml version="1.0" ?>
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/";>
                        <Rule>
                                                <ID>5 days retention</ID>
                                                <Prefix/>
                                                <Status>Enabled</Status>
                                                <Expiration>
                                                                        <Days>5</Days>
                                                </Expiration>
                        </Rule>
</LifecycleConfiguration>

Tag based retention:
      <?xml version="1.0" ?>
      <LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/";>
                  <Rule>
                              <ID>1 day object expiry</ID>
                              <Filter>
                                          <Tag>
                                                      <Key>expiration</Key>                                                       <Value>1d</Value>
                                          </Tag>
                              </Filter>
                              <Status>Enabled</Status>
                              <Expiration>
                                          <Days>1</Days>
                              </Expiration>
                  </Rule>
      </LifecycleConfiguration>
      
Prefix based retention
      <LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/";>
            <Rule>
                  <ID>hermes-1-day-retention</ID>
                  <Filter>
                        <Prefix>her-</Prefix>
                  </Filter>
                  <Status>Enabled</Status>
                  <Expiration>
                        <Days>1</Days> //retention
                  </Expiration>
            </Rule>
      </LifecycleConfiguration>

________________________________
This message is confidential and is for the sole use of the intended recipient(s). It may also be privileged or otherwise protected by copyright or other legal rules. If you have received it by mistake please let us know by reply email and delete it from your system. It is prohibited to copy this message or disclose its content to anyone. Any confidentiality or privilege is not waived or lost by any mistaken delivery or unauthorized disclosure of the message. All messages sent to and from Agoda may be monitored to ensure compliance with company policies, to protect the company's interests and to remove potential malware. Electronic messages may be intercepted, amended, lost or deleted, or contain viruses.
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx

_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux