Bien choisir son ordonnanceur / scheduler

Un ordonnanceur / scheduler, pour quoi faire ?

La complexité des systèmes d’informations grandissantes, et la multiplication des traitements informatiques poussent les entreprises à devoir gérer de manière optimum les exécutions de l’ensemble des processus des flux de production. Cela nécessite la mise en place d’un système de planification et d’ordonnancement qui aura pour effet de simplifier la gestion de la production.

L’ordonnanceur (ou scheduler en anglais) comme la solution OpCon par exemple, intervient dans la gestion de l’exécution des processus d’exploitations et d’applications d’un système d’information. A la différence d’un orchestrateur qui est tourné vers les problématiques techniques (Provisionnement de VM, Arrêt / Relance de services, Déploiement de logiciel ou mise à jour). L’ordonnanceur / scheduler a d’autres objectifs dans les traitements métiers et applicatifs, bien qu’il puisse également effectuer des opérations techniques.

Souvent considéré à tort comme un logiciel de planification avancée, il va au-delà et gère le séquencement d’un ou plusieurs ensembles de traitements, selon un ensemble de conditions de déclenchement. Le processus de planification permettra d’établir un plan de production facilitant le suivi et les opérations de production. L’exécution d’un flux pourra dépendre de contraintes d’exploitation du système, de contraintes d’exécution selon le résultat d’autres flux, de contraintes horaires, ou d’évènements spécifiques.

Bien choisir son ordonnanceur / scheduler

Les systèmes d’ordonnancement ont pour objectif de réduire les coûts opérationnels d’exploitation, et de garantir les délais de production des chaînes applicatives. Ces logiciels de planification permettant de gérer l’ensemble des flux de production, seront un atout pour les équipes et différents services de production. Avant de décider de la mise en place d’un ordonnanceur / schéduler, une analyse d’impacts est nécessaire pour identifier les apports de ce type de solutions logicielles qui peuvent être nombreux. Il s’agit d’apporter une réponse concrète pour la planification, l’ordonnancement, et la supervision des flux, incluant la gestion des plans de production, et la maitrise des opérations de production.

Comment bien choisir son ordonnanceur / scheduler

En définissant le périmètre à ordonnancer, il sera possible de mesurer le nombre et le type de traitements, ainsi que le gain en termes de temps d’exploitation. Le but étant d’estimer le ROI associé au projet.

Un audit de l’existant doit servir à identifier l’ensemble des flux informatiques en fonction des domaines métiers. Les actions manuelles et les tâches déjà automatisées doivent également être identifiées. A partir de l’audit, un plan d’ordonnancement commencera à émerger, et permettra de définir le cadre et le plan projet pour l’implémentation d’un ordonnanceur.

L’outil prendra en charge l’exécution et le pilotage de l’ensemble des traitements qui lui seront demandés. Deux métiers vont émerger autour de l’exploitation des traitements.

  • Un premier métier sera orienté vers la mise en place de l’automatisation des flux
  • Un second concernant l’exploitation et le pilotage des flux

Dans les deux cas, une connaissance client et métier est nécessaire pour mesurer les impacts en cas de dysfonctionnement des flux, ou de la solution elle-même.

La mise en place de l’automatisation et de l’ordonnancement des flux doit se baser sur un ensemble de normes et de processus pour garantir la maintenabilité et l’exploitation des traitements. Les bonnes pratiques de développement en informatique, la gestion des changements, et l’industrialisation des développements vont être des gages de qualité pour la gestion des environnements de production.

La mise en œuvre d'un ordonnanceur / scheduler est à définir en fonction des besoins inhérents à l’amélioration de la production. Qu’il s’agisse de l’amélioration de la supervision des traitements, de la connaissance des plans de production, ou de la centralisation des flux d’une entreprise. Il s’agit d’une aide réelle pour les équipes dans le pilotage du Système d’Information.

L’état des lieux de l’existant permettra d’avoir une estimation des gains apportés par l’implémentation de la solution. Beaucoup de solutions logicielles apportent des modules de planification et parfois de supervision, mais il n’y a pas de centralisation des informations lorsqu’il y a plusieurs applications au sein du SI qui planifient et exécutent des traitements. L’ordonnanceur répondra à cette problématique, tout en simplifiant la dépendance des flux entre les applications.

Les avantages d'un ordonnanceur / scheduler

Les ordonnanceurs portent avec eux les outils de supervision des exécutions des flux permettant leur exploitation. Ceux-ci donnent la capacité aux exploitants de mesurer en temps réel l’état de la production, et de pouvoir apporter des réponses rapides aux métiers quant aux statuts d’exécution des différents traitements.

L’industrialisation, l’automatisation des processus et la planification avancée des traitements ordonnancés permettent une réduction des risques sur la production. La diminution des actions manuelles permet aux exploitants de se concentrer sur l’amélioration de la production, et l’amélioration de l’automatisation.

En maîtrisant sa production autour d’un ordonnanceur / scheduler, cela engendre un cercle vertueux pour les DSI qui gagnent en temps et en qualité pour répondre aux besoins grandissants des métiers et des entreprises. Les équipes gagnent en disponibilité pour accompagner les projets dans leurs développements et leurs mises en place.

Les solutions d’ordonnancement s’intègrent aussi bien dans des environnements dits classiques, que sur des infrastructures orientées vers le cloud. Les acteurs du marché ayant pris l’évolution des développements en méthode Agile, les ordonnanceurs s’intègrent parfaitement dans les workflows DevOps.

Pour aller plus loin

Avec le temps, les ordonnanceurs / schedulers disposent de plus en plus de fonction d’orchestration. Cela permet d’aller plus loin dans l’automatisation des processus métier en permettant un lien étroit avec le système informatique pour gagner en efficacité.

Dans le cas de SI complexes, un orchestrateur et un ordonnanceur travailleront ensemble pour répondre aux différents besoins. L’orchestrateur étant associé à l’ordonnancement de processus purement système, il peut répondre à des besoins de l’ordonnanceur.

Imaginons un traitement consommateur de ressources qui doit alimenter un entrepôt de données. A son exécution, l’ordonnanceur détermine par du conditionnement de ressource système qu’il n’a pas suffisamment de ressources disponibles pour s’exécuter dans le temps imparti pour répondre aux exigences des métiers. Il peut demander à un orchestrateur de déployer une nouvelle VM, ou d’augmenter les ressources système, ceci permettant d’alimenter l’entrepôt de données dans le temps imparti.

Nous pouvons également imaginer le cas où un des serveurs viendrait à connaitre un dysfonctionnement. La supervision relevant l’anomalie, une exécution est déclenchée sur l’orchestrateur pour provisionner un nouveau nœud pour l’ordonnanceur afin que ce dernier puisse reprendre l’exécution de son plan de production.

L’amélioration de la production informatique d’une DSI passe inévitablement par une maitrise de ses processus. L’ordonnancement répond à l’amélioration des traitements informatiques. Afin de garantir la qualité apportée par ce type de solution, des processus de gestion du changement (Gestion de la demande, Gestion des problèmes, Gestion des incidents) seront à définir. Ces apports conduiront à l’amélioration des procédés des équipes informatiques par l’industrialisation et l’automatisation de ces derniers.

Nos consultants experts de Next Decision sont à votre écoute pour vous accompagner dans le choix et la mise en place d'un ordonnanceur / scheduler ! Contactez-nous !