Pour éviter les frais Google Cloud liés à un cluster inactif, utilisez la fonctionnalité de suppression planifiée de cluster Dataproc lorsque vous créez un tel cluster. Cette fonctionnalité fournit des options pour supprimer un cluster :
- après une période d'inactivité spécifiée du cluster ;
- à une heure spécifiée ;
- après une période spécifiée commençant à partir de la soumission de la requête de création du cluster.
Calcul de la durée d'inactivité du cluster
dataproc:dataproc.cluster-ttl.consider-yarn-activity
propriété de cluster
a une incidence sur le calcul de la durée d'inactivité du cluster, comme suit:
- Cette propriété est activée (définie sur
true
) par défaut. - Lorsque cette propriété est activée, l'activité de l'API YARN et de l'API Dataproc Jobs doit être inactive pour démarrer et continuer à incrémenter le calcul du temps d'inactivité du cluster.
- L'activité YARN inclut les applications YARN en attente et en cours d'exécution.
- L'activité de l'API Dataproc Jobs inclut les tâches en attente et en cours d'exécution envoyées à l'API Dataproc Jobs.
- Lorsque cette propriété est définie sur
false
, l'API Dataproc Jobs activité uniquement doit être inactive pour démarrer et continuer à augmenter le temps d'inactivité du cluster calcul.
Utiliser la suppression planifiée du cluster
Commande gcloud
Vous pouvez créer un cluster avec la fonctionnalité de suppression planifiée en transmettant les options de suppression planifiée suivantes à la commande gcloud dataproc clusters create.
Option | Description | Précision | Valeur minimale | Valeur maximale |
---|---|---|---|---|
--max-idle 1 | Durée entre le moment où le cluster passe à l'état inactif et le moment où le cluster commence à être supprimé. Indiquez la durée au format IntegerUnit , où l'unité peut être "s, m, h, d" (respectivement : secondes, minutes, heures, jours). Exemples : "30m" ou "1d" (30 minutes ou 1 jour après le moment où le cluster devient inactif). | 1 seconde | 5 minutes | 14 jours |
--expiration-time 2 | Heure de début de la suppression du cluster au format date/heure ISO 8601. Le générateur d'horodatage est un moyen simple de générer la date et l'heure au format correct. Par exemple, "2017-08-22T13:31:48-08:00" définit l'heure d'expiration sur 13:21:48 dans le fuseau horaire UTC -8:00. | 1 seconde | 10 minutes à partir de l'heure actuelle | 14 jours à partir de l'heure actuelle |
--max-age 2 | Durée entre la soumission de la requête de création du cluster et le moment où le cluster commence à être supprimé. Indiquez la durée au format IntegerUnit , où l'unité peut être "s, m, h, d" (respectivement : secondes, minutes, heures, jours). Exemples : "30m" (30 minutes à partir de maintenant) ; "1d" (1 jour à partir de maintenant). | 1 seconde | 10 minutes | 14 jours |
gcloud dataproc clusters create cluster-name \ --region=region \ --max-idle=duration \ --expiration-time=time \ ... other flags ...
Vous pouvez mettre à jour un cluster créé avec la fonctionnalité de suppression planifiée pour modifier ou supprimer les paramètres de suppression planifiée à l'aide de la commande gcloud dataproc clusters update. (Les autres options de mise à jour de cluster ne peuvent pas être combinées aux options de suppression programmée.)
Option | Description | Précision | Valeur minimale | Valeur maximale |
---|---|---|---|---|
--max-idle 1 | Durée entre le moment où le cluster passe à l'état inactif et le moment où le cluster commence à être supprimé. Indiquez la durée au format IntegerUnit , où l'unité peut être "s, m, h, d" (respectivement : secondes, minutes, heures, jours). Exemples : "30m" ou "1d" (30 minutes ou 1 jour après le moment où le cluster devient inactif). | 1 seconde | 5 minutes | 14 jours |
--no-max-idle | Annule la suppression automatique du cluster en fonction de la durée d'inactivité du cluster précédemment définie par l'indicateur "max-idle". | Non applicable | Non applicable | Non applicable |
--expiration-time 2 | Heure de début de la suppression du cluster au format date/heure ISO 8601. Le générateur d'horodatage est un moyen simple de générer la date et l'heure au format correct. Par exemple, "2017-08-22T13:31:48-08:00" définit l'heure d'expiration sur 13:21:48 dans le fuseau horaire UTC -8:00. | 1 seconde | 10 minutes à partir de l'heure actuelle. La nouvelle heure ne doit pas être antérieure à l'heure définie précédemment. | 14 jours à partir de l'heure actuelle |
--max-age 2 | Durée entre la soumission de la requête de mise à jour du cluster et le moment où le cluster commence à être supprimé. Indiquez la durée au format IntegerUnit , où l'unité peut être "s, m, h, d" (respectivement : secondes, minutes, heures, jours). Exemples : "30m" (30 minutes à partir de maintenant) ; "1d" (1 jour à partir de maintenant). | 1 seconde | 10 minutes. L'heure de suppression planifiée mise à jour (heure mise à jour et nouvelle durée maximale) ne doit pas être antérieure à l'heure de suppression du cluster précédemment définie. | 14 jours |
--no-max-age | Annule la suppression automatique du cluster en fonction de la durée maximum du cluster précédemment définie par l'indicateur "max-idle" ou "expiration-time". | Non applicable | Non applicable | Non applicable |
gcloud dataproc clusters update cluster-name \ --region=region \ --max-idle=duration \ --no-max-age \ ... other flags
API REST
Vous pouvez créer un cluster avec la fonctionnalité de suppression planifiée en définissant les champs ClusterLifecycleConfig suivants dans votre demande d'API cluster.create ou cluster.patch.
Option | Description | Précision | Valeur minimale | Valeur maximale |
---|---|---|---|---|
idleDeleteTtl 1 |
Durée entre le moment où le cluster passe à l'état inactif et le moment où le cluster commence à être supprimé. Indiquez une durée en secondes avec un maximum de neuf chiffres après la virgule. Se termine par "s". Exemple : "3.5s". | 1 seconde | 5 minutes à partir de la création ou de la mise à jour du cluster. Lors de la mise à jour d'un cluster, la nouvelle valeur doit être supérieure à la valeur précédemment définie. Envoyez une requête cluster.patch avec une durée vide pour annuler une valeur idleDeleteTtl précédemment définie. |
14 jours |
autoDeleteTime 2 |
Heure de début de la suppression du cluster. Fournit un horodatage au format RFC 3339 UTC "Zulu", d'une justesse à la nanoseconde près. Exemple : "2014-10-02T15:01:23.045123456Z". | 1 seconde | 10 minutes à partir de l'heure actuelle Lors de la mise à jour d'un cluster, la nouvelle heure doit être postérieure à l'heure définie précédemment. | 14 jours à partir de l'heure actuelle |
autoDeleteTtl 2 |
Durée entre la soumission de la requête de création ou de mise à jour du cluster et le moment où le cluster commence à être supprimé. Indiquez une durée en secondes avec un maximum de neuf chiffres après la virgule. Se termine par "s". Exemple : "3.5s". | 1 seconde | 10 minutes. Lors de la mise à jour d'un cluster, la nouvelle heure de suppression planifiée (heure mise à jour et nouvelle durée maximale) doit être postérieure à l'heure de suppression du cluster précédemment définie. Envoyez une requête cluster.patch avec une durée vide pour annuler une valeur autoDeleteTtl précédemment définie. |
14 jours |
Console
- Ouvrez la page Dataproc Créer un cluster, puis sélectionnez le panneau "Personnaliser le cluster". Faites défiler la page jusqu'à la section "Suppression planifiée", puis sélectionnez les options à appliquer à votre cluster.
Affichage des paramètres du cluster avec suppression programmée
Commande gcloud
Vous pouvez utiliser la commande gcloud dataproc clusters list
pour vérifier que la suppression planifiée d'un cluster est activée.
gcloud dataproc clusters list \ --region=region
... NAME WORKER_COUNT ... SCHEDULED_DELETE cluster-id number ... enabled ...
Vous pouvez utiliser la commande gcloud dataproc clusters describe
pour vérifier les paramètres de suppression planifiée LifecycleConfig
d'un cluster.
gcloud dataproc clusters describe cluster-name \ --region=region
... lifecycleConfig: autoDeleteTime: '2018-11-28T19:33:48.146Z' idleDeleteTtl: 1800s idleStartTime: '2018-11-28T18:33:48.146Z' ...
Les valeurs autoDeleteTime
et idleDeleteTtl
sont les valeurs de configuration de suppression planifiée précédemment définies par l'utilisateur sur le cluster.
Dataproc génère la valeur idleStartTime
, qui correspond à la dernière heure de début d'inactivité du cluster. Dataproc supprime le cluster s'il reste inactif à idleStartTime
+ idleDeleteTtl
.
API REST
Vous pouvez faire une requête clusters.list pour confirmer que la suppression planifiée d'un cluster est activée.
Console
Vous pouvez afficher les paramètres de suppression planifiée du cluster en sélectionnant le nom du cluster sur la page Clusters de Dataproc dans la console Google Cloud. Sur la page des détails du cluster, sélectionnez l'onglet "CONFIGURATION". Faites défiler la liste de configuration du cluster pour afficher les paramètres de suppression planifiée.