SIDA Multisede online Manuale tecnico per uso esclusivo dei tecnici installatori e della rete commerciale Sida By Autosoft Versione 2009.1.1 Revisione 1, 11 maggio 2009 Tutti i diritti sono riservati dagli autori 2009 Autosoft Multimedia srl 1/16
2/16
Premessa Il prodotto Multisede OnLine permette la condivisione degli archivi fra le diverse sedi di un'autoscuola rispetto alla sede principale. Attraverso una tecnologia di remotizzazione dei dati implementata in SIDA, la base dati viene logicamente distribuita fra tutte le sedi secondarie permettendo così la condivisione dei dati fra sedi secondarie e sede principale. Il sistema opera attraverso una sofisticata serie di protocolli di rete che permettono lo scambio su rete dei dati garantendo elevati standard di sicurezza, e un limitato sfruttamento della banda trasmissiva. La distribuzione non richiede nessuna operazione da parte dell'operatore, il sistema automaticamente ed in maniera del tutto trasparente rispetto all'operatività tradizionale si preoccupa delle distribuzione e sincronizzazione dei dati. 3/16
Funzionalità La principale funzionalità che il sistema implementa è la possibilità di utilizzo di un unico archivio distribuito fra le diverse sedi di un'autoscuola. Tutti i dati principali quali: anagrafe storica, archivio patenti, pratiche, contabilità, fatturazione, archivio fotografico, verbali, agende guida, etc... vengono automaticamente sincronizzati fra sedi, a seguito di operazioni eseguite dai singoli operatori, senza nessun intervento manuale di aggiornamento o trasmissione, mascherando all'utilizzatore la reale distribuzione dell'informazione generata. Ogni singola sede ha accesso al proprio archivio dati, mentre la sede principale, oltre al proprio archivio, ha anche accesso ai dati delle sedi secondarie. Le singole transazioni sulla base dati vengono trasmesse in background alla sede principale che ricopre quindi il ruolo di depositario dell'archivio principale. Il modulo del sistema che opera sulla sede principale rappresenta, quindi, il gestore logico del sistema rispetto alle operazioni che vengono svolte sui dati. Il modulo del sistema che opera al contrario sulle sedi secondarie si limita all'interfacciamento con il gestore principale. Il sistema per operare necessità di una connettività di rete fra le diverse sedi, ogni singola sede deve, in altre parole, avere accesso a Internet (ADSL); le operazioni di modifica di una base dati (inserimenti,modifiche, cancellazioni) vengono distribuite in rete, ne consegue che l'operatività real-time del sistema dipende dalla presenza di collegamento stabile fra le varie sedi. Il sistema, tuttavia, permette l'operatività sulla base dati anche in caso di connettività assente, tutte le operazioni svolte vengono registrate all'interno di un file che mantiene uno storico dall'attività svolta ed, al ripristino della connettività, inviato al gestore dell'archivio che si preoccupa di aggiornare la base dati principale in funzione delle operazioni svolte. Un serie di strategie di pre-allocazione delle risorse garantisce la completa operatività di una sede in modalità off-line garantendo al tempo stesso la congruità e consistenza dei dati. Unica eccezione riguarda le operazioni di fatturazione con numerazione automatica delle fatture che, per la loro natura, non possono essere svolte offline in quanto la numerazione dei documenti contabili necessita l'interfacciamento con il gestore delle informazione responsabile dell'assegnamento dei progressivi. E' comunque possibile utilizzare il modulo di fatturazione offline utilizzando la numerazione manuale delle fatture. La sede principale ovviamente non soffre di questa limitazione in quanto il modulo di coordinamento opera sulla macchina master che coordina tutto lo scambio dei dati. 4/16
Architettura del sistema L'operatività del sistema richiede la connettività di rete fra sede principale e sedi secondarie. L'architettura del sistema può essere modellata dal seguente schema: Per client (in blu nello schema) si intende un modulo SIDA (Quiz, Gestione, etc..) che si interfaccia con la base dati e ne modifica eventualmente il contenuto. In ogni singola sede ce ne sono un po'. Le sedi secondarie comunicano con la sede principale attraverso un modulo software che all'interno di questa architettura prende il nome di Server-slave (in giallo). Il modulo di comunicazione della sede principale prende il nome di Server-master (in rosa). La macchina che ospita il modulo Server-master deve essere la macchina delegata a sede principale e deve disporre di un indirizzo IP statico che permetta il collegamento dei server Slave dalle sedi secondarie al server Master. Il servizio di ascolto del server Master opera sulla porta TCP 1535, è quindi necessarie che questa sia aperta su Internet e non bloccata da qualche firewall personale presente sulla macchina. Il sistema in automatico si configura sul firewall predefinito di Windows (se attivo). I pacchetti dati che viaggiano all'interno del sistema vengono compressi al fine di garantire il minor utilizzo di banda possibile, è tuttavia consigliabile l'utilizzo di una connessione a banda larga (ADSL 7Mbit/256Kbit) al fine di garantire un'efficace operatività del sistema (dai primi test è possibile considerare una banda in upload sulla sede principale di 32K x N = numero delle sedi secondarie) E' importante sottolineare che i diversi moduli presenti in una singola sede possono girare sia su macchina singola, sia su macchine separate, a patto che queste siano in rete fra loro. 5/16
Di seguito uno schema della topologia di rete sulla quale il sistema deve operare. La corretta operatività del sistema dipende dalla correttezza dell'impianto. E' necessario che ogni singola sede possieda una configurazione di rete precisa; ogni macchina client della sede deve essere in grado di vedere la macchina server, il cui indirizzo IP deve essere statico e coerente con la numerazione di rete e la cui unica interfaccia di rete deve essere quella verso la LAN locale. Un possibile schema di impostazione per la rete locale è la seguente: Sottorete 10.0.0.0/24, Subnet mask 255.255.255.0 Sottorete 192.168.1.0/24, Subnet mask 255.255.255.0 Indirizzo del router/gateway 10.0.0.1 192.168.1.1 Indirizzo del server 10.0.0.10 192.168.1.10 Indirizzi dei client 10.0.0.50-10.0.0.100, assegnati da DHCP 192.168.1.50-192.168.1.100, assegnati da DHCP Ipotizziamo, per i prossimi esempi, l'utilizzo della rete 10.0.0.0 Quindi le impostazioni per server (a sinistra) e un client ad esempio (a destra) sono le seguenti: 6/16
Tutti i client devono, inoltre, essere in grado di accedere alla cartella condivisa sul server che contiene base dati ed impostazioni di SIDA. L'impostazione va eseguite mediante la seguente maschera Configurazione server... attivabile da tutti i moduli di SIDA nel menù Impostazioni. Non devono essere attivi firewall personali che possano bloccare il traffico del sistema o, in alternativa, se presenti configurati per permettere il traffico sulle porte specificate. 7/16
La macchina server deve essere configurata per agire da server del sistema SIDA. La macchina server deve essere collegata ad un router solo tramite lo switch della rete locale (no router collegato direttamente al server su un interfaccia di rete separata). Per una sicurezza generale dell'impianto è opportuna la presenza di un firewall che verifichi il traffico di rete da e verso una sede. Il firewall dovrà essere configurato per permettere il traffico sulle porte TCP 1535 (n.b. quasi tutti i router in commercio contengono un firewall) Nella sede principale il router dovrà essere configurato con l'indirizzo IP statico assegnato dal provider utilizzato. Su questa macchina andranno operate le operazioni di configurazione lato server del sistema successivamente illustrate. Il sistema lato server supporta i sistemi operativi della serie XP Pro, Vista Business, 7, Server 2000/2003/2008. Win98/WinME non sono supportati (in quanto non è detto che garantiscano la corretta gestione di un elevato numero di tabelle e connessioni TCP/IP contemporanee). Inoltre non è possibile utilizzare il servizio SidaSync ma solo la modalità applicazione SidaSyncTest che, come dice anche il nome, è fatta solo per debug e monitoraggio. 98/ ME possono invece essere utilizzati come client. Configurazione di rete richiesta Sede principale 1. ADSL (7Mb o superiore) 2. Indirizzo IP STATICO 3. Router con possibilità di gestione firewall e servizi virtual Sedi secondarie 1. ADSL (7Mb o superiore) 2. Router con possibilità di gestione firewall e servizi virtual 8/16
Architettura del software L'architettura software del sistema si traduce nella presenza di un servizio, chiamato SidaSync, che, in funzione dei parametri di configurazione svolge il ruolo di slave o master: e di un applicativo stand-alone per il monitoraggio del sistema e l'impostazione dei parametri di configurazione, il Pannello di controllo di Sida Multisede OnLine: La configurazione dei moduli avviene mediante questa maschera, presente nel menu Impostazioni del Pannello di Controllo; nella sezione Tipo di server si specifica se il 9/16
servizio dovrà operare all'interno della sede principale (server Master) o su sedi secondarie (server Slave). Configurazione Master Spuntare Master Indicare al sistema il numero di sedi secondarie che si andranno a interfacciare Indicare l'indirizzo IP del server master sulla rete locale. Questo indirizzo deve essere raggiungibile da tutti i client della sede principale quindi è l'indirizzo sulla rete locale del master (ad esempio: 10.0.0.10) e non quello pubblico. Come già indicato questo indirizzo deve essere fisso e non assegnato da un DHCP. 10/16
Configurazione slave spuntare Slave in questo caso è necessario battezzare per il sistema la sede secondaria attraverso un progressivo partendo da 1 (che deve coincidere con la configurazione delle autoscuole nella gestione, cioè la sede 1 è la prima delle sedi secondarie e la seconda nella lista delle autoscuole, la sede 2 è la seconda sede secondaria e la terza nella lista delle autoscuole). E' molto importante che gli indicativi di sede siano progressivi e coerenti con l'informazione sul numero di sedi comunicata al modulo del sistema della sede principale (vedi punto precedente). come nel caso del master è necessario indicare l'indirizzo del server locale. Questo indirizzo deve essere raggiungibile da tutti i client della sede principale quindi è l'indirizzo sulla rete locale del master (ad esempio: 10.0.0.10 oppure 192.168.1.10) e non quello pubblico. Questo indirizzo deve essere fisso e non assegnato da un DHCP. per ultimo va indicato l'indirizzo pubblico del server master. Il server master deve essere raggiungibile solo dal server slave e non è necessario che i client ne abbiano visibilità. 11/16
Configurazioni in comune Una volta attivato il sistema non togliere mai la spunta da server attivo con il sistema in produzione. Può essere fatto per brevi istanti nella certezza che nessuno, né presso la sede principale, né presso le sedi secondarie possa modificare la base dati. Se dovesse succedere è necessario procedere nuovamente alla sincronizzazione completa dei dati tra tutte le sedi. La casella Acquisizione delle modifiche remote indica ogni quanti secondi lo slave si collega al server per ricevere le modifiche apportate dalle altre sedi. Il valore 5 x N = numero delle sedi sembra essere un buon default. Se la rete Internet è lenta 5 secondi potrebbero non bastare per completare una operazione quindi se il server mostra segni di rallentamento provare ad incrementare questo valore (10, 15, 30, 60, 120,...). In ambedue le modalità di configurazione il sistema prevede la possibilità di abilitare delle funzioni di logging delle operazioni, specificando delle soglie sul tracciamento dell'attività. Questa funzione permette il monitoraggio di tutti i moduli del sistema al fine di garantire un funzionamento corretto e semplificando l'eventuale ricerca di malfunzionamenti. Le informazioni di configurazione vengono salvate all'interno di un file chiamato sidasync.ini condiviso sulle cartella c:\aq\dat del server locale di sede; è quindi necessario che tutti i client siano in grado di accedere e leggere correttamente le informazioni presenti in questo file. I diversi moduli del sistema si scambiano informazioni di versione al fine di garantire le corretta cooperazione delle funzioni svolte e preservare i dati da eventuali malfunzionamenti causati da moduli del sistema non aggiornati. Il Pannello di Controllo può essere utilizzato per eseguire delle verifiche di funzionalità dell'impianto. Quando è tutto a posto conviene mettere il tutto in esecuzione automatica tramite servizio. La finestra mostra lo stato di Servizio fermo. In questa modalità i client non funzionano. Per avviare in modalità test cliccare su Avvia. Per avviare in modalità servizio cliccare su 12/16
Avvia servizio. Per usare il pannello di controllo è necessario avere i privilegi necessari per avviare ed arrestare servizi. Il pulsante Arresta serve per fermare sia la modalità test sia la modalità servizio. La finestra Service Log mostra i log attualmente impostati (in questo caso in modalità informativa). Si consiglia di abilitare, almeno per una prima fase di verifica del sistema, le funzionalità di logging ad un livello minimo Warning o meglio Informativo. In questo modo il sistema genera progressivamente un file di tracciamento delle attività chiamato sidasync_log.txt all'interno della cartella C:\Aq\Logs. Questo file testuale permette l'immediata rilevazione di eventuali di malfunzionamenti di configurazione o anomalie sui dati gestiti e viene visualizzato live dal Pannello di Controllo. A sistema pienamente operativo e stabile si potrà procedere ad un'eventuale disabilitazione di questa funzionalità o impostazione solo in modalità Errori. Modalità test In modalità test si attivano i pannelli Connessione server, Client connessi, TCP/IP client e Risorse preallocate 13/16
Connessione server: indica la presenza di connettività dal server slave verso il server master. Se la casella è rossa significa che lo slave non è connesso con il master (master spento, adsl down,...). Questo non influenza l'operatività della sede in quanto la preallocazione delle risorse e la copia distribuita del db permettono il funzionamento normale dei client locali. Nell'esempio a fianco il master non è raggiungibile ma un client è comunque connesso e operativo. La casella verde indica connettività con il master. Client connessi: indica il numero dei client connessi in rete locale. Per controllare che tutti i client siano correttamente collegati provate a lanciare la gestione su tutti i client della rete locale. Ad uno ad uno devono essere elencati nella finestra che segue. Se ne manca qualcuno controllate le impostazioni di rete (indirizzi ip) e del server sida. Risorse preallocate: mostra l'elenco delle risorse preallocate a disposizione della sede secondaria. Per ogni tabella condivisa viene mostrato il dato numero di autonomia (ad esempio sdanag.dat = 99, 99% significa che è possibile inserire ancora 99 pratiche in modalità offline prima che il sistema abbia bisogno di una connessione verso il server master per ricaricarsi. Quando torna la connettività il sistema di ricarica automaticamente al raggiungimento dell'80% di autonomia. L'autonomia è stata tarata sulle varie tabelle per circa 100 pratiche. I numeretti sotto corrispondono ai numeri di pratica preallocati. La prossima pratica generata da questa sede prenderà il numero 194. 14/16
Questi pannelli non sono di nessuna utilità al cliente cui non vanno, secondo noi, neanche spiegati. Serviranno solo per la configurazione e la nostra l'assistenza. Modalità servizio In modalità servizio tutti i controlli aggiuntivi sono disabilitati. La casella principale mostra il servizio in esecuzione e la finestra sotto i file di log. Connessione server e client connessi sono disabilitati. In questa modalità si lancia il pannello di controllo solo per vedere i file di log oppure per passare ad altra modalità. 15/16
Lista di controllo per procedura di installazione Di seguito vengono indicati i passi da seguire per la prima installazione del sistema, sarà necessario attivare inizialmente il modulo Server-master della sede principale e successivamente i moduli Server-slave delle sedi secondarie. Per maggiore sicurezza in fase di installazione si consiglia di eseguire una backup degli archivi di tutte le sedi secondarie. 1. Verifica della rete locale della sede principale ed identificazione del server 2. Configurazione del router e dei firewall per l'accesso dall'esterno al server sulla porta 1535 3. Installazione del software sul server Master ed aggiornamento di tutti i client (versione minima 2009.1.1) 4. Configurazione di SIDA Multisede Online sul Master: indicazione del numero delle sedi, log informativi e avvio del Pannello di Controllo del server quindi Avvio 5. Lanciare la gestione su tutti i client e verificare che nella lista dei client connessi siano tutti presenti (se ne manca qualcuno vuol dire che non legge il file sidasync.ini dal server) 6. Verificare da un client Gestione le impostazioni dell'elenco autoscuole e stampare l'elenco: servirà per la numerazione delle sedi secondarie (punto 10) 7. Non avviare il servizio finchè non sono completati i test. Il servizio arrestato dal pannello di controllo è Arrestato e in Esecuzione manuale Ripetere i punti da 8 a 12 per ogni sede secondaria: 8. Verifica della rete locale della sede ed identificazione del server locale 9. Installazione del software sul server Slave ed aggiornamento di tutti i client (versione minima 2009.1.1) 10. Configurazione di SIDA Multisede Online sullo Slave: indicazione del progressivo della sede e avvio del Pannello di Controllo del server quindi Avvio 11.Eseguire una SINCRONIZZAZIONE COMPLETA dallo Slave (potrebbe richiedere da pochi istanti a oltre mezzora in funzione della mole del database della sede principale). ATTENZIONE: TUTTI I DATI PRESENTI NEL SERVER SLAVE VENGONO CANCELLATI E AGGIORNATI CON I DATI PROVENIENTI DALLA SEDE PRINCIPALE 12. Lanciare la gestione su tutti i client e verificare che nella lista dei client connessi siano tutti presenti (se ne manca qualcuno vuol dire che non legge il file sidasync.ini dal server) Operazioni conclusive 13. Quando l'impianto ha superato tutti i test Impostare i log informativi in modalità warning o errore 14.Attivare in modalità servizio in tutte le sedi Al termine di questi passi il sistema risulterà correttamente configurato ed operativo. 16/16