Versione 2.4. » Connectors Manual. Marzo 2016 Author Tecnoteca srl www.tecnoteca.com ITA. www.cmdbuild.org



Documenti analoghi
CMDBuild. Open Source Configuration and Management Database. External Connectors

CMDBuild. Open Source Configuration and Management Database. External Connectors

CMDBuild Significato di una soluzione open source per la gestione del CMDB

use ready 2 La soluzione open source enterprise preconfigurata per l'it Asset Management Tecnoteca Srl

Al giorno d oggi, i sistemi per la gestione di database

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

Software di gestione della stampante

Presentazione e dimostrazione di utilizzo

Motorola Phone Tools. Guida rapida

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

GovPay 2.0. Manuale Installazione

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Implementazione di MVC. Gabriele Pellegrinetti

Manuale LiveBox WEB ADMIN.

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Regione Toscana. ARPA Fonte Dati. Manuale Amministratore. L. Folchi (TAI) Redatto da

Installazione di GFI Network Server Monitor

Online Help StruxureWare Data Center Expert

Preparazione di una immagine di Windows XP per la distribuzione

Corso di Informatica

Installazione del software Fiery per Windows e Macintosh

Sharpdesk V3.3. Guida all installazione Versione

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

ALICE AMMINISTRAZIONE UTENTI WEB

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli)

Dynamic 07 -Software per la lettura ottica e data capture. G.Q.S. Srl Global Quality Service Via Bernini, 5/7 Corsico (MILANO)

Software di controllo per le denunce retributive e contributive individuali mensili - Ver.1.0

PIATTAFORMA DOCUMENTALE CRG

OmniAccessSuite. Plug-Ins. Ver. 1.3

Manuale LiveBox WEB ADMIN.

Progetto: ARPA Fonte Dati. ARPA Fonte Dati. Regione Toscana. Manuale Amministratore

Gestione delle informazioni necessarie all attività di validazione degli studi di settore. Trasmissione degli esempi da valutare.

SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

FidelJob gestione Card di fidelizzazione

Corso di Amministrazione di Reti A.A. 2002/2003

Scheda di Notifica Manuale d'uso

Il web server Apache Lezione n. 3. Introduzione

NOTE OPERATIVE. Prodotto Inaz Download Manager. Release 1.3.0

Tabelle di riferimento Pulsanti Inserire documento Predisposizione doc Approvazione Doc Numerazione Doc Pubblicazione Albo Webservice

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Guida all installazione di Easy

I MODULI Q.A.T. PANORAMICA. La soluzione modulare di gestione del Sistema Qualità Aziendale

Manuale Operativo per la firma digitale

IBM SPSS Statistics per Windows - Istruzioni di installazione (Licenza per sito)

Specifiche Tecniche e Funzionali Applicativo DIAGNOS PLUS (09/2015)

SOMMARIO... 3 INTRODUZIONE...

Lifephone. Introduzione. Database. Sito

Capitolo 1 Installazione del programma

Guida all Installazione del ProxyFatturaPA

CONTENT MANAGEMENT SYSTEM

DOCFINDERWEB SERVICE E CLIENT

Guida alla registrazione on-line di un NovaSun Log

BDCC : Guida rapida all utilizzo

Plugin di integrazione con Wordpress

Installazione e caratteristiche generali 1

Manuale Operativo per la firma digitale

Il Software. Il software del PC. Il BIOS

Il software di gestione immobiliare più facile da usare. Modulo Web v5.2.

Il Sistema Operativo (1)

Acronis Universal Restore

Guida Google Cloud Print

SERVICE BROWSER. Versione 1.0

5.2 UTILIZZO DELL APPLICAZIONE

PROXYMA Contrà San Silvestro, Vicenza Tel Fax

il nuovo SOFTWARE per la gestione degli adempimenti e delle pratiche del moderno Studio del Consulente del Lavoro e dell Ufficio del personale delle

Introduzione a Dev-C++

COMPA Bologna 7/8/9 novembre ITIL / CMDBuild: un esempio di progetto di BPR e riuso in ambito ICT

Regione Toscana - Giunta Regionale

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

Specifiche Tecnico-Funzionali

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

19. LA PROGRAMMAZIONE LATO SERVER

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

MANUALE DI UTILIZZO: INTRANET PROVINCIA DI POTENZA

Sage Start Archivio file Guida. Dalla versione

La ricerca delle informazioni nei siti web di Ateneo con Google Search Appliance Progetto, implementazione e sviluppi

Quick Guide imagic. ATTENZIONE Prima di collegare l alimentazione inserire la SD CARD che si trova dentro alla scatola (vedi istruzioni all interno)

PSG Table Builder Manuale Utente. PSG TABLE BUILDER Manuale Utente

4.1 FAX Sollecito consegne via (Nuova funzione)

Registratori di Cassa

CMDBuild. Open Source Configuration and Management Database. Technical Manual

Guida Google Cloud Print

Guida Google Cloud Print

Uso delle basi di dati DBMS. Cos è un database. DataBase. Esempi di database

Capitolo 4 Pianificazione e Sviluppo di Web Part

Portale Suap SPORVIC2 Manuale Prerequisiti tecnici di sistema

Applicazione JobScheduler su DB SQL Milano, lì 14/09/2009

MANUALE UTENTE. P.I.S.A. Progetto Informatico Sindaci Asl

RepairsLab Manuale Utente. RepairsLab. Manuale Utente

Software di interfacciamento sistemi gestionali Manuale di installazione, configurazione ed utilizzo

Sistema G.U.S. Capitolato di Gara ALLEGATO A

Protocollo Informatico (D.p.r. 445/2000)

Le Basi di Dati. Le Basi di Dati

Corso di Access. Prerequisiti. Modulo L2A (Access) 1.1 Concetti di base. Utilizzo elementare del computer Concetti fondamentali di basi di dati

Guida di Pro Spam Remove

Transcript:

Versione 2.4» Marzo 2016 Author Tecnoteca srl www.tecnoteca.com ITA www.cmdbuild.org

No part of this document may be reproduced, in whole or in part, without the express written permission of Tecnoteca s.r.l. CMDBuild leverages many great technologies from the open source community: PostgreSQL, Apache, Tomcat, Eclipse, Ext JS, JasperReports, IReport, Enhydra Shark, TWE, OCS Inventory, Liferay, Alfresco, GeoServer, OpenLayers, Prefuse, Quartz, BiMserver. We are thankful for the great contributions that led to the creation of that products. CMDBuild è un prodotto di Tecnoteca S.r.l. che ne ha curato la progettazione e realizzazione, è maintainer dell'applicazione e ne ha registrato il logo. Al progetto ha anche partecipato come committente iniziale il Comune di Udine Servizio Sistemi Informativi e Telematici. CMDBuild è rilasciato con licenza open source AGPL (http://www.gnu.org/licenses/agpl-3.0.html) CMDBuild è un marchio depositato da Tecnoteca Srl. In tutte le situazioni in cui viene riportato il logo di CMDBuild deve essere esplicitamente citato il nome del maintainer Tecnoteca Srl e deve essere presente in modo evidente un link al sito del progetto: http://www.cmdbuild.org. Il marchio di CMDBuild : non può essere modificato (colori, proporzioni, forma, font) in nessun modo, nè essere integrato in altri marchi non può essere utilizzato come logo aziendale nè l'azienda che lo utilizza può presentarsi come autore / proprietario / maintainer del progetto, non può essere rimosso dalle parti dell'applicazione in cui è riportato, ed in particolare dall'intestazione in alto di ogni pagina. Il sito ufficiale di CMDBuild è http://www.cmdbuild.org Pag. 2

