SGE

 Son of Grid Engine 8.1.9.si (r001)

Image Interface SGE 8.1.9si SERVEURS EN MAINTENANCE
DOWNLOAD offline
quelques soucis de DDOS
Bannissement en cours

Cette page est dédiée à un développement, où plutôt une amélioration de SGE, J’ai quelques mal intéressés
(secteur Universitaires /Construction / Aérospatiale).

Tous mes contacts utilisant entre autre Son of Grid Engine ont eu des soucis d’implémentation ou de mises à jours systèmes.
La « systemd-ification » a été un problème, pas mal de « glitches » autour de ssl et NFS. SGE, glibc, autofs etc… .

UPDATE
Fri 8 Mar 10:03:05 CET 2019

TOMAS Laurent

Actuellement (19 Juin 2018), je ne trouve pas de « GIT fiable, le source le plus fiable reste celle ci https://arc.liv.ac.uk/SGE/
Le code de Dave ici tel quel, me posait pas mal de soucis de protection mémoire, je prendrait le temps d’examiner les modifs faites, j’ai vu quelques modifications intéressantes.
Bon, sans repository git… »ouille » pour le moment, en utilisant la source de arc.liv et quelques modif de Dave, J’ai concaténé une source qui semble 100% fonctionnelle pour un Linux de 2018 et plus.

Notez que la dernière fois que j’ai fait du C(gcc pas c+) c’était dans le Kernel Linux et les pilotes des cartes réseaux I.C.L. Ether Team 16i et 32.
Donc j’ai réveillé mon C après 18 ans de comma ;o), mais je ne donne aucune garantie et je ne suis pas responsable des problèmes que cela pourrait engendrer.
M
ais rassurez vous, j’ai vérifié et revérifié mes modifs et je les ai testées.

J’ai apporté quelques modifs aux sources de arc.liv.ac.uk, je n’ai pas pu faire tout ce que je voulais, faute de temps, mais aussi le fait que je dois renouveler mes connaissances en C
En gros un (o; root@my-brain:/ #  apt-get update && apt-get dist-upgrade ;o)

Au final ça donne un sge 8.1.9.si (r001), pourquoi si, SSL Intégration, mais aussi librypto, en principe cette version de doit pas poser de soucis sous Debian/Raspbian 9 (Stretch)
voici un ldd de qmon

linux-vdso.so.1 (0x00007ffd669f9000)
libssl.so.1.1 => /usr/lib/x86_64-linux-gnu/libssl.so.1.1 (0x00007f7c7ea8c000)
libcrypto.so.1.1 => /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 (0x00007f7c7e5f9000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7c7e3f5000)
libXm.so.4 => /storage/sgedrive/sge/opt/sge/lib/lx-amd64/libXm.so.4 (0x00007f7c7df23000)
libXt.so.6 => /usr/lib/x86_64-linux-gnu/libXt.so.6 (0x00007f7c7dcba000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f7c7daa8000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f7c7d768000)
libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007f7c7d560000)
libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007f7c7d343000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7c7d03f000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f7c7ce22000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7c7ca83000)
/lib64/ld-linux-x86-64.so.2 (0x00007f7c7f412000)
libXmu.so.6 => /usr/lib/x86_64-linux-gnu/libXmu.so.6 (0x00007f7c7c868000)
libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f7c7c62a000)
libXft.so.2 => /usr/lib/x86_64-linux-gnu/libXft.so.2 (0x00007f7c7c414000)
libjpeg.so.62 => /usr/lib/x86_64-linux-gnu/libjpeg.so.62 (0x00007f7c7c1a9000)
libpng16.so.16 => /usr/lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f7c7bf76000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f7c7bd4e000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f7c7bb49000)
libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f7c7b933000)
libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f7c7b684000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f7c7b45a000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007f7c7b250000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f7c7b036000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f7c7ae32000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f7c7ac2c000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f7c7aa24000)

Note: les binaires ont été compilés pour AMD64 et ARM7 (raspberryp2 b+) et

ATTENTION: du fait du changement de libssl et libcrypto, le protocole de ce SGE n’est pas compatible avec la 8.1.9 avec SSL 1.0

Les dossiers de spool et paramètres sont 100% compatibles avec le 8.1.9 original.

Tests:
2’800’000 Jobs testés zéro problèmes, (contexte: 1 master 32 exec nodes), qmon met du temps à charger avec une telle quantité de jobs.
ces binaires sont en production au cnsr.ch, Tomas-Tech et le sera rapidement à l’Idiap

Test de hacking des ports de SGE (bruit) il en résulte que SGE met le flag E sur le noeud, un état attendu et donc correct.

