1. Introduktion

Dette dokument giver en vejledning til installation og konfiguration af nap reference implementation.

En installation betragtes som en lokalt kørende instans af servicen. 

1.1. Sammenhæng med øvrige dokumenter

Dette dokument er en del af den samlede dokumentation for NAP Ref.impl.

Dokumentet er udformet, så det i videst muligt omfang opfylder sit formål uafhængigt af de øvrige dokumenter.

Ønskes mere information omkring arkitektur og design findes dette på NAP Ref.Impl. - Design og Arkitektur beskrivelse.

Hvis der ønsker mere information om hvordan et udviklingsmiljø kan opsættes læs på NAP Ref.Impl. - Guide til udviklere

Hvis der er behov for yderligere dokumentation omkring hele NAP platformen, henvises til NAP Platform - Guide til anvendere

1.2. Formål

Formålet med dokumentet er, at man med dokumentet i hånden kan installere Nap reference uden yderligere informationer.

1.3. Forudsætninger

Krav til software installeret:

Software

Version

Java8
Docker Engine18.02.0+
node10+


2. Installation

Nap Reference implementation anvender Continuous Integration og Continuous Deployment miljøer til byg og leverance af komponenten.

nap-reference-web og nap-reference-facade ligger som repositories på svn.nspop.dk. Disse skal hentes for anvende de foreslåede compose-setup.

2.1. Jenkins 

Nap-reference bygges på NSP's Jenkins server via følgende jobs:

Build-nap-reference-web - bygger nap-reference web.

Build-nap-reference-facade - bygger nap-reference-facade. I denne byggefase kan det vælges at bygge nap-reference-web, hvis dette ønskes inkluderet.

Push-nap-reference-snapshot - bygger nap-reference-web og ligger bygget ind i roden af nap-refence-facade samt pusher til NSP's docker registry.

Release-nap-reference-facade - laver et release af nap-reference-facade og pusher til NSP's docker registry.

2.2. Docker

Nap reference kan findes på registry.nspop.dk/playground/nap/reference

2.3. Docker Compose

Nap-reference leveres som et sæt af Docker Compose filer i folderen https://svn.nspop.dk/svn/components/nap/nap-reference-facade/trunk/compose/

For release x.y.z findes Docker Compose filerne i folderen https://svn.nspop.dk/svn/components/nap/nap-reference-facade/tags/release-x.y.z/

En leverance af nap-reference består af en compose folder som beskrevet ovenfor samt tilhørende tags.

Compose folderen indeholder 4 underfoldere:

Folder

Indhold

configurationHer ligger alle de konfigurationsfiler som det forventes af driften tilretter til det anvendte miljø. Se Driftvejledningen
developmentHer ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere.
testHer ligger en Docker Compose fil der kan starte NAS2 i en standalone test konfiguration.
releaseHer ligger den Docker Compose fil som det forventes driften anvender på både test og produktionsmiljøerne.

3. Krav til applikationsservere

Nap-reference-facade er udviklet i Docker ved anvendelse af imaget "registry.nspop.dk/platform/nsp:1".

Nap-reference-web er udviklet i Docker ved anvendelse af node:12-alpine.

Den samlede deployment unit, nap-reference, er bygget til og testet i Docker med imaget  "registry.nspop.dk/platform/nsp:1"

Konfigurationen er således tilpasset deployering på WildFly 8.2 applikationsservere med OpenJDK 8.

3.1. Afvikling

3.1.1. Start

For at kunne køre de ovenstående compose filer kræves et docker netværk kaldet nap_net.

Hvis dette ikke allerede er lavet kør `docker network create nap_net`.

Kør `docker-compose up` fra compose/test mappen, for at starte en wildfly server i docker på nap_net netværket.

Herefter er containeren tilgængelig http://localhost:8080/reference/ såfremt (https://svn.nspop.dk/svn/components/nap/nap-compose/) kører på samme netværk som en reverse proxy.

3.1.2. Stop

Kør `docker-compose down`.

3.2. Krav til adgang til andre services

3.2.1. Framing

Servicen benytter sig i sin web komponent (nap-reference-web) af nap-angular-sdk og nap-typescript-sdk og er udviklet til at være indlejret i et værtssytem (eksempelvis nap-java-host), hvor den får alt sin kontekst.
Det meste funktionalitet er bundet op på denne kontekst og det skal derfor opsættes, for at få det fulde ud af nap-reference-web.

3.2.2. Dokumentdelingsservicen

Servicen benytter sig af dokumentdelingsservicen og det er et krav, at denne kan nåes på den url, der er specificeret i properties.

3.3. Konfiguration

Applikationen læser konfigurationsfiler fra classpath under runtime.

I jboss-deployment-structure.xml er beskrevet en afhængighed til "dk.sds.nsp.nap.reference.facade". 

Den afledte konsekvens er, at dette modul er tilgængelig på classpath.

Derfor skal de følgende konfigurationsfiler, som findes i  https://svn.nspop.dk/svn/components/nap/nap-reference-facade/trunk/compose/configuration/, således volume mappes ind i modulet "dk/sds/nsp/nap/reference/facade/main/" på applikations serveren (/pack/wildfly8/modules/ i docker).


Konfigurationsfiler
FilnavnBeskrivelse
log4j-nap-reference-facade.xml

Konfiguration af log-4j.

log4j-nspslalog.properties

Konfiguration af nap-reference sla-log.

napref-test.jksKonfiguration af nap-reference.

funktionscertifikatJKS fil indeholdende Sundhedsdatastyrelsen nap reference funktionscertifikat certifikat
oiosamlKonfiguration af OIOSAML

Ved konfigurationsændringer skal wildfly serveren genstartes.

Alle filer skal tilrettes til de forskellige miljøer som nap-reference installeres på.

I Driftvejledningen er hver enkel fil gennemgået i detaljer.

4. Standalone test

For en standalone test af nap-reference hentes "compose" folderen for den ønskede version med Subversion og kommandoen "docker-compose up" køres i folderen "test".

4.1. Logfiler

Servicen kan logge kald til følgende logs:

  • NSP-SLA-log
  • Applikationslog
  • OIOSAML LOG
  • OIOSAML Audit LOG

Servicen logger IKKE til audit log. 
Log er beskrevet i driftsvejledning.

  • No labels