chevron-bottomchevron-leftchevron-rightdownloadfacebookinstagramlink-outlinkedinminusplus
Accessibilité Tous les articles

Quelle est la différence entre un ordonnanceur et un orchestrateur dans la gestion de votre parc informatique? - Partie 1

Publication

Août 2012

Publié par

David Pache

Chez agileDSS, nous utilisons le néologisme “orchestrateur”, inspiré de l’image du chef d’orchestre, afin d’introduire une nouvelle gamme de produit, distincte de celle des ordonnanceurs. Dans cette série de blogues, nous introduirons la pertinence de l'orchestrateur ainsi que comment l’utiliser et comment l’intégrer de façon efficace. Vous constaterez alors que l'orchestrateur remplace adéquatement l'ordonnanceur, mais dispose d’outils singulièrement plus sophistiqués.

Le tableau ci-dessous résume les différences majeures entre les orchestrateurs et les ordonnanceurs.

* Pour une définition approfondie du niveau de complexité.


Système et pilotes

Un ordonnanceur permet d’ordonner différents évènements dans le temps en leur associant une date de démarrage. Il ne prodigue qu'une façon d’interagir avec les systèmes qu’il contrôle. Sa première faiblesse est donc d’imposer une certaine homogénéité des entités impliquées. Par exemple, Cron est probablement le plus utilisé des ordonnanceurs, puisqu’il ordonne les tâches des serveurs UNIX de la planète. Cron utilise la ligne de commande pour interagir avec la machine sur laquelle il est installé. Un autre exemple serait l’ordonnanceur de Data services (ODS) qui exécute les jobs des ETL spécifiques à la suite BO. L’ODS contrôle uniquement les jobs serveurs associés à un dépôt Data services (DS).

Un orchestrateur ordonne les processus à l’aide de connecteurs chargés de l’interaction avec les différents types d’entités d’un système réparti. On ne peut donc pas le dissocier des notions d'intégration et de répartition. Ainsi, l’orchestrateur est capable de contrôler, au sein du même processus, un chargement de SSIS (installé sur M1), un chargement de DS (installé sur M2) et un chargement SQL dépendant des résultats des deux chargements précédents. Il est également capable de contrôler des objets locaux (fichiers, dossiers, ligne de commande, etc) en plus de différents types de serveurs.


Relation entre tâches et programmation

Dans un ordonnanceur, les actions ou “tâches” sont souvent classées dans le temps grâce à un système d'horloge. C'est le cas pour l’ordonnancement par Cron ou ODS. Pour un orchestrateur, la logique est essentielle. Afin de programmer le processus, il faudra définir au préalable les dépendances pour établir le design de son fonctionnement. Plus la connaissance du système est approfondie, plus la représentation dans l’orchestrateur sera optimale. Il n’est toutefois pas nécessaire de comprendre tous les rouages du système et toutes ses obscures dépendances, bien au contraire. Nous en ferons la démonstration dans le troisième blog de cette série.


Environnement et lecture

La schématisation des dépendances sera donc plus complexe que celle d’un ordonnanceur. Néanmoins, la récompense est à la hauteur de l’effort en raison des capacités de l’orchestrateur à simplifier la lecture des environnements complexes ou même chaotiques (cf. niveau de complexité). En effet, par sa représentation holistique, il donne une vision 360 du système réparti et fournit une documentation tacite très forte. En comparaison, l'ordonnanceur n'offrira qu'une vision succincte et centrée sur la technologie qu’il contrôle. En résumé, lorsque l'orchestrateur travaille pour l'intégration des systèmes et pour la compréhension des dépendances, l'ordonnanceur lance une série de tâches sans réelle considération de leur cohérence.

Le prochain blogue présentera les applications réalisables en utilisant l’orchestrateur. Il traitera des applications les plus triviales aux plus folles. Pour répondre à certaines problématiques fréquentes, nous proposerons des solutions souvent délaissées en raison de la complexité de leur intégration et nous tenterons aussi de donner un coup de pouce à la créativité.

Restez à l’affût des dernières tendances analytiques