data placement scheduler ? (cluster) - Logiciels - Linux et OS Alternatifs
Marsh Posté le 26-07-2011 à 13:48:08
http://linuxfr.org/forums/g%C3%A9n [...] 3%A9-libre
Je ne connais pas Condor, quel en est t on utilisation dans la pratique ? Dédié au calcul ou pouvant être générique ?
Marsh Posté le 26-07-2011 à 15:02:23
gug42 a écrit : http://linuxfr.org/forums/g%C3%A9n [...] 3%A9-libre |
Il est générique, on lui envoie n'importe quoi en C.
Marsh Posté le 26-07-2011 à 18:20:55
Une autre solution serait de mettre en place une machine tampon, avec du gros RAID 0 sur du SSD, avec une réplication rsync "pépère" entre ce RAID de SSD et le stockage du NAS.
Ou pourquoi pas passer par un RAMdisk "physique" (descendants de gigabyte iram) ou "logiciel" (une machine avec beaucoup de RAM, genre 24Go (oui c'est beaucoup pour moi, mais peu pour d'autres , avec 23Go dédié en RAMdisk et 1Go pour l'OS)
Marsh Posté le 26-07-2011 à 21:52:44
bardiel a écrit : Une autre solution serait de mettre en place une machine tampon, avec du gros RAID 0 sur du SSD, avec une réplication rsync "pépère" entre ce RAID de SSD et le stockage du NAS. |
Le frontend monte à 32GB de RAM, et on doit encore racheter plusieurs terabyte à ajouter au NAS. Ils ont des fichiers de fou à transférer. J'ai déjà proposé les ramdisk mais c'est bien trop léger pour eux. Je peux pas simplement élargir les bottleneck, je suis forcé de scheduler si on veut pas perdre des process en cours de route à cause de timeout NFS.
stork n'est pas mal, mais il me force un user STORK_ANONYMOUS_USER sur tous les fichiers transférés. Et pour configurer une authentification par certificat, bonjour l'angoisse, la doc n'est pas à jour et il y avait des fautes dans ce qui était déjà dispo.
Je pensais qu'il y avait davantage de solutions standards à ce problème.
Marsh Posté le 26-07-2011 à 22:51:45
Hmm vu les tailles que tu indiques, et ton besoin d'une authentification, il faut passer d'une structure "NAS/serveur de fichiers" (ou DAS) à entrée unique (ton NAS) vers du SAN avec plusieurs sous-systèmes comme point d'entrée.
Ce point d'entrée constituerait un petit cluster (genre 4-5 machines, avec des SSD en RAID et éventuellement sur du glusterfs) ou une baie iSCSI qui sera dédié à cette seule fonction et sera "relativement" ultra-rapide.
Mais bon ce genre de produit c'est un peu à la fois :
- de la science-fiction vu le prix, mais plus simple à mettre en place qu'un ordonnanceur
- du bricolage par rapport à un "vrai" SAN en iSCSI ou du SAS
L'avantage d'un vrai SAN étant qu'il est évolutif.
L'avantage d'un ordonnanceur étant que ce genre de technique va sûrement revenir, avec de plus en plus de systèmes "dans le nuage" (que je ne considère que comme un descendant bâtard des bons vieux mainframes des années 70-80 avec juste un écran (tactile)/clavier au niveau de l'utilisateur)
Marsh Posté le 27-07-2011 à 17:40:46
Bah de toute façon l'x86 est en train d'intégrer beaucoup de techno des mainframes ..
bardiel : je comprends pas bien le coté science-fiction ? c'est des archi assez courantes pourtant me semble-t-il.
roscocoltran : Ton problème de base, est ce bien la capacité de transférer des fichiers que doivent se partager l'ensemble des noeuds ? Quel est le cheminement de la plate-forme ?
Serait ce celui-ci : "node1" pond le fichier "file1" ; "node2" pond "file2" ; "node3" attend "file1 et 2" pour pondre "file3" ? Bref explique un poil
Avec un SAN tu pourrais envisager plusieurs solutions, voir les mixer :
- File système partagé style gfs2/ocfs2 (!! dégradation des performances importantes : divisée par 2 par rapport à de l'ext4 !!)
- Clônage ou COW de LV à l'intérieur de la baie
- Possibilité d'avoir des LUN en écritures pour certains noeud et uniquement en lecture pour d'autres
Tu pourrais déjà monté ta baie en disque SAS 15ktpm et éventuellement des SSD ..
A voir en fonction du coût de chaque solution ...
Quelle est ta volumétrie globale et par fichiers ?
Marsh Posté le 27-07-2011 à 18:03:43
Ah d'ailleurs si vous connaissez un bon gestionnaire de charge (par processus avec capacité de les déplacer) je suis preneur xD
OpenMosix a malheureusement été arrêté ... il aurait été parfait pour mon utilisation !
Marsh Posté le 27-07-2011 à 20:35:58
bardiel a écrit : de la science-fiction vu le prix |
Marsh Posté le 28-07-2011 à 17:13:38
gug42 a écrit : Bah de toute façon l'x86 est en train d'intégrer beaucoup de techno des mainframes .. |
C'est un peu ça, mais ça peut varier, je préfère trouver une solution générique par ordonnanceur qui ne me pousse pas à trouver le nouveau bottleneck de la semaine
gug42 a écrit : Avec un SAN tu pourrais envisager plusieurs solutions, voir les mixer : |
Ouais mais là je me heurte ensuite vers des limite de bande passante réseau. Non, il me faut vraiment un ordonnanceur.
Marsh Posté le 28-07-2011 à 17:18:08
La beauté de la chose c'est que tu n'utilises pas le réseau si tu procèdes par clône/mappage/démappages des lun : en gros tu fais bouger des LV vers les serveurs xD
FS partagés : à voir si c'est vraiment impossible
Puis si c'est le réseau : 10Gbps eth en général ca calme la vitesses des disques xD
Marsh Posté le 26-07-2011 à 13:14:14
Salut,
Bon j'ai un cluster qui fait tourner des process sur mes noeuds via condor. Notre bottleneck, c'est la lecture et l'écriture de gros fichiers depuis chaque noeud vers notre unique NAS. Je voudrais faire passer chaque opération de copie via un scheduler et que chacune s'exécute l'une après l'autre. Ca s'appelle du "data placement" il me semble.
J'ai testé stork qui ne me convient pas vraiment. Il répond exactement à la description mais il manque de flexibilité et surtout de documentation. En plus il a cessé d'être supporté par condor ce qui ne me semble pas bon signe.
J'ai regardé globus et essayé de manier l'engin, mais j'ai l'impression de flinguer une fourmi avec un canon de 88.
Est-ce que vous connaissez un programme simple qui fait de genre de chose, et à qui on puisse soumettre une opération de copie via un wrapper standard ?
---------------
"Your god is too small", Giordano Bruno, 1548 - 1600