ImportantServer setup and registration changed significantly from versions 6.2 and before.
The following applies only to version 6.3 and forward.
Managed KIE Server
A managed instance is one that requires a jBPM controller to be available to properly start up the KIE Server instance. The jBPM controller is a component responsible for keeping and managing a KIE Server configuration in a centralized way. Each jBPM controller can manage multiple configurations at once and there can be multiple jBPM controllers in the environment. Managed KIE Servers can be configured with a list of jBPM controllers but will connect to only one at a time.It’s important to mention that even though there can be multiple
jBPM controllers, they should be kept in sync to make sure that regardless of
which one of them is contacted by a KIE Server instance, it will provide the
same set of configuration.
In order to run the KIE Server in standalone mode, without connecting to
any jBPM controllers, please see “Unmanaged KIE Execution Server”.
- KIE containers to be deployed and started
- configuration items - currently this is a placeholder for further enhancements that will allow remotely configuring KIE Execution Server components - timers, persistence, etc
- the jBPM controller itself that is exposed to interact with KIE Execution Server instances
- an administration API that allows you to remotely manage KIE Server instances:
- add/remove servers
- add/remove containers to/from the servers
- start/stop containers on servers


Working with managed servers
There are two approaches that users can take when working with managed KIE Server instances:- Configuration first: with this approach, a user will start working with the jBPM controller (either UI or REST API) and create and configure KIE Server definitions. That consists basically of an identification for the server definition (id and name + optionally version for improved readability) and the configuration for the KIE containers to run on the server.
- Registration first: with this approach, the KIE Server instances are started first and auto register themselves on the jBPM controller. The user can then configure the KIE containers. This option simply skips the registration step done in the first approach and populates it with server id, name and version directly upon auto registration. There are no other differences between the two approaches.
Unmanaged KIE Execution Server
An unmanaged KIE Server is in turn just a standalone instance, and thus must be configured individually using the REST/JMS API from the KIE Server itself. There is no jBPM controller involved. The configuration is automatically persisted by the server into a file and that is used as the internal server state, in case of restarts. The configuration is updated during the following operations:- deploy KIE container
- undeploy KIE container
- start KIE container
- stop KIE container
If the KIE Server is restarted, it will try to establish the same state
that was persisted before shutdown. That means that KIE containers that were
running will be started, but the ones that were stopped/disposed before will not.