Téléchargements:
Je suis en train de changer le système, en effet, depuis la publication de ce nouveau SGE, le site de repository est source de DDOS depuis Chicago et D-Regensburg,
Le but de ces DDOS étant de rendre le service inutilisable.
Étant moi même C.E.H. et C.I.S.S.P.  je suis en train de mettre en place un système de bannissement dynamique pour les tentatives de DDOS.

– Un lien de téléchargement standard
– Le dépot GIT  sera accessible de manière restreinte sur demande
pour une demande de téléchargement:
   contactez moi ici  >> 

FUTURS:
Les scripts start-stop systemd / sys-init,  avec log

Pour les exec nodes + systemd, je recommande 2 units 1 pour les mount nfs (sge-mount.service ou stockage comme pré-requis à sge.services
et un unit (sge_execd.service qui exploite la variable  SGE_ND=yes, ainsi les traces seront dans le stdout.

pour les master+shdow, je potasse le script original, il est obsolète pour l’adapter à un sys-init  systemd et faires de logs systèmes

dqmon n’est qu’une tentative de changer les couleurs, c’est surtout fait pour les opérateurs et visualiser les jobs sans se fatiguer les yeux, je n’ai pas fini de décortiquer les problèmes liées aux couleurs, SUN avait érigé un standard, certains ne l’ont pas respecté, certaines zone n’utilisent pas le fichier Q( ou Q.dark pour dqmon)

 
Astuce GPU/processus bloqués par un job précédent:
J'ai souvent à faire à des jobs qui bloquent, soit des process "immortels", soit un gpu que l'ont ne peux plus selectionner et qui freeze le script avec Cuda
 ma solution est via le prolog, faites un sanity check en arrière plan, si se sanity check se plante(cuda) ou des processus restent immortels,
Exploitez le code de sortie 25, exit 25 qui fait ceci
- passage du fag E error sur le noeud problématique.
- relance le job sur un autre noeud.

comme le noeud est en erreur (flag E) plus aucun job ira dessus, libre a vous de faire une maintenance, reboot, debugging etc...

note: accessoirement, je fait du nettoyage de processus dans l'epilog, si ça ne marche pas les modifs ci dessus dans le prolog fairont le reste.
EN COURS:
J'examine le code pour voir s'il est possible de faire de l' IPV6 + V4 ou l'un ou l'autre,
Si le dual stack n'est pas possible immédiatement, je regarderai s'il est possible de faire des redirections V6 to V4 V4 to V6 hors SGE  avec un SGE en ipv6.

BUG 8.1.9 commun à la version standard:

[XX] IDIAP-#16064 :
SGE – LDAP ABUSE, overload ldap server when submiting jobs
          ===>getgrent system call « abuse » by SGE
          ===> idée: gérer un cache ldap, enregistrer le résultat de getgrent lors d’un job
          ===>           si démarrage de tâche utiliser le cache, mais surtout pas getgrent
                               (libs/uti2/util.c)

[OK] qconf -sxxxxx  fonctionne pour les non admin host

note to SGE developers [GB]
I am a Systems Engineer, I do not pretend to be a good developer, I do not have the vulgum of knowledge, but I try to be as strict as possible, my military computing antecedents are there for Something.

That’s why I really not appreciate C++, basic, and perl, MongoDB etc …, I madetoo much work in desaster-recovery to try to recover unstructured data damaged by bad programming code.
N.B: The changes on my SGE are circled by the tag [LT], it will easy to find for you.

I hope the git repository solution is going to settle, I really hate the fork of fork or multiple fork and the dispersion of human resources that it generates.
I am looking for financial solutions like « crowdfunfing » for hosting, I keep an eye on the forum of Son of Grid Engine, as much finance the original if necessary.
Think about an non cloud hosting, to avoid being trapped ex: github fee ==> Microsofts, or sourceforge.
Long live to Son of grid engine.

note aux développeurs SGE [FR]
Je suis un Ingénieur systèmes, je n’ai pas la prétention d’être un bon développeur, je n’ai pas le vulgum de la connaissance, mais j’essaie d’être le plus stricte possible, mes antécédents militaires informatiques y sont pour quelque chose.
c’est pour ça que je n’apprécie pas trop C++, basic, et perl, MongoDB etc…, j’ai trop du lutter en mode desater-recovery sur de la récupération de des données non structurées et de remise d’aplomb de code écris avec les pieds.
Les modifications sont cercléess du tag [LT], donc faciles à trouver.

J’espère que la solution du repository git va se décanter, je n’aime pas trop les fork de fork de fork et la dispersion de ressource humaines que ça  génère
Je cherche des solutions financières genre « crowdfunfing », je garde un œil sur le forum de SGE, autant financer l’original si nécessaire
pensez à un hébergement hors cloud pour éviter de se faire piéger par des rachat ex: github ==> Microsofts.
Longue vie a Son of Grid Engine.