Skip to content

Service Registry Configuration

Bordi Tamás edited this page Jan 28, 2022 · 21 revisions

System Configuration

The system configuration properties can be found in the application.properties file located at {core-system}/src/main/resources folder.

Note: During the build process this file is going to be built into the executable jar, but also going to be copied next to the jar file. Any modification in the configuration file located next to the executable jar file will overide the built in configuration property value.

spring.datasource.url

URL to the database.

spring.datasource.username

Username to the database.

spring.datasource.password

Password to the database.

spring.datasource.driver-class-name

The driver provides the connection to the database and implements the protocol for transferring the query and result between client and database.

spring.jpa.database-platform

Specify the database dialect for Java Persistence API.

spring.jpa.show-sql

Set to true in order to log out the mysql queries.

spring.jpa.properties.hibernate.format_sql

Set to true to log out mysql queries in pretty format. (Effective only when 'spring.jpa.show-sql' is 'true')

spring.jpa.hibernate.ddl-auto

Auto initialization of database tables. Value must be always 'none'.

server.address

IP address of the server.

server.port

Port number of the server.

domain.name

Set this when the system is available via domain name within the network.

domain.port

Set this when the system is available via domain port within the network.

core_system_name

Name of the system. Must be always ’SERVICEREGISTRY’.

log_all_request_and_response

Set to ’true’ in order to show all request/response in debug log.

ping_scheduled

f ’true’ the service providers will be pinged in a fixed time interval and service offerings will be removedwhere the provider was not available.

ping_timeout

How much time the system should wait for the ping response (in milliseconds).

ping_interval

How frequently should the ping happen, in minutes.

ttl_scheduled

If ’true’ the service offerings will be automatically removed, where the endOfValidity timestamp field is inthe past, meaning the offering expired.

ttl_interval

How frequently the database should be checked for expired services, in minutes.

use_strict_service_intf_name_verifier

Interface names has to follow this format PROTOCOL-SECURITY-FORMAT, where security can beSECURE or INSECURE and protocol and format must be a sequence of letters, numbers and underscore.A regexp checker will verify that. If this setting is set to true then the PROTOCOL and FORMAT mustcome from a predefined set.

use_strict_service_definition_verifier

If ’true’, service definitions has to follow these rules: They only contains letters (english alphabet), numbersand dash (-), and have to start with a letter (also cannot end with dash).

use_network_address_detector

If ’true’, address detection from HttpServletRequest will be performed at the time of systems and serviceregistration/unregistration.

filter_proxy_addresses

Comma separated list representing the possible proxy servers like load-balancer etc... before ServiceReg-istry.

allow_self_addressing

If ’true’, the registration of systems with self-addressing IPv4, IPv6 and no-type addresses are allowed. Incase of self-addressing addresses the IP packets cannot be directed from one device to another.

allow_non_routable_addressing

If ’true’, the registration of systems with non-routable IPv4 and IPv6 addresses are allowed. In case ofnon-routable addresses the IP packets cannot be directed from one network to another.

server.ssl.enabled

Set to ’false’ in order to disable https mode.

server.ssl.key-store-type

Type of the key store.

server.ssl.key-store

Path to the key store.

server.ssl.key-store-password

Password to the key store.

server.ssl.key-alias

Alias name of the certificate.

server.ssl.key-password

Password to the certificate.

server.ssl.client-auth

Must be always ’need’ which means that SSL client authentication is necessary when SSL is enabled..

server.ssl.trust-store-type

Type of the trust store.

server.ssl.trust-store

Path to trust store.

server.ssl.trust-store-password

Password to trust store.

disable.hostname.verifier

If true, http client does not check whether the hostname is match one of the server’s SAN in its certificate.

Logging Configuration

todo

-Dlog4j.configurationFile={external-file}

ABOUT

GETTING STARTED

Certificates

Quick start

How to contribute?

HINTS

MANDATORY CORE SYSTEMS

Service Registry

Orchestrator

Authorization

APPLICATION SYSTEMS

SUPPORTING CORE SYSTEMS

Gatekeeper

Gateway

Event Handler

Choreographer

Quality of Service Monitor

Certificate Authority

System Registry

Device Registry

Onboarding

Data Manager

Time Manager

Plant Description Engine

HawkBit Configuration Manager

Device Hub

Clone this wiki locally