Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Afsnittene 3 og 4.3 indeholder information om konfiguration af applikationsserveren og databasen, herunder oprettelse af databaseskemaer.

...

STS: STS anvendes til at trække Sosi idkort på baggrund af DDS Registrys funktionscertifikat. Dette idkort anvendes i kald til BRS, Samtykkeverifikation samt MinLogRegistration.

PersonInformation: PersonInformation rest servicen anvendes ved søgning udført af en Borger . Den anvndes til at tjekke om en Borger har en relation til den borger han søger på vegne af.

Krav til datahåndtering

DDS Registry foretager udelukkende opslag , samt registrering, af data via andre services.

...

documentsources: I tabellen documentregistry er der konfiguration af hvilke dokument-indeks, der anvendes af servicen.

Generering af installationspakke

Installationspakken indeholder, når genereret, filer, der kan anvendes som skabeloner med henblik på at understøtte:

  1. Oprettelse af database-skemaer
  2. Konfiguration af datasources til disse database-skemaer

Installationspakken genereres ud fra byggemiljøet med følgende kommando udført fra folderen <packing>/dds/common:

Code Block
mvn -Dinstallation-package-folder=<installationspakke> -Pgenerate-install-package initialize

Derved kopieres sql-scripts og konfigurationsfiler til folderen udpeget som <installationspakke>. Disse filer kan anvendes som skabeloner og tilpasses som beskrevet i det efterfølgende.

Installation af datasource

Alle datasource filer nævnt i afsnittene fra 3.3 og efter, bør ikke deployeres i deployments folderen på WildFly, da dette vil føre til manglende kontrol fra WildFly Administration Console.

Indholdet af datasource filerne bør kopieres ind i standalone.xml under:

Code Block
/server/ profile/subsystem[xmlns="urn:jboss:domain:datasources:2.0"]/datasources

Oprettelse af whitelist skema

Skema oprettes ved afvikling af SQL script fra mysql:

Code Block
<installationspakke>/createWhitelistSchema.sql

Data source ændres til at pege på whitelist-skema ved at opdatere filen:

Code Block
<installationspakke>/whitelist-wildfly-ds.xml

Test note:


I folderen  compose/database ligger sql-scripts, som kan anvendes til at initialisere disse databaser. Script-filerne er præfikset med et løbenummer, som angiver den rækkefølge de skal køres i. Bemærk at nogle scripts indsætter testdata, disse må udelukkende anvendes i testmiljøer.

Oprettelse af whitelist

I testkonfiguration kan whitelist-databasen opdateres med SQL insert.

...

DDS Registry anvender opslag i autorisations register data, der skal være tilgængeligt i stamdata i følgende tabel:

  • autreg

Data source ændres til at pege på stamdata skema ved at opdatere filen:

Code Block
<installationspakke>/auth-ds.xml

Test note:

I testsetup skal brugeren stamdatauser/password have læse adgang til autreg tabellen i stamdata.

...

Indlæsning og synkronisering af SOR databasen sker fra central NSP komponent.Data source ændres til at pege på stamdata skema ved at opdatere filen:

Code Block
<installationspakke>/sor-ds.xml


Test note:

Note: I test setup skal brugeren stamdatauser/password have læseadgang til SOR tabellerne i stamdata.

Oprettelse af documentsources skema

Skema oprettes ved afvikling af SQL script fra mysql:

Code Block
<installationspakke>/createDocumentSourcesSchema.sql
<installationspakke>/createDocumentRegistry.sql

Data source ændres til at pege på documentsource-skema ved at opdatere filen:

Code Block
<installationspakke>/documentsources-ds.xml

Brugeren identificeret i data source-filen (dsuser/password) skal have de nødvendige privileges til documentsource databasen.

...

Adressen for indeksets webservice-endpoint er her givet ved http://host:57774/csp/public/hsbus/HS.IHE.XDSb.Registry.Services.cls, hvilket skal tilpasses konkret placering. Se [Driftsvejledning] for betydning af øvrige kolonner.

Deployment

...

Dette afsnit beskriver deploymentprocessen på WildFly 8.2

Tilpasning af applikationsserver

Ingen.

Deployment af komponenter

OBS! Inden opstart af WildFly skal det sikres at properties og modul filer til servicen ligger i de applikationsspecifikke modul foldere på WildFly. Se afsnit 4.3.

