Mondi su mondi, sistemi di sistemi.

Xgrid Leopard: un’occhiata a Scoreboard

Il rila­scio di Leopard com­prende anche la nuova ver­sione di Xgrid che, com’è facile imma­gi­nare, si è evo­luta sen­si­bil­mente rispetto alla pre­ce­dente e comin­cia anche ad essere uti­liz­zata per altri pro­dotti di Apple, come Podcast Producer, su cui un giorno dovremo ritor­nare.  Tuttavia la cosa vera­mente inte­res­sante di Xgrid 2 è Scoreboard.

Lo scopo di Scoreboard è sem­plice: for­nire un sistema per distri­buire in modo selet­tivo i job di Xgrid. L’architettura per rag­giun­gere que­sto scopo è un po’ più com­plessa da spiegare.

Prima di tutto serve un qual­che tipo di cri­te­rio per sele­zio­nare i nodi di desti­na­zione dei job. In Xgrid que­sto cri­te­rio è un sem­plice script di shell, che Scoreboard usa per cal­co­lare il ran­king di ogni nodo. Questo script, nella ter­mi­no­lo­gia di Xgrid, è un Agent Ranking Tool (ART).

Alla sot­to­mis­sione di un job, for­nendo un ART, il con­trol­ler lo ese­guirà su ogni nodo e, in base al risul­tato, deci­derà a quali nodi far ese­guire il job e con quale prio­rità. Il risul­tato è un sem­plice valore nume­rico e se è uguale a zero il nodo viene scar­tato. Sta ovvia­mente a chi scrive l’ART il com­pito di pro­durre dei numeri sensati.

Gli ART pos­sono essere com­bi­nati pro­du­cendo un risul­tato com­ples­sivo che è il pro­dotto dei sin­goli risul­tati. Usando la mol­ti­pli­ca­zione diventa banale pre­ser­vare la pos­si­bi­lità di esclu­sione dei nodi: basta che uno degli ART dia come risul­tato zero.  Ma non è finita qui! È pos­si­bile anche fil­trare i nodi in base al valore del risul­tato: ad es. sele­zio­nando i nodi con un pun­teg­gio supe­riore a 1.000.

Trovo quest’idea molto inte­res­sante e anzi credo sia uti­liz­za­bile anche in altri sce­nari. Ad es. potremmo sfrut­tare l’infrastruttura che Xgrid mette a dispo­si­zione per distri­buire aggior­na­menti, con­fi­gu­ra­zioni in maniera selet­tiva e robu­sta: basta legare il pun­teg­gio dell’ART alla pre­senza o meno dell’aggiornamento che stiamo distri­buendo, evi­tando quindi la riap­pli­ca­zione dell’aggiornamento nel caso in cui doves­simo ripe­tere la procedura.

Links utili:

Per proseguire

Commenti e trackback sono disabilitati.