Existe-t-il des solutions pour supprimer les fichiers de plus de x jours?
Amazon a introduit expiration de l'objet récemment.
Amazon S3 annonce l'expiration de l'objet
Amazon S3 a annoncé un nouveau fonctionnalité, Expiration d’objet qui vous permet de planifier la suppression de vos objets après une période prédéfinie. Utilisation de l’expiration d’objets planifier la suppression périodique des objets élimine le besoin pour vous identifier les objets à supprimer et soumettre des demandes de suppression à Amazon S3.
Vous pouvez définir des règles d'expiration d'objet pour un ensemble d'objets dans votre seau. Chaque règle d’expiration d’objet vous permet de spécifier un préfixe et une période d'expiration en jours. Le champ préfixe (par exemple
logs/
) identifie le ou les objets soumis à la règle d'expiration, et la période d'expiration spécifie le nombre de jours à compter de la date de création (c'est-à-dire l'âge) après lequel les objets doivent être supprimés. Une fois les objets ont dépassé leur date d'expiration, ils seront mis en file d'attente pour suppression. Vous ne seront pas facturés pour le stockage d'objets sur ou après leur date d'expiration.
Voici quelques informations sur la façon de le faire ...
http://docs.amazonwebservices.com/AmazonS3/latest/dev/ObjectExpiration.html
J'espère que cela t'aides.
Vous pouvez utiliser le script Powershell suivant pour supprimer un objet arrivé à expiration après le x days
.
[CmdletBinding()]
Param(
[Parameter(Mandatory=$True)]
[string]$BUCKET_NAME, #Name of the Bucket
[Parameter(Mandatory=$True)]
[string]$OBJ_PATH, #Key prefix of s3 object (directory path)
[Parameter(Mandatory=$True)]
[string]$EXPIRY_DAYS #Number of days to expire
)
$CURRENT_DATE = Get-Date
$OBJECTS = Get-S3Object $BUCKET_NAME -KeyPrefix $OBJ_PATH
Foreach($OBJ in $OBJECTS){
IF($OBJ.key -ne $OBJ_PATH){
IF(($CURRENT_DATE - $OBJ.LastModified).Days -le $EXPIRY_DAYS){
Write-Host "Deleting Object= " $OBJ.key
Remove-S3Object -BucketName $BUCKET_NAME -Key $OBJ.Key -Force
}
}
}
Vous pouvez utiliser les règles de cycle de vie AWS S3 pour expirer les fichiers et les supprimer. Tout ce que vous avez à faire est de sélectionner le compartiment, de cliquer sur le bouton "Ajouter des règles de cycle de vie", de le configurer et AWS s'en charge pour vous.
Vous pouvez vous référer au message de blog ci-dessous de Joe pour des instructions étape par étape. C'est assez simple en fait:
https://www.joe0.com/2017/05/24/Amazon-s3-how-to-delete-files-older-than-x-days/
J'espère que ça aide!