Corso di certificazione base - FORMAZIONE TECNICA SISTEMISTICA APPLICATIVA - Documentazione ...
←
→
Trascrizione del contenuto della pagina
Se il tuo browser non visualizza correttamente la pagina, ti preghiamo di leggere il contenuto della pagina quaggiù
FORMAZIONE TECNICA SISTEMISTICA APPLICATIVA Corso di certificazione base Il software che crea successo
Prima giornata • Introduzione alle tecnologie • Requisiti HW/SW applicazioni HR/AGO • Database: installazione e manutenzione SQL Server • JVM: reperimento, tecnologia e installazione su Windows • Tomcat: reperimento, tecnologia a installazione su Windows • Analisi ed utilizzo Tomcat Manager e log di Tomcat • JDBC Driver e configurazione DBConfig • Installazione e configurazione MIPHR/PagheW • Parametrizzazioni applicative: DMS, Percorsi, HR Abilitazioni, Live Update, Gadget aggiornamenti, Licenza applicativa • Introduzione ai Web Server: installazione e configurazione Microsoft IIS 2
Seconda giornata • Database: installazione e manutenzione PostgreSQL • JVM: reperimento, tecnologia e installazione su Linux • Tomcat: reperimento, tecnologia a installazione su Linux • JDBC Driver e configurazione DBConfig • Installazione e configurazione MIPHR/AGO • Parametrizzazioni applicative: DMS, Percorsi, HR Abilitazioni, Live Update, Gadget aggiornamenti, Licenza applicativa • Introduzione ai Web Server: installazione e configurazione Apache HTTPD 3
Introduzione alle tecnologie CLIENT SIDE SERVER SIDE BROWSER WEB SERVER SERVLET CONTAINER DATABASE WEBAPPS MS Internet Explorer MS SQL Server MS IIS Apache Tomcat Google Chrome PostgreSQL Apache HTTPD Mozilla Firefox Oracle 4
Introduzione alle tecnologie CLIENT SIDE SERVER SIDE HTTP 80 BROWSER HTTPS 443 AJP 8009 WEB SERVER JDBC MSSQL 1433 SERVLET CONTAINER POSTGRES 5432 ORACLE 1521 DATABASE 5
Database – Installazione e configurazione MS SQL Server 2016 Attenzione: MS SQL Server (qualsiasi versione) va installato nella stessa lingua del sistema operativo. Scaricare il download al seguente link: https://www.microsoft.com/it-IT/download/details.aspx?id=54284 Scaricare MS SQL Server Management Studio per la gestione del DB: https://docs.microsoft.com/it-it/sql/ssms/download-sql-server-management-studio-ssms Per i riferimenti dettagliati di installazione consultare il link: https://corso.zucchettilab.it/index.html 8
Alcune operazioni potranno richiedere il riavvio di Windows invece nel caso di avvisi è possibile proseguire con l’installazione. 9
• Selezionare: Servizi motore di database • Scegliere la Directory radice istanza • Assegnare il nome dell’istanza desiderata 10
• Motore di Database di SQL Server ->Tipo di avvio AUTOMATICO • SQL Server Browser -> Tipo di avvio DISABILITATO • Per i DB Microsoft l’encoding standard è Latin1_General_CI_AS. 11
• Selezionare Modalità mista scegliendo una password per l’ accesso dell’utente sa • Aggiungi utente corrente: permette in aggiunta l’accesso come amministratore dell’istanza all’utente di Windows che ha installato il servizio 12
• Installare il tool SQL Management Studio per la gestione dell’istanza installata 13
• Eseguire lo strumento StrumentoGestione Configurazione SQL Server ed abilitare il protocollo TCP/IP indicando la porta in ascolto del servizio per gli IP in uso (default 1433) impostando la stessa come statica e non dinamica 14
• Accedere ad MS SQL Management Studio e creare un nuovo database (Es. MIPZUCCHETTI) 15
• Impostare per il file di data (mdf) l’opzione di crescita con incremento di 512MB, mentre per il file di log un incremento di 256MB 16
• Tipo di Autenticazione: SQL Server • Applica Criteri Password: E’ possibile lasciarla attiva ma impostare una password complessa ed alfanumerica 17
• Eseguire sul DB creato una nuova query che cambierà il ruolo di DBOwner per l’utente SQL creato: sp_changedbowner ‘zucchetti’ 18
Eseguire la query: alter database NOMEDB set read_committed_snapshot on with rollback immediate; per abilitare l’isolamento dello snapshot 19
JAVA – Cenni e storia • All’inizio degli anni ‘80 la diminuzione del prezzo dell’hardware e l’aumento delle performance aveva aperto la strada alla diffusione di Internet e al suo utilizzo come mezzo per la distribuzione di applicazioni. • La complessità dei linguaggi di programmazione allora presenti (ad esempio il C) convinse la Sun Microsystem, in collaborazione con Netscape Corporation, a creare un linguaggio di programmazione adatto alla nuova generazione di applicazioni allora in progettazione, nacque così Oak, da cui, l’anno dopo derivò Java 20
JAVA – Caratteristiche Java nasce con l’intento di creare un linguaggio Object Oriented che permettesse di gestire quelli che allora si ritenevano i due problemi più rilevanti : • Creare un linguaggio ad oggetti più semplice da programmare del C++ • Permettere la creazione di programmi slegati da una architettura precisa 21
JAVA – Caratteristiche • Il primo degli obbiettivi fu raggiunto liberando il programmatore dall’onere della gestione della memoria (e togliendo dalle sue mani la gestione dei puntatori) creando un linguaggio destinato alla grande diffusione basato su un sistema di gestione della memoria chiamato Gargbage Collector in cui automaticamente la memoria viene assegnata e rilasciata a seconda delle esigenze del programma. • Il secondo punto fu invece risolto applicando il concetto di Macchina Virtuale (JVM) e facendo sostanzialmente in modo che i programmi siano compilati in una sorta di codice “intermedio” (chiamato bytecode) che non è destinato ad essere eseguito direttamente dall’hardware ma che deve essere, a sua volta, interpretato da un secondo programma, la macchina virtuale appunto. Questo significa che lo stesso codice può essere eseguito su più piattaforme semplicemente trasferendo il bytecode (e non più il sorgente) purché sia disponibile una JVM. 22
JAVA – Come funziona una JVM Class Loader Area dei Registri Heap Stack Metodi Runtime Data Area Execution Native Engine Interface 23
JAVA – Come funziona una JVM Elementi della JVM – La memoria • Area di memorizzazione dei metodi L'area di memorizzazione dei metodi contiene le tabelle dei simboli necessari per il link dinamico, informazioni di debug aggiuntive, ambienti di sviluppo da associare all'implementazione di qualsiasi metodo e i bytecode di Java che implementano tutti i metodi presenti nel sistema. • Registri I registri della macchina virtuale di Java sono affini ai registri che si trovano in un computer reale, essi contengono lo stato in cui si trova la macchina durante le operazioni, influiscono sul funzionamento di quest'ultima e vengono aggiornati dopo l'esecuzione di ciascun bytecode. • Heap Con il termine heap si fa riferimento a quella zona della memoria nella quale vengono allocati gli oggetti appena creati. Al momento dell'avvio della JVM, una certa area di memoria viene assegnata allo heap. Il Garbage collector è deputato alla rimozione degli oggetti non più utilizzati dal programma man mano che questo è in esecuzione. • Stack Lo stack viene utilizzato per passare i parametri alle istruzioni che vengono man mano eseguite e per ricevere i risultati da queste prodotti. 24
JAVA – Gestione della memoria • Poiché Java ha eliminato la necessità di una gestione della memoria a livello di programmazione, la memoria viene gestita automaticamente da un sistema che si occupa di “pulire” le aree di memoria allocate e di rendere disponibili per successive operazioni. • Il Garbage Collector (GC) si occupa di verificare che l’elemento presente in memoria non sia più referenziato e, se l’elemento non ha riferimenti lo elimina liberando la memoria occupata e rendendola disponibile. L’intervento del GC che blocca tutte le attività della JVM fino al termine del suo intervento. • Nel caso di un intenso utilizzo della memoria può accadere che gli interventi del GC non portino ad una effettiva liberazione delle aree di memoria o che la memoria non abbia aree contigue disponibili (memory leak). In questo caso la JVM può far intervenire il GC in modo quasi continuo portando ad un blocco della JV e ad un necessario riavvio. • L’esaurirsi delle risorse disponibili può portare a rilevare degli errori di memoria. 25
JAVA – Reperimento ed installazione • Quella di seguito descritta interesserà l’installazione della Java di Oracle/SUN versione 1.8 upd 144 con Modulo JDK su un S.O. Microsoft Windows Server 2016 • Prelevare il file dal sito della Oracle/SUN regolandosi sulla versione certificata con gli applicativi da utilizzare http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html • Per i riferimenti dettagliati di installazione consultare il link: https://corso.zucchettilab.it/index.html 26
• Lo standard Zucchetti prevede l’installazione nel percorso: unità:\Zucchetti\Java relativamente al mondo HR o AGO 27
• Per l’installazione della parte JRE il setup propone di default il percorso di installazione C:\Program Files\Java\jre1.8.0_144. E’ possibile lasciare questo percorso invariato 28
Apache Tomcat – Reperimento ed installazione • Quella di seguito descritta interesserà l’installazione di Apache Tomcat versione 8.5.16 su un S.O. Microsoft Windows Server 2016 • Prelevare il file dal sito dell’Apache Org. regolandosi sulla versione certificata con gli applicativi da utilizzare https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.16/bin/ • Per i riferimenti dettagliati di installazione consultare il link: https://corso.zucchettilab.it/index.html 29
• Avviare l’installazione e scegliere l’opzione NEXT alla prima maschera, alla successiva selezionare I AGREE per continuare • Scegliere il Tipo di installazione “Normal” • Selezionare nelle opzioni sottostanti il campo “Service Startup” all’interno della voce “Tomcat” al fine di attivare lo startup automatico del servizio in caso di riavvio del server 30
• Per il percorso della Java da utilizzare riportare interamente il path dell’installazione indicata precedentemente della JDK, sostituendo quello riportato di default • Compilare i valori in base alla configurazione del server ospitante utilizzando porte TCP/IP libere • Denominare il servizio con il riferimento all’ambito ed inserire i valori relativi all’utente manager del tomcat (user e password) 31
• In presenza di più nodi Tomcat, creare delle nuove directory di installazione Es. TomcatB, configurando porte TCP/IP diverse rispetto al servizio Tomcat già installato • Compilare il percorso di installazione del Tomcat seguendo lo standard Zucchetti: unità:\Zucchetti\TomcatA relativamente al mondo HR o AGO 32
• Impostare l’utente che gestisce il servizio interagendo con la sezione relativa alla Connessione • In questa sezione è possibile avviare il servizio per verificarne la corretta funzionalità • Avviare avviare un browser Internet e digitare il percorso: http://localhost:8080 33
• All’interno del percorso C:\Zucchetti\TomcatA\conf editare il file “catalina.properties” Sostituendo tutto il blocco tomcat.util.scan.StandardJarScanFilter.jarsToSkip=\ con la sola riga tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar • Individuare nello stesso file il parametro tomcat.util.scan.StandardJarScanFilter.jarsToScan=\ log4j-web*.jar,log4j-taglib*.jar,log4javascript*.jar,slf4j-taglib*.jar sostituendolo con il seguente tomcat.util.scan.StandardJarScanFilter.jarsToScan=\ log4j-web*.jar,log4j-taglib*.jar,log4javascript*.jar,slf4j-taglib*.jar,standard.jar • All’interno del percorso C:\Zucchetti\TomcatA\conf editare il file “logging.properties “ aggiungendo alla fine del file il seguente parametro org.apache.catalina.webresources.Cache.level = SEVERE al fine di non registrare tutti i messaggi informativi di Apache Tomcat nelle fasi di avvio del servizio 34
JAVA_OPTS per AGO -XX:MaxMetaspaceSize=768m -Xss768m -XX:MaxMetaspaceFreeRatio=75 -Dorg.apache.catalina.STRICT_SERVLET_COMPLIANCE=false JAVA_OPTS per HR -XX:MaxMetaspaceSize=768m -Xss768m 35
JAVA – Gestione della memoria ed eventuali problemi • E’ possibile intervenire, tramite opportuni parametri, sul sistema di gestione della memoria della JVM. -Xmx Dimensione massima dell’HEAP -Xss Dimensione dello STACK (per thread) -XX:MaxMetaspaceSize Dimensione massima del Permanent Generation • Se il GC non riesce a gestire correttamente la memoria o se le richieste di allocazione di memoria superano la memoria momentaneamente disponibile viene generato un errore di OutOfMemory. ERROR: java.lang.OutOfMemoryError: Metadata space Indica che la memoria di Metaspace è esaurita Aumentare il parametro di memoria -XX:MaxMetaspaceSize ERROR: java.lang.OutOfMemoryError: Java Heap space Indica che la memoria di Heap è esaurita • Aumentare il parametro di memoria -XmX 36
Tomcat – Utilizzo ed accesso Tomcat Manager Per accedere al Tomcat Manager è necessario per ragioni di sicurezza autorizzare in modo esplicito quali IP abilitare modificando il file TomcatA/webapps/manager/META-INF/context.xml Gli IP localhost sono già abilitati Aggiungere l’IP desiderato nel parametro “allow” come evidenziato allow="192\.\168\.\1\.\110|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> in alternativa usare allow=".*" /> oppure allow="\d+\.\d+\.\d+\.\d+|127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> per consentire l’accesso al Tomcat Manager da qualsiasi IP 37
Tomcat – Tomcat Directory e Logs La directory di installazione di Tomcat è organizzata nelle seguenti sottodirectory: • Bin (contiene gli script per avviare, riavviare e arrestare Tomcat) • Conf (sono contenuti i file di configurazione di tomcat, i più importanti sono server.xml e web.xml) • Lib (contiene i file jar di cui Tomcat fa uso) • Log (sono presenti tutti i file di log per monitorare l'andamento del servizio) • Temp (contiene file temporanei generati dal server in runtime) • Webapps (Il cuore di Tomcat. In questa cartella ci sono tutti i file war dei quali abbiamo fatto il deployed) • Work (sono contenute tutte le Servlet che sono state generate da una pagina JSP) 38
Tomcat – Tomcat Directory e Logs Analizzando in dettaglio la directory log, possiamo notare che ad ogni avvio del servizio Tomcat saranno creati i seguenti files In ogni file di log sono registrate tutte le attività inerenti il servizio installato, Java OPTS configurate ed eventuali errori collegati ai contesti in esecuzione 39
Installazione e configurazione MIPHR/PagheW Ogni applicativo necessita della licenza Il cliente può scaricare le licenze applicative da MyZucchetti (solo con l’utenza del cliente alla quale è stato registrato il contratto). La licenza viene generata automaticamente in base al contratto inserito nel sistema informatico, normalmente il processo automatico viene completato il giorno successivo al caricamento del contratto. Ad oggi ci sono quattro tipi di licenze: HR (MIP, PagheWEB, HR-WorkFlow, CU770WEB, Presenze, etc.) AGO ATOOL START La licenza consiste in un file xml, it.zucchetti.infinity.license.xml, che va copiata nella cartella WEB-INF/cfg di ogni applicativo, assicurandosi che sia la licenza corretta per il tipo di applicativo (HR, AGO, ATOOL, START). Eseguire l'amministrazione del database con licenze non corrette (o con moduli diversi da quelli poi utilizzati) può dare origine ad anomalie applicative. 40
Installazione e configurazione MIPHR/PagheW DBConfig DBConfig MSSQL (2005 e successivi) JDBCConnectionURL.1=jdbc:sqlserver://192.168.0.1:1433;DatabaseName=DBNAME JDBCDriver.1=com.microsoft.sqlserver.jdbc.SQLServerDriver UserName.1=username Password.1=password Instance.1=SERVLET DefaultUserTimeout=3600 DBConfig POSTGRESQL JDBCConnectionURL.1=jdbc:postgresql://192.168.0.1:5432/DBNAME JDBCDriver.1=org.postgresql.Driver UserName.1=username Password.1=password Instance.1=SERVLET DefaultUserTimeout=3600 DBConfig ORACLE (verificare la compatibilità dei moduli con Oracle, quali AGO) JDBCConnectionURL.1=jdbc:oracle:thin:@192.168.0.1:1521:ORACLE_SID JDBCDriver.1=oracle.jdbc.driver.OracleDriver UserName.1=username Password.1=password Instance.1=SERVLET DefaultUserTimeout=3600
Installazione e configurazione MIPHR/PagheW Modalità di connessione al database Database Applicativo WEB file DBConfig driver jdbc WEB-INF/classes WEB-INF/lib Driver JDBC Il driver di connessione va aggiunto in ogni applicazione nella seguente directory: Applicazione/WEB-INF/lib È importante che nella directory WEB-INF/lib (di ogni applicativo web) non ci siano più driver per lo stesso database, ad esempio sqljdbc.jar e sqljdbc4.jar, oppure postgresql-8.4-703.jdbc3.jar e postgresql-9.3-1102.jdbc41.jar. Il driver va scaricato in base alle versioni del database e della java utilizzati: Microsoft JDBC: https://docs.microsoft.com/it-it/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql- server?view=sql-server-2017 Oracle JDBC: http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html PostgreSQL JDBC: https://jdbc.postgresql.org/download.html
Installazione e configurazione MIPHR/PagheW Per iniziare le attività di installazione collegarsi al portale MyZucchetti e scaricare l’ultimo installatore aggiornato dell’applicazione HRPortal Area Tecnica > Post-vendita > Prodotti > HR > Portale > Installazioni Prendere visione delle note PDF allegate ed una volta configurata correttamente la webapp all’interno del nodo Tomcat installato, comprensiva di licenza, DBConfig e driver jdbc, sarà richiesta l'esecuzione dell'amministrazione del database al fine di creare la struttura tabellare necessaria Al termine dell’amministrazione, eseguire il primo accesso con le seguenti credenziali Username: administrator Password: admin
Installazione e configurazione MIPHR/PagheW Al successivo riavvio dei servizi Tomcat, verrà richiesto dopo la successiva login, di aggiornare la password con una nuova In base alla complessità della password scelta, verrà assegnato un punteggio inerente il livello di sicurezza della stessa
Installazione e configurazione MIPHR/PagheW Il setup sistemistico inziale prevede la configurazione delle seguenti funzionalità: • Configurazione archivio DMS • Configurazione percorsi relativi ed assoluti • Configurazione Live Update • Configurazione gadget aggiornamenti • Configurazione gadget licenza applicativa • Configurazione HR abilitazioni per i moduli da installare/aggiungere
Installazione e configurazione MIPHR/PagheW • Impostare il percorso DMS in Workspace – Archivio – Impostazioni – Impostazioni Globali • Impostare i percorsi relativi ed assoluti delle webapps installate in in Pannello di Controllo – Sistema – Configurazione – Definizione Configurazione
Installazione e configurazione MIPHR/PagheW • Impostare le credenziali Live Update per lo scarico automatico degli aggiornamenti in Pannello di Controllo – Sistema – Aggiornamento – Sistema – Configurazione Live Update • Impostare il gadget per l’installazione degli aggiornamenti HR in Aggiungi Gadget – Portale ERM – Aggiornamenti Applicativi
Installazione e configurazione MIPHR/PagheW • Aggiungere in base agli applicativi installati, i relativi codici applicativi con abilitazioni agli ambienti in uso nel menu HR Abilitazioni dell’utente o gruppo di sicurezza • Impostare il gadget per l’installazione/rinnovo della licenza HR in MyHome - Aggiungi Gadget – Portale ERM – Gestione Licenza Applicativa
Introduzione ai Web Server : Microsoft IIS Quella di seguito descritta interesserà l’installazione di Microsoft IIS versione 8.X su un S.O. Microsoft Windows Server 2016 Microsoft IIS è un modulo nativo del sistema operativo Windows ed è installabile utilizzando lo strumento Server Manager nel menù Aggiungi Ruoli e Funzionalità Per i riferimenti dettagliati di installazione consultare il link: https://corso.zucchettilab.it/index.html
Introduzione ai Web Server : Microsoft IIS • Dal Server Manager del server aprire il menu Manage e cliccare su Add Roles and Features • Scegliere il componente Web Server (IIS)
Introduzione ai Web Server : Microsoft IIS • Aggiungere gli eventuali ulteriori componenti richiesti Aggiungere i seguenti Role services: • Performance – Dynamic Content Compression • Security – Windows Authentication (facoltativo per configurazione SSO) • Application Development – CGI • Application Development – ISAPI Extensions • Application Development – ISAPI Filters
Introduzione ai Web Server : Microsoft IIS • Aprire un browser e verificare il funzionamento di IIS testando l’url http://localhost
Introduzione ai Web Server : Microsoft IIS Una volta installato è possibile configurare IIS per l’interfacciamento con i nodi Tomcat, attraverso: • Configurazione filtro ISAPI Connettere Internet Information Services ai Tomcat senza aggiungere chiavi al registro di sistema di Windows • Configurazione Virtual Host Configurare diversi Virtual Host per permettere la pubblicazione di diversi applicativi web, anche aventi lo stesso nome, su siti differenti. Per i riferimenti dettagliati di installazione consultare il link: https://corso.zucchettilab.it/index.html
Puoi anche leggere