Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Suppression de fichiers sur Amazon S3
Cette page décrit le fonctionnement du versionnement dans un compartiment Amazon S3 pour un environnement Amazon Managed Workflows for Apache Airflow, ainsi que les étapes à suivre pour supprimer un DAG ou requirements.txt
un plugins.zip
fichier.
Table des matières
- Prérequis
- Vue d'ensemble du versionnement
- Comment ça marche
- Supprimer un DAG sur Amazon S3
- Supprimer un fichier requirements.txt ou plugins.zip « actuel » d'un environnement
- Supprimer une version « non actuelle » (précédente) de requirements.txt ou plugins.zip
- Utiliser les cycles de vie pour supprimer les versions « non actuelles » (précédentes) et supprimer automatiquement les marqueurs
- Exemple de politique de cycle de vie pour supprimer les versions « non actuelles » de requirements.txt et supprimer automatiquement les marqueurs
- Quelle est la prochaine étape ?
Prérequis
Vous aurez besoin des éléments suivants avant de pouvoir effectuer les étapes indiquées sur cette page.
-
Autorisations — Votre AWS compte doit avoir été autorisé par votre administrateur à accéder à la politique de contrôle d'FullConsoleAccessaccès d'AmazonMWAA pour votre environnement. En outre, votre environnement Amazon MWAA doit être autorisé par votre rôle d'exécution à accéder aux AWS ressources utilisées par votre environnement.
-
Accès : si vous devez accéder à des référentiels publics pour installer des dépendances directement sur le serveur Web, votre environnement doit être configuré avec un accès au serveur Web du réseau public. Pour plus d'informations, veuillez consulter Modes d'accès à Apache Airflow.
-
Configuration Amazon S3 — Le compartiment Amazon S3 utilisé pour stocker vos DAG, vos plugins personnalisés et vos dépendances Python
requirements.txt
doit être configuré avec l'accès public bloqué et le versionnage activé.plugins.zip
Vue d'ensemble du versionnement
Les informations requirements.txt
et plugins.zip
contenues dans votre compartiment Amazon S3 sont versionnées. Lorsque la gestion des versions des compartiments Amazon S3 est activée pour un objet et qu'un artefact (par exemple, plugins.zip) est supprimé d'un compartiment Amazon S3, le fichier n'est pas entièrement supprimé. Chaque fois qu'un artefact est supprimé sur Amazon S3, une nouvelle copie du fichier est créée. Il s'agit d'un fichier d'erreur 404 (objet introuvable) /0k indiquant « Je ne suis pas là ». Amazon S3 appelle cela un marqueur de suppression. Un marqueur de suppression est une version « nulle » du fichier avec un nom de clé (ou clé) et un identifiant de version, comme tout autre objet.
Nous vous recommandons de supprimer régulièrement les versions des fichiers et de supprimer les marqueurs afin de réduire les coûts de stockage de votre compartiment Amazon S3. Pour supprimer complètement les versions « non actuelles » (précédentes) des fichiers, vous devez supprimer les versions du ou des fichiers, puis le marqueur de suppression correspondant à la version.
Comment ça marche
Amazon MWAA exécute une opération de synchronisation sur votre compartiment Amazon S3 toutes les trente secondes. Cela entraîne la synchronisation de toutes les suppressions de DAG dans un compartiment Amazon S3 avec l'image Airflow de votre conteneur Fargate.
Pour requirements.txt
les fichiers plugins.zip
et, les modifications ne se produisent qu'après une mise à jour de l'environnement, lorsqu'Amazon MWAA crée une nouvelle image Airflow de votre conteneur Fargate avec les plugins personnalisés et les dépendances Python. Si vous supprimez la version actuelle d'un plugins.zip
fichier requirements.txt
ou, puis que vous mettez à jour votre environnement sans fournir de nouvelle version pour le fichier supprimé, la mise à jour échouera avec un message d'erreur tel que « Impossible de lire {version}
la version du fichier {file}
».
Supprimer un DAG sur Amazon S3
Un fichier DAG (.py
) n'est pas versionné et peut être supprimé directement sur la console Amazon S3. Les étapes suivantes décrivent comment supprimer un DAG sur votre compartiment Amazon S3.
Pour supprimer un DAG
-
Ouvrez la page Environnements
sur la console Amazon MWAA. -
Choisissez un environnement.
-
Sélectionnez le lien du compartiment S3 dans le code DAG du volet S3 pour ouvrir votre compartiment de stockage sur la console Amazon S3.
-
Choisissez le dossier
dags
. -
Sélectionnez le DAG, puis Supprimer.
-
Sous Supprimer des objets ? , tapez
delete
. -
Choisissez Supprimer les objets.
Note
Apache Airflow préserve l'historique des exécutions du DAG. Une fois qu'un DAG a été exécuté dans Apache Airflow, il reste dans la liste des DAG Airflow quel que soit le statut du fichier, jusqu'à ce que vous le supprimiez dans Apache Airflow. Pour supprimer un DAG dans Apache Airflow, cliquez sur le bouton rouge « Supprimer » dans la colonne Liens.
Supprimer un fichier requirements.txt ou plugins.zip « actuel » d'un environnement
Actuellement, il n'existe aucun moyen de supprimer un fichier plugins.zip ou requirements.txt d'un environnement après leur ajout, mais nous travaillons sur le problème. Dans l'intervalle, une solution consiste à pointer vers un fichier texte ou un fichier zip vide, respectivement.
Supprimer une version « non actuelle » (précédente) de requirements.txt ou plugins.zip
Les plugins.zip
fichiers requirements.txt
et de votre compartiment Amazon S3 sont versionnés sur Amazon MWAA. Si vous souhaitez supprimer complètement ces fichiers de votre compartiment Amazon S3, vous devez récupérer la version actuelle (121212) de l'objet (par exemple, plugins.zip), supprimer la version, puis supprimer le marqueur de suppression correspondant à la ou aux versions du fichier.
Vous pouvez également supprimer les versions de fichiers « non actuelles » (précédentes) sur la console Amazon S3 ; toutefois, vous devrez tout de même supprimer le marqueur de suppression à l'aide de l'une des options suivantes.
-
Pour récupérer la version de l'objet, consultez la section Récupération des versions d'objet depuis un compartiment activé pour la gestion des versions dans le guide Amazon S3.
-
Pour supprimer la version de l'objet, consultez la section Supprimer des versions d'objet d'un compartiment activé pour la gestion des versions dans le guide Amazon S3.
-
Pour supprimer un marqueur de suppression, consultez la section Gestion des marqueurs de suppression dans le guide Amazon S3.
Utiliser les cycles de vie pour supprimer les versions « non actuelles » (précédentes) et supprimer automatiquement les marqueurs
Vous pouvez configurer une politique de cycle de vie pour votre compartiment Amazon S3 afin de supprimer les versions « non actuelles » (précédentes) des fichiers plugins.zip et requirements.txt de votre compartiment Amazon S3 après un certain nombre de jours, ou de supprimer le marqueur de suppression d'un objet expiré.
-
Ouvrez la page Environnements
sur la console Amazon MWAA. -
Choisissez un environnement.
-
Sous le code DAG dans Amazon S3, choisissez votre compartiment Amazon S3.
-
Choisissez Créer une règle de cycle de vie.
Exemple de politique de cycle de vie pour supprimer les versions « non actuelles » de requirements.txt et supprimer automatiquement les marqueurs
L'exemple suivant montre comment créer une règle de cycle de vie qui supprime définitivement les versions « non actuelles » d'un fichier requirements.txt et leurs marqueurs de suppression après trente jours.
-
Ouvrez la page Environnements
sur la console Amazon MWAA. -
Choisissez un environnement.
-
Sous le code DAG dans Amazon S3, choisissez votre compartiment Amazon S3.
-
Choisissez Créer une règle de cycle de vie.
-
Dans Nom de la règle du cycle de vie, tapez
Delete previous requirements.txt versions and delete markers after thirty days
. -
Dans Préfixe, exigences.
-
Dans Actions relatives aux règles du cycle de vie, choisissez Supprimer définitivement les versions précédentes des objets et Supprimer les marqueurs de suppression expirés ou les téléchargements partitionnés incomplets.
-
Dans Nombre de jours après que les objets sont devenus des versions précédentes, tapez
30
. -
Dans Marqueurs de suppression d'objets expirés, choisissez Supprimer les marqueurs de suppression d'objets expirés, les objets sont définitivement supprimés au bout de 30 jours.
Quelle est la prochaine étape ?
-
Pour en savoir plus sur les marqueurs de suppression Amazon S3, consultez la section Gestion des marqueurs de suppression.
-
En savoir plus sur les cycles de vie d'Amazon S3 dans Expiring objects.