Ortro : Ordonnanceur ou job scheduler opensource

Ortro est un ordonnanceur libre sous licence GPLv2

Ortro a pour but de permettre l’ordonnancement de tâches et de surveiller le bon déroulement de celles-ci.

Ortro est écrit en php et fonctionne sous GNU/Linux, BSD, Solaris et d’autres plateformes Unix.

Voici la liste de ses fonctionnalités :

  • Possibilité de découverte automatique d’hôtes sur le réseaux (sous couvert de l’installation de la librairie Pear Net_NMAP et de NMAP sur le serveur)
  • Possibilité de créer des chaines de job avec gestion d’erreur. C’est à dire possibilité de réaliser des actions en cas de réussite ou d’erreur d’une tâche du workflow.
  • Ordonnancer vos jobs de manière centralisée
  • Archiver le résultat de l’exécution de vos jobs
  • Création de jobs/workflow pour la supervision système ou d’application
  • Exécuter des scripts sur des hôtes distant via ssh et échange de clefs
  • Création de rapports simples au format html, txt, csv et xls via des interrogations en base de données envoyés par mail
  • Test une application Web
  • Notification sur le résultats des jobs lié aux événements suivant (debut et/ou fin de job, bonne et/ou mauvaise exécution du script)
  • Utilitaire d’import ou d’export
  • Internationnalisé
  • Gestion de plugins

Les plugins se divisent en 5 catégories :

La notification peut-être envoyé par mail, Jabber, SMS en utilisant une interface FTP…

Il est également possible de gérer l’authentification soit par MySQL, soit via annuaire LDAP

Voici un schéma présentant l’architecture de cet ordonnanceur libre :

architecture ortro

Et un petit screenshot pour vous rendre compte du côté user-friendly de la chose 😉

Ortro list job

Pour avoir testé Ortro, je trouve que cet un outil qui peut s’avérer pratique si on a besoin d’un ordonnanceur libre.

Il est très facile de prise en main, un peu buggé encore, la dernière version date d’octobre 2009, ce qui est dommage, mais bon…

Il a le mérite de faire son job, à savoir que certains plugins (pour ceux que j’ai testé ne son pas fonctionnelle ou demande des dépendances…)

Le projet à l’air stoppé, dommage car il y a du potentiel et un certain manquement dans la sphère libre.

Il existe OpenSource Job Scheduler pour ceux que ça intéresse en tant qu’ordonnanceur opensource, mais j’ai testé également et ça ne collait pas à mon besoin.

A savoir que je met ici à disposition une version d’Ortro qui corrige certains légers problèmes, dont un assez gênant empêchant l’installation (en gros il y a le fichier configure.php qui fait croire que l’application qui est déjà installée, je l’ai juste renommé…)

Ça vous évitera de chercher pourquoi le process d’installation ne se lance pas 🙂

J’ai également laisser un petit script sql à adapter (personnalisation du mot de passe) pour la création de l’utilisateur et de la base de données associées à lancer avant l’installation d’Ortro sur votre serveur.

A vos tests 😉

Liens utiles :

Site Officiel d’Ortro

Launchpad d’Ortro

SourceForge d’Ortro – A noter que c’est le seul moyen de le télécharger, je n’en ai pas trouvé d’autre.

« Ma » version « modifiée » d’Ortro en téléchargement

  • Création de jobs/workflow pour la supervision système

Author: Pierre-Yves Dubreucq

Passioné par les logiciels libres depuis 2001, je suis responsable d'Odiso (hébergeur web spécialiste des infrastructures haute disponibilité e-commerce et en gestion de pics de trafic & webperf) je tiens ce blog depuis 9 ans avec beaucoup moins d'assiduité malheureusement qu'à ses débuts, car j'écris aussi sur MonSiteEstLent.com blog d'Odiso dédié à la webperf

Share This Post On