Sommario Introduzione... 4 Documentazione disponibile... 5 Interoperabilità... 6 Alimentazione del CMDB... 6 Caratteristiche generali di un connettore con sistemi esterni...6 Soluzioni disponibili nel sistema CMDBuild...7 Scheduler... 7 Wizard Connector... 9 Generalità... 9 Modalità di funzionamento... 9 Modalità di configurazione... 9 Licenza di utilizzo... 10 Basic Connector... 11 Generalità... 11 Modalità di funzionamento... 11 Operazioni propedeutiche alla configurazione... 12 Modalità di configurazione... 13 Esecuzione... 17 Limitazioni di utilizzo... 17 Advanced Connector... 18 Generalità... 18 Modalità di funzionamento... 18 Modalità di configurazione... 20 Esecuzione... 20 Limitazioni di utilizzo... 21... 22 Generalità... 22 OCS Inventory... 23 Active Directory... 31 Nagios GroundWork NetEye... 33 VCenter... 38 Archi... 41 APPENDICE: Glossario...47 Pag. 3

Introduzione Introduzione CMDBuild è una applicazione Open Source finalizzata a supportare la gestione della configurazione degli oggetti e dei servizi informatici in carico al Dipartimento ICT di una organizzazione e a guidarne i processi di controllo, eventualmente secondo le best practice ITIL. Gestire un Database della Configurazione (CMDB) significa mantenere aggiornata e disponibile per gli altri processi la base dati relativa agli elementi informatici utilizzati, alle loro relazioni ed alle loro modifiche nel tempo. Con CMDBuild l'amministratore del sistema può costruire ed estendere autonomamente il proprio CMDB (da cui il nome del progetto), modellandolo su misura della propria organizzazione tramite un apposito Modulo di Amministrazione che consente di aggiungere progressivamente nuove classi di oggetti, nuovi attributi e nuove tipologie di relazioni. E' anche possibile definire filtri, viste e permessi di accesso ristretti a righe e colonne di ciascuna classe. CMDBuild è in grado di fornire un completo supporto all'adozione delle best practice ITIL, ormai affermatesi come "standard de facto", non proprietario, per la gestione dei servizi informatici secondo criteri orientati ai processi. Tramite un apposito sistema di gestione dei workflow è possibile definire in modo visuale, con un editor esterno, nuovi processi operanti sulle classi modellate nel database, importarli in CMDBuild ed eseguirli secondo i flussi previsti e con gli automatismi configurati. E' disponibile un task manager integrato nell'interfaccia utente del Modulo di Amministrazione che consente di gestire in background diverse tipologie di operazioni (avvio di processi, ricezione e invio di mail, esecuzione di connettori) e di controlli sui dati del CMDB (eventi sincroni e asincroni) a fronte delle quali eseguire notifiche, avviare workflow ed eseguire script. CMDBuild consente la stampa di report tramite il motore open source JasperReports, sia di tipo tabulare prodotti tramite un wizard interno, che di maggiore complessità ottenibili importando template disegnati tramite un apposito editor visuale esterno. Possono essere poi definite delle dashboard costituite da grafici che mostrino in modo immediato la situazione di alcuni indicatori dello stato corrente del sitema (KPI). Grazie all'integrazione con il diffuso sistema documentale open source Alfresco è inoltre possibile allegare documenti, immagini, video ed altre tipologie di file alle schede archiviate in CMDBuild. E' anche possibile utilizzare funzionalità GIS per il georiferimento degli asset e la loro visualizzazione su una mappa geografica (servizi mappe esterni) e / o sulla planimetria di un ufficio (server locale GeoServer) e funzionalità BIM per la visualizzazione di modelli 3D in formato IFC. Sono poi inclusi nel sistema un webservice SOAP ed un webservice REST, utili per implementare soluzioni di interoperabilità con architettura SOA. CMDBuild comprende di base due framework denominati Basic Connector e Advanced Connector, che tramite il webservice SOAP sono in grado di sincronizzare le informazioni registrate nel CMDB con fonti dati esterne, ad esempio con sistemi di automatic inventory (quali lo strumento open source OCS Inventory) o con sistemi di virtualizzazione o di monitoraggio. Un ulteriore strumento, il CMDBuild GUI Framework, consente invece tramite il webservice REST di pubblicare su portali esterni pagine web personalizzate in grado di interagire con il CMDB. E' infine disponibile una interfaccia utente ottimizzata per strumenti mobile (smartphone e tablet), implementata come app multipiattaforma (ios, Android) e anch'essa collegata a CMDBuild tramite il webservice REST. Pag. 4

