8 Replies Latest reply on Sep 8, 2017 1:45 AM by Nick Corbin

    Multiple Gateways on an Undistributed System

    Nick Corbin

      Hi, would there be any point in having multiple gateways set up on workers as they are in the system below?



      I've just set up a backup primary (not shown) so will be adding a load balancer to deal with traffic in the event of losing the primary but before doing this I wanted to know whether it was worth including the two workers in the load balancer.





        • 1. Re: Multiple Gateways on an Undistributed System

          Swap the configuration, Keep Gatway on Primary and remaining services to workers, This will scale out horizontally and provide high availability. Capture.PNG

          • 2. Re: Multiple Gateways on an Undistributed System
            Nick Corbin

            Thanks Vinay. The reason licensed services aren't already on the workers is

            that we have an 8 core license and aren't planning on adding another 8 core

            licence (at present) which would give us HA.


            At present the most we can do is have unlicensed processes on the workers,

            licensed processes on the primary plus a backup primary. It's obviously

            possible to add a gateway to each worker as I've done, I just wondered if

            there was any point in doing it.




            On 7 Sep 2017 21:03, "VINAY KUMAR VADLAMUDI" <tableaucommunity@tableau.com>

            • 3. Re: Multiple Gateways on an Undistributed System



              Which version of tableau you are using, if you are on 10.0, you can do it by 4,4,4 cores as 10.0 has min recommended hardware 4 cores. This is how we did in our environment.


              If you are above 10.0 then we cannot achieve HA with 8 cores. If that is the case adding multiple gateways doesn't provide you much benefit.

              • 4. Re: Multiple Gateways on an Undistributed System
                Nick Corbin

                We're on 10.3 so that answers my question, thanks for taking the time to



                Out of interest I presume your 4,4,4 system uses an 8 core license since

                there wouldn't be any licensed processes running on the primary?


                One other question; are the gateway processes I've added to the workers

                doing anything useful since by implication you seem to be saying that if

                the gateway went down on the primary we'd need to switch to the backup

                anyway. Apologies if I've misunderstood...





                On 7 Sep 2017 21:27, "VINAY KUMAR VADLAMUDI" <tableaucommunity@tableau.com>

                • 5. Re: Multiple Gateways on an Undistributed System
                  Brandyn Moody

                  There is no real reason to add workers that host Gateway processes in this circumstance.  Tableau Server has it's own load balancing functionality, so a single cluster needs only one Gateway.  The purpose of having Gateways on worker nodes is to handle incoming requests in case the primary node goes down.  As such, it is typically only done on High Availability clusters.


                  Since all your VizQLServer and VizPortal processes are on the primary, there is no point in having a Gateway on the workers.  If the Primary goes down, the Gateways on the workers could route requests, but they would have no processes to route them to.


                  Backup primary nodes are difficult to correctly configure, and unless you are a scripting champion, they require human intervention during the failover process.  Backup primaries are used when you have a cluster that can function without a primary (typically on the order of 24+ cores), and you need something ready to take over licensing tasks in the event that the primary fails catastrophically (a Tableau Server cluster can function for quite a while without a licensing server, so you would have hours to get the backup primary functioning). 


                  In this case, I would suggest going the route of a Disaster Recovery (DR) server.  The DR server is an exact duplicate of the Production server, kept current by restoring backups from Production to DR.  In the event of a Production failure, a load balancer can be used to quickly and easily switch over to the DR server.  Nobody notices the difference, worst case scenario is that your analysts lose any work they currently had open and hadn't saved (If they use the online web-authoring functionality), and that your users will need to log in again.


                  Bonus: DR servers are dead easy to set up, and can be kept current with the Production server through some very simple scripting

                  Double Bonus: Each Tableau Server license, in addition to a Production server, includes the right to stand up one DR server and one Test/Dev server.  So no additional licenses needed.

                  • 6. Re: Multiple Gateways on an Undistributed System
                    Nick Corbin

                    Thanks, DR was set up yesterday so I'm just trying to make sure I'm getting

                    the most out of the workers given our license limits. I did wonder whether

                    the gateways on the workers were routing to the cache processes but

                    obviously not.


                    In a similar vein does it make sense to have a passive repository on a

                    worker as I have or is this equally redundant?

                    • 7. Re: Multiple Gateways on an Undistributed System
                      Brandyn Moody

                      For the same reason that Gateways on the workers won't help in the event of a primary failure, neither will a Repository.  The Repository is the underpinning of most Tableau Server operations, but without DataEngine, VizQLServer, VizPortal, etc. to direct, the Repository has no real function.



                      About the 4,4,4  3-node setup...  Unless you absolutely MUST have HA, I typically do not recommend this setup.  Tableau Server is a very lag-sensitive application, so running it on under-specced hardware is a recipe for disaster.  While Tableau Server can run on a 4-core, this is intended for testing only, and will not handle user load well.  Tableau recommends a minimum of 8 cores per node on a Production machine, with 8 GB of RAM per core.


                      No matter how you split up the load, the Repository still needs a lot of processing power during startup (there is a timeout on the Repository startup, and 4-core nodes hosting a Repository with a lot of content can have problems finishing startup before the timeout, leading to startup failures).  Plus there is the inherent overhead that comes with having to coordinate the actions of multiple nodes, so you lose some of your processing power that way.


                      If possible, always stay single-node until the amount of user-traffic makes that impractical.


                      That said, a dedicated Backgrounder node is a completely different animal, and many extract-heavy single-node systems could benefit from isolating their Backgrounder processes to a separate node.

                      • 8. Re: Multiple Gateways on an Undistributed System
                        Nick Corbin

                        Thanks. The documentation obviously on goes so far so this info on

                        specifics is extremely useful 






                        On 7 September 2017 at 22:18, Brandyn Moody <tableaucommunity@tableau.com>