i am trying to understand uipath’s license for HAA add on. I mean , isnt multi node deployment is enough to achieve orchestrator service availability ? and CMIIW to deploy multi node configuration , we dont need to apply more license.
These SKUs exist
UiPath - High- Availability Add-On for Orchestrator HAA
Available only with UiPath - Orchestrator - Standard
Not available with UiPath - Orchestrator - Basic
License is per deployed instance on a single multi-node Orchestrator instance. ie. If there is more than 1 HAA cluster then additional license for High Availability Add-On is needed.
UiPath - High- Availability Add-On for Orchestrator NonProduction HAA
Available only with UiPath - Orchestrator – NonProduction
Not available with UiPath - Orchestrator – Basic
License is per deployed instance on a single non-production multi-node Orchestrator instance.|
I believe under the new licensing model you are not licensing per Orchestrator node, but rather Environments and you would have 1 HAA License for each cluster of Orchestrator nodes.
Lets say you had 2 Orchestrator Nodes, a Robot would connect to one or the other node, you could specify explicitly which node or you could put your Orchestrator nodes behind a load-balancer to balance the traffic / requests.
This doesn’t solve the problem of the individual Orchestrator nodes knowing the state of everything 100% of the time, you are going to have race conditions with your triggers and health checks, etc. You’ll actually see a symptom of Robot Available Status flip flopping being Available and Unavailable because one node sees the robot available but the other node does not.
The role of HAA / Redis is to keep your Orchestrator Nodes in Sync. HAA is the licensed supported way to go about it, but you are free to role with your own solution, it would just be unsupported.
Such deployments use the RESP (REdis Serialization Protocol) for communication, and thus can be configured using any solution implementing this protocol. The potential solutions tested (but not supported) by UiPath are:
MSOpenTech Redis on Windows v3.0.504 Redis Server v3.2.8 and v5.0.4 Redis Enterprise v5.4.0-19
Thanks for the explanation, so i think we can go with just 2 nodes orchestrator with 1 NLB and 1 HAA add on licensing to sync the Orchestrator.
and also based on your explanation also, the 2 orchestrators node does not need to serve the same amount of process/transactions. we can just set it through the NLB how we distribute the traffic. Maybe orchestrator 1 : 100%, and orchestrator 2 : 0%( this is what UiPath Docs explained as ACtive-Passive configuration ?) , or ORchestrator 1 : 50% and orchestror 2 : 50% (Active-Active)
Yeah, if you wanted to provide an Active/Standby setup you could totally do that either through your traffic balancing / fault tolerance detection. In their Disaster Recovery - Active/Passive they’re using the example of having a completely separate infrastructure in another Data Centre that is acting as a standby incase the primary Data Centre fails or is degraded in some way. The concept is the same, but typically provide geo-redundancy as well.
How you balance and what methods you have available to you will depend on your Load-Balancer. On your example sounds like you’d want to use an Ratio balancing, or possible setting Priority Group to your LB Pool Members.