Folderen <installationspakke> forudsættes genereret og indeholdte filer potentielt tilpasset som beskrevet i afsnit 3.1.

...

hvordan komponenten deployes.

Jenkins

DDS bygges med NSP's Jenkins server via følgende jobs:

  • DDS_build - Bygger koden (sker automatisk ved commits)
  • DDS_push_snapshot - Pusher det nyeste snapshot image til NSP Docker Registry

NSP er selv ansvarlige for at pushe release versioner af DDS til NSP Docker Registry gennem Jenkins.

Docker

DDS består af to docker images som pushes til NSP Docker Registry under navnene:

  • registry.nspop.dk/components/dds/ddsregistry:snapshot
  • registry.nspop.dk/components/dds/ddsrepository:snapshot

Docker-compose

DDS leveres samtidig som et sæt af Docker Compose filer i folderen https://svn.nspop.dk/svn/components/dds/trunk/compose.

For release x.y.z af BivWSP findes Docker Compose filerne i folderen https://svn.nspop.dk/svn/components/dds/tags/release-x.y.z/compose


Compose folderen indeholder 5 underfoldere:

configurationHer ligger alle de konfigurationsfiler som det forventes af driften tilretter til det anvendte miljø.
databaseHer ville alle de databasefiler som det forventes at driften lægger på en NSP database ligge, hvis der var nogen
developmentHer ligger en Docker Compose fil til brug for udvikling. Se Guide til Udviklere.
testHer ligger en Docker Compose fil der kan starte DDS i en standalone test konfiguration.
releaseHer ligger den Docker Compose fil som det forventes driften anvender på både test og produktionsmiljøerne.


Konfiguration af datasources

Under configuration/datasources findes en række datasources, som volume-mappes ind i komponenten. Disse skal konfigureres inden opstart.

Konfiguration af adgang til stamdata-databasen sker i auth-ds.xml, adgang til whitelist-databasen i whitelist-wildfly-ds.xml, adgang til SOR-databasen i sor-ds.xml, adgang til CRA-databasen i crasts-ds.xml, mens adgang til Data sources konfigureres i documentsources-ds.xml. Se afsnit 3.2 for installation af datasources.

Servicekomponenter der skal deployes til WildFly, skal kopieres til mappen ”deployments”. Hvis WildFly kører normalt starter den selv komponenten op. Er dette ikke tilfældet skal WildFly genstartes – se afsnit 4.3.7.
Yderligere information vil findes i driftsvejledningen.

...

Konfiguration af properties

Al konfiguration foregår ved redigering af de relevante properties filer i deres modul folder under WildFly modules, som ligger under compose/configuration. Disse filer volume-mappes ind i komponenten. Ved konfigurationsændringer bør servicen /WildFly genstartes.

Indholdet af de enkelte konfigurationsfiler, er beskrevet og forklaret i [Driftsvejledning]

Følgende filer kan tilpasses:

Deployment af Modul

WildFly DDSRegistry modul sættes op ved at kopiere filen:

...

.

...

Til:

Code Block
/pack/wildfly8/modules/nsi/ddsregistry/config/main

DDSRegistry.properties

Konfigurerer opsætning af DDS Registry og hvorledes den benytter sig af eksterne services.

En skabelon af denne fil findes i: 

Code Block
<packing>/ddsservices/ddsregistry/war/src/test/conf/DDSRegistry.sproperties

Filen redigeres inden den placeres på WildFly i:

Code Block
/pack/wildfly8/modules/nsi/ddsregistry/config/main

Yderligere information kan findes i driftsvejledningen.

ddsregistry.log4j.properties

Konfigurerer logopsætningen for DDS Registry.

En skabelon for log4j konfiguration findes i:

Code Block
<packing>/ddsservices/ddsregistry/war/src/test/conf/ddsregistry.log4j.properties

Filen redigeres inden den placeres på WildFly i: 

Code Block
/pack/wildfly8/modules/nsi/ddsregistry/config/main

Konfiguration af managed executor service

DDS bruger en managed executor service til at foretage samtidige kald af eksterne services, hvilket gælder både interne NSP services (minlog, samtykke osv.) og andre registrerregistre.

DDS bruger sin egen instans af en managed executor service, som sættes op ved følgende i standalone.xml i WildFly:

