Exécution des travaux et mise en file d'attente

A propos de la file d'attente de travaux Schematics

Lorsqu'un utilisateur exécute une opération Schematics, les travaux sont mis en file d'attente dans une file d'attente de service partagé. Un travail reste dans la file d'attente jusqu'à ce que des agents soient disponibles dans les régions ciblées pour exécuter le travail. Des règles de planification sont appliquées aux travaux pour s'assurer que le service est équitablement disponible pour tous les utilisateurs.

Fonctionnement de la file d'attente de travaux

En fonction du nombre de travaux soumis par un utilisateur et de la durée d'exécution des travaux, le consommateur peut connaître des retards avant l'exécution des travaux. La file d'attente des travaux garantit que Schematics est équitablement disponible pour tous ses utilisateurs, quelle que soit la charge générée par un utilisateur.

Example

Si un user-1 dispose de 20 travaux en attente dans la file d'attente, et que user-2 soumet un nouveau travail. Le travail User-2 attend dans une file d'attente, devant les 20 autres travaux user-1's pour rendre Schematics équitablement disponible pour user-1 et user-2.

Quand le travail entre t'il dans la file d'attente en attente ?

Les tâches suivantes sont exécutées par le travail lorsqu'il entre dans une file d'attente en attente.

  • Votre travail exige plus de temps pour se réaliser. Vérifiez que le temps spécifié pour le travail à exécuter est suffisamment long.
  • Votre image utilisée par votre exécution de travail n'existe pas. Vérifier que les détails de l'image fournie existent et que le nom est spécifié.
  • Les paramètres de variable d'environnement requis par le travail ne sont pas spécifiés. Vérifiez que les variables d'environnement soient définies.
  • Les commandes ou arguments transmis au travail ne sont pas valides. Vérifiez que les indicateurs d'argument indiqués sont corrects.

Délai d'attente du travail

Les tâches Terraform telles que la planification, l'application et la destruction d'un espace de travail ne devraient généralement pas prendre plus de quelques heures pour provisionner ou déprovisionner des ressources. Si vous provisionnez de nombreuses ressources simultanément, ce qui prend plusieurs heures, il est conseillé de répartir les ressources dans différents espaces de travail. Schematics limite la durée d'exécution d'un travail à 24 heures. Au bout de 24 heures, les travaux sont terminés, le travail est marqué comme STOPPED et l'espace de travail affiche ACTIVE, ou INACTIVE.

Après 24 hours, un signal d'interruption est envoyé pour arrêter l'exécution du travail. Un délai de grâce de 10 minutes est accordé pour que la commande se termine. S'il n'est pas terminé dans ce délai, un signal d'arrêt est envoyé et le travail est arrêté. Une actualisation Terraform est effectuée après l'arrêt du travail afin de s'assurer que le fichier d'état et les autres données sont collectés.

Dans un travail, plusieurs commandes telles que terraform init, terraform applyet terraform refresh sont exécutées. Si le travail arrive à expiration dans une commande, toutes les autres commandes n'obtiennent que le 10 minutes supplémentaire à terminer. A la fin de 10 minutes, chaque commande subit un arrêt forcé.

Exemple Si un travail est bloqué pour toujours sur une application Terraform, lorsque la commande est arrêtée, et si vous exécutez un rafraîchissement. Si le rafraîchissement est également bloqué, après 15 minutes, un kill est exécuté.

Terraform local exec et remote exec ont une limite de temps de 30 minutes et arrêtent l'exécution du travail en cas de dépassement.