Uppgradering från Lokal Säkerhetstjänst v.2.15 (Windows) Dokumenthistorik Datum Version Namn Kommentar 16 Mar 2017 25 Sep 2017 18 Oct 2017 01 Nov 2017 09 Nov 2017 09 Nov 2017 19 Feb 2019 13 Sep 2019 0.1 Lexhagen, Magnus Dokument upprättat i Confluence 0.2 Lucas Lundström Uppdaterat instruktioner 0.3 Sundberg, Stefan Uppdaterat instruktioner 1.0 Unknown User (h. ferm) 1.1 Lexhagen, Magnus 1.2 Lexhagen, Magnus 1.3 Lexhagen, Magnus 1.4 Lexhagen, Magnus Fastställd Korrigerat collection name i MongoDB för pdl-loggar Lagt till info om konfiguration av NTjP-anslutningar Lagt till info om avveckling av HSA-WS och anslutning till HSA-TK Tagit bort extern beroende till HSA-kontrakt GetPersonAuthorizedToSystemIncludingProtectedPerson som endast används i den nationella installationen. 1. ALLMÄNT 1.1. Förutsättningar 1.2. Begrepp 1.3. Referenser 2. FÖRBEREDELSER 2.1. Hämta installationspaket 2.2. Backup 2.3. Kontrollera befintlig installation 2.4. Spärrtjänst - Kontroll av antal spärrar 2.5. MongoDB 3. UPPGRADERING 3.1. Rotera ut temporära loggarkiv (PDL-loggar) 3.2. Utför rensning av databas enligt patch 2.15.1 3.3. Nedstängning av Säkerhetstjänster 3.4. Backup 3.4.1. Backup av databas 3.4.2. Backup av filsystem 3.5. Installation av Säkerhetstjänster 2.17 3.5.1. Installation på första noden 3.5.2. Uppgradering på övriga noder 3.6. Migrering av konfiguration 3.7. Installation Infinispan cluster cache över TCP 3.8. Uppgradering av MySQL databas 3.8.1. Förberedelse 3.8.2. Uppgradering av databaserna 3.8.2.1. upgrade_mysql.bat 3.9. Uppgradering av Mongo databas 3.9.1. Uppgradera till version 3.4 3.9.2. Skapa index 3.10. Uppstart 3.10.1. Uppstart av lokal säkerhetstjänst 3.10.2. Kontrollera att alla noder ingår i infinispan-klustret 3.10.3. Kontrollera konfiguration av anslutningar till Nationell Tjänsteplattform 3.10.4. Kontroll efter uppgradering - Spärr GUI 3.11. Inläsning till Loggtjänsten 3.12. Användarhandbok 4. TEST 5. ROLLBACK 6. Efterarbete
1. ALLMÄNT Detta dokument ger instruktioner för hur man uppgraderar lokala Säkerhetstjänster version 2.15 till 2.17 i en Windows-miljö. NOTERA: Att installera och konfigurera Säkerhetstjänster kräver en viss teknisk IT-kompetens inom nätverk, databaser, operativsystem och eventuell felsökning. OBS! Uppgradering sker av befintliga tjänster och befintligt antal noder. Om nya tjänster ska läggas till kan dessa installeras vid uppgraderingen men konfigureras separat. Detsamma gäller om man vill gå från en "en-nods-installation" till ett kluster av noder. Även då måste konfigurationen uppdateras efteråt. Kontakta Säkerhetstjänster för mer information! Nya systemkrav För denna version krävs: Nya anslutningar till Nationell Tjänsteplattform för HSA*, Spärrtjänsten samt Personuppgiftstjänsten. Databasen MongoDB version 3.4 * Lokala Säkerhetstjänster har traditionellt använt HSA's äldre gränssnitt kallat HSA-WS. Detta gränssnitt är dock under avveckling och nya anslutningar tillåts därför inte. Som ny anslutning räknas även en befintlig installation som byter certifikat. Det är därför rekommenderat att man som ansvarig för en lokal installation av Säkerhetstjänster planerar en övergång till det nyare gränssnittet HSA-TK. Se nedan vilka av HSA's tjänstekontrakt man via Inera's elektroniska beställningsstöd måste ansöka om access till. Se även 2.17 Release Notes Om man går över från HSA-WS till HSA-TK vill HSA gärna veta när den gamla anslutningen kan tas bort. SITHS-certifikat Sedan april 2019 är det inte rekommenderat att använda SITHS-certifikat för Webbsidor (front-end) eftersom SITHS som utgivare har beslutat sig för att lämna Microsofts rotcertifikat-program. Man vill fortfarande ha ett SITHS-certifikat för t.ex Spärrtjänstens WebService-gränssnitt och för att kunna kommunicera med t.ex NTjP men man bör alltså även beställa ett certifikat till front-end-domänerna från annan utgivare t.ex SSL-certifikat från Telia eller DigiCert. Notera att till skillnad från SITHS så har övriga utgivare stöd för Subject Alternative Name, SAN, i sina certifikat så det ska räcka med ett certifikat för alla front-end-domäner i en installation (app, idp, secure.idp) och ett SITHS-certifikat för ws-domänen. För befintliga installationer med SITHS-certifikat i front-end finns en guide skriven: Byta bort SITHS-cert i frontend
1.1. Förutsättningar Nedan listas de förutsättningar som måste uppfyllas för att en uppgradering skall lyckas. En fungerande installation av Säkerhetstjänster 2.15. Installationspaketet för uppgradering till Lokala Säkerhetstjänster 2.17 skall finnas tillgängligt. Behörighet att via NTjP anropa nytt kontrakt i Personuppgiftstjänsten - GetPersonsForProfile v3 Behörighet att via NTjP anropa nya kontrakt i Nationella Spärrtjänsten - GetBlocks v4 - RegisterBlock v4 - UnregisterBlock v4 - RegisterTemporaryRevoke v4 - UnregisterTemporaryRevoke v4 Behörighet att via NTjP anropa HSA-kontrakt via Nationella Tjänsteplattformen (i de fall man inte kan fortsätta använda HSA-WS) - GetHealthCareUnit V2 - GetHealthCareUnitList V2 - GetEmployeeIncludingProtectedPerson V2 - GetCredentialsForPersonIncludingProtectedPerson V2
1.2. Begrepp Begrepp Bundle Infinispan Multicast Rollback Singel-installation Lokal Säkerhetstjänst <version> Beskrivning Komponent av mjukvara som utgör tjänsterna i Säkerhetstjänster. Distribuerad cache för koordinering av värden gemensamma för flera noder. Gruppsändning till en eller flera noder samtidigt Används av applikationsservrarna. Återställning av systemet till dess utgångsläge, dvs den versionen innan uppgradering startade. En installationsform där endast en nod används. Tjänsten som kör Säkerhetstjänster på servern.
1.3. Referenser Referensnr Namn Adress Ref 1 Inera AB www.inera.se
2. FÖRBEREDELSER Förberedelser som bör göras en tid (dagar) innan själva uppgraderingen ska utföras.
2.1. Hämta installationspaket För över installationspaketet till en temporär katalog på den maskin (nod1) där uppgraderingen av Säkerhetstjänster ska ske och packa upp den. Under uppgraderingens gång kommer vi att hänvisa till installationspaketet på ett flertal ställen. Vi placerar det under följande struktur: C:\temp\Lokal_sakerhetstjanst Samtliga kommandon i dokumentet går att använda om ni följer samma struktur. Om ni placerar installationspaketet under en annan struktur så måste ni anpassa sökvägarna innan ni exekverar de angivna kommandona.
2.2. Backup Våra rekommendationer är att en backup av såväl applikatoriska som databasrelaterade resurser görs för att underlätta scenariot där en rollback är nödvändig. Tillvägagångssätt för detta beskrivs i senare kapitel.
2.3. Kontrollera befintlig installation Kontrollera vilken version som är installerat. Systemets version skall vara 2.15 1. 2. Logga in i administrationsgränssnittet. Vilket uppdrag som väljs har ingen betydelse. Gå till menyn Hjälp. Klicka på undermenyn Om Säkerhetstjänster för att se vilken version som är installerad.
2.4. Spärrtjänst - Kontroll av antal spärrar Om spärrtjänsten är installerad på systemet så är det nödvändigt med en uppdatering av databasen. Som förberedelse för uppdateringen ska en kontroll av antalet befintliga spärrar göras. OBS Denna förberedelse ska utföras direkt innan uppgraderingen så att det inte hinner tillkomma några spärrar. Logga in i administrationsgränssnittet. Välj Spärr -> Replikeringsstatus Skriv ner antalet lokala spärrar och tillfälliga hävningar.
2.5. MongoDB Läs guiden för att veta vad som krävs vid en uppgradering till version 3.4 MongoDB - Uppgradera 3.0 till 3.4.
3. UPPGRADERING När samtliga förberedelser i kapitel 2 är gjorda kan uppgraderingen påbörjas.
3.1. Rotera ut temporära loggarkiv (PDL-loggar) Om loggtjänsten är installerad i befintliga installationen av Säkerhetstjänster så bör man kontrollera att alla PDL-loggar finns lagrade i arkivfiler innan man stänger ner och uppgraderar för att dessa inte ska försvinna. Notera Se till så att ingen kan göra serviceanrop mot den lokala Säkerhetstjänsten. Ingen spärr, logg eller samtyckes-administration via webbgränssnittet får utföras under tiden loggarna roteras ut ur systemet. Lösningsförslaget från vår sida är att stänga ner följande bundlar på samtliga noder: com.logica.se.bif.log.ws.impl_3.0.0 com.logica.se.bif.block.web.war_3.0.1 com.logica.se.bif.consent.web.war_3.0.0 com.logica.se.bif.logreport.web.war_3.0.0 com.logica.se.bif.patientrelation.web.war_3.0.0 Utför kommandona nedanför på samtliga bundlar i listan ovan. (OBS Filteringen vid ss kan inte ta emot underscore "_") osgi> ss com.logica.se.bif.log.ws.impl id State Bundle 368 ACTIVE com.logica.se.bif.log.ws.impl_3.0.0 osgi> stop 368 osgi> Upprepa ss com.logica.se.bif.log.ws.impl och bekräfta att state står som RESOLVED. Detta är en mekanism som roterar ut loggposter och det sker automatiskt (default var sjätte timme). vid uppgraderingar är det viktigt att dessa loggar roteras ut från respektive nods temporära arkiv. För att snabba på den processen kan man ställa ned rotationstiden till exempelvis 30 sek, se stegen nedan. Uppdatera generella konfigurationen så att nya loggposter ligger kvar i databasen sinkdb1 (MySQL) och befintliga loggposter roteras ut från temporära arkiv. Logga in i Admin GUI. Gå till Administration -> Generell Konfiguration. Uppdatera (glöm inte att klicka på spara knappen): Log Logsource Consumer 1.0.0 Max queue time time = 10000(millisekunder) Log File Archive Store 1.0.0 Max Archive Rotation Time = 30 (sekunder) Auto Archive Rotate Check Interval = 30 (sekunder) Vänta 2-3 minuter så att temporära loggarkiv kan roterats ut till permanent lagring. Kontrollera följande på alla noder i klustret. Kontrollera att mappen C:\Program Files\Inera\Lokal Sakerhetstjanst2.15\local\data\xlog\archive\archivers\archiver1 bara innehåller.temp filer och inga.xml filer. Det är viktigt att man ser till att inga xml:er finns där, i sådana fall får man avvakta tills arkiven roterats ut permanent. Detta steg måste skötas av systemet och inget man får göra manuellt. Kontrollera logstatus i webbgränssnittet, gå till Loggrapport-> Status och ta en skärmdump enligt den nedanför eller notera antalet loggar under samtliga kategorier. Figur: Status för onlinedatabasen
Ändra status på alla arkiv i databasen så att dessa inte hanteras av systemet när rensning av loggar i Mongo DB ska göras. Gör det genom att i exempelvis via konsolen i MySQL Workbench (http://www.mysql.com/products/workbench/) köra kommandona nedanför. (glöm inte att börja med ert eventuella prefix vid USE kommandot) USE [prefix_]logreport; UPDATE archive_online SET state = 'Error'; Kontrollera att ingen logg har lagts på kö för inläsning genom att köra kommandot: SELECT COUNT(*) FROM `[prefix_]sinkdb1`.`log_container`; Skulle kommandot resultera i något annat än 0 så betyder det att loggar har skrivits medan de skulle roteras ut och kollektionen, kontakta supporten.
3.2. Utför rensning av databas enligt patch 2.15.1 Notera Gäller endast om patch 2.15.1 inte utförts. Se release notes: 2.15.1 Release Notes Rensa MySQL-databasen blkloc. Innan man uppgraderar till 2.17 bör man rensa spärrdatabasen på onödiga rader. Börja därför med att ta en backup av databasen blkloc och följ sedan instruktionerna Rensning av databasen blkloc.
3.3. Nedstängning av Säkerhetstjänster Stäng ned Säkerhetstjänster 2.15 på alla noder i klustret. Öppna Kontrollpanelen Gå till Services (under Administrative tools) Stoppa tjänsten Lokal Säkerhetstjänst 2.15 Sätt tjänsten i Startup Type Disabled
3.4. Backup 3.4.1. Backup av databas Notera Det är viktigt att man nu tar en fullständig backup av databaserna för den befintliga installationen av Säkerhetstjänster innan installation av en ny version i scenariot att en rollback skulle vara nödvändig eller om databasen av någon anledning skulle bli korrupt vid uppgradering av densamma. Detta kan göras på olika sätt, för MySQL finns t.ex. MySQL Workbench (http://www.mysql.com/products/workbench/) För MongoDB så finns det flera olika rekomendationer för backup. Länken går till 3.0 men det går att söka på den relevanta versionen i dokumentationen: https://docs.mongodb.com/v3.0/tutorial/backup-and-restore-tools/ 3.4.2. Backup av filsystem Notera Det rekommenderas att säkerhetskopiera filsystemet tillhörande Lokala Säkerhetstjänster 2.15. Samtliga mappar under: C:\share tillhörande Lokala Säkerhetstjänster 2.15 (Sakerhetstjanst2.15, logreports, temparea, xlog_archive, archive) samt under: C:\Program Files\Inera\Sakerhetstjanst2.15
3.5. Installation av Säkerhetstjänster 2.17 Ett antal värden måste sättas när Säkerhetstjänster 2.15 ska uppgraderas. Följ instruktionerna nedan. 1. Ersätt installationsfilen C:\temp\ Lokal_sakerhetstjanst\install\resources\ dist_win.xml med densamma för uppgradering som ligger i C:\temp\Lokal_ sakerhetstjanst\install\upgrade. a. Kopiera: C:\temp\ Lokal_sakerhetstjanst\upgrade\dist_win.xml b. Klistra in och ersätt: C:\temp\ Lokal_sakerhetstjanst\install\resource\dist_win.xml 2. 3. 4. 5. Starta installationen genom att dubbelklicka på SakerhetstjansterSetup.exe i katalogen C:\temp\Lokal_sakerhetstjanst\install Välkomstskärmen visas, klicka på knappen Next. Välj "installation first node", klicka på knappen Next. Tryck på Browse och välj vilken konfiguration-fil som ska användas. Det finns en katalog i installationspaketet som innehåller fördefinierade konfigurationsfiler under följande struktur: C:\temp\Lokal_sakerhetstjanst\install\resource\target. Välj samma portuppsättning som användes i Säkerhetstjänster 2.15. 3.5.1. Installation på första noden Installationen kommer att kopiera in de filer som behövs för applikationsservern och kopiera de gemensamma filerna som används till den delade diskytan. Installationen kommer registrera en tjänst: Lokal Säkerhetstjänst 2.17. Efter installationen är det rekommenderat att man byter servicekonto. Se det ordinarie installationsdokumentet för detta ändamål: 2.17 Installation och administration (Windows). Ange sökvägen till katalog där java JDK finns installerat, vart Säkerhetstjänsten ska installeras, sökvägen till Säkerhetstjänstens delade diskarea (som används av alla noder) samt porten som används för OSGI konsolen. 1. I den delade diskarean läggs t.ex. konfigurationsfiler och binärer. Denna behöver i Singleserver-installationen inte vara delad. Tryck sedan på knappen Next. Parameter Defaultvärde Exempel Beskrivning Path to Java JDK C:\Program Files\Java\jdk1.8.0_xx Katalog där java JDK finns installerat. Path to installation directory C:\Program Files\Inera\Lokala Säkerhetstjänster 2.17 Katalog där Säkerhetstjänster ska installeras.
Path to shared disk space -- C:\share Katalog till Säkerhetstjänstens delade diskarea (som används av alla noder). OSGI Consol Port 1111 2. Ange konfiguration för Http(s) setup Http(s) setup Defaultvärde Exempel Beskrivning Application host adress sakerhetstjanst.example.com Lokala Säkerhetstjänstens publika adress ( host.example.com). Används även som WS adress. Ange konfiguration för Infinispan cluster cache setup
Infinispan cluster cache setup Infinispan protocol - UDP or TCP Defaultvärde Exempel Beskrivning UDP TCP eller UDP Kan vara "UDP" eller "TCP". Observera att samma protokoll som tidigare version ska användas annars kan ytterligare uppdateringar behöva utföras, tex portöppningar. Kontrollera inställningar för parameter i tidigare version: 1. Exekvera filen C:\Program Files\Inera\Lokal Sakerhetstjanst <tidigare version>\service\lokal Säkerhetstjänst <tidigare version>.exe. 2. Välj fliken Java och kontrollera värdet på parameter "Dcom.logica.se.iac.cache.infinispan. protocol" (skall vara UDP eller TCP). 3. Om UDP, notera adressen från parameter "Djgroups.udp.mcast_addr". 4. Om TCP, öppna filen "C:\Program Files\Inera\Lokal Sakerhetstjanst <tidigare version>\local\jgroups\jgroups-tcp.xml". Notera adress och port ("bind_addr" och "bind_port". Infinispan multicast address - UDP setting 239.0.10.1 Anges om protokoll är UDP. 1. Uppdatera med IP-adress från kontroll ovan. Infinispan cluster members - TCP setting "nod1.sakerhetstjanst. example.com[7800], nod2.sakerhetstjanst. example.com[7800]" Anges om protokoll är TCP: 1. Infoga nodnamn eller IP-adresser samt portar från kontroll ovan. 1. Klicka på knappen Continue när ni har angivit värden till samtliga konfigurationer. (Varning kan komma för "Infinispan cluster cache setup" vilket är ok då bara ett av dessa värden ska anges beroende på om udp eller tcp har valts. Klicka på "Ja" för att fortsätta.) Installationen på första noden utförs.
3.5.2. Uppgradering på övriga noder Installation som ska utföras på övriga noder när Säkerhetstjänster installeras på flera noder. Notera att instruktionerna i kapitel Installation på första noden måste utföras innan ni påbörjar detta avsnitt. Installationen kommer registrera en tjänst: Lokal Säkerhetstjänst 2.17. Efter installationen är det rekommenderat att man byter servicekonto. Se det ordinarie installationsdokumentet för detta ändamål: 2.17 Installation och administration (Windows). 1. 2. 3. 4. Starta uppgraderingen genom att dubbelklicka på SakerhetstjansterSetup.exe i katalogen C:\share\Lokal sakerhetstjanst 2.17 Välkomstskärmen visas, klicka på knappen Next. Välj "installation other nodes". klicka på knappen Next. Tryck på Browse och välj konfigurations-filen som ska användas. Den skapades under installation av nod 1 och har sökväg C:\share\Lokal Sakerhetstjanst 2.17\NodeInstallation.properties Notera Viktigt att uppmärksamma är att Windows kan göra om den symboliska-länken till en UNC-sökväg, vilket man då manuellt får ändra i textfältet till den korrekta sökvägen, se bild ovan. 5. 6. Klicka på knappen Continue. Installationen utförs. Har ni ytterligare noder utför den här instruktionen även på dessa.
3.6. Migrering av konfiguration Efter ovanstående installation(er) är gjord ska era inställningar i konfigurationen från Säkerhetstjänster 2.17 migreras till er nya systemversion. Migrationen av konfigurationerna görs med ett program, configuration_upgrade.jar, som finns i installationspaketet: C:\temp\ Lokal_sakerhetstjanst\upgrade\config\configuration_upgrade.jar OBS! Vid en kluster-installation ska migrationen av konfigurationen endast göras en gång. Konfigurationen ligger på en delad diskyta som delas av samtliga noder. Gör ni t.ex. migrationen på nod1, kommer även konfigurationen för nod2 o.s.v. uppgraderas. Migreringen i exemplet nedan görs på nod1. Verktyget behöver veta följande parametrar för att kunna göra en lyckad migrering: Sökvägen till konfigurationen tillhörande Säkerhetstjänster 2.15 Sökvägen till konfigurationen tillhörande Säkerhetstjänster 2.17 Sökvägen till XML-filen upgrade_local_2.17.xml som finns i uppgraderingskatalogen. Den beskriver, i xml format, vilka konfigurationer som ska kopieras från v 2.15 till v 2.17. java -jar configuration_upgrade.jar -d <sökväg_till_säkerhetstjänster_2.15_config> -f <sökväg_till_filen_ upgrade_local_2.17.xml> -n <sökväg_till_s äkerhetstjänster_2.17_config> Se exempel nedan på hur kommandot ser ut när sökvägar har lagts till för en standardinstallation. Kom ihåg att ersätta exempelvärdena och använda era specifika sökvägar. Öppna kommandotolken. Kör verktyget med parametrarna ovan enligt följande kommando: cd C:\temp\Lokal_sakerhetstjanst\upgrade\config\ java -jar configuration_upgrade.jar -d C:\share\Sakerhetstjanster2.15\local\config -f C.\temp\Lokal_sakerhetstjanst\upgrade\config\ upgrade_local_ 2.17.xml -n C:\share\Sakerhetstjanster2.17\local\config Några varningar kan komma att skrivas ut. Dessa kan ignoreras. Det viktigaste är att verktyget meddelar följande indikation på att migrationen gick bra: Upgrade of configuration has been performed. Notera Migreringsskriptet inkluderar endast de konfigurationer som sattes vid första installationen samt eventuella föregående uppgraderingar. Övriga konfigurationer så som diverse timeouts kommer återställas.
3.7. Installation Infinispan cluster cache över TCP Har man valt TCP under installationen (Cluster cache setup -> Infinispan protocol - UDP or TCP) måste man nu manuellt ange nodens bind/ip-adress i en konfigurationsfil per nod. Ta reda på vilken IP-adress som gäller för noden med kommandot ipconfig och ändra attributet bind_addr i XML-taggen TCP_NIO från 0.0.0.0 till nodens IP-adress. Upprepa på samtliga noder. Observera att attributet bind_addr i XML-taggen TCP_NIO kräver att man anger serverns riktiga IP-adress. Det fungerar inte om man exempelvis anger DNS-namn, 0.0.0.0 eller 127.0.0.1. C:\Program Files\Inera\Lokal Sakerhetstjanst<version>\local\jgroups\jgroups-tcp.xml Exempel: <TCP_NIO bind_port="7800" bind_addr="10.0.1.51"... /> Kontrollera också, i samma fil, listan över i klustret ingående noder i attributet initial_hosts i XML-taggen TCPPING. Detta ska vara en kommaseparerad lista över klustrets alla noder med den port som ska användas inom 'hakparantes'. Exempel: <TCPPING initial_hosts="nod1.sakerhetstjanst.example.com[7800],nod2.sakerhetstjanst.example.com[7800]" port_range="0"/>
3.8. Uppgradering av MySQL databas 3.8.1. Förberedelse Installationen kommer med ett skript för att uppgradera MySQL-scheman för den nya versionen av Säkerhetstjänster. Skripten kräver att man kör dem på en maskin som har MySQL 5.6 installerat men inte nödvändigtvis samma maskin som databaserna ligger på då man får ange servernamn som argument till skripten. Nedan kopierar vi skripten till samma maskin som databaserna finns på och anger localhost som servernamn. Tänk på: Kopiera katalogen Lokal_sakerhetstjanst\upgrade\ mysql från leveransen till C: \temp på databasmaskinen. Skriptet kommer att uppgradera er befintliga databaser för Säkerhetstjänster 2.17. Kom ihåg att göra en backup av databasen innan ni kör uppgraderingsskriptet om det inte redan är gjort. Om ett prefix används på era databasscheman ska detta anges som en parameter när ni ska köra skriptet. Skriptet kräver att MySQL-användaren har root-rättigheter. 3.8.2. Uppgradering av databaserna Databasscheman behöver uppdateras för Säkerhetstjänster 2.17. 3.8.2.1. upgrade_mysql.bat Skriptet ska köras med följande parametrar: Värdnamn för databasmaskinen. localhost ifall man har kopierat över skripten till databasmaskinen. Användarnamnet med root-rättigheter till MySQL-servern. Eventuellt ett prefix för databaserna. Ska endast anges om ett sådant används för era databasscheman. I annat fall utelämnas detta. Kör nu i kommandotolken: cd C:\temp\mysql upgrade_mysql.bat localhost dbuser [prefix_] - Exemplet för användning på en databasmaskinen ( localhost) där det finns en användare med namnet dbuser. Byt ut argumenten så att det passar er miljö. - Eventuellt prefix anges som tredje argument Bekräfta att uppgradering skall ske och ange lösenord när detta efterfrågas. Kontrollera att inga fel rapporteras.
3.9. Uppgradering av Mongo databas PDL-loggarna har nya variabler och måste på grund av det läsas in på nytt. För att göra det så snabbt som möjligt så ska du skapa en ny kollektion i databasen pdllog med namn [prefix_]log_v2 (använd samma prefix som den gamla kollektionen). 3.9.1. Uppgradera till version 3.4 MongoDB - Uppgradera 3.0 till 3.4 3.9.2. Skapa index Loggtjänsten kommer att läsa om onlinedatabsen för pdlloggar till en ny collection med suffix _v2 för att hantera en ny typ av person id. Lägg på följande index för prestanda i loggrapporttjänsten.
3.10. Uppdatera index 1. Starta MongoDB-klienten mongo 2. I MongoDB-klienten, logga in med admin-kontot > use admin > db.auth("root", "PASSWORD") Notera prompten ändras nu till rs_sak:primary> i ett system med replikering och root-användaren har rättigheter att ändra i klustret. 3. Ta bort befintliga index och lägg till nya: rs_sak:primary> use pdllog rs_sak:primary> db.log_v2.dropindexes(); rs_sak:primary> db.log_v2.createindex({'sysname' : 1}) rs_sak:primary> db.log_v2.createindex({'sysid' : 1, 'sysname' : 1, 'act_date' : 1}) rs_sak:primary> db.log_v2.createindex({'cpid': 1, 'act_date' : 1}) rs_sak:primary> db.log_v2.createindex({'cpid': 1, 'resources.cpid' : 1, 'act_date' : 1}) rs_sak:primary> db.log_v2.createindex({'uid': 1, 'act_date' : 1 }) rs_sak:primary> db.log_v2.createindex({'resources.pid': 1, 'resources.pid_type': 1, 'act_date' : 1 }) rs_sak:primary> db.log_v2.createindex({'cuid': 1, 'act_date' : 1}) rs_sak:primary> db.log_v2.createindex({'cuid': 1, 'act_date' : 1}) rs_sak:primary> db.log_v2.createindex({'cpid': 1, 'sysid': 1, 'sysname' : 1}) 4. Verifiera att indexen finns:
rs_sak:primary> db.log_v2.stats() Exempelutskrift: { "ns" : "pdllog.log_v2", "count" : 13, "size" : 9344, "avgobjsize" : 718.7692307692307, "storagesize" : 57344, "numextents" : 2, "nindexes" : 9, "lastextentsize" : 49152, "paddingfactor" : 1, "systemflags" : 1, "userflags" : 0, "totalindexsize" : 32768, "indexsizes" : { "_id_" : 4096, "sysname_1" : 4096, "sysid_1_sysname_1_act_date_1" : 4096, "cpid_1_act_date_1" : 4096, "cpid_1_resources.cpid_1_act_date_1" : 4096, "uid_1_act_date_1" : 4096, "resources.pid_1_resources.pid_type_1_act_date_1" : 4096, "cuid_1_act_date_1" : 4096, "cpid_1_sysid_1_sysname_1" : 4096 }, "ok" : 1.0 }
3.11. Uppstart Systemet kan startas upp efter uppgradering av databaserna och migreringen av konfigurationen är klara enligt de beskrivningar som gavs ovan. 3.11.1. Uppstart av lokal säkerhetstjänst När systemet är installerat ska systemet startas och bundlar (dvs. enskilda komponenter av systemet som utgör tjänsterna i Säkerhetstjänster) ska installeras och startas upp. Här behöver man en telnet-klient för anslutning mot OSGi-konsolen. Följ sedan instruktionerna nedan. OBS! Kör instruktionen på en nod i taget. 1. 2. 3. Öppna kontrollpanelen och gå till tjänster. Starta sedan tjänsten Lokal Säkerhetstjänst 2.17" Logga in till systemkonsolen: telnet localhost 1111 NOTERA: Det kan ta ca en minut innan servern har startat och att det går att logga in till systemkonsolen. NOTERA: Om en annan port än defaultport 1111 har angivits i installationen, anger man denna istället. NOTERA: Förändringar i OSGI-kommandon osgi> package:pkglist (ersätter pkg list) osgi> package:pkginstall (ersätter pkginstall) Exempel: package:pkginstall -p 0 (installerar alla paket) Exempel: package:pkgstart (startar igång alla installerade paket) osgi> state (ersätter context state) osgi> search (ersätter audit search) Exempel: search -level error (söker i loggen efter alla error, error går att ersätta med warn, info) Exempel: search -level error -time 10m (söker i loggen efter alla errors dom senaste 10 minuterna) osgi> monitor (ersätter sys monitor) Exempel: monitor -filter infinispan (monitorerar status för infinispan klustret) osgi> spfilter -on (ersätter sys sp -on) osgi> spfilter -off (ersätter sys sp -off) osgi> acc -import file:///path/to/file (ersätter sys acc -import file:///path/to/file) osgi> authz -on (ersätter sys authz -on) osgi> authz -off (ersätter sys authz -off osgi> plat:help (hjälp meny) Man kan även använda pil upp/ned på tangentbordet för att nyttja tidigare slagna osgi-kommandon. a. Verifiera i systemkonsolen att bundlarna för applikationsservern är uppstartade (ACTIVE), genom att exekvera kommandot: ss
3.12. Uppstartade Plattformsbundlar -- Welcome to Platform ------------------------------ osgi> ss "Framework is launched." id State Bundle 0 ACTIVE org.eclipse.osgi_3.10.3 1 ACTIVE Fastinfoset_osgi_1_2_4_1.0.0 2 ACTIVE KerbLibrary_osgi_1.0.0 3 ACTIVE activemq_all_osgi_5.3.1.0_fuse_01_00_1.0.5 4 ACTIVE org.springframework.osgi.aopalliance.osgi_1.0.0 5 ACTIVE asm-osgi_3.1.0 6 ACTIVE atomikos_3.9.4 Fragments=15 7 ACTIVE org.springframework.osgi.cglib_nodep.osgi_1.0.0 8 ACTIVE com.google.gwt_2.6.3 9 ACTIVE com.logica.se.iac.accesscontrol.repository_3.0.0 10 ACTIVE com.logica.se.iac.accesscontrol.repository.impl_3.0.0 11 ACTIVE com.logica.se.iac.accesscontrol.service_3.0.0 12 ACTIVE com.logica.se.iac.accesscontrol.service.impl_3.0.5 13 ACTIVE com.logica.se.iac.accesscontrol.service.types_3.0.0 14 ACTIVE com.logica.se.iac.archive_3.0.0 15 RESOLVED com.logica.se.iac.atomikos.cm_3.0.0 Master=6 16 ACTIVE com.logica.se.iac.authorization.rule_3.0.0 17 ACTIVE com.logica.se.iac.authorization.service_3.1.0 18 ACTIVE com.logica.se.iac.bc_3.0.0 19 ACTIVE com.logica.se.iac.cache_3.0.2 20 ACTIVE com.logica.se.iac.cache.infinispan_3.0.5 21 ACTIVE com.logica.se.iac.check.jce_3.0.0 22 ACTIVE com.logica.se.iac.commandproviders_3.0.1 23 ACTIVE com.logica.se.iac.directory.service_3.0.0 24 ACTIVE com.logica.se.iac.event_3.0.0 25 ACTIVE com.logica.se.iac.equinox_3.0.3 26 ACTIVE com.logica.se.iac.file.storage_3.0.1 27 ACTIVE com.logica.se.iac.file.storage.impl_3.0.1 28 ACTIVE com.logica.se.iac.hsa.rivta.service_1.0.0 29 ACTIVE com.logica.se.iac.hsa.rivta.service.impl_1.0.0 30 ACTIVE com.logica.se.iac.hsa.rivta.service.types_1.0.0 31 ACTIVE com.logica.se.iac.hsa.service_3.1.4 32 ACTIVE com.logica.se.iac.hsa.service.impl_1.0.9 33 ACTIVE com.logica.se.iac.hsa.service.types_1.0.0
34 ACTIVE com.logica.se.iac.hsa.service.ws.proxy.impl_3.1.5 35 ACTIVE com.logica.se.iac.http.session.jetty_3.0.1 36 ACTIVE com.logica.se.iac.http_3.0.1 37 ACTIVE com.logica.se.iac.http.web_3.0.0 38 ACTIVE com.logica.se.iac.i18n_3.0.1 39 ACTIVE com.logica.se.iac.identity_3.0.0 40 ACTIVE com.logica.se.iac.identity.impl_3.0.0 41 ACTIVE com.logica.se.iac.identity.passwordprovider_3.0.0 42 ACTIVE com.logica.se.iac.identity.pkcs11_3.0.0 43 ACTIVE com.logica.se.iac.identity.pkcs12_3.0.1 44 ACTIVE com.logica.se.iac.identity.system_3.0.0 45 ACTIVE com.logica.se.iac.identity.system.impl_3.0.0 46 ACTIVE com.logica.se.iac.jaxb.lazy_3.0.0 47 RESOLVED com.logica.se.iac.jdbc.mysql_3.0.3 Master=157 48 ACTIVE com.logica.se.iac.job_3.0.3 49 ACTIVE com.logica.se.iac.job.quartz_3.0.10 50 ACTIVE com.logica.se.iac.key.keyinfo_3.0.0 51 ACTIVE com.logica.se.iac.key.keyinfo.impl_3.0.0 52 ACTIVE com.logica.se.iac.key.repository_3.0.0 53 ACTIVE com.logica.se.iac.key.repository.server.impl_3.0.0 54 ACTIVE com.logica.se.iac.keystore.pkcs11_3.0.0 55 ACTIVE com.logica.se.iac.keystore.soft_3.0.0 56 ACTIVE com.logica.se.iac.ldap.service.impl_3.0.0 57 ACTIVE com.logica.se.iac.logging_3.0.2 58 ACTIVE com.logica.se.iac.logging.console_3.0.0 59 ACTIVE com.logica.se.iac.logging.db_3.0.4 60 ACTIVE com.logica.se.iac.logging.file_3.0.0 61 ACTIVE com.logica.se.iac.logging.impl_3.0.11 62 ACTIVE com.logica.se.iac.oasis200401wsswssecuritysecext10_3.0.0 63 ACTIVE com.logica.se.iac.oasis200401wsswssecurityutility10_3.0.0 64 ACTIVE com.logica.se.iac.osgi_3.0.0 65 ACTIVE com.logica.se.iac.osgi.activation_3.0.0 66 ACTIVE com.logica.se.iac.osgi.cm_3.0.1 Fragments=67 67 RESOLVED com.logica.se.iac.osgi.cm.cache_3.0.0 Master=66 68 ACTIVE com.logica.se.iac.osgi.cm.common_3.0.0 69 ACTIVE com.logica.se.iac.osgi.cm.store_3.0.0 70 ACTIVE com.logica.se.iac.osgi.cm.store.xml_3.0.0 71 ACTIVE com.logica.se.iac.osgi.command_3.0.0 72 ACTIVE com.logica.se.iac.osgi.command.impl_3.0.5 73 ACTIVE com.logica.se.iac.osgi.context_3.0.1
74 ACTIVE com.logica.se.iac.osgi.context.extender_3.0.4 75 ACTIVE com.logica.se.iac.osgi.context.servlet_3.0.1 76 ACTIVE com.logica.se.iac.osgi.jmx_3.0.0 77 ACTIVE com.logica.se.iac.osgi.monitor_3.0.0 78 ACTIVE com.logica.se.iac.osgi.monitor.logger_3.0.0 79 RESOLVED com.logica.se.iac.osgi.spring.extender.config_3.0.0 Master=180 80 ACTIVE com.logica.se.iac.performance_3.0.0 81 ACTIVE com.logica.se.iac.performance.impl_3.0.0 82 ACTIVE com.logica.se.iac.person.identityid.validator_3.0.10 83 ACTIVE com.logica.se.iac.quartz_3.0.0 84 ACTIVE com.logica.se.iac.repository_3.1.1 85 ACTIVE com.logica.se.iac.repository.support_3.0.0 86 ACTIVE com.logica.se.iac.resource.service_3.0.0 87 ACTIVE com.logica.se.iac.resource.service.impl_3.0.0 88 ACTIVE com.logica.se.iac.rs_1.0.1 89 ACTIVE com.logica.se.iac.saml20.assertion_3.0.0 90 ACTIVE com.logica.se.iac.saml20.protocol_3.0.0 91 ACTIVE com.logica.se.iac.service.ws.util_3.0.2 92 ACTIVE com.logica.se.iac.servicecertificatelocator_3.0.0 93 ACTIVE com.logica.se.iac.servicecertificatelocator.impl_3.0.0 94 ACTIVE com.logica.se.iac.subject_3.0.1 95 ACTIVE com.logica.se.iac.subject.impl_3.0.1 96 ACTIVE com.logica.se.iac.system.accesscontrol_3.0.0 97 ACTIVE com.logica.se.iac.trust.service_3.0.2 98 ACTIVE com.logica.se.iac.trust.service.impl_3.0.6 99 ACTIVE com.logica.se.iac.util_3.0.6 100 ACTIVE com.logica.se.iac.util.core_3.0.6 101 ACTIVE com.logica.se.iac.util.factory_3.0.0 102 ACTIVE com.logica.se.iac.util.xml_3.0.3 103 ACTIVE com.logica.se.iac.ws_3.0.1 104 ACTIVE com.logica.se.iac.ws.callback.impl_3.0.0 105 ACTIVE com.logica.se.iac.ws.logicaladdress.service.impl_3.0.0 106 ACTIVE com.logica.se.iac.ws.proxy.impl_3.0.2 107 ACTIVE com.logica.se.iac.ws.publication.impl_3.0.0 108 ACTIVE com.logica.se.iac.wsaddressing200508.core_3.0.0 109 ACTIVE com.logica.se.iac.wsidentity10_3.0.0 110 ACTIVE com.logica.se.iac.wsit.tubelineassembler.impl_3.0.0 111 ACTIVE com.logica.se.iac.wspolicy200409_3.0.0 112 ACTIVE com.logica.se.iac.wsresourceframework12.basefault_3.0.0 113 ACTIVE com.logica.se.iac.wsresourceframework12.resource_3.0.0 114 ACTIVE com.logica.se.iac.wstrust10_3.0.0 115 ACTIVE com.logica.se.iac.wstrust13_3.0.0
116 ACTIVE com.logica.se.iac.wstrust14_3.0.0 117 ACTIVE com.logica.se.iac.xacml20.context_3.0.0 118 ACTIVE com.logica.se.iac.xacml20.policy_3.0.0 119 ACTIVE com.logica.se.iac.xacml20.saml.assertion_3.0.0 120 ACTIVE com.logica.se.iac.xacml20.saml.protocol_3.0.1 121 ACTIVE com.logica.se.iac.xacml30wd07.core_3.0.0 122 ACTIVE com.logica.se.iac.xacml30wd07.saml.assertion_3.0.0 123 ACTIVE com.logica.se.iac.xacml30wd07.saml.protocol_3.0.0 124 ACTIVE com.logica.se.iac.xacml30wd13.saml.assertion_3.0.0 125 ACTIVE com.logica.se.iac.xacml30wd13.saml.protocol_3.0.0 126 ACTIVE com.logica.se.iac.xacml30wd17.core_3.0.0 127 ACTIVE com.logica.se.iac.xadisk_3.0.0 128 ACTIVE com.logica.se.iac.xmldsig200009.core_3.0.0 129 ACTIVE com.logica.se.iac.xmlencryption200104_3.0.0 130 ACTIVE commons_collections_osgi_1.0.0 131 ACTIVE commons_compress_osgi_1.14.0 132 ACTIVE commons_io_osgi_1.3.1 133 ACTIVE commons-lang3_3.5.0 134 ACTIVE commons-net-osgi-3.2.0_3.2.0 135 ACTIVE commons-validator_1.5.1 136 ACTIVE com.jcraft.jsch-0.1.53_0.1.53 137 ACTIVE displaytag_osgi_1.0.0 138 ACTIVE fop_osgi_1.0.0 139 ACTIVE geronimo_jms_1.1_spec_1.0.0 140 ACTIVE iaik_wrapper_1.0.0 141 ACTIVE infinispan-8.0_8.2.1.final 142 ACTIVE javax.mail_1.4.5 143 ACTIVE javax.ws.rs-api-2.1_2.1.0 144 ACTIVE jaxb_impl_osgi_1.0.0 145 ACTIVE jaxws_rt_osgi_2_1_7_1.1.3 146 ACTIVE jca-1.5_1.5.0 147 ACTIVE jetty_j2se6_osgi_1.0.1 148 ACTIVE org.mortbay.jetty.jsp_2.1_1.0.0 149 ACTIVE org.mortbay.jetty.server_1.0.3 Fragments=150 150 RESOLVED org.mortbay.jetty.security_1.0.0 Master=149 151 ACTIVE org.mortbay.jetty.util_1.0.0 152 ACTIVE jradius_osgi_1.1.4_1.0.0 153 ACTIVE org.mortbay.jetty.jsp_api_2.1_1.0.0 154 ACTIVE jsr250_api_osgi_1.0.0 155 ACTIVE jta_osgi_1.1_1.0.0 156 ACTIVE mail_activation_osgi_1.0.2
157 ACTIVE mysql-connector-5.1.30_1.0.1 Fragments=47 158 ACTIVE org.eclipse.equinox.event_3.4.0_1.0.0 159 ACTIVE org.eclipse.equinox.metatype_3.4.0_1.0.1 160 ACTIVE org.eclipse.osgi.services_3.4.0.201708291456 161 ACTIVE org.apache.felix.gogo.command_0.14.0.201708291456 162 ACTIVE org.apache.felix.gogo.runtime_0.16.2.201708291456 163 ACTIVE org.apache.felix.gogo.shell_0.10.0.201708291456 164 ACTIVE org.apache.mina.core_2.0.9 165 ACTIVE org.apache.sshd.core_0.7.0 166 ACTIVE org.eclipse.equinox.console_1.1.1.201708291456 167 ACTIVE org.eclipse.equinox.console.ssh_1.0.101.201708291456 Fragments=168 168 RESOLVED com.logica.se.iac.equinox.console.ssh_3.0.0 Master=167 169 ACTIVE osgi.cmpn_4.3.0.201708291456 170 ACTIVE org.quartz-2.2.1_2.2.1 171 ACTIVE servlet_api_1.0.0 172 ACTIVE slf4j_logica_osgi_1.6.2 173 ACTIVE org.springframework.bundle.spring.aop_1.0.0 174 ACTIVE org.springframework.bundle.spring.beans_1.0.0 175 ACTIVE org.springframework.bundle.spring.context_1.0.0 176 ACTIVE org.springframework.bundle.spring.core_1.0.0 177 ACTIVE org.springframework.bundle.spring.jdbc_1.0.0 178 ACTIVE org.springframework.bundle.spring.jms_1.0.0 179 ACTIVE org.springframework.bundle.osgi.core_1.0.0 180 ACTIVE org.springframework.bundle.osgi.extender_1.0.1 Fragments=79 181 ACTIVE org.springframework.bundle.osgi.io_1.0.0 182 ACTIVE org.springframework.bundle.osgi.web_1.0.2 183 ACTIVE org.springframework.bundle.spring.tx_1.0.0 184 ACTIVE org.springframework.bundle.spring.web_1.0.0 185 ACTIVE org.springframework.bundle.spring.webmvc_1.0.0 186 ACTIVE stax_ex_osgi_1.0.0 187 ACTIVE stax_utils_osgi_1.0.0.20070216_1.0.2 188 ACTIVE streambuffer_osgi_0_8_1.0.0 189 ACTIVE sun.pkcs11_1.6.0_1.0.0 190 ACTIVE woodstox_osgi_1.0.3 191 ACTIVE wsit_osgi_1_5_java_1_6_1.0.11 192 ACTIVE xadisk-1.0_1.0.2 193 ACTIVE xalan_osgi_1.0.4 194 ACTIVE xml_security_osgi_1.0.2 195 ACTIVE xmlgraphics_commons_osgi_1.4.0
osgi> Förklaring av fältet State i ovan utskrift: INSTALLED - Bundeln är installerad i systemet men är inte startad. STARTED - Bundeln är startad men ännu inte aktiv. ACTIVE - Bundeln är startad och aktiv. RESOLVED - Bundeln är stoppad. Observera att bundlarna för applikationsservern installeras automatiskt under uppstart av tjänsten, se bild ovan. b. Lista de komponenter som kan installeras med kommandot: osgi> package:pkglist Id Name Description 0 All All available packages 1 Authorization Local Local Authorization Service 2 IdP Local Identity Provider 3 Block Local Local Block Service 4 Commission Commission Service 5 Consent Local Consent Service 6 Log Local Log Service 7 Log Proxy Local Log Proxy 8 Log Report Local Log Report Service 9 PU Proxy Local PU Proxy c. Välj de komponenter som skall installeras: All - Alla tjänster Authorization Local - Lokal åtkomsttjänst. Idp Local - Lokal Autentiseringstjänst. Block Local - Lokal Spärrtjänst. Commission - Lokal Commission. Consent - Lokal Samtyckestjänst. Log - Lokal loggtjänst. Log Proxy - Lokal loggproxytjänst. Log Report - Lokal loggrapportstjänst. Pu Proxy - Lokal proxytjänst för personuppgifter Det är möjligt att installera enbart en av tjänsterna, t.ex. Spärr. Dock kräver tjänsterna Spärr, Samtycke tillgång till en intern/extern autentiseringstjänst (IdP) för att en användare ska kunna logga in och komma åt webbtjänsterna. Exempel: För att installera alla tjänster (komponent 0 i exemplet ovan): osgi> package:pkginstall -p 0 För att installera endast IdP: Exempel: osgi> package:pkginstall -p 1,2,4,9 För att installera lokal Spärrtjänst med IdP och logg: Exempel: osgi> package:pkginstall -p 1,2,3,4,6,7,8,9 För att installera lokal Loggtjänst, Lograpport med IdP:
Exempel: osgi> package:pkginstall -p 1,2,4,6,7,8,9 Säkerställ att de paket-id som anges i exemplet ovan stämmer med de komponenter som skall installeras. Hämta aktuellt paket-id med kommandot: package:pkglist. d. Starta det installerade komponenterna med kommandot: osgi> package:pkgstart Vänta ett tag på att bundlarna startar upp, ca 2 min. e. Verifiera att samtliga bundlar är uppstartade med kommandot dep. (Kommandot listar alla bundlar som ännu inte är startade.) Exekvera kommandot: osgi> dep Utskriftsexempel: osgi> dep id Bundle State Unsatisfied dependencies Spring dependencies osgi> Listas inte någon bundel här, är samtliga bundlar startade. I annat fall upprepa kommandot i intervaller tills kommandot inte listar någon bundel. Om någon bundel inte startar igång, testa att starta om säkerhetstjänster. Kvarstår problemet måste felsökning påbörjas: i. Kontrollera systemloggen efter fel. osgi> search -level error ii. Kontrollera även systemloggen efter fel. Systemloggen skapas i den lokala katalogen där Säkerhetstjänster körs och dit skrivs loggar innan systemet är helt startat och senare i vissa fall om det är loggning till fil, se exempel nedan. Windows: C:\Program Files\Inera\Lokal Sakerhetstjanst<version>\local\log\outputlog_service. txt Linux: /sakerhetstjansten/sakerhetstjanster<version>/local/log/sak_yyyy-mm-dd_hh-mm-ss.log f. Verifiera att alla beroenden är uppfyllda med kommandot: osgi> state Exempel: osgi> state Id Context State osgi> State Information Listas inte någon bundel här, är alla beroenden mellan bundlarna uppfyllda. I annat fall upprepa kommandot i intervaller, tills kommandot inte listar någon bundel. Kan ta ett antal minuter vid uppstart. Om state visar någon eller några bundlar så kan det bero på följande:
i. Om någon av tjänsterna Samtycke eller Spärr installeras, men inte lokal Loggtjänst, behöver tjänsterna konfigureras för att använda en extern loggtjänst. Följande fel visas vid installation av enbart Spärr och IdP. Exempel: osgi> package:pkglist Id Name Description 0 All All available packages 1 Authorization Local Local Authorization Service 2 IdP Local Identity Provider 3 Block Local Local Block Service 4 Commission Commission Service 5 Consent Local Consent Service 6 Log Local Log Service 7 Log Proxy Local Log Proxy 8 Log Report Local Log Report Service 9 PU Proxy Local PU Proxy osgi> osgi> package:pkginstall -p 1,2,3,4,5,7,9 osgi> package:pkgstart osgi> osgi> state Id Context State State Information 306 com.logica.se.bif.block.web.war UNRESOLVED DEPENDENCIES com.logica.se.bif.log.agent.logagent 341 com.logica.se.bif.consent.web.war UNRESOLVED DEPENDENCIES com.logica.se.bif.log.agent.logagent 352 com.logica.se.bif.log.agent.impl UNRESOLVED DEPENDENCIES com.logica.se.bif.log.service.logstoreservice (name=service) 353 com.logica.se.bif.log.agent.txwrapper.impl UNRESOLVED DEPENDENCIES com.logica.se.bif.log.agent.logagent (transactional=false) 232 com.logica.se.rivta.ping.ws.factory/log1 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.log.service.impl) 232 com.logica.se.rivta.ping.ws.factory/log2 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.log.service.impl) 232 com.logica.se.rivta.ping.ws.factory/logreport1 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.logreport.service.impl) 232 com.logica.se.rivta.ping.ws.factory/logreport2 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.logreport.service.impl) Figur: Utskriftsexempel 1, state, Unresolved dependencies. ii. Spärr (Block) saknar beroenden, i detta fall saknas en lokalt installerad Loggtjänst som behöver konfigureras manuellt med adressen till en extern loggtjänst.
- Ändra värdet för logstoreservice från Service till Proxy. Linux: /share/sakerhetstjanster<version>/local/config/com.logica.se.bif.log.agent. impl.xml Windows: C:\share\Sakerhetstjanster<version>\local\config\com.logica.se.bif.log. agent.impl.xml - Ange rätt värde för adress (hostname) och portnummer (portnumber) till den externa loggtjänsten. Linux: /share/sakerhetstjanster<version>/local/config/com.logica.se.bif.log.v2.ws. proxyimpl.xml Windows: C:\share\Sakerhetstjanster<version>\local\config\com.logica.se.bif.log.v2. ws.proxyimpl.xml iii. Uppdatera bundlarna com.logica.se.bif.log.agent.impl.3.0.0 och com.logica.se.bif.log.v2.ws.proxyimpl.3.0.0 i systemkonsolen genom att först hitta rätt id med kommandot ss och sedan uppdatera bundle med aktuellt id. Se exempel nedan. Exempel: osgi> ss com.logica.se.bif.log.agent.impl Framework is launched. id State Bundle 352 ACTIVE com.logica.se.bif.log.agent.impl_3.0.0 osgi> update 352 osgi> refresh 352 osgi> ss com.logica.se.bif.log.v2.ws.proxyimpl_3.0.0 Framework is launched. id State Bundle 361 ACTIVE com.logica.se.bif.log.v2.ws.proxyimpl_3.0.0 osgi> update 361 osgi> refresh 361 iv. Verifiera beroenden igen med kommandot: osgi> state osgi> state Id Context State State Information 232 com.logica.se.rivta.ping.ws.factory/log1 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.log.service.impl) 232 com.logica.se.rivta.ping.ws.factory/log2 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.log.service.impl) 232 com.logica.se.rivta.ping.ws.factory/logreport1 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.logreport.service.impl) 232 com.logica.se.rivta.ping.ws.factory/logreport2 UNRESOLVED DEPENDENCIES com.logica.se.rivta.ping.service.pingservice (Bundle-SymbolicName=com.logica.se.bif.logreport.service.impl) Figur: Utskriftsexempel 2, state, Unresolved dependencies Bundeln com.logica.se.bif.ping.ws.factory publicerar ping-tjänsten för alla tjänster, varav Logg och Loggrapporttjänsten visas som icke startade i figuren ovan. I exemplet ovan valde vi att installera Lokal Spärrtjänst och IdP och därför saknas nu bundlar för Logg, Loggrapport. Vi vill nu ta bort konfigurationsfilerna för de tjänster som inte installerats för att lösa de "UNRESOLVED DEPENDENCIES" vi har.
v. Åtgärd för att ta bort pingtjänster som inte används: - Gå till installationskatalogen Linux: /share/sakerhetstjanster<version>/local/config/com.logica.se.rivta.ping.ws.factory/ Windows: C:\share\Sakerhetstjanster<version>\local\config\com.logica.se.rivta.ping.ws. factory\ vi. Ta bort konfigurationsfilerna för de tjänster som inte installerats enligt tabellen nedan. Tjänst Konfigurationsfil Spärr blocklocalinternal.xml, blocklocalv2.xml,blocklocalv3.xml blocklocalv4.xml Logg (Loggrapport) Samtycke Idp log1.xml, log2.xml, logreport1.xml, logreport2.xml consent_1.xml, consent_2.xml commissionservice.xml vii. Logga in i osgi konsolen. Uppdatera bundeln för pingtjänsten com.logica.se.bif.ping.ws.impl_3.0.0 med update och refresh enligt exempel nedan. osgi> ss com.logica.se.rivta.ping.ws.impl Framework is launched. id State Bundle 232 ACTIVE com.logica.se.bif.ping.ws.impl_3.0.0 osgi> update 232 osgi> refresh 232 Figur: Utskriftsexempel för att uppdatera pingtjänsten efter borttagning av konfiguration som ej används viii. Verifiera att alla beroenden är uppfyllda med kommandot: osgi> state Exempel: osgi> state Id Context State osgi> State Information ix. Avsluta systemkonsolen med kommandot: osgi> disconnect Upprepa därefter instruktionen på alla noder i systemet i tur och ordning.
3.12.1. Kontrollera att alla noder ingår i infinispan-klustret När nu alla noder är installerade och uppstartade kan det vara bra att kontrollera att de har anslutit till infinispan klustret. Man kan kontrollera att samtliga noder ingår i infinispan-klustret med ett kommando i OSGi-konsolen. Detta kommando bör verifieras på varje nod för att säkerställa att noderna känner till varandra i klustret. Utför på varje installerad nod i klustret: 1. Gå in i systemkonsolen med: telnet localhost 1111 2. Slå kommando för att se status på Infinispan. Konsolen kommer nu lista vilka noder som ingår i klustret. Se exempelbilden nedan: osgi> monitor -filter infinispan Id Type Timestamp Value Description com.logica.se.iac.cache.infinispan members String 2016-11-15 13:44:22:128 nod1-51513, nod2-44543 Available cluster members state String 2016-11-15 13:44:22:128 ACTIVE Context state which will show if configuration is needed, or if mandator OSGi service references are missing etc. osgi> Figur: bilden ger exempel på hur utskriften kan se ut när man ser över klustret i OSGi-konsolen. De noder här som ingår i klustret är "nod1-51513, nod2-44543". 3. Om samtliga noder listas i exemplet ovan, har klustret satts upp som det ska. I annat fall: a. Stoppa Säkerhetstjänster på den nod som inte var listad i konsolen. b. c. i. ii. Öppna kontrollpanelen och gå till tjänster. Stoppa tjänsten Lokal Säkerhetstjänster 2.17" Starta Service Managern C:\Program Files\Inera\Lokal Sakerhetstjanster 2.17\services\Lokal Säkerhetstjänst 2.17.exe Sök i Java Options efter argumenten -Dcom.logica.se.iac.cache.infinispan.protocol och -Dcom.logica.se.iac.cache.infinispan.config.dir - Kontrollera att INFINISPAN_PROTOCOL är satt till TCP eller UDP. - Kontrollera att INFINISPAN_CONFIG_DIR är en korrekt sökväg och att denna katalog innehåller två XML-filer (jgroups-tcp.xml och jgroups-udp.xml) - För UDP kontrollera att INFINISPAN_MULTICAST är satt till en giltig multicast-adress, att den är samma i konfigurationsfilen LocalSake rhetstjanstconfig.xml på alla noder samt att multicast är aktiverat/möjligt i ert system/nät. - För TCP kontrollera konfigurationsfilen jgroups-tcp.xml enligt Installation Infinispancluster cache över TCP på alla noder samt att vald port (default 7800) är öppen för kommunikation mellan noderna. - Kontrollera i senaste uppstartsloggen att utpekad konfigurationsfil verkligen används av applikationen. C:\Program Files\Inera\Lokal Sakerhetstjanst <version>\local\log\outputlog_service.txt... Infinispan configuration file resolved to 'C:\Program Files\Inera\Lokal Sakerhetstjanst<version>\local\jgroups\jgroups-tcp.xml d. Efter verifieringen: starta Säkerhetstjänsten igen. i. ii. iii. Öppna kontrollpanelen och gå till tjänster. Starta tjänsten Lokal Säkerhetstjänster 2.17" Kontrollera igen om noderna är anslutna med varandra. 4. Uppstarten kan ta en stund. Utför steg 1-3 efter att ni har väntat i några minuter. 3.12.2. Kontrollera konfiguration av anslutningar till Nationell Tjänsteplattform För spärreplikering gå till Administration-> Generell Konfiguration -> Block National V4 WS ProxyImpl for RIV 2.1 1.0.0
Kontollera att fälten stämmer med följande tabell: Context Path for National Webservice /vp/informationsecurity/authorization/blocking Host name PROD SJUNET PROD INTERNET TEST SJUNET TEST INTERNET esb.ntjp.sjunet.org esb.ntjp.se qa.esb.ntjp.sjunet.org qa.esb.ntjp.se Port number 443 Protocol https För personuppgiftstjänsten gå till Administration-> Generell Konfiguration -> PU - V3 WS Proxy Impl 1.0.0 Kontollera att fälten stämmer med följande tabell: Context Path PU version 3.0 /vp/strategicresourcemanagement/persons/person/getpersonsforprofile/3/rivtabp21 Host name PROD SJUNET PROD INTERNET TEST SJUNET TEST INTERNET esb.ntjp.sjunet.org esb.ntjp.se qa.esb.ntjp.sjunet.org qa.esb.ntjp.se Port number 443 Protocol https 3.12.3. Kontroll efter uppgradering - Spärr GUI Logga även in i administrationsgränssnittet och kontrollera att antalet spärrar stämmer: Välj Spärr -> Replikeringsstatus Jämför med de värden som antecknades i förberedelserna.