CLI Tutorial: Server Scaling

When the environment is already created, in some cases it may be required to change its topology - for example, to scale a particular server or the whole environment layer (using the vertical and/or horizontal scaling respectively) due to the changed incoming load. This may be accomplished with the corresponding changetopology CLI method:

~/jelastic/environment/control/changetopology --envName {env_name} --env '{"engine" : "{engine_type}"}' --nodes [‘{"nodeType" : "{node_type}","count" : {nodes_amount}, "fixedCloudlets" : {cloudlets_amount}, "flexibleCloudlets" : {cloudlets_amount}}, {"nodeType" : "{node_type}", "count" : {nodes_amount}, "fixedCloudlets" : {cloudlets_amount}, "flexibleCloudlets" : {cloudlets_amount}}']

Jelastic CLI change topology

The whole set of possible parameters is the same as for the createenvironment method, except the --envName {env_name} - here it is used to point to the already existing environment, that should be adjusted.

As for the rest of options, in this example we use the following ones:
  • {engine_type} - engine the instances of the chosen environment are powered by (an obligatory string)
  • {node_type} - stack type identifier, according to the list
  • {nodes_amount} - amount of nodes to be set (applies horizontal scaling)
  • {cloudlets_amount} - number of fixed (fixedCloudlets) and/or flexible (flexibleCloudlets) cloudlets to be allocated for the specified node type (applies vertical scaling)

Note: For the proper work of horizontally scaled application server, do not miss to add a load balancing node to your environment topology beforehand (if it’s absent).
Reconfiguration of environment topology may take several minutes in order to be accomplished.