Pagina 1 di 1

migrazione di processi

Inviato: mer 19 nov 2008, 12:50
da lamarozzo
Ciao a tutti. Ho da sottoporvi un problema forse anche abbastanza complesso. :roll:

Ho due computer identici (stesso HW, stesso SW). Io vorrei avere la possibilità di spostare un processo dal primo al secondo computer.

Qualunque suggerimento è ben accetto. Per adesso supponiamo che i programmi girino solamente in memoria (nessun accesso al disco), non usano porte, pipe o altre cose sofisticate, se volete non scrivono neanche su standard output.

L'idea sarebbe poter creare una sorta di checkpoint del processo, una sua "immagine" da riversare su file. Poi il file viene spostato sull'altro computer ed il processo magicamente riavviato.

So che è qualcosa che si può fare. Ci sono in giro delle soluzioni di clustering SSI che migrano i processi in questo modo. Se conoscete un programma o una libreria per implementare una soluzione di questo tipo sarebbe fantastico.

O ancora se avete una qualunque soluzione, per quanto traballante ed insicura fatemi sapere. Ad esempio una soluzione che mi era venuta in mente era quella di avviare il processo all'interno di una macchina virtuale (tipo XEN) e poi migrare direttamente tutta la macchina virtuale.

Grazie dell'aiuto.

Re: migrazione di processi

Inviato: mer 19 nov 2008, 19:38
da TheDreamingMind
credo che dovresti verificare openMosix,

credo che faccia al caso tuo

Re: migrazione di processi

Inviato: mer 19 nov 2008, 19:55
da lamarozzo
openMosix per quanto ottimo è un progetto ufficialmente chiuso. E' fermo al kernel 2.4. In questi giorni sto provando Kerrighed ma i processi muoiono misteriosamente durante la migrazione da una macchina all'altra. Ci sarebbe anche openSSI ma anche quello mi sembra un progetto fermo da un paio di annetti.
Resta Mosix (la versione commerciale) ma ho mandato un'email per richiedere la versione di valutazione e m'è tornata indietro perchè l'indirizzo non è valido :shock:

Ho come l'impressione che l'SSI stia morendo a favore della virtualizzazione.

Per questo chiedevo se c'era un modo di farlo manualmente, che poi ai programmi e demoni di gestione del cluster ci avrei pensato io. In mancanza di soluzioni passerò a XEN anche se l'idea di dover caricare un intero sistema operativo per ciascun processo non è proprio esaltante :?