Introduzione Documentazione disponibile Il presente manuale è dedicato alla configurazione di connettori tramite cui sincronizzare in CMDBuild, nelle diverse modalità tecniche attualmente disponibili, informazioni gestite in applicazioni e database esterni. Sono disponibili sul sito di CMDBuild (http://www.cmdbuild.org) ulteriori specifici manuali dedicati a: system overview ("Overview Manual") utilizzo del sistema ( User Manual ) amministrazione del sistema ( Administrator Manual ) installazione e gestione tecnica del sistema ( Technical Manual ) configurazione del workflow ( Workflow Manual ) utilizzo del webservice per l'interoperabilità con sistemi esterni ( Webservice Manual ) Pag. 5

Interoperabilità Interoperabilità Alimentazione del CMDB La gestione dei servizi IT in enti ed aziende di medie o grandi dimensioni è necessariamente effettuata con l'ausilio di più sistemi informatici specializzati che devono poter cooperare nella gestione delle proprie attività e delle proprie informazioni. La raccolta ed il controllo manuale delle informazioni gestite nel CMDB possono introdurre problemi di ritardo o imprecisione nell'aggiornamento dei dati ed è quindi conveniente, ove possibile, aggiornarle in modalità automatica. Diventa quindi importante poter configurare connettori con sistemi esterni per sincronizzare in CMDBuild (sistema CMDB centrale) dati la cui gestione principale ("master") avviene su altre applicazioni specialistiche, fra cui ad esempio: sistemi di automatic inventory, per confronto automatico dei dati tecnici degli asset e del software installato e gestione delle differenze rilevate (OCS Inventory o altri prodotti) sistemi di controllo (virtualizzazione, ecc), da cui ricavare informazioni sulla configurazione corrente dell'infrastruttura IT sistemi di rilevamento di informazioni relative alla esecuzione di servizi e applicazioni server sistemi di monitoraggio, da cui rilevare malfunzionamenti sistemistici ed avviare workflow di Incident Management directory LDAP, come repository per l'archivio del personale sistemi HR, come soluzione alternativa per ricevere variazioni all'elenco del personale sistemi ERP, per acquisire dati amministrativi (cespiti, fornitori, ecc) Caratteristiche generali di un connettore con sistemi esterni In generale un connettore con sistemi esterni deve essere in grado di: contattare il sistema di interesse (tool di automatic inventory, directory LDAP, ecc), attraverso uno fra i possibili canali di comunicazione (accesso diretto al DB, webservice SOAP, webservice REST, altre API, mail strutturate, file CSV, ecc) accedere alle specifiche informazioni da sincronizzare (lista di asset, lista di persone, ecc), estratte tramite specifiche query SQL oppure chiamate di metodi SOAP oppure utilizzo di API, ecc applicare gli opportuni criteri di mapping fra le informazioni di origine e le corrispondenti informazioni da riportare in CMDBuild, considerando: chiave univoca fonte dati di origine <=> chiave univoca classe CMDBuild entità / informazione fonte dati di origine (ad esempio tabella / colonna database oppure elemento / proprietà restituiti da un metodo SOAP) <=> entità / informazione di destinazione (classe / attributo CMDBuild) eventuali elementi di logica applicativa da applicare nell'ambito dell'operazione di mapping (ad esempio applicazione di regole di aggregazione / disaggregazione di informazioni, esecuzione di operazioni quali log o invio di notifiche, registrazione di informazioni nel sistema esterno, ecc) Pag. 6

Interoperabilità Un connettore potrà poi limitarsi alla sincronizzazione dei dati non aggiornati rispetto al sistema master esterno, oppure potrà sottoporre la necessità di variazione di quelle informazioni ad un processo autorizzativo di Change Management (suggerito per le differenze classificate come critiche ). In una stessa istanza CMDBuild può essere utile attivare più connettori con diversi sistemi esterni, ciascuno con proprie regole di elaborazione e proprie regole di schedulazione. Soluzioni disponibili nel sistema CMDBuild CMDBuild mette a disposizione tre diverse soluzioni per attivare e schedulare connettori di sincronizzazione dati con sistemi esterni: una prima soluzione (Wizard Connector), completamente configurabile da interfaccia utente tramite wizard, che consente di risolvere i casi più semplici in cui le regole di mapping non richiedano una specifica logica applicativa una seconda soluzione (Basic Connector), configurabile tramite il linguaggio di trasformazione XSLT e basata sull'accesso diretto alla fonte dati esterna, che consente di gestire alcuni aspetti di logica applicativa (compatibili con il formalismo XSLT / XPATH) pur senza richiedere la scrittura di codice di programmazione una terza soluzione (Advanced Connector), basata su un framework programmabile tramite il linguaggio di scripting Groovy, che consente di risolvere anche i casi più complessi (diverse fonti dati gestite, logica applicativa complessa, volumi di dati elevati) Scheduler I tre tipi di connettori sono tutti schedulabili dall'interfaccia utente di CMDBuild tramite un apposito strumento denominato Task Manager, disponibile nel Modulo di Amministrazione. Pag. 7

Interoperabilità Accedendo a tale funzione la GUI di CMDBuild presenta nel pannello superiore la lista dei job configurati (connettori con sistemi esterni, ma anche altri tipi di attività), con possibilità di: avviare un task sospendere un task eliminare un task Il pannello in basso presenta invece i parametri di configurazione del job correntemente selezionato e le icone per: creare un nuovo task, specificando i parametri di configurazione modificare i parametri di configurazione del task selezionato Ad ogni nuovo avvio del sistema CMDBuild riavvia automaticamente i job in stato attivo. Informazioni più dettagliate sulle diverse tipologie di task e sui relativi parametri di configurazione sono riportate nell'administrator Manual. Pag. 8

Wizard Connector Wizard Connector Generalità La versione del connettore basata sul wizard interno consente di risolvere i casi più semplici di sincronizzazione dati, in cui le regole di mapping non richiedano una specifica logica applicativa. Essendo completamente configurabile da interfaccia utente ha anche ovviamente il vantaggio di poter essere utilizzato in modo immediato, senza necessità di complesse operazioni di attivazione. Per contro il Wizard Connector ha alcune limitazioni: gestisce solo regole di mapping semplificate accede solamente a fonti dati esterne di tipo database relazionale (PostgreSQL, MySQL, Oracle, SQLServer) ogni istanza può sincronizzare solamente una classe CMDBuild ed eventuali classi di dettaglio di primo livello collegate con domini 1:N non gestisce la possibilità di avviare processi autorizzativi di Change Management per la risoluzione delle variazioni riscontrate sui dati importati Modalità di funzionamento Il Wizard Connector è implementato come funzionalità interna all'applicazione CMDBuild ed è basato sui seguenti criteri: deve essere disponibile l'accesso ad una fonte dati esterna della tipologia prevista nella fonte dati esterna è disponibile un sottoinsieme di informazioni di interesse di CMDBuild, già organizzate in modo da poter essere mappate in modo diretto sulle classi / attributi di CMDBuild (tabelle o viste o altre strutture dati per fonti dati diverse da database relazionali) l'amministratore di CMDBuild configura da interfaccia utente i criteri di mapping delle informazioni a intervalli definiti in fase di schedulazione del connettore viene eseguito un task che: legge le informazioni presenti nelle viste configurate le confronta con le informazioni corrispondenti in CMDBuild esegue le operazioni di aggiornamento al termine invia una mail di notifica oppure esegue un workflow oppure esegue uno script, secondo le modalità di configurazione previste Modalità di configurazione Il Wizard Connector è una delle diverse tipologie di task gestite in CMDBuild con il Task Manager. La sua configurazione avviene quindi tramite un apposito wizard che richiede passo dopo passo tutte le informazioni necessarie per schedulare ed eseguire il task. Per le informazioni di dettaglio sulla configurazione del connettore si rimanda al Manuale di Amministrazione di CMDBuild. Pag. 9

Wizard Connector Licenza di utilizzo Trattandosi di una funzionalità dell'interfaccia utente di CMDBuild si applica la stessa licenza open source AGPL 3.0 dell'applicazione base. Pag. 10

Basic Connector Basic Connector Generalità Il Basic Connector è un connettore costituito da una applicazione java esterna a CMDBuild, schedulabile sia tramite l'apposito servizio di sistema, che tramite il Task Manager interno a CMDBuild. E' basato sull'utilizzo di XML ed in particolare sull'utilizzo dei linguaggi XSLT 1 e XPATH, soluzione che consente di: configurare l'appplicazione tramite un semplice editing di file di testo ottenere maggiori flessibilità di personalizzazione rispetto al Wizard Connector Le attività di aggiornamento sono agganciate ad su un processo di gestione che se opportunamente configurato consente di sottoporre le modifiche potenzialmente critiche all'approvazione di un utente responsabile (normalmente il Change Manager). Per contro anche il Basic Connector ha alcune limitazioni: è in grado di operare solamente con database relazionali esterni o repository LDAP (non può quindi dialogare con sistemi esterni tramite webservice, né tramite file) è in grado di sincronizzare solo nuovi inserimenti o modifiche, non le cancellazioni ogni istanza può sincronizzare una sola classe principale ed eventuali classi di dettaglio collegate con domini 1:N non offre prestazioni particolarmente elevate Modalità di funzionamento Il connettore è basato in particolare sui seguenti elementi: configuration.xml: file XML che definisce i criteri di accesso alla sorgente dati (database o LDAP) e alla destinazione (CMDBuild) cmdbuild-schema.xml: file XML che rappresenta la struttura dati di CMDBuild transform.xsl: file XSLT di mapping fra la struttura del sistema sorgente con quella di CMDBuild, da configurare in base alle proprie necessità per ogni istanza nel caso di sincronizzazione da database esterni: insieme di viste che devono essere create sul database esterno per poter estrarre i dati senza dover specificare query SQL nei file di configurazione applicazione java realizzza la sincronizzazione fra la sorgente e CMDbuild sulla base della configurazione definita nei file precedenti In particolare il connettore: interroga la sorgente estrapolando i dati di interesse e trasformandoli secondo quanto specificiato nel file xslt di mapping; la comunicazione avviene tramite driver jdbc interroga CMDBuild per cercare un matching con i dati estratti dalla sorgente; la comunicazione avviene tramite i webservice resi disponibili da CMDBuild analizza le variazioni rilevate nei dati per ogni modifica riscontrata attiva avvia, tramite webservice, un'istanza di un processo semplificato di Change Management implementabile secondo le proprie necessità; nel Pag. 11

Basic Connector rilascio di CMDBuild è compresa la definizione di un processo di esempio utilizzabile con OCS Inventory denominato ImportAsset tramite cui richiedere la presa visione ed approvazione da parte del responsabile della configurazione Segue lo schema di una istanza esemplificativa di Basic Connector, utilizzata per sincronizzare in CMDBuild le informazioni rilevate da una applicazione di Automatic Inventory (OCS Inventory o oltre): Operazioni propedeutiche alla configurazione Prima di effettuare la sincronizzazione si devono effettuare alcuni passaggi preparatori: creare delle viste da cui leggere i dati, solo nel caso in cui la sorgente sia un database creare un processo che gestisca le modifiche, eventualmente sottoponendole alla revisione da parte di una figura quale il Change Manager Viste Nel caso la fonte dati esterna sia un database relazionale dovranno essere create la suo interno le viste necessarie per recuperare i dati estratti: una vista corrispondente al catalogo delle viste di cui ai due punti successivi, che elencherà cioè tutte le viste su cui il connettore dovrà avere visibilità e che dovrà avere il nome "CMDBuild_catalog" una vista corrispondente alla tabella master da sincronizzare (ad esempio i Computer rilavati dal tool di inventory), il cui nome dovrà contenere il prefisso CMDBuild_ e che dovrà includere: nella prima colonna l'identificativo univoco del record nel database sorgente, utilizzato per collegare l'oggetto principale agli oggetti collegati nella seconda colonna (da specificare anche se coincidente con la prima) l'identificativo che verrà utilizzato per identificare univocamente l'oggetto in CMDBuild (ad esempio il serialnumber o il numero cespite o il MCAddress) a seguire gli altri attributi Pag. 12

Basic Connector più viste corrispondenti alle tabelle slave, cioè alle entità secondarie correlate alla vista master, il cui nome dovrà contenere il prefisso CMDBuild_ e che dovranno includere: nella prima colonna il valore identificativo dell'oggetto "master" a cui sono collegati, corrispondente alla prima colonna della vista "master" precedentemente definita (ad esempio l'identificativo del pc a cui il monitor è connesso) a seguire gli altri attributi Per degli esempi si rimanda al capitolo relativo alla configurazione del connettore con OCS Inventory, la cui descrizione è riferita all'utilizzo del Basic Connector. Processo di Change Management Nell'istanza CMDBuild si dovrà configurare un workflow di Change Mangement che dovrà essere avviato dal Basic Connector e che dovrà quindi contenere: due attributi riservati aggiuntivi: actionlist di tipo TEXT (editing: nascosto) actiondetail di tipo TEXT (editing: modificabile) due attività aggiuntive: un'attività utente, avviabile dal gruppo a cui apparterrà l'utente che esegue il connettore (utente specificato nel file configuration.xml visto in precedenza) un'attività di sistema che invia i dati a CMDBuild Nel caso si stia utilizzando il motore di workflow Shark 2 si dovrà poi configurare il tool predefinito externalsync a cui si passerà il valore della variabile actionlist. Nel caso si stia utilizzando il motore di workflow Shark 4 si dovrà configurare i webservices per chiamare il webservice di CMDbuild in modo da passargli la variabile actionlist, eseguendo i seguenti metodi: //credential setup url="http://"+cm_url+"/services/soap/private"; //build the soap proxy for Private webservice soapclient = new org.cmdbuild.services.soap.client.cmdbuildsoapclient.soapclientbuilder().forclass(org.cmdbuild.services.soap.private.class).withurl(cmdbuild_url).withusername(cmdbuild_username).withpasswordtype(org.cmdbuild.services.soap.client.cmdbuildsoapclient.passw ordtype.digest).withpassword(cmdbuild_password).build(); proxy = soapclient.getproxy(); proxy.sync(actionlist); Modalità di configurazione Struttura del file system Il connettore può essere posizionato in una cartella a piacere nel file system del server, che nel seguito sarà riferita con il il nome di ${configuration-folder-name}. Dentro tale cartella devono essere create due sottocartelle dal nome conf e logs. Pag. 13

