Posted: 20 Nov 2017 13:14 EST Last activity: 12 Oct 2018 14:58 EDT
Agents are rescheduled based on JVM start time
We have to run CleanUp AES Data agent on our 3 prod nodes one hour apart. For eg. On Node A agent has to run at 12:05, then on Node B the agent has to run at 1:05 and on Node C agent has to run at 2:05. So on each node the agent runs every 3 hours. But it looks like even if we schedule the agent to run 1 hour apart on each of the JVM when the JVM restart all the 3 agents runs during the same time. How can we run the agents on 3 nodes with this time difference.
***Edited by Moderator Marissa to update platform capability tags****
On an OOTB Pega deployment, the AES agents run on all nodes but actually only do work on one node. AES (and AESRemote on monitored node) uses dynamic system settings to track which node should be doing the work. Look at the DSS record "PegaAES", "AES/SECURITY/AGENTS/NODEID". First step of the cleanup agent checks D_AESAgentsNode.IsAESAgentsNode and exits if not true. Thus, dont' worry about the agent running on multiple nodes at once - it's only going to do work on one node.
On Pega73, agents specify which 'node type' they run on. If you start Pega with -DnodeType option AES agents only will run on a node that specifies that it is a 'backgroundProcessing' node. A good practice for highly scalable and stable AES deployment capable of monitor 100+ systems is to use two load balanced 'web' nodes for message processing and users and one node to support batch processing and search indexing. The message nodes would run with -DnodeType=WebUser, to minimize the agents on the nodes, whist the batch node would run with -DNodeType=BackgroundProcessing,Bix,Search. As shipped AES73 agents will only run on a BackgroundProcessing node if node type is defined.