L’art
d’ordonnancer
 
avec JobScheduler
François BAYART
30 Octobre 2010
Introduction
[1] 234567 introduction
Qui suis-je ?
François Bayart
consultant système en solution libre et
propriétaire
Redhat (1996), SuSE (1997) et Debian (1...
Projet JobScheduler
• Projet sous 2 licences
– OpenSource GPL
– Commercial (sans les contraintes GPL)
• Développé par SOS-...
Explication
1 [2] 34567 explication
Définition d’un “scheduler”
Ordonnanceur = scheduler !=
planificateur
• Définition simpliste  :
 Traitement : Action ou s...
 Les petits plus
Adapter l’ordonancement suite à des évènements externes non
prévisible
Redémarrage automatique et reprise...
Crontab forever !
Planificateur pure
• Planification = déclencheurs
•Pas de queue
•Pas de contraintes
•Pas d’enchaînement
...
qu’est ce que le scheduling
Au minima
• Pouvoir définir un “workflow” et les dépendances
• Permettre de gérer l’exécution ...
Technologies
L’application de base:
Java, C++
 WebServices (XSLT-
Stylesheets)
SOAP par défaut
 API : Java, Perl, VBScr...
La Communauté
 projet sur SourceForge
 http://jobscheduler.sourceforge.net/
 forum de SourceForge (très vivant !)
 Hel...
Architecture
12 [3] 4567 architecture
 fichiers XML
 éditeur graphique
 serveur HTTP intégré
JobScheduler : StandAlone
12 [3] 4567 architecture
JobScheduler : StandAlone
12 [3] 4567 architecture
JobScheduler : StandAlone
fichiers XML
éditeur
graphique
Serveur HTTP
intégré
12 [3] 4567 architecture
 frontend PHP
 connexion database
 agent ou client ou engine au choix
JobScheduler : Managed / multi-
serveur
12 [3] 45...
JobScheduler : Managed / multi-
serveur
12 [3] 4567 architecture
Démonstration
En vrai c’est mieux ! 
123 [4] 567 démonstration
Contexte de la démonstration
 JobScheduler Standalone 
VM01 : Engine & Operations GUI
 JobScheduler Managed / mutli-serv...
Définition d’un job
Création d’un job « indépendant » de base
Création d’un job « indépendant » distant
Création d’une cha...
Définition des accès - ACL
Engine :
filtrage selon l’IP ou FQDN
none / signal / info / no_add / all
Frontends :
similaire ...
Mais encore …
 
1234 [5] 67 mais encore …
Architectures avancées
Load Balancing
H.A. Cluster
1234 [5] 67 mais encore …
Monitoring
envoyer ses statuts vers un outils de monitoring
recevoir ses ordres de déclenchement depuis l'outil de
monitor...
Transferts de fichiers
 vérifier la présence du fichier chez un tiers
 envoyer des fichiers chez un tiers
 Protocoles s...
Malheureusement
;-( 
12345 [6] 7 malheureusement ;-(
Aspects négatifs
o JVM 32 bits obligatoire
o Ergonomie de l’interface
o Documentation pas évidente
o Howto et Screencast O...
Le(s) mot(s) de la fin
 
123456 [7] le(s) mot(s) de la fin
Planifier et ordonnancer les
tâches peut représenter beaucoup
de travail, surtout lorsqu’ils
s’exécutent sur plusieurs ser...
Liens Internet
 Cette présentation sur SlideShare
 SOS Berlin : http://www.sos-berlin.com/
 article linux mag :
http://...
Pas de question !
merci ...
123456 [7] le(s) mot(s) de la fin
Upcoming SlideShare
Loading in...5
×

L'art d'ordonner avec JobScheduler

2,387

Published on

utilisation de JobScheduler, un ordonnanceur de tâches libre et évolué. JobScheduler c’est un agent en Java qui tourne, une base de données SQL si on veut du multi server distribué et un frontal php au besoin mais optionnel.

http://jeudisdulibre.be/2010/10/31/jobscheduler/

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,387
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
25
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Explication
  • Real-time scheduling based on external, un-predictable events
    Automatic restart and recovery in event of failures
    Audit trails for regulatory compliance purposes
    Remonter des indicateurs clés pour vérifier la conformité à des fins Surveiller le respect de la qualité demandée
  • Explication
  • Écriture dans un fichier avec un while interdisant l’accès aux autres
    Écrire date dans un fichier, envoyer le fichier par FTP puis ensuite traiter sur VM02 le fichier
    ReturnCodes
    Ressources
    Timing : min , max , kill
    Créer des ressources
    Créer des locks
    Créer un process class
  • décomposition sur l'ordre de la chaîne d'actions (quand est ce que ça va en DB, ça va chercher quoi, où sont stockés les ficheirs de conf, les logs
    Qu'est ce qui est en DB
    Gestion des fichiers de configuration
  • Planning and scheduling jobs can mean a lot of work, especially if they are spread across multiple machines. Here’s a tool to make that task a lot easier.
  • L'art d'ordonner avec JobScheduler

    1. 1. L’art d’ordonnancer   avec JobScheduler François BAYART 30 Octobre 2010
    2. 2. Introduction [1] 234567 introduction
    3. 3. Qui suis-je ? François Bayart consultant système en solution libre et propriétaire Redhat (1996), SuSE (1997) et Debian (1999) [1] 234567 introduction
    4. 4. Projet JobScheduler • Projet sous 2 licences – OpenSource GPL – Commercial (sans les contraintes GPL) • Développé par SOS-Berlin (Software- und Organisations-Service GmbH ) • Scheduler pour Unix / Linux / Windows [1] 234567 introduction
    5. 5. Explication 1 [2] 34567 explication
    6. 6. Définition d’un “scheduler” Ordonnanceur = scheduler != planificateur • Définition simpliste  :  Traitement : Action ou suite d’action à effectuer  Planification : Plage horaire de démarrage  Ressources : Eléments externes conditionnant le démarrage  Machines : Physique ou virtuelle, voir process dans une file d’attente  Utilisateur : Compte de soumission1 [2] 34567 explication
    7. 7.  Les petits plus Adapter l’ordonancement suite à des évènements externes non prévisible Redémarrage automatique et reprise lors d’incidents Alerter et informer l’équipe des opérations / exploitation Générer un rapport d’incident 1 [2] 34567 explication
    8. 8. Crontab forever ! Planificateur pure • Planification = déclencheurs •Pas de queue •Pas de contraintes •Pas d’enchaînement 1 [2] 34567 explication
    9. 9. qu’est ce que le scheduling Au minima • Pouvoir définir un “workflow” et les dépendances • Permettre de gérer l’exécution des tâches • Surveiller l’exécution des tâches • Pouvoir définir les priorités et “queue” des jobs 1 [2] 34567 explication
    10. 10. Technologies L’application de base: Java, C++  WebServices (XSLT- Stylesheets) SOAP par défaut  API : Java, Perl, VBScript, JavaScript Scripting possible : JavaScript  PHP  Perl  VB Scripts GUI Editor: Java Web Editor: PHP Managed Jobs:  PHP  SQL (MySQL, PGSQL, MSSQL, Oracle) 1 [2] 34567 explication
    11. 11. La Communauté  projet sur SourceForge  http://jobscheduler.sourceforge.net/  forum de SourceForge (très vivant !)  Help , Support  support de SOS Berlin  Très présent 1 [2] 34567 explication
    12. 12. Architecture 12 [3] 4567 architecture
    13. 13.  fichiers XML  éditeur graphique  serveur HTTP intégré JobScheduler : StandAlone 12 [3] 4567 architecture
    14. 14. JobScheduler : StandAlone 12 [3] 4567 architecture
    15. 15. JobScheduler : StandAlone fichiers XML éditeur graphique Serveur HTTP intégré 12 [3] 4567 architecture
    16. 16.  frontend PHP  connexion database  agent ou client ou engine au choix JobScheduler : Managed / multi- serveur 12 [3] 4567 architecture
    17. 17. JobScheduler : Managed / multi- serveur 12 [3] 4567 architecture
    18. 18. Démonstration En vrai c’est mieux !  123 [4] 567 démonstration
    19. 19. Contexte de la démonstration  JobScheduler Standalone  VM01 : Engine & Operations GUI  JobScheduler Managed / mutli-serveurs VM01 : Frontend PHP + DB + Supervisor& Operations GUI VM02 : Engine & Operations GUI VM03 : Engine & Operations GUI 123 [4] 567 démonstration
    20. 20. Définition d’un job Création d’un job « indépendant » de base Création d’un job « indépendant » distant Création d’une chaîne simple Création d’une chaîne multi-serveurs Gestion des « resources » et des « schedule » 123 [4] 567 démonstration
    21. 21. Définition des accès - ACL Engine : filtrage selon l’IP ou FQDN none / signal / info / no_add / all Frontends : similaire à Unix (rwx / 777) avec 3 grands groupes administrator , developer , operator 123 [4] 567 démonstration
    22. 22. Mais encore …   1234 [5] 67 mais encore …
    23. 23. Architectures avancées Load Balancing H.A. Cluster 1234 [5] 67 mais encore …
    24. 24. Monitoring envoyer ses statuts vers un outils de monitoring recevoir ses ordres de déclenchement depuis l'outil de monitoring qui aurait détecter un "event" anormal sur lequel il faut réagir 1234 [5] 67 mais encore …
    25. 25. Transferts de fichiers  vérifier la présence du fichier chez un tiers  envoyer des fichiers chez un tiers  Protocoles supportés : FTP, SFTP, FTPS, SCP (pas DAV) 1234 [5] 67 mais encore …
    26. 26. Malheureusement ;-(  12345 [6] 7 malheureusement ;-(
    27. 27. Aspects négatifs o JVM 32 bits obligatoire o Ergonomie de l’interface o Documentation pas évidente o Howto et Screencast Out of date 12345 [6] 7 malheureusement ;-(
    28. 28. Le(s) mot(s) de la fin   123456 [7] le(s) mot(s) de la fin
    29. 29. Planifier et ordonnancer les tâches peut représenter beaucoup de travail, surtout lorsqu’ils s’exécutent sur plusieurs serveurs. JobScheduler permet de simplifier cela. BY JAMES MOHR 123456 [7] le(s) mot(s) de la fin
    30. 30. Liens Internet  Cette présentation sur SlideShare  SOS Berlin : http://www.sos-berlin.com/  article linux mag : http://www.linux-magazine.com/Issues/2008/97/JOB- SCHEDULER-A-LA-CARTE  Wikipedia :  http://en.wikipedia.org/wiki/Job_scheduler  http://en.wikipedia.org/wiki/Open_Source_Job_Schedule r  Regroupement de spécialistes en ordonnancement http://ordonnancement.org/ 123456 [7] le(s) mot(s) de la fin
    31. 31. Pas de question ! merci ... 123456 [7] le(s) mot(s) de la fin
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×