Scripts en cours d'exécution avec le module Cron ANSIBLE

Scripts en cours d'exécution avec le module Cron ANSIBLE
ANSIBLE est un outil simple utilisé pour automatiser diverses tâches et les processus informatiques manuels. Il agit en tant que gestionnaire de nœuds sur SSH et peut partager l'automatisation dans des organisations entières comme les tâches quotidiennes automatisées, l'installation de logiciels, le déploiement, la gestion de la configuration et bien d'autres.

Modules anibles

ANSIBLE contient des modules qui sont un morceau du script exécuté par Ansible au nom de l'utilisateur pour interagir avec le système et effectuer des tâches spécifiques impliquant des chèques ou de l'automatisation. Ces modules peuvent interagir avec un système distant ou local pour apporter les modifications souhaitées. ANIBLE contient un grand ensemble de modules, bien plus de 800.

Dans cet article, nous avons mis en lumière le module Cron et son utilisation. Ce module, à côté d'autres, peut être utilisé à partir de la CLI (terminal) ou dans une tâche de playbook. Il convient de noter que les modules peuvent être écrits dans n'importe quel éditeur de texte du choix des utilisateurs tant qu'ils prennent en charge le format YAML et renvoient les données de format JSON.

Module cron

Dans divers systèmes d'exploitation Linux, un cron est un outil utilisé pour exécuter un ensemble de scripts ou de commandes à un moment prédéfini. Cette course programmée est souvent appelée «travail cron."

Ce module peut être utilisé comme un outil autonome sur Linux sans avoir besoin d'Anable; Cependant, pour faciliter la facilité d'utilisation en termes de disposition et de plate-forme, Anible est préférable car il peut faciliter notre accessibilité, nous offrant ainsi des tonnes d'autres fonctionnalités sous la forme de divers modules.

Par exemple, pour gérer divers travaux CRON, nous devions écrire le code manuellement sur le terminal; Cependant, avec ANSIBLE, nous pouvons nous débarrasser du travail fastidieux et réduire considérablement les erreurs en utilisant le PlayBook pour configurer les travaux Cron pour les serveurs que nous souhaitons configurer.

Comme mentionné précédemment, ANIBLE utilise des modules sur le terminal ou dans le livre de jeu. Le module cron peut gérer les entrées du crontab en utilisant le playbook.

Le module cron gère le crontab, en particulier les entrées crontab. Il a plusieurs paramètres, qui sont brièvement discutés ci-dessous.

Paramètres

Chaîne comme nom: C'est la chaîne qui agit comme un nom pour un crontab donné. Ce paramètre devrait être unique. Dans le cas où ce n'est pas le cas, nous aurons notre précédente tâche CRON remplacée par les plus récentes par le même nom.

Chaîne comme état: Cette chaîne spécifie si la fonctionnalité est présente ou absente. Par exemple, nous voulons supprimer une ancienne tâche qui n'est plus requise. Nous pouvons supprimer le travail préfixé comme «#ansible: travail précédent» de notre crontab. Maintenant, l'État apparaîtra comme absent.

Chaîne comme travail: Cette chaîne est généralement la commande que nous allons exécuter. Il n'est pas nécessairement nécessaire si notre État est absent; Cependant, dans le cas d'un état actuel, nous avons besoin de l'entrée sur l'emploi sur notre crontab. Cette chaîne ne peut pas avoir d'espaces.

Chaîne en tant qu'utilisateur: Cette chaîne est pour l'utilisateur spécifique dont le crontab doit être modifié.

Temps: Cette chaîne comprend le horodatage contenant divers paramètres liés au temps comme une semaine, un jour, un mois, une année, une heure, une minute. Son entrée peut être écrite comme «0,7,6 ** ls-alh> / dev / null» pour impliquer que le travail fonctionne aux 6e et 7e heures.

Temps spécial. Ce paramètre contient des valeurs de temps spéciales comme annuellement, hebdomadaire, horaire, mensuel, redémarrage, etc., pour rendre les emplois plus périodiques.

Exemples

Laissez-nous faire une nouvelle entrée sur notre système Linux en tant que livre de jeu ANSIBLE.

$ CD ~
$ Mkdir ANSIBLE-WORKSPACE
$ cd anible-workspace

Ensuite, nous nommons notre livre anible (il convient de noter que le playbook a .Extension YAML).

$ vim Crontest.YML

Avec cela, ce qui suit devrait s'ouvrir.

Maintenant que nous sommes dans le livre de jeu, nous pouvons ajouter le contenu suivant.

-hôtes: tout
devenir vrai
Tâches:
-Nom: «Démonstration Cronmodule»
Anable.construit.cron
Nom: «Tester»
État: présent
Jour de semaine: «*»
mois: "*"
jour: "*"
heure: "*"
minute: "*"
Job: "Cache = Clear"

Maintenant, exécutez ce playbook en tapant la commande suivante dans le shell Linux:

ANSIBLE-PLAYBOOK TESTBOOK.YML

Le code décrit ci-dessus utilise Cronjob pour planifier une heure spécifique pour effectuer son travail. Dans ce cas, le travail consiste à effacer les données des applications de fond. Cette mémoire est appelée cache, et il est conseillé de le nettoyer régulièrement, afin que notre système puisse fonctionner sans aucune charge inutile. Le cronjob décrit ci-dessus a des hôtes définis sur «tous."Cela signifie que tous les systèmes distants auront le cronjob effectué sur eux, et la condition reste vraie tant que le playbook est en cours d'exécution.

La troisième ligne décrit la tâche du cronjob, le nom de la tâche est affiché comme une «démonstration de cronjob», qui apparaîtra dans le journal d'exécution anible. La ligne suivante affiche le module intégré «Ansible. construit.cron "

Plusieurs chaînes de temps sont marquées comme «*», ce qui indique l'opération par défaut de Cron. Les données ci-dessus montrent que le Cronjob sera effectué mercredi à 5 h du mois en cours; Le travail est de nettoyer le cache.

Avantages

Le module CRON nous offre plusieurs avantages, notamment.

  • Pas de mémoire d'occupation pendant la course.
  • Transfert de contrôle plus facile à l'utilisateur lorsque Cronjob s'exécute.
  • Même si le cronjob ne s'exécute pas pour une raison inconnue, il se rendra à nouveau dans la chaîne de temps désignée.

Conclusion

Dans cet article, nous avons parcouru le module CRON pour ANMIBLE, responsable des horaires de plusieurs emplois que nous souhaitons attribuer à notre système. Il s'agit d'une commande de base importante lorsqu'il s'agit d'automatiser plusieurs travaux sur un délai spécifique. Nous espérons que vous avez pu saisir le fonctionnement du module cron et effacer vos requêtes après avoir lu cet article.