Skip to content

DynamicServiceOrchestration

This Core System exists to find matching service instances according to the consumer’s specification within an Eclipse Arrowhead Local Cloud (LC) and optionally, in other Arrowhead clouds by collaborating with other core/support Systems.

Learn more:
Abstract System Description (SysD)

Services

serviceOrchestration

The purpose of this service is to get matching service instances. The service is offered for both application and Core/Support systems.

Learn more:
Abstract Service Description (SD)
generic_http (IDD) | generic_https (IDD)
generic_mqtt (IDD) | generic_mqtts (IDD)
since: v5.0.0

pull

This service operation performs the orchestration process and returns the matching service instances.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

subscribe

This service operation creates a subscription that can be triggered anytime to perform the orchestration process and push the matching service instances for the subscriber.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

unsubscribe

This service operation removes a subscription.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts


generalManagement

Its purpose is to get some information about the hosting system’s behavior, such as log entries and configuration settings. The service is offered for administrative Support systems.

Learn more:
Abstract Service Description (SD)
generic_http (IDD) | generic_https (IDD)
generic_mqtt (IDD) | generic_mqtts (IDD)
since: v5.0.0

get-log

This service operation lists the log entries of the system that match the filtering requirements.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

get-config

This service operation lists the current values of the specified configuration settings.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts


serviceOrchestrationPushManagement

The purpose of the service is to handle the push orchestration related data and activities centrally and in bulk. The service is offered for administrative Support systems.

Learn more:
Abstract Service Description (SD)
generic_http (IDD) | generic_https (IDD)
generic_mqtt (IDD) | generic_mqtts (IDD)
since: v5.0.0

subscribe

This service operation creates subscriptions in bulk for other consumer systems that can be triggered anytime to perform the orchestration process and push newly orchestrated matching service instances to the subscribed consumers.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

unsubscribe

This service operation removes subscriptions in bulk.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

trigger

This service operation initiates service orchestration processes based on consumer system names, subscription identifiers or a creator system name.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

query

This service operation lists the existing subscriptions that match the filtering requirements.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts


serviceOrchestrationLockManagement

The purpose of the service is to manage the orchestration locks, that allows to exclude service instances from being orchestrated.

Learn more:
Abstract Service Description (SD)
generic_http (IDD) | generic_https (IDD)
generic_mqtt (IDD) | generic_mqtts (IDD)
since: v5.0.0

create

This service operation creates orchestration lock records.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

query

This service operation lists the existing lock records that match the filtering requirements.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

remove

This service operation deletes the specified lock records.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts


serviceOrchestrationHistoryManagement

The purpose of the service is to gather information about the performed orchestration processes.

Learn more:
Abstract Service Description (SD)
generic_http (IDD) | generic_https (IDD)
generic_mqtt (IDD) | generic_mqtts (IDD)
since: v5.0.0

query

This service operation lists the existing orchestration job records that match the filtering requirements.

Example: generic_http | generic_https
Example: generic_mqtt | generic_mqtts

Configuration

The system configuration properties can be found in the application.properties file located at /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 override the built in configuration property value.

General parameters

See the general configuration properties.

Database parameters

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.show-sql

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

spring.jpa.properties.hibernate.format sql

Set to true to log out SQL 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'.

Custom parameters

authenticator.credentials

The credentials that this system will use for performing the login operation when the authentication policy is outsourced.

authenticator.credentials={\
    '<credential-name>': '<credential-value>' \
}

enable.blacklist.filter

Enable/disable automatic service requester system name verification against to cloud level blacklist, and also the provider candidate system names during the orchestration process. Can be true or false.

force.blacklist.filter

Whether or not the service requests should be refused when the blacklist server is not responding, and whether the provider candidates should be dropped during the orchstration process or not. Can be true or false.

enable.management.filter

Enable or disable authorization for accessing the management services. Can be true of false.

management.policy

Way of authorizing the management service requester systems. Can be:

  • sysop-only, when the authenticated requester system has system-operator role that ensures overall management permission.
  • whitelist, sysop-only and when the authenticated requester system is whitelisted in the management.whitelist configuration property that ensures overall management permission.
  • authorization, sysop-only and whitelist and when the authenticated requester system has appropriate service permission according to the ConsumerAuthorization Core system.

management.whitelist

Name of the systems which can access to management services in case of whitelist policy is effective.

management.whitelist=<system-name-a>,<system-name-b>

enable.authorization

Enable or disable consumer authorization cross-checking during the orchestration process.

enable.translation

Enable or disable automatic interface translation bridge creation between a consumer and a provider during the orchestration process.

enable.qos

Enable or disable Quality-of-Service cross-checking during the orchestration process.

enable.intercloud

Enable or disable automatic gatepath creation between a consumer and a provider from a neighbor cloud during the orchestration process.

orchestration.history.max.age

Specifies after how many days the orchestration history records can be automatically deleted.

cleaner.job.interval

Specifies in milisec, that how often the expired subscriptions and the orchestration history records can be automatically deleted and how often the expired orchestration locks can be released.

push.orchestration.max.thread

Specifies the maximum number of threads that can be allocated to process push orchestration tasks.

Changelog

v5.0.0

Related in CL-5.0.0