Skip to content

Scheduling mechanism

Adding more instances

When Onteon finds out that there is not enough instances of application it will start process of adding more of them. This process can be controlled by the user with proper scripts definition. The algorithm looks like below:

for <number of instances to add> times do:
    nodeCandidates = (run script with type 'check-if-node-can-accept-new-application-instance-v1')

    selectedNode = (run script with type 'select-node-for-new-application-instance-v1')

    schedule new instance on selectedNode

Onteon includes default definitions of the scripts so you don't need to write them by yourself. But in cases where you need better control you can always provide your custom implementation of the scripts.

Removing instances

When Onteon finds out that there is too many instances of application it will start process of removing some of them. This process can be controlled by the user with proper scripts definition. The algorithm looks like below:

for <number of instances to remove> times do:
    selectedApplicationInstance = (run script with type 'select-application-instance-to-remove-v1')

    schedule removal of selectedApplicationInstance

Onteon includes default definitions of the scripts so you don't need to write them by yourself. But in cases where you need better control you can always provide your custom implementation of the scripts.