Code Block
...
<subsystem xmlns="urn:jboss:domain:ee:2.0">
<spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>
<concurrent>
<context-services>
<context-service name="default" jndi-name="java:jboss/ee/concurrency/context/default" use-transaction-setup-provider="true"/>
</context-services>
<managed-thread-factories>
<managed-thread-factory name="default" jndi-name="java:jboss/ee/concurrency/factory/default" context-service="default"/>
</managed-thread-factories>
<managed-executor-services>
<managed-executor-service name="default" jndi-name="java:jboss/ee/concurrency/executor/default" context-service="default" hung-task-threshold="600000" core-threads="5" max-threads="25" keepalive-time="5000" queue-length="10000"/>
<managed-executor-service name="dds" jndi-name="java:jboss/ee/concurrency/executor/dds" context-service="default" hung-task-threshold="600000" core-threads="10" max-threads="1000" keepalive-time="5000" queue-length="100000"/>
</managed-executor-services>
<managed-scheduled-executor-services>
<managed-scheduled-executor-service name="default" jndi-name="java:jboss/ee/concurrency/scheduler/default" context-service="default" hung-task-threshold="60000" core-threads="2" keepalive-time="3000"/>
</managed-scheduled-executor-services>
</concurrent>
<default-bindings context-service="java:jboss/ee/concurrency/context/default" datasource="java:jboss/datasources/ExampleDS" jms-connection-factory="java:jboss/DefaultJMSConnectionFactory" managed-executor-service="java:jboss/ee/concurrency/executor/default" managed-scheduled-executor-service="java:jboss/ee/concurrency/scheduler/default" managed-thread-factory="java:jboss/ee/concurrency/factory/default"/>
</subsystem>
...

Udsnittet viser en standard WildFly opsætning, hvor det markerede er specifikt for DDS og skal indsættes i standalone.xml. Bemærk at der er flere parametre, hvor der er indsat default værdier, der kan fintunes under drift. opsættes automatisk når docker-imaget bygges. For yderligere beskrivelse af parametrene for managed executor services henvises til JBoss dokumentationen (https://docs.jboss.org/author/display/WFLY8/EE+Subsystem+Configuration).

Den markerede managed executor service benyttes både af DDSRegistry og DDSRepository.

Konfiguration af NSP SLA log

NSP-util anvendes som en del af servicen og skal konfigureres. Eksempel på konfiguration fil findes i

Code Block
<packing>compose/ddsservicesconfiguration/ddsregistry/war/src/test/conf/log4j-nspslalog-ddsregistry.properties
<packing>compose/ddsservicesconfiguration/ddsregistry/war/src/test/conf/nspslalog-ddsregistry.properties 

Filerne redigeres inden den placeres på WildFly i:

Code Block
/pack/wildfly8/modules/nsi/ddsregistry/config/main

...

Whitelisting af services

Adgang til DDS Registry styres på CVR-niveau via konfigurationen i whitelist.whitelist_config tabellen. Se også afsnit 3.1.

...

Konfigurationsfil til det svar, DDS Registry returnerer ved forespørgsel mod dens DKS-snitflade opsættes ved at kopiereretilpasse:

Code Block
<packing>compose/ddsservicesconfiguration/ddsregistry/war/src/test/conf/dksConfiguration.xml

til:

code
/pack/wildfly8/modules/nsi/ddsregistry/config/main

Start/genstart af service

Komponenten kan genstartes ved ”touch” af war-filen på WildFly. Alternativt skal WildFly genstartes ved at køre kommandoen

...

DDS Registry startes og stoppes med Docker Compose kommandoer.

Logfiler

DDS Registry kan logge kald til følgende logs: En NSP-SLA-log, en audit-log, en applikations log og en performance log.

...

Afinstallation af servicen

Fjern service komponenter under WildFly’ deployments/ folder:

Code Block
classcodeContent
ddsregistry.war

Følgende datasources fjernes fra <wildfly>/standalone/configuration/standalone.xml:

  • AuthDS (OBS! Benyttes af DDSRepository)
  • SORDS (OBS! Kan være anvendt af anden service)
  • WhitelistDS (OBS! Kan være anvendt af anden service)
  • DocumentSourcesDS (OBS! Benyttes af DDSRepository)

Fjern properties filer under DDSRegistry modules folder:

...

Oprydning i MySQL database:

...