Setting up web.config file for redis enablement

What configuration needs to be added in the web.config file for Redis setup

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker

Orchestrator uses redis to save below information:

  • session state - automatically set when installing Orchestrator on multiple nodes
  • user sessions from the browser
  • Robot heartbeat cache
  • associations between users and roles
  • associations between users and organization units
  • license information
  • settings
  • sends start job commands to all Orchestrator nodes so that it can be further sent to the correct Robots
  • keeps all packages (.nupkg files) in sync on all nodes (if NuGet.EnableRedisNodeCoordination is set to true)
Below settings have to modified in the web.config file in order to use redis:

For Orchestrator version 2018.4
1.Set LoadBalancer.Enabled = "true"
2. Set LoadBalancer.UseRedis = "true"
3. Redis connectionstring - value="<ipofmaster>:<port>,<ipofslave1>:<port>, <ipofslave2>:<port>, password=<passwordvalue>"
4. set Sessionstate mode=custom , provide the connectionstring.
5. comment Sessionstate mode=inproc (default value)
6. NuGet.EnableRedisNodeCoordination parameter in the web.config : true (this is needed if redis is needed for package management)


For Orchestrator version 2019.4
1.Set LoadBalancer.Enabled = "true"
2. Set LoadBalancer.UseRedis = "true"
3. Redis connectionstring - value="<ipofmaster>:<port>,<ipofslave1>:<port>, <ipofslave2>:<port>, password=<passwordvalue>"
4. NuGet.EnableRedisNodeCoordination parameter in the web.config : true (this is needed if redis is needed for package management)

Note: A VIP can also be used instead of mentioning the IP address of individual redis nodes. More details can be found here:

https://docs.uipath.com/orchestrator/docs/redis-sentinel-configuration#section-network-load-balancer-configuration