Thursday, December 18, 2014

Dynamics AX 2012 Cluster Configurations

If you have dealt with larger scale implementations of AX, you have likely installed multiple Application Object Servers for a single environment. With that, comes decisions about how those AOS servers should be utilized. Each client's project will have their own special set of circumstances which will determine how these multiple AOS servers should be utilized, but there are really only two options on the cluster configuration within AX for these servers.

  1. Load Balanced
  2. Non-Load Balanced
The trick is understanding all of the activities that will be performed by the client using AX. Will the client be doing most of their work manually within the AX client without much in the way of automation? i.e. manually entering Sales orders, purchase orders, planning, etc. Or will they be utilizing the batch functionality of AX heavily in areas such as AIF imports from outside systems for transactions, master planning, warehouse systems, etc. Once you have a good feel for the separation of Automated vs. Manual, that will help you decide the best Cluster Configuration of your AOS servers within the AX application. 

If the client is going to be more manual and fewer integrations/batch jobs, set up at least one of the AOS servers as Batch enabled and 'Non-Load Balanced' in the cluster configuration (System admin module). This will stop users from connecting to the batch server with an AX client. The rest of the AOS servers can be set to 'Load Balanced'. We like to separate user servers from servers that batch jobs run on. There are a lot of reasons for doing this which most technical AX admins will know but mostly they have to do with segregation of responsibility in your AOS cluster. If an AOS's system resources get tapped or crashes, the first piece of evidence for troubleshooting could be taken care of immediately (in most cases) where you would know if it is User created issue in the client, or a batch job issue that caused it. 

If the client is going to have a lot of integrations with outside systems and the bulk of their transactions will be imported (i.e. sales orders, purchase orders, warehouse trans, financial uploads, etc.), you would want to lean more heavily on setting up Non-Load Balanced, batch enabled servers, at least 2 dedicated. Ultimately a single AOS can support many user sessions, but having batch jobs on user AOS servers can lead to some issues, especially at peak transaction time. Remember you can always change these settings on the fly inside AX without restarting AOS services. Keep in mind you can also set a Load Balanced server that users can connect to as a batch server as well, and then set the server to ONLY do batch jobs during the evening hours, leaving the daytime for users and nighttime for typically heavy nightly processes (invoicing, planning, etc.).

Ultimately, if a client has purchased multiple AOS licenses, segregation of responsibilities is the way to go so they get the best bang for their buck. 

No comments:

Post a Comment