Følgende punkter er valgt ud fra FSK - installationsvejledning
Overblik
Skal indeholde en introduktion til siden. Derduover kunne det også indeholde en introduktion tik hvilke dependencies der er til systemet. Måske også antallet af komponenter systemet består af?
Ændringslog
Dette er en versionshistorik
Byggevejledning
- Beskriv hvordan projektet bygges uden test (Vi er nede i mvn kommandoer)
- Beskriv hvor deployables ender efter build (Target folder?).
Afvikling af tests
- Beskriv hvordan test afvikles (Måske en adskillelse mellem integrationstests og unittest?)
Krav til database
Servicen er testet mod MariaDB version 10.1, som bliver brugt på NSP platformen.
Bemærk, ved unittest anvendes en in-memory H2 database, som automatisk startes op, når unittests køres.
Krav til hardware
Oprettelse af databaser og tabeller
Herunder beskrives servicens tilgang til database samt oprettelse af tabeller og views.
Tilgang til database
Oprettelse af database og tabeller
Deployment
Konfiguration af servicen
Herunder beskrives properties i eCPR komponentens konfigurationsfiler.
application.properties
Tabel med properties?
Overblik over komponenter
Der følgende beskriver de forskellige deployables som komponenten indeholder.
Filnavn på deployet | Beskrivelse | Kilde |
fsk-service.war | FSK servicen | fsk-service-<version>.war |
!!! — NAS — !!!
Introduktion
Formål
Dette dokument indeholder en beskrivelse af hvordan National Adviseringsservice 2 (herefter NAS2) installeres på et NSP Backend miljø.
Læsevejledning
Læseren forventes at have kendskab til Sundhedsdatastyrelsens platform NSP, samt generelt kendskab til WildFly applikation server, Docker, Docker Compose samt Ubuntu Linux operativ system.
Dokument Historik
| Version | Dato | Ændring | Ansvarlig |
Definitioner og referencer
Installation
eCPR anvender NSP's Continuous Integration og Continuous Deployment miljøer til byg og leverance af komponenten.
Jenkins
Vente med at udfylde, mangler job navnene (de to urls som markus har sent)
eCPR bygges med NSP's Jenkins server via følgende jobs: registry.nspop.dk/platform/nsp
- ECPR2_build/ Bygger koden
- ECPR2_push_release/ - HVAD GØR DET HER?
NSP Leverandøren er selv ansvarlige for at pushe release versioner af eCPR til NSP Docker Registry gennem Jenkins.
Docker
eCPR består af en service og dermed også et docker image som pushes til NSP Docker Registry. Det hedder registry.nspop.dk/fmk/ecpr2:´
Docker Compose
eCPR leveres samtidig som et sæt af Docker Compose filer, der findes i folderen https://git.nspop.dk/projects/COM/repos/erstatnings-cpr-numre/browse/compose
For release x.y.z af NAS2 findes Docker Compose filerne i folderen https://svn.nspop.dk/svn/components/nas/tags/release-x.y.z/compose
En leverance af NAS2 består af en compose folder som beskrevet ovenfor samt tilhørende tags af de fem Docker images.
Compose folderen indeholder 5 underfoldere:
| configuration | OBS!! Database ligger under configuration folderen?? |
| database | Her ligger alle de databasefiler som det forventes at driften lægger på en NSP database |
| development | Her ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere. |
| test | |
| release |
Krav til miljø
Krav til applikationsservere
Komponenterne er udviklet og testet i Docker ved anvendelse af imaget "registry.nspop.dk/platform/nsp:3-latest"
Komponenternes konfiguration er tilpasset deployering på WildFly ?? applikationsservere med OpenJDK 8
Krav til operativsystem
(OK)
Der stilles ingen krav til operativsystemet udover, at det skal være Linux, og docker skal være installeret.
Krav til database
(Generelt om dette afsnit: Vi venter med at opdatere det til vi kender formatet af databaserne mm)
(Vi kommer til at have 1 database og et view op mod KRS og måske en test database med stamdata til at køre integrationstests.)
(Vi skal have en selvstædig database og en adgang til database view ned til stamdata) Databasen til NAS2 systemet er en selvstændig database og selvstændige tabeller i forhold til NAS1. NAS2 deler derfor ikke database med NAS1.
(Lige nu vedligeholdes databasen ikke af liquidbase så denne linje bliver ikke færdig) Databasen den vedligeholdes ved hjælp af Liquibase. Liquibase forventer at database samt bruger allerede er oprettet. Som standard forventes det at databasen den hedder nas, men dette kan ændres i nas-ds.xml.
Hvis der skal afvikles integrationstest mod det mijlø der installeres skal changelog filen liquibase-changelog-test.xml anvendes. Dette kan angives via konfigurationsproperty liquibase.changelog.file.
Krav til adgang til andre services
VI ER NÅET HERTIL!!!
NAS2 anvender NSP Kafka installationen på NSP Backend miljøet samt NSP Databasen. Uden adgang til disse kan servicen ikke fungere.
Krav til datahåndtering
Kravet til anvendere af NAS2 er at adviseringer ikke må indeholde personfølsomme data. NAS2 har dog ikke nogen måde at sikre dette, det er derfor op til SDS at sikre anvenderne overholder dette.
Krav til hardware
NAS2's ressourceforbrug vil afhænge af følgende:
Antallet og størrelsen af samtidige afleveringer af Adviseringer
- Antallet af samtidige hentning af Adviseringer.
- Antallet af ID'er i en ID-liste der aktivt anvendes ifm hentning af Adviseringer.
NAS2 er derimod lavet således at dens ressourceforbrug stort set ikke vil afhænge af følgende:
- Antallet af Pullpoints
- Antallet af Abonnementer.
- Antallet af ID-lister.
NAS2 gennerelle krav til hardware er baseret på NSP Kafka miljøets krav til hardware, da denne står for opbevaring af alle Adviseringer.
Konfiguration
I folderen https://svn.nspop.dk/svn/components/nas/trunk/compose/configuration findes følgende konfigurationsfiler:
ecpr2.properties | Konfiguration af ecpr2 services |
kafka-producer properties??? | |
log4j2-ecpr2.xml | |
Hvad med de .properties der er i ecpr2-service/resources? Hvilke skal med of hvilke udelades? | |
Fra NAS | |
notificationbroker.properties | Konfiguration af Notification Broker servicen |
| idlist.properties | Konfiguration af ID-list servicen |
| subscriptionmanager.properties | Konfiguration af Subscription Manager servicen |
| pullpointfactory.properties | Konfiguration af Pullpoint Factory servicen |
| pullpoint.properties | Konfiguration af Pullpoint servicen |
| cleanup.properties | Konfiguration af Cleanup servicen |
| administration.properties | Konfiguration af administrations servicen. |
| nas-ds.xml | Datasource filen der bruges af alle services |
| log4j-notificationbroker.xml | Log opsætning af Notification Broker servicen |
| log4j-idlist.xml | Log opsætning af ID-list servicen |
| log4j-subscriptionmanager.xml | Log opsætning af Subscription Manager servicen |
| log4j-pullpointfactory.xml | Log opsætning af Pullpoint Factory servicen |
| log4j-pullpoint.xml | Log opsætning af Pullpoint servicen |
| log4j-cleanup.xml | Log opsætning af Cleanup servicen |
| log4j-administration.xml | Log opsætning af administrations servicen. |
Alle filer skal tilrettes til de forskellige miljøer som NAS2 installeres på. Filerne indeholder en konfiguration der passer til NAS2 i en standalone test konfiguration.
I Driftvejledningen er hver enkel fil gennemgået i detaljer. ← Skal vi også det? eller rettere, skal det være her eller i driftvejledningen?
SLA logning
Konfigurationsfiler til SLA logning ligger inde i de Docker images som NAS2 producere. De følger standarden for SLA logning og det bør derfor ikke være nødvendigt at ændre i disse.
Afvikling
eCPR startes og stoppes med Docker Compose kommandoer:
Start: docker-compose -f compose/development/docker-compose.yml up -d --build
Stop: docker-compose -f compose/development/docker-compose.yml down
Specielt for administration servicen
Denne service udstiller kun REST endpoints til anvendelse af administration af NAS2 og skal derfor kun være tilgængelig for driften.
Standalone test
For en standalone test af NAS2 hentes "compose" folderen for den ønskede version med Subversion og kommandoen "docker-compose up" køres i folderen "test".
NSP Miljø
På et NSP miljø hentes "compose" folderen for den ønskede version med Subversion og kommandoen "docker-compose up" køres i folderen "release".