Solution ordonnanceur open source [REX] - Management du SI - Systèmes & Réseaux Pro
Marsh Posté le 10-04-2017 à 11:13:40
Nous utilisons Jenkins qui à la base est fait pour faire de l'intégration continue, mais que nous utilisons comme ordonnanceur pour des serveurs sous Linux et Windows.
Marsh Posté le 16-04-2017 à 17:17:23
Salut,
tu peux jeter un coup d'oeil à Rundeck qui permet cela:
http://rundeck.org/
Edit: je m'étais noté ça aussi à voir :
http://pythonhosted.org/airflow/
Marsh Posté le 18-04-2017 à 09:30:15
Merci pour les infos, j'aurais aimé une solution sans java mais je vais tester
Marsh Posté le 18-04-2017 à 18:45:21
Quelqu'un a déjà essayé JobScheduler ?
http://www.sos-berlin.com/jobscheduler
Marsh Posté le 19-04-2017 à 10:43:16
Oui rapidement et hors production.
Mon avis perso : une galère à installer et paramétrer correctement. Il semble très complet mais c'est une usine à gaz et inexploitable si on a pas les ressources hommes à mettre en face
Marsh Posté le 23-05-2017 à 17:12:33
Hello ici !
Pour info, suite aux récentes infections on a pris la résolution de mieux gérer nos MàJ / Reboot de nos serveurs. J'ai opté pour Jenkins qui semble plus suivi / avoir une plus grosse communauté. Mes scripts PowerShell sont prêt, me reste qu'à ajouter les nodes .. et là je bloque ! Impossible d'ajouter l'agent en tant que service Windows. J'ai donc quelques questions :
- est-ce une obligation de passer par Java pour l'ajout du noeud ? Si oui existe-t-il une possibilité d'utiliser une version portable de Java ?
- il s'agit de machine dans un domaine Active Directory, comment avez-vous procédé ?
Quelles sont vos applications de Jenkins ?
Merci !
Marsh Posté le 24-05-2017 à 09:55:59
Il faut demander à fred34 pour Jenkins
Pour info on a abandonné l'idée de JobScheduler et avons opté pour VisualCron qui est moins usine à gaz et plus visuel pour notre utilisation d'un ordonnanceur
Marsh Posté le 24-05-2017 à 13:59:39
Saguu a écrit : Hello ici ! |
Nous avons aussi rencontré des soucis sur les serveurs Windows, mais voici grosso modo la façon dont nous procédons :
Sur le serveur Windows sur lequel installer l'agent :
1- installer Java
2- Se loguer sur l'interface Web de Jenkins, aller dans Administrer Jenkins / Gérer les noeud et éditer le noeud en question
3- Dans le champ Méthode de lancement, choisir Lancer les agents esclaves par JNLP
4- Enregistrer les modifs
5- Revenir à la liste des noeuds et cliquer sur le noeud souhaité.
6- Cliquer sur le bouton "Lancer l'agent esclave" (je ne me souviens plus à ce niveau si il faut autoriser l'IP du serveur Jenkins dans Java)
7- L'agent s'installe alors en tant que service. Il faut éventuellement modifier le compte utilisé pour avoir les bons droits en fonction de ce que tu veux excéuter.
Bon courage,
@+
Fred
Marsh Posté le 31-05-2017 à 03:40:51
Bon bon bon, ça prend forme !
- Installation Jenkins sur CentOS7 : OK
-Ajouts de tous les nodes (sauf switch) : OK
- Intégration plugin Active Directory / Powershell / vSphère : OK
Mes premiers jobs se déroulent bien !
Question subsidiaire pour notre expert : t'avais switch Jenkins en https ? Si oui je veux bien un coup de main
Saguu
Marsh Posté le 31-05-2017 à 08:55:38
Saguu a écrit : |
Ravi de voir que ça fonctionne bien car Jenkins est vraiment un super outil qui peut tout faire (un job pour aller chercher les croissants, un job pour mettre le café en route,... )
Chez nous, nous sommes restés en http donc je ne peux pas trop t'aider sur la question.
Par contre, il y a quelques explications dans l'aide : https://wiki.jenkins-ci.org/display [...] ng+Jenkins
@+
Fred
Marsh Posté le 12-06-2017 à 06:59:13
Petit retour d'expérience !
Jenkins tourne maintenant en production avec le modèle suivant :
- un job de création de snapshot pour chaque VM du cluster ESXi
- un job de recherche et d'installation des MàJ Windows
- un job de reboot pour tous les nodes Windows
- un job de suppression des snapshot 72 heures après le job de reboot ( à affiner)
Également un job (qui s'exécute sur le master) d'enregistrement des confs de nos switch Cisco.
Interface accessible en https avec authentification Active Directory et génération de mail à chaque fin de job.
Bah ça tourne plutôt bien bien !
Marsh Posté le 13-06-2017 à 09:12:14
Saguu a écrit : Petit retour d'expérience ! |
Merci pour le retour ! Bah va falloir que je regarde Jenkins plus sérieusement alors !!
Marsh Posté le 15-06-2017 à 15:14:26
Nous sommes utilisateurs d'Open Job Scheduler depuis environ 5 ans maintenant. L'installation n'est pas si délicate que ça à mon sens.
Pour l'exécution de jobs en standalone, je trouve l'outil relativement simple d'utilisation. Je ne trouve pas personnellement que c'est une usine à gaz et nous n'avons pourtant pas eu de formation. Il est développé entièrement en Java, ce qui peut être un frein pour certains administrateurs.
En revanche, pour ce qui est de la création de jobs synchronisés (chaine de tâches) là c'est clair, c'est une merde sans nom.
A noter que je souhaitais passer de la version 1.6 à la 1.11 qui est plus simple d'installation et d'utilisation mais qui a toujours ce défaut de création de jobs synchro (Il n'y a pas une IHM sous forme de glisser/déplacer par exemple). L'inconvénient majeur de cette dernière version est que l'agent est soumis à licence depuis la 1.10 (incluse) si vous souhaitez lancer plusieurs exécutions de jobs en parallèle. SOS Berlin (qui développe le moteur) et SOS Paris sont en désaccord sur ce point. C'est bien évidemment un frein pour nous. SOS Paris, qui assure le support francophone, va sûrement développer un fork de la version 1.9 pour continuer à proposer la gratuité du produit.
Nous avons environ 500 jobs qui s'exécutent chaque jour (prod et test) sur notre infra par cet outil. Pensez-vous que Jenkins puisse tenir une telle charge ?
Nous avons également acquis une solution d'orchestration (Suite HPE - CSA et OO). Je peux donc développer des flux qui sont l'équivalent des jobs chainés et les lancer soit depuis HPE Operation Orchestration soit depuis le portail de services HPE CSA Portal. Ce n'est cependant pas le cœur de métier de cet outil.
Edit : je viens de jeter un oeil rapide sur Jenkins, ce n'est pas un ordonnanceur en fait, il est là pour de l'intégration continue, ça ne répondra pas à nos besoins. On va rester sur OJS donc.
Marsh Posté le 15-06-2017 à 16:49:31
tck-lt a écrit : |
Sur notre Jenkins (qui tourne sur une petite VM), nous avons des centaines d'exécution (pas forcément très lourdes) qui se lancent sur une cinquantaine de serveurs et le serveur ne bronche pas.
ET en effet Jenkins est un outil de CI à la base mais nous ne l'utilisons que pour de la planification de jobs et ça fonctionne parfaitement.
La gestion de jobs chaînés est on ne peut plus simple (pour chaque job, on peut définir plusieurs actions dont une qui lance un autre job, ou inversement, on peut paramétrer un job pour qu'il s'exécute à la suite d'un autre (en cas de succes, d'echec ou les 2)).
Et le tout gratuitement (y compris pour les agents ;-) ).
Marsh Posté le 15-06-2017 à 17:09:09
La pre/post-execution d'un job se définit dans le job lui-même ou dans une chaine de jobs ?
Marsh Posté le 15-06-2017 à 17:14:43
Est-ce-qu'il y a possibilité de réaliser un truc du genre :
,---> J2 -> J3 -> J4 ---,
J1 -> J5
`---> J2' -> J3' -> J4' ---'
Marsh Posté le 15-06-2017 à 17:20:28
tck-lt a écrit : La pre/post-execution d'un job se définit dans le job lui-même ou dans une chaine de jobs ? |
C'est comme tu veux :
Tu peux lancer un job après l'exécution d'un autre :
Ou lancer un job après l'execution du job en cours :
Marsh Posté le 15-06-2017 à 18:08:24
Pour info si l'installation de Java rebute certains, ils tout à fait possible d'exécuter une version portable de Java, qui ne posera pas de problème de MàJ!
Marsh Posté le 15-06-2017 à 19:08:46
J'ai juste indiqué que c'est possible techniquement, j'ai pas affirmé que c'était la meilleure solution.
Marsh Posté le 16-06-2017 à 08:41:17
fred34>Peux-tu aussi faire plusieurs chaines contenant un ou plusieurs jobs en commun du style :
C1 : J1 -> J2 -> J3 -> J4
C2 : J2 -> J4 -> J5
C3 : J6 -> J3 -> J7
etc...
Marsh Posté le 16-06-2017 à 08:52:07
tck-lt a écrit : fred34>Peux-tu aussi faire plusieurs chaines contenant un ou plusieurs jobs en commun du style : |
Je t'avouerais que je n'en sais rien, nous n'avons pas un tel niveau d'imbrication dans nos jobs qui sont pour la plupart indépendants les uns des autres.
Pour gérer des workflow plus complexes, il semble exister des plugins (les plugins sont un autre gros point fort de Jenkins puisqu'oon en trouve pour fair e de tout :-) ) : https://zeroturnaround.com/rebellab [...] lizations/
Installer Jenkins est assez simple sur Debian ou Ubuntu (apt-get install jenkins), tu devrais y jeter un oeil et faire quelques tests pour valider tes besoins.
Marsh Posté le 06-12-2017 à 22:54:35
Petit Up car le sujet intéresse.
J'utilise OpenSource JobScheduler depuis quelques années sans problèmes particuliers.
Plus gros bug constaté: si le réseau tombe pendant l’exécution d'un script via un agent et que le script se termine, et bien Jobscheduler ne le voit simplement pas... stop/start obligatoire du master pour corriger
J'ai aussi essayé Rundeck... mon point de vu est que ce n'est pas un ordonnanceur. je m'en servirai plus pour faire des tache de déploiement ou de l’exécution de masse.
Gros point noir : On ne sait pas relancer une tache(chaine de job) là ou l'étape s'est planté... WTF, c'est pourtant le but d'un ordo !!!
Je ne vous parle pas de Controle-M, $Univers, TWS qui sont les leader mais aussi les plus cher.
Marsh Posté le 07-12-2017 à 09:20:47
+1, il est aussi adressable par web service pour le coupler avec d'autres applis.
filou>en quelle version vous l'avez stp ?
Marsh Posté le 08-02-2018 à 21:49:06
Désolé pour la réponse tardive Tck-it,
je me suis mis à jour à Noel avec la version "linux-x64 1.11.5"
La version 1.12 m'obligeait à n'utiliser que la nouvelle interface Cockpit... J'ai donc garder la V-1 et installer cette interface en doublon avec l'ancienne pour m'habituer.
Marsh Posté le 09-02-2018 à 08:34:07
Ok, j'ai installé la v1.12 récemment. Peu de production encore dessus mais ça va monter crescendo.
Je galère à mettre en place le SSO pour le moment. L'accès est ok mais pas les autorisations. Mon groupe parait ne pas être reconnu ou du moins mon user avec mon groupe.
Marsh Posté le 09-02-2018 à 20:39:25
Je vais pas pouvoir t'aider dans l'immédiat sur ce point là,
étant très peu à utiliser JobScheduler dans ma boite, je n'ai pas cherché à utiliser une authent ldap et encore moins faire un sso.
Mais je vais quand même regarder ces prochains jours.
Marsh Posté le 12-02-2018 à 08:54:20
Si tu t'en sers pas, te bile pas avec ça, je vais me démerder.
Marsh Posté le 15-02-2018 à 14:39:17
Putain le con, j'avais oublié un C dans sAMAccountName dans le paramètre userSearchFilter... la lose ultime.
Marsh Posté le 16-02-2018 à 08:27:19
filou59185 a écrit : Gros point noir : On ne sait pas relancer une tache(chaine de job) là ou l'étape s'est planté... WTF, c'est pourtant le but d'un ordo !!! |
Il faut que tu joues sur l'ordre d ta chaine de tâches pour le faire démarrer sur celle-ci selon moi ou alors sauter les premiers nœuds de ta chaine et réinitialiser ton ordre
Marsh Posté le 21-02-2018 à 11:44:57
Bonjour
Concernant Open Jobscheduler, j'ai vu récemment la société sos-paris qui m'a annoncé la disponibilité très prochaine d'une nouvelle version sous forme d'une nouvelle VM pour tester leur solution. Nous avons actuellement l'outil AUTOSYS en vieille version (4.5) et nous souhaitons migrer.
Quelqu’un aurait-il eu vent de cette nouvelle version ?
Marsh Posté le 21-02-2018 à 11:51:30
Je vais te répondre par MP
Marsh Posté le 10-04-2017 à 10:17:26
Bonjour à tous,
Je cherche des retours d'expérience sur des solution d'ordonnancements open-source permettant de centraliser les ordres de reboot / lancement de script etc...
J'ai commencé à regarder Open scheduler mais cela me semble être une usine à gaz... Qu'avez vous mis en place dans vos boites pour gérer les reboots de tous vos serveurs etc...?
Merci d'avance et bonne journée