Il progetto
GRID.IT è stata una delle principali iniziative italiane di ricerca sul Grid Computing dei primi anni 2000, finanziata dal FIRB (Fondo per gli Investimenti della Ricerca di Base) del MIUR e diretta dal prof. Domenico Laforenza presso l’ISTI-CNR di Pisa (Istituto di Scienza e Tecnologie dell’Informazione “Alessandro Faedo”). Il progetto ha contribuito a costruire la prima infrastruttura nazionale di griglia computazionale per la ricerca scientifica, posando le basi di quello che sarebbe diventato il calcolo distribuito su larga scala in Italia.
Il ruolo di noze
Nell’ambito delle iniziative legate alle piattaforme abilitanti per griglie computazionali, noze ha partecipato come partner operativo del progetto diretto dal prof. Laforenza per conto di ISTI-CNR, curando l’intero ciclo di vita: dalla progettazione all’implementazione architetturale, fino alla messa in opera del portale istituzionale grid.it. Quattro componenti chiave:
1. Portale web del progetto
Sviluppo del portale grid.it come punto di accesso ai contenuti, ai servizi e alla community. Architettura basata sullo stack Open Source rigoroso che noze già usava all’epoca: Linux Trustix/RedHat (serie 2.4.x), Apache (proxy e load-balancing), Zope (application server object-oriented multipiattaforma), Postfix per la posta elettronica sicura. Linguaggi di sviluppo: Python e Perl.
Sopra a Zope, noze ha installato il proprio prodotto InFlow, un CMS sviluppato ad hoc da noze con: generazione dinamica delle pagine, workflow di approvazione, ricerca full-text e gestione di contenuti su un database object-oriented (OODBMS).
2. Certification Authority — OpenCA
Realizzazione e gestione della CA del progetto GRID.IT — l’infrastruttura PKI che emetteva i certificati X.509 necessari per l’autenticazione di nodi e utenti della griglia computazionale, indispensabile per qualsiasi grid Globus-based dell’epoca. Implementata su OpenCA, con autenticazione, autorizzazione e directory delegate a OpenLDAP, in piena aderenza alle direttive AIPA sulla sicurezza.
3. Web Services — scouting, uso, deploy
Componente progettata e implementata interamente da noze: un sistema avanzato per lo scouting, l’uso e il deploy di Web Services, essenziale per rendere ogni nodo della griglia un endpoint interoperabile e dinamico all’interno dell’infrastruttura. Questa parte è stata uno dei contributi più caratteristici di noze al progetto, abilitando la composizione di servizi distribuiti su nodi grid eterogenei.
4. Concessione del dominio grid.it
Registrazione e gestione del dominio internet grid.it per il progetto.
Accessibilità e usabilità
Interfaccia utente e architettura dei contenuti progettate secondo gli standard rigorosi del W3C (Web Content Accessibility Guidelines 1.0) e delle circolari AIPA. Adozione del principio di separazione tra contenuto e presentazione tramite Cascading Style Sheets, con pieno supporto a screen reader, browser testuali e tecnologie assistive per utenti con disabilità fisiche o sensoriali.
Il team noze
Il team noze coinvolto nel progetto copre le aree di architettura e integrazione, project management, coordinamento con il committente, UI e frontend Zope con attenzione all’accessibilità, strutture dati e autenticazione, sistemi, sicurezza e LDAP.
Tecnologie
Stack rigorosamente Open Source end-to-end:
- Sistema operativo: Linux Trustix / RedHat (serie 2.4.x)
- Web/application server: Apache + Zope
- Linguaggi: Python, Perl
- CMS: InFlow (sviluppo noze su Zope, con OODBMS, workflow, full-text search)
- PKI / Certification Authority: OpenCA
- Directory & auth: OpenLDAP
- Mail server: Postfix
- Web Services: stack di scouting/uso/deploy progettato da noze
Licenze: GNU GPL, GNU LGPL, Python Software Foundation License, zlib/libpng, Apache, ZPL Zope Public License.