-
Notifications
You must be signed in to change notification settings - Fork 59
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
S3 objects lifecycle management #2721
Comments
* issue 2721 changing storage lifecycle policy model, now it is possible to fine tune it with rule approach [WIP] * issue 2721 refactoring * issue 2721 change lifecyclePolicy type in StoragePolicy from object to String, to be able to work flexible with it in StorageProvider level * issue 2721 renaming * issue 2721 changes to be compatible with S3 Lifecycle Policy rules * issue 2721 changing object model for datastorage lifecycle policy * issue 2721 changing object model for datastorage lifecycle policy + CRUD * issue 2721 added verification for storage lifecycle object CRUD operations * issue 2721 logging * issue 2721 refactor * issue 2721 tests for storage objects lifecycle model * issue 2721 rollback for changes of previous approach * issue 2721 cleanup * issue 2721 new approach * issue 2721 StorageLifecycleRuleProlongation as entity * issue 2721 refactor, added StorageLifecycleRuleExecution * issue 2721 CRU operation for StorageLifecycleRuleExecution * issue 2721 tests are added * issue 2721 added constraint for lifecycle rule object * Issue #2721 Move SQL migration to current date Co-authored-by: mzueva <mariia_zueva@epam.com>
Comment on restoring files implementation: Main aspects:
Example 1 of cancellation process: We have the next hierarchy of object:
User initiate restore of folder /dataset/ In this case all restores will be applied, firstly Example 2 of cancellation process: The same hierarchy as for Example 1. But now: In this case only restore for |
* issue 2721 draft for notification templates for DATASTORAGE_LIFECYCLE_ACTION and DATASTORAGE_LIFECYCLE_RESTORE_ACTION * issue 2721 deployment configuration for SLS * issue 2721 Deployment: Added configuration of storage.lifecycle.service.cloud.config on deploy * issue 2721 Deployment: email template change * issue 2721 Deployment: fix html template * issue 2721 Deployment: expand deployment * issue 2721 Deployment: fix yml * issue 2721 Deployment: update AWS prerequisites with new roles and policies * issue 2721 Deployment: logging approach * issue 2721 Deployment: update deployment process with respect to creds from region * issue 2721 Deployment: log backup days to parameters * issue 2721 Deployment: fix links in emails * issue 2721 Deployment: documentation changes * Issue #2721: Storage Lifecycle Service: Deployment - template cleanups * Fix SLS notifications wording Co-authored-by: Ekaterina_Kazachkova <ekaterina_kazachkova@epam.com> Co-authored-by: mzueva <mariia_zueva@epam.com>
* issue 2721 changing storage lifecycle policy model, now it is possible to fine tune it with rule approach [WIP] * issue 2721 refactoring * issue 2721 change lifecyclePolicy type in StoragePolicy from object to String, to be able to work flexible with it in StorageProvider level * issue 2721 renaming * issue 2721 changes to be compatible with S3 Lifecycle Policy rules * issue 2721 changing object model for datastorage lifecycle policy * issue 2721 changing object model for datastorage lifecycle policy + CRUD * issue 2721 added verification for storage lifecycle object CRUD operations * issue 2721 logging * issue 2721 refactor * issue 2721 tests for storage objects lifecycle model * issue 2721 rollback for changes of previous approach * issue 2721 cleanup * issue 2721 new approach * issue 2721 StorageLifecycleRuleProlongation as entity * issue 2721 refactor, added StorageLifecycleRuleExecution * issue 2721 CRU operation for StorageLifecycleRuleExecution * issue 2721 tests are added * issue 2721 added constraint for lifecycle rule object * Issue #2721 Move SQL migration to current date Co-authored-by: mzueva <mariia_zueva@epam.com>
* issue 2721 draft for notification templates for DATASTORAGE_LIFECYCLE_ACTION and DATASTORAGE_LIFECYCLE_RESTORE_ACTION * issue 2721 deployment configuration for SLS * issue 2721 Deployment: Added configuration of storage.lifecycle.service.cloud.config on deploy * issue 2721 Deployment: email template change * issue 2721 Deployment: fix html template * issue 2721 Deployment: expand deployment * issue 2721 Deployment: fix yml * issue 2721 Deployment: update AWS prerequisites with new roles and policies * issue 2721 Deployment: logging approach * issue 2721 Deployment: update deployment process with respect to creds from region * issue 2721 Deployment: log backup days to parameters * issue 2721 Deployment: fix links in emails * issue 2721 Deployment: documentation changes * Issue #2721: Storage Lifecycle Service: Deployment - template cleanups * Fix SLS notifications wording Co-authored-by: Ekaterina_Kazachkova <ekaterina_kazachkova@epam.com> Co-authored-by: mzueva <mariia_zueva@epam.com>
…g lifecycle events, to reduce number of "empty" cycles
…g lifecycle events, to reduce number of "empty" cycles
Background
Requirements to the S3 objects lifecycle management :
S3 Glacier Instant Retrieval
,S3 Glacier Flexible Retrieval
,S3 Glacier Deep Archive
) as well as deletion of objectsApproach
LifecyclePolicy
shall be attached to an S3 bucket. It is similar to AWSBucketLifecycleConfiguration
object and contains set of transition rules including filters (prefix, tags), storage class and transition days. This object shall also contain notification settings. E.g. in this object we specify that files withStorageType=bcl
tag shall be deleted after 90 days and files withStorageType=fastq
tag shall be moved toS3 Glacier Deep Archive
after 180 days and deleted after 5 years.[{"*.bcl" : "StorageType=bcl"}]
or as a json file for a pipeline. Note no more than 10 tags are allowed. Upload API including generate URL api methods shall support tagging from SystemPreference as well.Object Lifecycle Monitor
A new daemon service shall monitor buckets with
LifecyclePolicy
attached using the following algorithm:dataset
. For a file structure below we have tree datasets (run1
,run2
,run3
) for prefixdata/
LifecyclePolicy
shall be created for this dataset from default template attached to the storage. A dataset without assignedLifecyclePolicy
is considered to be newdays
valueBucketLifecycleConfiguration
shall be created with matching path/tags filter and expiration days 0, to be applied immediately. Check that such policy doesn't exist yet. TBD: All BCLs in a path will be transferred at once, even if some files were uploaded earlier/laterBucketLifecycleConfiguration
policy shall be dropped after configurable amount of daysRestoring files
API and CLI methods shall be implemented to request object restoring from archive storage classes and monitor restoring process.
Standard
) TBDThe text was updated successfully, but these errors were encountered: