
Configuration templates contain the predefined instance configuration for specific scenarios.
A configuration template is system independent and can be moved between different systems as all system dependencies are configured using dynamic configuration, which includes parameterized and computed settings and value links. A configuration template is derived from a default configuration and overwrites the setting according to the specific usage the template is assigned to.
You can make custom changes within the configuration templates and also activate new templates using the Config Tool. Your custom configuration applies to the whole system landscape. Also, if you want, you can revert your changes - you can restore the default values of single parameters, or revert back to the default configuration template as a whole.
Template inheritance enables you to fine tune your system on a template level. You can create a child template to an existing one and deploy it on other systems as well.
Template Inheritance
You can easily customize and build configuration templates on top of existing ones to best fit your needs, and apply the new configuration to all relevant systems.
Internal inheritance between default templates allows you to create a child template to a parent default template. Using value aggregation, you can configure the child templates so that every scenario consumes only its required resources. A child template can override the value of any property in its parent template. For properties that require value aggregation, you can use two types of inheritance:
Addition - incrementing the parent's value with a new value defined by the child
For example, if the number of initial threads in the parent template is 40 (InitialThreadCount = 40), but you want to have more initial threads, you can increase the value of the property in the child template with 10 threads ((InitialThreadCount = $parent + 10). Thus, after activating the child template, you will have 50 initial threads.
Subtraction - the child subtracts from the parent's aggregation.
For example, if you need less initial threads than the parent template contains, you can decrease their value in the child template. (InitialThreadCount = $parent - 10)
Also, after you configure the custom child template to best fit your scenario, you can export the new template in the form of SDA and deploy it on all the systems on which the parent template is available. More information: Modifying Configuration Templates
Structure
A configuration template may contain the following configuration:
Instance layout - the number of server nodes running on the instance defined as an arithmetic expression dependent on the hardware available for this instance (number of CPUs and memory available).
Java Virtual Machine (JVM) configuration - JVM memory settings and JVM parameters. If no settings are applied, the default settings will take effect.
Kernel configuration - system independent properties of the manager components of the AS Java.
Service setting - system-independent service properties of each service component which is part of the installation.
Application configuration - system independent application configuration of each application which is part of the installation.
Runtime filter configuration - for activation and deactivation of components according to the use case scenario the template belongs to (the components which are not needed for the particular usage are disabled, which means they are not started whereas those that are needed are enabled). More information about filters: Adding Filters .