15 Comments

  1. Je pense aussi 😉
    Par contre, il serait mieux un mode de fonctionnement Client/Server
    Genre un petit daemon autonome.
    Avec l’exécution de script via ssh, ça implique que cette connection reste active, ce qui peut être gênant pour le retour de la commande exécutée si perte de connexion.
    Ça implique aussi qu’en cas de perte de connexion entre les 2 entités, les jobs ne s’exécute pas sur le client, ça peut être gênant.
    Mais bon, c’est quand même sympa comme outils en effet 😉

    Post a Reply
  2. Sympa car il y a un vrai manque dans le domaine.

    Mais ce genre d’application est vraiment destinée aux professionnels, et les défauts mentionnés vont rebuter la plupart pour une mise en prod.

    L’exécution en ssh étant le plus handicapant sans doute…

    Post a Reply
  3. En effet, les défauts mentionnés sont gênants, ça l’est moins si on est sur un LAN, car on est sensé avoir une meilleure maîtrise.
    Par contre, ça se complique si on est en WAN…

    Post a Reply
  4. Merci pour cet article, c’est un très bon résumé de l’outil. Je me permets juste une petite correction sur l’inquiétude du projet stoppé : Le projet est toujours maintenu par son concepteur à travers sa société de services Bonsaimeme (http://www.bonsaimeme.com/).

    Eric.

    Post a Reply
  5. Bonjour @Eric Angenault,
    Merci pour l’info, j’avais vu qu’il y avait une société derrière, mais je doute quand même du suivi du projet.
    J’ai personnellement ouvert des tickets ou des discussions sur divers plateforme du projet, launchpad ou autre, ont été fermé faute de réponse.
    En tous cas à suivre 😉
    Merci encore et bonne journée

    Post a Reply
  6. Salut !

    Pour moi ORTRO, c’est page blanche. L’installation ne marche pas. Arf !
    Je confirme ce que dit Pierre-Yves Dubreucq. ORTRO ne répond pas aux questions. Dommage, le projet (vu les imprim écran) avait l’air de me plaire.

    Concernant « Job Scheduler », ne marche pas en 64 bits
    Bref ! Pas de solution pour Ubuntu 10.4 LTS Lucid.

    Bye,
    Jérôme

    Post a Reply
  7. Bonjour @Jerome,
    As-tu essayé avec la version que j’ai mis à disposition ici ?
    Car comme dit dans cet article, il suffit de renommer le fichier configure.php pour que l’installation fonctionne, enfin normalement…
    Bonne journée

    Post a Reply
  8. Bonjour,

    Voila ma configuration:
    Ubuntu 10.4 Lucid LTS + LAMP

    Voila ce que j’ai fait :
    cd /var/www
    wget http://blog.admin-linux.org/wp-content/uploads/2011/03/ortro-full-1.3.4.tar.gz
    tar zxvf ortro-full-1.3.4.tar.gz
    mv ortro-full-1.3.4 /var/www/ortro

    J’ai lancé ton script SQL sur phpmyadmin puisque j’ai Mysql
    Et j’ai lancé l’application : Avec FireFox, j’ai eu un écran blanc mais avec google chrome, j’ai vu une erreur 500. J’ai réflechi très longuement au problème (car je suis novice sur Linux)
    et j’ai vu qu’il existait des logs Apache alors j’ai fait :
    sudo nano /var/log/apache2/error.log

    Et j’ai vu l’erreur suivante :
    PHP Warning: require_once(/var/www/ortro/www): failed to open stream: No such file or directory in /var/www/ortro/www/init.inc.php on line 21
    PHP Fatal error: require_once(): Failed opening required  » (include_path=’.:/usr/share/php:/usr/share/pear’) in /var/www/ortro/www/init.inc.php on line 21

    Je suis donc allé dans ce fichier (ortro/www/init.inc.php)
    Mais la ligne semblait juste :
    require_once realpath(dirname(__FILE__) . ‘/../conf/init.php’);

    Le fichier existe bien !Là, je ne comprends plus rien.
    J’ai cherché sur internet, beaucoup ont un écran blanc sur Ortro mais il n’y a pas de réponse particulière.
    J’espère que tu seras … Bye, Jérôme

    Post a Reply
  9. Je reprécise mes propos en fait, effectivement le SSH rebutera le débutant, mais aussi le professionnel, car une éventuelle rupture du lien réseau provoquerait un plantage brutal du script en cours. A moins de bien gérer les redirections, et d’avoir une communication lors de la fin du script, mais je ne crois pas que ce soit le cas.

    Post a Reply
  10. @MasterBOX C’est clair qu’une coupure réseaux stoppe tout.
    On pourrait imaginer un petit script en cron sur le serveur distant qui vérifie accès en ssh et si celui-ci ne fonctionne pas, le script change le fichier crontab afin de préserver l’exécution des taches.
    Bon, je te l’accorde, ça fait un peu bricolage.
    L’idéale, serait d’avoir un agent autonome par hôte distant, la communication entre Ortro et son agent ne servirait qu’à ajouter, modifier ou supprimer un job, mais aussi à fournir les retour d’exécution des jobs.
    Ça serait bien, malheureusement, ça n’existe pas actuellement…
    Merci pour ton commentaire en tout cas.

    @Jerome, je ne comprends pas trop, on dirait qu’il lui manque quelque chose, mais je ne vois pas quoi. Peut-être pourrais-tu vérifier les droits utilisateurs pour t’assurer que l’utilisateur apache à bien accès lui à ces fichiers.

    Bonne journée

    Post a Reply
  11. merci pour cette réponse, le mode client / serveur avec un agent distant serait effectivement idéal, plus secure 😉

    C’est vrai que dans le domaine libre, les ordonnanceurs sont les parents pauvres… C’est dommage étant un besoin tout de même très répandu dans le monde pro.

    Mais bon il n’est pas impossible que je le teste chez moi un de ces 4, il a bien l’air sympa 🙂

    Post a Reply
  12. Bonsoir,

    Si vous souhaitez utiliser un ordonnanceur open source, je vous invite à aller du côté de l’Automate Libre (http://openworkloadautomation.com) qui distribue en France le produit Open Source Job Scheduler de la société SOS-Berlin.
    Le site est en construction car l’offre est en train de se mettre en place en France mais vous pouvez dés à présent les suivre.

    Eric.

    Post a Reply

Trackbacks/Pingbacks

  1. ArabTecno – Breathe Intelligence – DS Scheduler – ordonnanceur libre - [...] vous avez déjà parler de Ortro par le passé, en voici un nouveau, ce qui ne fera pas de…
  2. DS Scheduler – ordonnanceur libre | OSOS - [...] des tâches et des commandes dans un environnement multi-hôte.Je vous avez déjà parler de Ortro par le passé, en…

Submit a Comment

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *