160 likes | 245 Views
AMACA [ A FS M emorize A nd C heck A pplication]. Un tool di analisi storica per OpenAFS a supporto di ENEAGRID Alessio Rocchi. AMACA – Target entities. Andrew File System: file system distribuito su WAN Offerta di servizi basata su due process-groups principali File Services
E N D
AMACA[AFS Memorize And Check Application] Un tool di analisi storica per OpenAFS a supporto di ENEAGRID Alessio Rocchi
AMACA – Target entities • Andrew File System: file system distribuito su WAN • Offerta di servizi basata su due process-groups principali • File Services fileserver, volserver, salvager • DB Services vlserver, ptserver (kaserver → fakeka) • Supervisione: BOS server • „Oggetti“ informativi: Servers, Partizioni e Volumi
AFS per l'accesso distribuito alle informazioni • Strumento integrato per il monitoraggio dello stato delle componenti AFS AMACA – Scenario operativo
AMACA – generalità • Software a due componenti principali • INDEXER [Former developer: L.Giammarino (Caspur)] • WEB APPLICATION • Attualmente in produzione su 43p.frascati.enea.it e accessibile dall'application portal rs2ced • Manuale: http://www.cresco.enea.it/LA1/cresco_sp12_caspur/
AMACA – Metriche SW • Metriche di prodotto: • ∼ 5000 LOC su 24 files • Mean Running Time: E(TIndexer)≃3.5 min. E(TWebApp)≃? • COMPLESSITA' STRUTTURALE (Metrica di McCabe) • E[V(G)WebApp]≃E[V(G)Indexer]≃5 • Raccomandato E[V(G)]<10! • ROBUSTEZZA • Mean Failure Rate: FRIndexer=Number of Failures/MRT=0.01
AMACA – Indexer (1) • Applicazione PERL che indicizza stato e consistenza dell'architettura AFS • Basata sulle OpenAFS APIs di Norbert Gruener http://search.cpan.org/~nog/AFS-2.4.0 • Esecuzione cron-driven o user-driven • DBMS MySQL per lo storage dei risultati dell'analisi di nodi, processi, servizi,... • Storicizzazione eventi occorsi nell'intero filesystem • Data Mining agevole per ottenere risultati altrimenti accessibili con difficoltà
AMACA – Indexer (2) • Differenziazione dello storage • Un DB in versione „production“ per le esecuzioni cron-driven • Un DB con repliche tabellari dinamiche user-aware per le esecuzioni user-driven via web • Ogni esecuzione differenzia le informazioni in base ad un ID univoco chiamato snapshot
Applicazione PHP/AJAX che fornisce un comodo strumento di interrogazione dei risultati elaborati dall'indexer AMACA – Web Application
AMACA – Autenticazione e security • Autenticazione basata sulle credenziali AFS • Meccanismi di controllo per login concorrente basato su comunicazione IPC con PAGsh. • PTS membership check-up per operazioni non di sola lettura (l'esecuzione del modulo di analisi è subordinata all'appartenenza dell'utente a fra-eneagrid-amaca). • Security: • OpenSSL (HTTP transactions) • Mcrypt library (crittografia RSA delle informazioni usate dal web client per il mantenimento dello stato)
AMACA – Interfaccia funzionale (1) • 4 gruppi di informazioni • Stato globale del sistema (sync site, stato occupazione volumi/partizioni, Max volID) • Snapshot/site customization (fornisce l'accesso a tutti gli slices, e restringe la visualizzazione a un sito specifico) • Allarmi (visualizza situazioni patologiche individuate all'atto della creazione dello snapshot) • Menu di navigazione
AMACA – Ulteriori allarmi • Volumi readonly mai rilasciati • Volumi appartenenti a {user. / p.} senza backup • Volumi duplicati • Volumi RO giacenti su partizioni/server differenti rispetto ai rispettivi parent • Server con indirizzi non risolvibili
AMACA – Lista delle differenze - Voce di menu list differences - E' simile a un „diff“ applicato a partizioni, server e volumi su snapshot differenti.
AMACA – Altre funzionalità • Indicizzazione via web • Possibile agendo sulla Perl-icon • Realizzazione atomica via PAG shell • User-friendly features • Esecuzione di comandi Just-In-Time (vos ex,...) • Facilities per la copia di dati omogenei (volumi incolonnati in report tables, ...), e per il miglioramento della visualizzazione su report lunghi.
AMACA – stato dell'arte • Features già implementate in alpha-version • Indicizzazione di celle esterne • Features da poco integrate e in fase di test • Analisi temporale con parametri custom • Analisi partizioni/volumi on demand • Features in fase di progettazione • Mount points
AMACA – Conclusioni • Beta testers are welcome! • Fase di produzione ancora da considerare in beta: occorre testare il software per garantire maggiore robustezza e coprire bugs eventualmente ancora non mappati. • Usability improvement • Segnalazioni/suggerimenti/bug reports alessio.rocchi@frascati.enea.it