5 Replies Latest reply on Oct 24, 2016 5:01 PM by Russell Christopher

    Server architecture for Distributed environments

    PRABUKUMAR BALASUBRAMANIAN

      Hi

       

      We have the following Tableau server architecture currently.

       

      Primary - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 64 gb memory

      (Repository+data engine(Fail over),Gateway+ backgrounder + all the process

      Worker 1 - Intel xenon cpu - 2.93 GHZ- 64 bit, 4 core cpu + 32 gb memory (Repository +data engine(fail over) +  vizql process)

      Worker 2 - Intel xenon cpu - 2.93 GHZ- 64 bit, 4 core cpu + 32 gb memory (Dedicated for Backgrounder process for extract refreshes only)

       

      My question is do the primary and worker node 1 needs to be in sync in terms of hardware(Same core and memory as primary).

       

      For example

       

      a) if the user is viewing a workbook in browser or mobile app, will the performance varies if the request is sent to Primary vs the request sent to Worker 1.

      b) Will the resources be shared between nodes in cluster or each server in the cluster is independent and does not share the load?

      c) is the minimum requirement for worker nodes to be 8 cores.

      d) For my worker 2 , can i add two background process in 4 core or do i need to have 8 core?.I am planning to bring the background process from primary to worker 2 .This way there is no load on primary for background process.

       

      Please let me know if there is any way to test this scenario and your inputs to the above questions.

       

      We are user based licensing model

        • 1. Re: Server architecture for Distributed environments
          Nathan Panuco

          Hi Prabukumar:

           

          Has a Tableau Sales Rep told you that configuration is viable? This may work for a specific scenario but doesn't seem like a best practice. Workers 1 and 2 do not meet the minimum recommended specs of 8 cores and I would not suggest this configuration unless specifically advised on by Tableau. The installer will let you configure in this manner for testing, but it doesn't meet the recommended specs. In general, a better configuration with three nodes and 16 cores available would be to have two 8-core workers and an 8-core (unlicensed) Primary server handling Gateway and Search & Browser. Typically, putting a Tableau Server install two 4-core machine will perform worse then on a single 8-core machine. Check out the below example pulled from the "Understanding High Availability" article:

           

           

          Hope this helps!

          • 2. Re: Server architecture for Distributed environments
            Russell Christopher

            As Nathan said, you do not want to run Tableau on 4 core machines. It may "generally work", but you'll eventually have problems.

             

            Your current setup actually doesn't make much sense to me - You've put your "best" machine in as the primary, where it is doing no valuable work. Your workers (too small) do all the "heavy lifting", but they have 1/2 the power of the Primary.

             

            Your questions:

             

            a. Yes, it could. There is no "black and white" answer, however.

            b. No resource sharing

            c. While you CAN run on less than 8 cores, Tableau *strongly recommends* you run on at least 8

            d. Probably not, but you'd have to test. 2 Backgrounders + 2 VizQL is a lot on 4 cores.

            • 3. Re: Server architecture for Distributed environments
              PRABUKUMAR BALASUBRAMANIAN

              Thanks for your inputs.

               

              I will have the worker machines upgrade to 8 Cores.

               

              Primary - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 64 gb memory

              (Repository+data engine(Fail over),Gateway+ all the process (Remove the Backgrounder process)

              Worker 1 - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 64 gb memory (Repository +data engine(fail over) +  vizql process)

              Worker 2 - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 32 gb memory (Dedicated for 2 Backgrounder process for extract refreshes only)

               

              Worker 2 will have only 2 backgrounder Process and no Vizql process.

              • 4. Re: Server architecture for Distributed environments
                PRABUKUMAR BALASUBRAMANIAN

                Thanks Nathan for your inputs.

                 

                I will have the worker machines upgrade to 8 Cores.

                 

                Primary - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 64 gb memory

                (Repository+data engine(Fail over),Gateway+ all the process (Remove the Backgrounder process)

                Worker 1 - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 64 gb memory (Repository +data engine(fail over) +  vizql process)

                Worker 2 - Intel xenon cpu - 2.93 GHZ- 64 bit, 8 core cpu + 32 gb memory (Dedicated for 2 Backgrounder process for extract refreshes only)

                 

                Worker 2 will have only 2 backgrounder Process and no Vizql process.

                 

                Please let me know if it is fine. Since the Primary has more resources, i would want to have the same process and remove the backgrounder alone and add it to Worker 2.

                • 5. Re: Server architecture for Distributed environments
                  Russell Christopher

                  You should run the same amount of RAM on all the machines, too