Question
Deploying Pega Robotics into Citrix (XenApp and XenDesktop)
To provide some context to the questions below currently we run an application (referred to as APPX within this blurb) on all desktops as a Citrix Published application because it does not run well as a local installation due to network bandwidth limitations.
Recently it was asked if we could also run the Pega Robotics (RDA solution) as a published application on our XenApp servers. We run about 30 users published application instances of APPX per server right now. After this was proposed we have some additional questions.
- Our best case scenario would be to continue running the APPX as a published application that each user launches from their physical desktop and then run Pega Robotics on that physical desktop. So the question would be if we tried to run in this configuration would Pega Robotics perform from the published application of APPX? Are there any concerns with running it this way?
If the above (preferred) solution cannot be made to work and it's required that Pega Robotics be ran as a published application from XenApp servers we have the additional questions below.
- Is there is any documentation that covers installation and configuration of Pega Robotics on a Server 2016 / XenApp Published application server so that the application can be used as a Citrix published application?
- If documentation is not available, can someone explain how an instance of a Pegabot published application would interact with a instance of a published application of APPX (keep in mind there is potential these might not be running on the same servers)?
- Will the Pegabot client be able to run up to 30 instances of the client as a published application from a single installation?
- If it can run 30 instances from a single installation how does the resource utilization scale, and / or what server resources (CPU, memory, storage, etc.) would be needed to run this many instances of the client?
1. If you want Pega Robotics to interact with APPX, you would need to run Pega Robotics as the published application and have it start APPX as a local application (since PR will be running from the Citrix server, APPX will be local).
****************************************************************************************************
1. https://community.pega.com/knowledgebase/articles/pega-rpa/citrix-support-robotic-automation is a starting point on how Citrix works. If you are running Pega Robotics solely within Citrix (i.e. it is only interacting with application(s) within the same Citrix server), then there isn't much to consider. You'd simply install and configure Runtime on the Citrix environment and set it to be the published application that users launch. Runtime would then start the application(s) that the user currently launches.
2. You cannot interact with applications over Citrix. Runtime must be installed on the Citrix server and will launch the application locally. If you need to interact with applications on a local desktop and applications that run in Citrix, you would need to use what we refer to as Citrix-Mixed-Mode. This involves using a Citrix Context in your project. The way this works is the local Runtime starts and launches a published application version of Runtime in Citrix. The Runtimes communicate back-and-forth with the Citrix one handling the application(s) running within Citrix. In the link above, there's a second link to an article on using Citrix Contexts.
3. I don't understand this question. When you run Pega Robotics on your Citrix server, it will be the published application and will ultimately start the current application (APPX in your example). There will be some overhead with Pega Robotics, so if your capacity is 30 instances per server now, adding Runtime will likely reduce that number as you are now introducing another application into the mix that has not been sized for.
4. Again, I may be misunderstanding here, but the overhead of Runtime varies depending on hat you are doing. CPU-wise, it isn't very intensive usually, but memory-wise, I would say that the worst-case-scenario would be an extra Gig or so of RAM needed. Usually, I have seen the Citrix admins run some sort of profile once your project is finished to determine the sizing needs of the server. It is certainly likely though that the overhead will reduce the capacity on a given Citrix server from what it is currently at without Runtime.