PaaS
Componenti e Servizi
PRISMA è stato progettato secondo un’architettura modulare basata su tecnologie open source, interoperabili e compatibili con i principali standard internazionali. Accanto a un elevato numero di componenti progettati e sviluppati ad-hoc, la piattaforma PaaS utilizza anche tecnologie leader di mercato (Cloudify, Puppet, Zabbix), opportunamente integrate e ottimizzate per gli ambiti della PA.
I Componenti


Il PaaS PRISMA è costituito dai seguenti componenti:
- UI layer (User Interface): fornisce una web console per la gestione dei servizi attivati dall’utente (lista dei servizi, risorse consumate da ciascun servizio, performance, costi) e per la gestione della piattaforma da parte dell’amministratore.
- Business Layer: gestisce l’autenticazione (mediante SSO), l’accounting e le comunicazioni con l’orchestrator. Interagisce con il DAL (Data Access Layer) per la persistenza dei dati di autorizzazione;
- Orchestrator: si occupa di orchestrare i flussi tra i diversi componenti della piattaforma PRISMA;
- PaaS Deployment Layer (Cloudify): ha in carico il deploy delle applicazioni e il loro ciclo di vita. Per ciascun servizio, viene creata una ricetta contenente gli elementi di cui si compone il servizio, la quale viene eseguita per il provisioning del servizio stesso.
- Pillar per l’allocazione di servizi IaaS: fornisce le API per l’esecuzione di servizi quali Heat (OpenStack), CloudFormation, EC2, per consentire l’allocazione di risorse IaaS;
- Monitor Aggregator Platform: si tratta di un modulo per il monitoraggio dei componenti PaaS e dei servizi “as a Service” allocati agli utenti. Tale modulo si basa sui servizi di Zabbix, Nagios, Ceilometer. Componenti e servizi godono di un agent di monitoraggio che invia le metriche al modulo di aggregator;
- Billing Engine: modulo sviluppato ad-hoc per il calcolo dei costi dei servizi;
- Lifecycle Engine: modulo basato su Puppet per la gestione delle configurazioni dei servizi in post-deploy. Ciascun servizio ha a bordo un agent che consente l’accesso in remoto da parte del server master.
Tutti i componenti della piattaforma sono accessibili via API REST.
I Servizi
Il PaaS PRISMA fornisce i seguenti servizi utente “as a Service”:
- application deployment: consente di caricare un’applicazione sulla piattaforma PRISMA e di accedervi mediante l’URL restituito;
- queue system: servizio per la gestione delle code;
- desktop: viene fornito un ambiente desktop remoto tramite webUI. Il servizio viene implementato mediante lo strumento Ulteo Open Virtual Desktop;
- business process management: fornitura di un motore di BPM. lo strumento utilizzato è jBPM;
- personal storage: servizio di storage (Dropbox-like);
- business application management: per il monitoraggio as a service implementato con Zabbix;
- messaging (sms+mail): servizio per l’invio di sms ed email da parte di utenti e applicazioni;
- business intelligence: servizio per l’analisi dei dati ai fini di business intelligence. Lo strumento utilizzato è Pentaho.
- open data: servizio per la fornitura di gatering, enrichment e fetching di Open Data;
- database: fornisce servizi DBMS relazioni e No-SQL;
- HPC (High Performance Compute): servizio per l’esecuzione di applicazioni ad alta richiesta di CPU.

PaaS PRISMA
Caratteristiche in dettaglio

Caratteristiche in dettaglio

Il PaaS PRISMA offre le seguenti caratteristiche principali:
- Check automatici e continui della sicurezza di servizi e applicazioni
- IdP interno per il SSO;
- Certification Authority interna;
- Raccolta e persistenza log;
- Accounting e Billing;
- PRISMA watch;
- gestione degli SLA;
- Architettura ad alta affidabilità;
- workflow engine di tipo stateful
- orchestrazione scalabile;
- aggregazione dati di monitoraggio;
- RESTfull API per l’accesso alle funzionalità del PaaS.