Grid (Globus Toolkit) fallant per temps

Globus Toolkit

A la feina disposem d’un grid d’unes 10 màquines per a fer web crawling muntades amb Globus Toolkit per a temes de recerca i estadístiques.

El cas és que últimament el rendiment d’aquest grid en quant a descàrregues de pàgines web estava molt per sota dels tases esperades. Com a administrador d’aquest grid, vaig seguir l’opció més usual per a fer troubleshooting: Revisar manuals, forums, etc… fins la sacietat per tal d’entendre el problema:

error: the server sent an error response: 425 425 Can't open data connection.
data_connect_failed() failed: an authentication operation failed

Després de revisar els scripts que generen aquest error per tal d’aïllar el problema, em vaig trobar amb la comanda que generava el missatge d’error anterior:

globus-job-run

Permet executar comandes a nodes del grid… qualssevol invocació amb aquesta comanda fallava.

Tenint en compte que Globus Toolkit és un software que funciona amb certificats digitals per tal de gestionar totes les seves accions amb seguretat, vaig pensar que valia la pena revisar-los… al cap i a la fi, el component més complex és el que acostuma a fallar amb més freqüència, no ? :)

Doncs després d’una bona estona fent probes amb un entés en Globus del BSC al costat (gràcies Jorge !), ens vem adonar que es tractava d’un problema de sincronització horària !!! Tant els nodes com la consola rebutjavem l’execució de jobs perque els arribaven amb dates incorrectes (futures, per exemple).

Tant els nodes com la consola central, no estaven sincronitzats a l’hora correcta. Va ser qüestió de llençar el dimoni NTPD per a cada un dels nodes *i* a la consola i tot va passar a anar com la seda… momentàniament.

La consola central tenia greus problemes per a mantenir el sincronisme amb servidors NTP externs: el rellotge propi de la màquina divergia massa ràpid per tal de mantenir l’hora local amb precisió. Finalment, després de fer una mica de recerca, el flag “notsc” aplicat al grub (menu.lst) ha salvat el dia.