Basic Connector I tre file di configurazione del Basic Connector (cmdbuild-schema.xml, configuration.xml e transform.xsl) devono venir archiviati dentro la cartella conf, mentre la cartella logs conterrà i log ed il file di configurazione di log4j. L'applicazione vera e propria è composta da una serie di librierie e da un eseguibile (connector.sh) che può essere posizionato in qualsiasi punto del sistema, purchè abbia accesso ai file menzionati precedentemente. La posizione suggerita è comunque quella che segue: Si riporta di seguito la struttura del filesystem suggerita. - --bin -- connector.sh --conf --cmdbuild-schema.xml --configuration.xml --transform.xsl --libs -- -- logs --ExternalConnector.log --log4j.conf Il file configuration.xml Il file è diviso in due sezioni. La sezione "cmdbuild" serve a configurare la connessione verso CMDBuild e conterrà i tag: ServerAddress: indirizzo del server CMDBuild (es: 127.0.0.1) ServerContext: nome dell'istanza di CMDBuild (es: cmdbuild-test) ServerPort: porta a cui è raggiungibile CMDBuild (es: 8080) Username: utente di CMDBuild Password: password dell'utente precedentemente specificato La sezione "inventory" / "serverldap" serve a configurare la connessione verso la sorgente dati e nel caso la fonte dati esterna sia un database relazionale conterrà i tag: DbType: il tipo di database da utilizzare (valori supportati: mysql, oracle, postgres, sqlserver, sybase) DbAddress: indirizzo del server (es: 127.0.0.1) DbPort: porta a cui è raggiungibile il database (es: 3306) DbName: nome del database (es: ocsweb) DbUser: utente del database DbPassword: password dell'utente precedentemente specificato Nel caso invece la fonte dati esterna sia una directory LDAP / Active Directory i tag saranno i seguenti: ServerAddress: indirizzo del server LDAP (es: 127.0.0.1) Port: porta a cui è raggiungibile LDAP (es: 389) User: utente del database Password: password dell'utente precedentemente specificato SSL: indicare 0 se SSL non è attivo, 1 altrimenti Pag. 14

