Direct agent thread pool:
Used for sending commands directly to the HVs like start/stop VMs etc. Also used for sending commands to other resources like network providers etc. The size of the pool is configurable using "direct.agent.pool.size" configuration parameter. Default for this parameter is 500.
In the MS logs tasks handled by these threads starts with "DirectAgent-"
Direct agent connect task thread pool:
Used for handling connect/disconnect for direct agents. This is used when a new host (managed by direct agents) gets added or removed and also when MS is restarted. The size of the pool is configurable using "direct.agent.load.size" configuration parameter. Default is 16.
In the MS logs tasks handled by these threads starts with "AgentTaskPool-"
Indirect agent connect task thread pool:
Used for handling connect/disconnect for indirect agents like SSVM, CPVM and KVM. These are called indirect agents as they talk to the agent process running on SSVM, CPVM, KVM host. The size of the pool is not configurable and set to 100 with a upper bound of 500 (this should be made configurable as well).
In the MS logs tasks handled by these threads starts with "AgentConnectTaskPool-"
Indirect agent communication thread pool:
Used for indirect agent communication on port 8250. The size of the pool is based on "workers" configuration parameter. The formula used for arriving at thread pool size is: size = (workers + 10) * 5. Default value of "workers" parameter is 5 and so the default pool size is 75. This is also present in the agent JVM process in SSVM, CPVM and KVM hosts.
In the MS logs tasks handled by these threads starts with "AgentManager-"