Basic Connector DN: domain name da cui partire per estrarre i dati (es:ou=cmdbuild,dc=tecnoteca,dc=com) AdditionalDN Search: eventuali filtri da impostare (es: objectclass=user o objectclass=* per estrarre tutti gli oggetti) Class: nome della OU da sincronizzare (es: personale) Attributes: nome degli attributi da estrarre, separati da virgola (ad esempio cn, mail, samaccountname) Key: attributo identificativo dell'oggetto da sincronizzare Per un esempio si rimanda al capitolo relativo alla configurazione del connettore con OCS Inventory. Il file cmdbuild-schema.xml Il file, che descrive la porzione della struttura dati di CMDBuild sottoposta a sincronizzazione, contiene: l'intestazione del file xml il tag CMDBUILD che conterrà tutti i tag relativi a tutte le classi un tag per ogni classe di CMDBuild (nell'esempio Computer e Monitor) contenente il nome - e non la descrizione - della classe per ogni classe devono esserci almeno, se non tutti, i nomi (non le descrizioni) degli attributi interessati dall'aggiornamento <PC> <Code /> <Description /> <SerialNumber /> <RAM /> <IPAddress /> <CPUNumber /> <CPUSpeed /> </PC> Per un esempio si rimanda al capitolo relativo alla configurazione del connettore con OCS Inventory. Il file transform.xls Il file, che descrive la porzione della struttura dati di CMDBuild sottoposta a sincronizzazione, contiene: Il file, che descrive la mappatura degli attributi tra la fonte dati esterna e CMDBuild, dovrà sempre contenere la seguente gerarchia di tag xsl necessari per la trasformazione: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform" version="1.0"> <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes"/> <xsl:template match="/"> <CMDBUILD> <xsl:apply-templates/> </CMDBUILD> </xsl:template> <xsl:template match="*"> <xsl:apply-templates/> </xsl:template> <xsl:template match="text()"> </xsl:template> Pag. 15

Basic Connector... </xsl:stylesheet> Dentro tale gerarchia vanno inseriti i tag necessari a realizzare la mappatura vera e propria (sostituendo i puntini ). In particolare dovranno essere presenti due tag contenitori per ogni classe che si vuole sincronizzare (nell'esempio PC ). <xsl:template match="/inventory/device"> <PC key="code">... </PC> </xsl:template> Il primo tag deve descrivere la corrispondenza fra i campi della fonte dati esterna e CMDBuild, specificando quali attributi della sorgente vanno importati e a quali attributi di CMDBuild corrispondono. L'attributo match deve contenere il nome dell'oggetto che si vuole considerare (a meno del prefisso "CMDBuild_" nel caso delle viste nel DB sorgente). Il secondo tag deve contenere le informazioni per rendere confrontabili i dati della sorgente con quelli di CMDBuild. Dovrà essere quindi modificato il valore del tag match come mostrato sotto: <xsl:template match="/cmdbuild/pc"> <PC key="code">... </PC> </xsl:template> In entrabi i tag deve essere presente il tag "key" che identifica l'attributo di CMDBuild da utilizzare come identificativo univoco per riconoscere la scheda "master" fra sorgente (fonte dati esterna) e destinazione (CMDBuild). Ognuno dei due tag contiene a sua volta gli attributi da aggiornare e al suo interno il campo da cui reperire il valore da inserire. Ad esempio, volendo aggiornare l'attributo Description del PC con il valore della colonna NAME nella vista CMDBuild_device, dovremo scrivere: <xsl:template match="/inventory/device"> <PC key="code"> <Description><xsl:value-of select="./name" /></Description> </PC> </xsl:template> Il corrispondente attributo in CMDBuild verrà estratto nel seguente modo: <xsl:template match="/cmdbuild/pc"> <PC key="code"> <Description><xsl:value-of select="./description" /></Description> </PC> </xsl:template> Ovviamente si possono applicare tutte le tipologie di trasformazioni consentite da XSLT 1. Ad esempio, volendo sommare l'insieme di tutti i dischi rilevati da un sistema di inventory quale OCS Inventory potremmo scrivere: <xsl:value-of select="sum(/inventory/memory/capacity)" /> Nel caso di schede collegate alla classe master, come nel caso di Monitor, bisogna sempre Pag. 16

Basic Connector specificare la coppia di tag precedenti, con i relativi attributi. Bisognerà infine aggiungere: l'indicazione del dominio che collega gli oggetti, specificato dall'attributo "domain" (es. PcMonitor) l'indicazione di dove sia collocato l'oggetto "master" nel dominio (se lato 1 verrà scritto "directed", se lato 2 verrà scritto "inverted") l'indicazione di quali siano gli attributi di CMDBuild che permettono di identificare univocamente l'oggetto sia nella sorgente che nella destinazione (es. "Code"), separati da virgole nel caso degli attributi di CMDBuild va anche aggiunto l'attributo standard objid che permette di memorizzare l'id della card di CMDBuild per eseguire eventuali modifiche <xsl:template match="/cmdbuild/monitor"> <Monitor domain="pcmonitor" domaindirection="directed" identifiers="code"> <xsl:attribute name="objid"> <xsl:value-of select="./@objid" /> </xsl:attribute> <Code> <xsl:value-of select="./code" /> </Code> </Monitor> </xsl:template> Per un esempio si rimanda al capitolo relativo alla configurazione del connettore con OCS Inventory. Esecuzione Una volta creata la struttura sopra descritta il connettore potrà essere avviato digitando manualmente da console, dalla directory contenente il file eseguibile, il seguente comando (unix): bash connector.sh & Per windows è possibile creare un file sulla falsariga del connector.sh fornito che avvia la sincronizzazione utilizzando seguente la sintassi: java -cp "${LIB_DIR}/*" -Dfile.encoding="UTF-8" "org.cmdbuild.externalconnector.update.updatecmdbuild" ${configuration-foldername} ${processname} L'esecuzione del connettore può essere programmata sia tramite il Task Manager interno a CMDBuild che tramite lo scheduler di sistema (il servizio cron in ambiente Unix / Linux). Per il primo caso si rimanda all'administrator Manual. Per il secondo caso si suggerisce di inserire nella cartella /etc/cron.d/ un file aggiuntivo, ad esempio connectors in cui specificare, secondo la sintassi cron, quando eseguire i diversi connettori. Un esempio di schedulazione è il seguente: 00 20 * * * root bash /usr/local/bin/connectors.sh Si ricorda di riavviare il servizio cron una volta inserita la schedulazione. Limitazioni di utilizzo Il Basic Connector viene fornito con la stessa licenza open source AGPL 3.0 dell'applicazione base e non presenta quindi nessuna limitazione di utilizzo. Pag. 17

Advanced Connector Advanced Connector Generalità L'Advanced Connector è anch'esso costituito da una applicazione esterna a CMDBuild, pur essendo poi schedulabile sia tramite l'apposito servizio di sistema, che tramite il Task Manager interno a CMDBuild. E' basato su un framework Java predefinito che implementa le logiche principali utili per attività di sincronizzazione e richiede poi che il comportamento specifico di ciascuna istanza del connettore venga configurato tramite il linguaggio di scripting Groovy. Anche l'advanced Connector può essere configurato per interagire con un processo di gestione (normalmente un workflow di Change Management in ottica ITIL) che sottoponga le modifiche potenzialmente critiche all'approvazione di un utente responsabile (normalmente il Change Manager). E' la soluzione più completa fra quelle disponibili con CMDBuild, garantendo: la possibilità di operare con qualsiasi applicazione esterna che renda accessibile il proprio database oppure disponga di webservice / API oppure produca file di testo / mail contenenti le informazioni da sincronizzare possibilità di sincronizzazione contestuale di strutture dati anche complesse buone prestazioni anche con volumi di dati elevati capacità illimitata di personalizzazione, essendo il connettore configurabile tramite un linguaggio di programmazione standard Unica limitazione dell'advanced Connector è proprio quella di richiedere competenze di programmazione per la configurazione di ciascuna diversa istanza. Modalità di funzionamento L'Advanced Connector è composto da una serie di moduli che vengono eseguiti in sequenza secondo quanto definito nel file di configurazione: {CONNECTOR_HOME}/conf/connector.properties Tali moduli possono fra l'altro: compiere operazione di input/output leggendo dalla fonte dati estera e scrivendo sul database di CDMBuild attraverso i suoi webservices inviare eventuali mail di notifica con report allegati elaborare opportunamente le informazioni lette in input per normalizzare i dati o per renderli compatibili con la struttura dati di CMDBuild Le operazioni che esegue ogni modulo sono descritte nei file di configurazione definiti nella cartella: {CONNECTOR_HOME}/conf Ogni file di configurazione consiste in uno script in liguaggio Groovy che viene opportunamente interpretato dal connettore il quale quindi esegue la sequenza di istruzioni definite nello script stesso. Pag. 18

Advanced Connector Nel dettaglio i moduli da configurare sono i seguenti: 1. schema module: connector-schema.groovy Definisce lo schema della struttura dati di CMDBuild su cui il connettore mantiene aggiornati i dati letti dalla sorgente esterna. 2. sql module: connector-sql.groovy E' il modulo di input che esegue la lettura delle informazioni dalla sorgente dati esterna ed esegue una prima normalizzazione delle informazioni lette. Tale modulo inoltre esegue un controllo sui dati letti verificando eventuali anomalie o inconsistenze tali da necessitare l'invio di una notifica. 3. modify on remove module: connector-mor.groovy E' il modulo di output che semplicemente imposta il connettore in modifica anche sulle informazioni non più presenti nella base dati esterna (DBO.DATI) che normalmente verrebbero rimosse dal database di CMDBuild (in questo modo invece vengono solamente impostate come non attive e non rimosse dalla struttura dati). 4. mail module: connector-mail.groovy E' il modulo che permette di leggere una mailbox e di inviare eventuali mail di notifica se necessario. 5. È presente inoltre un ulteriore modulo di output (implicito) che definisce l'end-point dei webservices di CMDBuild, utilizzato dal connettore per scrivere le informazioni su CMDBuild nelle tabelle opportunamente definite nel modulo schema. Si riporta di seguito uno schema di come l'advanced Connector ed il Basic Connector interagiscano con CMDBuild e con l'applicazione / sistema esterno con cui è richiesta la sincronizzazione dei dati. Pag. 19

Advanced Connector Modalità di configurazione Struttura del file system Il connettore può essere posizionato in una cartella a piacere nel filesystem del server, che nel seguito sarà riferita con il il nome di ${CONNECTOR_HOME}. Si riporta di seguito la struttura di default del filesystem. - ${CONNECTOR_HOME} --bin --connector.sh --config --connector-extension.properties --connector.properties --connector-sql-context.xml --log4j.properties --template --... -- lib --... Il file bin/connector.sh E' lo script necessario per eseguire l'applicazione. Contiene la configurazione ed i parametri di default necessari all'esecuzione. Il file config/connector.properties Il file descrive i moduli presenti e la loro organizzazione (catene): modules.schema= modules.in.source= modules.in.cmdbuild=ws modules.out= module.ws.classname=org.cmdbuild.connector.ws.wsmodule Devono essere specificati per lo meno un modulo schema, ed un modulo di input ed un modulo di output. Di default è già presente il modulo necessario per la comunicazione con CMDBuild tramite web service. La directory config/template La directory contiene i template dei file di configurazione per tutti i moduli disponibili. I file di configurazione dei moduli Per ogni modulo aggiunto, all'interno della directory ${CONNECTOR_HOME}/config dovranno essere presenti dei file connector-${module_name}.properties e connector-$ {MODULE_NAME}.groovy, dove ${MODULE_NAME} rappresenta il nome del modulo come specificato all'interno del file. Esecuzione Una volta editati i file sopra descritti, il connettore potrà essere avviato eseguendo lo script: connector.sh L'esecuzione del connettore può essere programmata sia tramite il Task Manager interno a Pag. 20

Advanced Connector CMDBuild che tramite lo scheduler di sistema (il servizio cron in ambiente Unix / Linux). Per il primo caso si rimanda all'administrator Manual. Per il secondo caso si suggerisce di inserire nella cartella /etc/cron.d/ un file aggiuntivo, ad esempio connectors in cui specificare, secondo la sintassi cron, quando eseguire i diversi connettori. Un esempio di schedulazione è il seguente: 00 20 * * * root sh ${CONNECTOR_HOME}/bin/connectors.sh Si ricorda di riavviare il servizio cron una volta inserita la schedulazione. Limitazioni di utilizzo L'Advanced Connector è reso disponibile con licenza non open source, che ne consente l'utilizzo solamente a chi ha sottoscritto un servizio di manutenzione sull'applicazione CMDBuild con Tecnoteca Srl e fino a che tale servizio è attivo. L'Advanced Connector viene comunque fornito con il codice sorgente di tutti i suoi componenti a chi ha sottoscritto un servizio di manutenzione con Tecnoteca Srl. Pag. 21

Generalità Essendo CMDBuild un ambiente del tutto personalizzato da parte di ciascun utilizzatore, non è possibile rendere disponibili connettori standard già funzionanti su una generica istanza dell'applicazione di cui non è nota la configurazione. Dal momento che l'obiettivo del connettore è quello di sincronizzare informazioni sulla base di criteri di mapping fra il modello dati del sistema esterno ed il modello dati di CMDBuild, la completa libertà nella configurazione di quest'ultimo rende di fatto necessario procedere anche ad una corrispondente configurazione del connettore. Allo stesso modo gli eventuali meccanismi di approvazione dei Change più critici consentiti dalla logica del connettore dovranno essere adattati ai corrispondenti workflow configurati in CMDBuild. Per questo motivo le tre tipologie di connettori descritte alle pagine precedenti prevedono tutti delle opzioni di configurazione, sia pure con gradi di difficoltà diversi (interfaccia utente => editing di file di testo => scrittura di codice di programmazione). Alle pagine successive vengono descritti alcuni connettori già implementati, che vanno quindi intesi come esempi di implementazione e non come tool già pronti e direttamente utilizzabili. Del connettore con OCS Inventory, essendo disponibile anche come file scaricabile dal sito di CMDBuild vengono descritti più nel dettaglio tutti i criteri di configurazione. Pag. 22

OCS Inventory Generalità Il controllo e aggiornamento manuale delle variazioni nell'inventario degli asset IT richiede risorse importanti che non sempre sono disponibili. Si consiglia quindi di automatizzare la sincronizzazione di quelle informazioni tramite utilizzo di un tool di automatic inventory ed in particolare OCS Inventory ( http://www.ocsinventory-ng.org/en/ ) è il prodotto suggerito agli utilizzatori di CMDBuild, considerandone sia le caratteristiche tecniche che lo licenza open source. OCS Inventory consente di: attivare dei programmi agent sui computer da controllare (Windows, Linux o Mac OS) raccogliere informazioni relative a BIOS, processore, RAM, device di input, controller, periferiche, schede aggiuntive, impostazioni rete, sistema operativo, applicazioni software, ecc inviare periodicamente a server tali informazioni sotto forma di file XML archiviare tali informazioni in un database relazionale MySQL consultare ed modificare tali informazioni da una apposita applicazione web di gestione Nella pagina di download del sito CMDBuild è presente il file: external-connectors-x.y.z.zip (connettore per importazione da sorgenti esterne - OCS Inventory) che implementa tale connettore utilizzando il Basic Connector già precedentemente descritto. Le spiegazioni di utilizzo riportate alle pagine successive fanno riferimento a quel tipo di connettore, ma risultati simili possono essere ottenuti anche con il Wizard Connector (se la logica di mapping è semplice ) o con l'advanced Connector. Pag. 23

Modalità di funzionamento L'implementazione del connettore è basata su: il confronto periodico fra i dati archiviati in CMDBuild ed i dati rilevati da OCS Inventory, basato sui criteri di mapping riportati nel file di trasformazione XLST l'alimentazione del sistema di workflow di CMDBuild con richieste di modifica automatiche (variante semplificata di un processo di Change Management) generate sulla base delle variazioni di configurazione rilevate Il secondo criterio è ovviamente dipendente dai requisiti di controllo esplicito e di gestione dei ruoli e delle responsabilità richiesti da ITIL. La lista completa delle informazioni rese disponibili da OCS Inventory e quindi mappabili sulle classi ed attributi di CMDBuild è riportata in appendice. Si suggerisce di valutare con attenzione quale attributo utilizzare come campo univoco del computer: un numero di cespite interno (da specificare una tantum all'installazione dell'agente OCS tramite l'apposito flag tag ), il MAC Address della scheda di rete (non necessariamente invariante in caso di una sua sostituzione), ecc. Modalità di configurazione Segue, sulla base di quanto descritto nei paragrafi precedenti, un esempio di compilazione dei tre file di configurazione del Basic Connector, funzionante sul database demo rilasciato con CMDBuild. File configuration.xml <?xml version="1.0" encoding="utf-8"?> <configuration> <cmdbuild> <ServerAddress>127.0.0.1</ServerAddress> <ServerContext>cmdbuild</ServerContext> <ServerPort>8080</ServerPort> <Username>inventory</Username> <Password>inventory</Password> </cmdbuild> <inventory> <DbType>mysql</DbType> <DbAddress>127.0.0.1</DbAddress> <DbPort>3307</DbPort> <DbName>ocsweb</DbName> <DbUser>root</DbUser> <DbPassword>root</DbPassword> </inventory> </configuration> Pag. 24

File cmdbuild-schema.xml <?xml version="1.0"?> <CMDBUILD> <PC> <Code /> <Description /> <SerialNumber /> <RAM /> <IPAddress /> <CPUNumber /> <CPUSpeed /> </PC> </CMDBUILD> File transform.xsl <?xml version="1.0" encoding="utf-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/xsl/transform" version="1.0"> <xsl:output method="xml" version="1.0" encoding="utf-8" indent="yes" /> <xsl:template match="/"> <CMDBUILD> <xsl:apply-templates /> </CMDBUILD> </xsl:template> <xsl:template match="*"> <xsl:apply-templates /> </xsl:template> <xsl:template match="text()"></xsl:template> <xsl:template match="/inventory/device"> <PC key="code"> <Code> <xsl:value-of select="./tag" /> </Code> <Description> <xsl:value-of select="./name" /> </Description> <IPAddress> <xsl:value-of select="./ipaddr" /> Pag. 25

</IPAddress> <RAM> <xsl:value-of select="sum(/inventory/memory/capacity)" /> </RAM> <CPUNumber> <xsl:value-of select="./processorn" /> </CPUNumber> <CPUSpeed> <xsl:value-of select="./processors" /> </CPUSpeed> </PC> </xsl:template> <xsl:template match="/cmdbuild/pc"> <PC key="code"> <xsl:attribute name="objid"> <xsl:value-of select="./@objid" /> </xsl:attribute> <Code> <xsl:value-of select="./code" /> </Code> <Description> <xsl:value-of select="./description" /> </Description> <IPAddress> <xsl:value-of select="./so" /> </IPAddress> <RAM> <xsl:value-of select="./ram" /> </RAM> <CPUNumber> <xsl:value-of select="./cpunumber" /> </CPUNumber> <CPUSpeed> <xsl:value-of select="./cpuspeed" /> </CPUSpeed> </PC> </xsl:template> </xsl:stylesheet> Pag. 26

Definizione delle viste Come indicato nella descrizione del Basic Connector, dovranno essere definite: una vista corrispondente al catalogo delle viste descritte nel seguito una vista corrispondente alla tabella master più viste corrispondenti alle tabelle slave Catalogo viste CREATE OR REPLACE VIEW CMDBuild_catalog AS select TABLE_NAME from INFORMATION_SCHEMA.VIEWS where table_name like '%CMDBuild_%' and table_name <> 'CMDBuild_catalog'; Vista 'master' CREATE OR REPLACE VIEW CMDBuild_device (DEVICE, TAG, DEVICEID, NAME, WORKGROUP, USERDOMAIN, OSNAME, OSVERSION, OSCOMMENTS, PROCESSORT, PROCESSORS, PROCESSORN, MEMORY, SWAP, IPADDR, WINCOMPANY, WINOWNER, WINPRODID, WINPRODKEY) as select ID, TAG, DEVICEID, NAME, WORKGROUP, USERDOMAIN, OSNAME, OSVERSION, OSCOMMENTS, PROCESSORT, PROCESSORS, PROCESSORN, MEMORY, SWAP, IPADDR, WINCOMPANY, WINOWNER, WINPRODID, WINPRODKEY from hardware, accountinfo WHERE ID=HARDWARE_ID; Viste 'slave' CREATE OR REPLACE VIEW CMDBuild_controller as select HARDWARE_ID, MANUFACTURER, NAME, CAPTION, DESCRIPTION, VERSION, TYPE from controllers; CREATE OR REPLACE VIEW CMDBuild_drive as select HARDWARE_ID, LETTER, TYPE, FILESYSTEM, TOTAL, FREE, NUMFILES, VOLUMN from drives; CREATE OR REPLACE VIEW CMDBuild_input as select HARDWARE_ID, TYPE, MANUFACTURER, CAPTION, DESCRIPTION, INTERFACE, POINTTYPE from inputs; CREATE OR REPLACE VIEW CMDBuild_memory as select HARDWARE_ID, CAPTION, DESCRIPTION, CAPACITY, PURPOSE, TYPE, SPEED, NUMSLOTS from memories; CREATE OR REPLACE VIEW CMDBuild_bios as select HARDWARE_ID, SMANUFACTURER, SMODEL, SSN, TYPE, BMANUFACTURER, BVERSION, BDATE from bios; CREATE OR REPLACE VIEW CMDBuild_monitor as select HARDWARE_ID, ID, MANUFACTURER, CAPTION, DESCRIPTION, TYPE, SERIAL from monitors; CREATE OR REPLACE VIEW CMDBuild_modem as select HARDWARE_ID, ID, NAME, MODEL, DESCRIPTION, TYPE from modems; Pag. 27

CREATE OR REPLACE VIEW as select HARDWARE_ID, from ports; CREATE OR REPLACE VIEW as select HARDWARE_ID, PURPOSE, STATUS, from slots; CMDBuild_port ID, TYPE, NAME, CAPTION DESCRIPTION CMDBuild_slot ID, NAME, DESCRIPTION, DESIGNATION, PSHARE CREATE OR REPLACE VIEW CMDBuild_software as select HARDWARE_ID, ID, PUBLISHER, NAME, VERSION, FOLDER, COMMENTS, FILENAME, FILESIZE, SOURCE from softwares; CREATE OR REPLACE VIEW CMDBuild_sound as select HARDWARE_ID, ID, MANUFACTURER, NAME, DESCRIPTION from sounds; CREATE OR REPLACE VIEW CMDBuild_storage as select HARDWARE_ID, ID, MANUFACTURER, MODEL, DESCRIPTION, TYPE, DISKSIZE from storages; CREATE OR REPLACE VIEW CMDBuild_video as select HARDWARE_ID, ID, NAME, CHIPSET, MEMORY, RESOLUTION from videos; Attributi disponibili ed esempi di mapping Si riporta di seguito la lista delle entità ed informazioni rilevati da OCS Inventory fra le quali dovranno essere individuate quali mappare in CMDBuild, ed eventualmente su quali classi ed attributi (ultima colonna). Bios.Hardware_Id Bios.SManufacturer Bios.SModel Bios.SSN Bios.Type Bios.BManufacturer Bios.BVersion CMDBuild_device Hardware.Id AccountInfo.Tag -Hardware.Name Hardware.Workgroup Hardware.UserDomain --Hardware.OSName Hardware.OSVersion Hardware.OSComments Hardware.ProcessorT Hardware.ProcessorS Hardware.ProcessorN Hardware.Memory Hardware.WinProdKey Vista I/F CMDBuild CMDBuild_bios OCS Inventory Descrizione Esempio Id Tag Serial Name Workgroup UserDomain Manufacturer ProductName OSName OSVersion OSComments ProcessorS ProcessorN Memory WinProdKey Id Chiave Numero di serie Nome Gruppo lavoro Dominio Produttore Nome prodotto Nome sistema operativo Versione sistema operativo Service Pack Velocità processore Numero processori Memoria RAM Chiave prodotto 2 lisa HUB5390NQK Kelly Tecnoteca Kelly Hewlett-Packard HP Compaq nc6120 (PN936AV) Microsoft Windows XP Professional 5.1.2600 Device_Id SManufacturer SModel SSN Type BManufacturer BVersion Riferimento macchina Produttore MotherBoard Modello MotherBoard Numero di serie M.B. Tipo chassis Produttore Versione 2 VIA K7Upgrade-600 SYS-1234567890 Desktop American Megatrends Inc. AMIINT-10-SMBiosVersion: P1.50 CMDBuild 1832 1 512 Pag. 28

Controllers.Hardware_Id Controllers.Manufacturer Controllers.Name Controllers.Caption Controllers.Description Controllers.Version Controllers.Type Riferimento macchina Produttore Nome Titolo Descrizione Versione Tipo 2 VIA Technologies, Inc. Controller IDE VIA Bus Master Controller IDE VIA Bus Master Controller IDE VIA Bus Master N/A IDE Controller Device_Id Letter Type FileSystem Total Free NumFiles VolumN Riferimento macchina Lettera Tipo File System Spazio totale Spazio libero Numero files Nome volume 2 C:/ Hard Drive NTFS 39997 15708 0 Riferimento macchina Tipo Produttore Titolo Descrizione Interfaccia Tipo puntatore 2 Pointing (Periferiche standard di sistema Periferica USB Human Interface Periferica USB Human Interface USB N/A Riferimento macchina Titolo Descrizione Dimensione Scopo Tipo Velocità Numero slots 2 Memoria fisica DIMM1 (Other ECC) 512 Reserved Unknown N/A 1 Riferimento macchina Nome Modello Descrizione Tipo Device_Id Manufacturer Caption Description Type Serial Riferimento macchina Produttore Titolo Descrizione Tipo Numero di serie 2 Unknown ACR AL1716 Device_Id Description Type TypeMIB Speed MACAddr Status IPAddress IPMask IPGateway IPDNS Riferimento macchina Descrizione Tipo TipoMIB Velocità Macaddress Stato Indirizzo IP Maschera IP IP Gateway IP DNS 2 Scheda Fast Ethernet VIA compat. Ethernet EthernetCsmacd 100 Mb/s 00:0B:6A:AE:DE:6B Up 192.168.2.199 255.255.255.0 192.168.2.1 192.168.2.100 CMDBuild_drive CMDBuild_controller N/A Device_Id Manufacturer Name Caption Description Version Type Inputs.Hardware_Id Inputs.Type Inputs.Manufacturer Inputs.Caption Inputs.Description Inputs.Interface Inputs.PointType CMDBuild_input Data Device_Id Type Manufacturer Caption Description Interface PointType Memories.Hardware_Id Memories.Caption Memories.Description Memories.Capacity Memories.Purpose Memories.Type Memories.Speed Memories.NumSlots CMDBuild_memory BDate Device_Id Caption Description Capacity Purpose Type Speed NumSlots CMDBuild_network CMDBuild_monitor CMDBuild_modem Bios.BDate Device_Id Name Model Description Type Drives.Hardware_Id Drives.Letter Drives.Type Drives.FileSystem Drives.Total Drives.Free Drives.NumFiles Drives.VolumN Modems.Hardware_Id Modems.Name Modems.Model Modems.Description Modems.Type Monitors.Hardware_Id Monitors.Manufacturer Monitors.Caption Monitors.Description Monitors.Type Monitors.Serial Networks.Hardware_Id Networks.Description Networks.Type Networks.TypeMIB Networks.Speed Networks.MCAddr Networks.Status Networks.IPAddress Networks.IPMask Networks.IPGateway -- manufacturer code RGB color Pag. 29

Networks.IPSubnet Networks.IPDHCP IPSubnet IPDHCP IP sottorete IP DHCP server 192.168.2.0 255.255.255.255 Ports.Hardware_Id Ports.Type Ports.Name Ports.Caption Ports.Description CMDBuild_slot CMDBuild_port Device_Id Type Name Caption Description Riferimento macchina Tipo Nome Titolo Descrizione 2 Serial Porta di comunicazione (COM1) Porta di comunicazione (COM1) Porta di comunicazione Device_Id Name Description Designation Purpose Status PShare Riferimento macchina Nome Descrizione Codice Utilizzo Stato Condivisione 2 Slot di sistema Slot di sistema PCI1 CMDBuild_software Device_Id Publisher Name Version Folder Comments FileName FileSize Source Riferimento macchina Produttore Nome Versione Cartella Commento Nome file Dimensione file Sorgente 2 OpenOffice.org OpenOffice.org 2.0 2.0.9044 CMDBuild_storage CMDBuild_sound Device_Id Manufacturer Name Description Riferimento macchina Produttore Nome Descrizione 2 Silicon Integrated Systems [SiS] AC'97 Multimedia audio controller rev a0 Device_Id Manufacturer Name Model Description Type DiskSize Riferimento macchina Produttore Nome Modello Descrizione Tipo Dimensione disco 2 (unità disco standard) Generic Flash Disk USB Device //./PHYSICALDRIVE1 Unità disco Removable media other thanxfloppy 117 CMDBuild_video Device_Id Name Chipset Memory Resolution RefreshRate Riferimento macchina Nome Chipset Memoria Risoluzione Frequenza refresh 2 RADEON 9200 PRO Family (Microsoft C.) RADEON 9200 PRO AGP (0x5960) 128 1280 x 1024 64 Slots.Hardware_Id Slots.Name Slots.Description Slots.Designation Slots.Purpose Slots.Status Slots.PShare Softwares.Hardware_Id Softwares.Publisher Softwares.Name Softwares.Version Softwares.Folder Softwares.Comments Softwares.FileName Softwares.FileSize Softwares.Source Sounds.Hardware_Id Sounds.Manufacturer Sounds.Name Sounds.Description Storages.Hardware_Id Storages.Manufacturer Storages.Name Storages.Model Storages.Description Storages.Type Storages.DiskSize Videos.Hardware_Id Videos.Name Videos.Chipset Videos.Memory Videos.Resolution -- OK 1 OpenOffice.org 2.0 (en-us)(build:9044) N/A 0 1 Pag. 30