Announcement

Collapse
No announcement yet.

SQL Server data Transfer speed differs per HyperV Host

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL Server data Transfer speed differs per HyperV Host

    We have a hyper-v environment running with 4 physical servers.


    Server Hv1&Hv2 are exactly the same and server Hv3&Hv4 are the same. The difference between the the 4 are small and consist of some extra mhz for CPU. We have a VM with client software running which has a SQL database client connection to another VM with SQL server running.

    Whenever I place the client VM and the SQL server on the same host, the speed of the SQL data transfer seems to vary from server 1&2 to server 3&4.

    All servers are running Windows Server 2012 R2, 'should be' setup similar and are connected to the SAN likewise. Even though HV1&2 should be the 'older' models, they outperform the newer servers when using the client software.

    During some monitoring (using the Resource Monitor) we noticed that the bottleneck might have something to do with the (TDS) transfer speed between the client VM and the SQL server. There is a noticeable speed difference(slower) on the newer server which cannot be explained.

    We can acknowledge that the transfer speed between the servers should be sufficient. Directly transferring between the HV make full use of the network capabilities and such transfer speed is not seen with the client VM and the SQL server, during SQL client communication (queries, etc).

    This could of course be reasonable since the full NIC speed should not be used by the SQL server, however the difference in speed between the older servers and newer server is unexplainable currently. Especially since we use the same VM for this task and move it through the HV servers to monitor the speed.


    Does anybody have some thoughts or ideas on how to filter this issue?

  • #2
    Re: SQL Server data Transfer speed differs per HyperV Host

    Are the four hosts in a cluster? Are you using shared storage?

    Could you lay out the scenarios a bit more clearly? Are you saying that when the VMs are on the same host they perform well or are you saying that if they are split between host 1 and 2 performance is good but when on 3 and 4 performance is worse?
    Regards,
    Jeremy

    Network Consultant/Engineer
    Baltimore - Washington area and beyond
    www.gma-cpa.com

    Comment


    • #3
      Re: SQL Server data Transfer speed differs per HyperV Host

      The 4 servers work as 4 hyper-v nodes (physical servers) and are clustered. If one fails, the other hyper-v servers will manage the VM's on the failed server.
      The servers are connected through a dell poweredge storage switch and use a eQuallogic SAN for the data (vm's, storage etc)

      We had servers 1&2 when we started with this cluster (Dell PowerEdge R620)
      The performance was very well, so we decided to buy 2 (almost exactly the same) new servers; 3&4.
      Since the Dell PowerEdge R620 was outdated by now, we had to buy 2 Dell PowerEdge R630 which have a minor advancement in the CPU.

      However the older models seem to outperform the newer models whenever we place the VM's either server 1 or server 2, they will always outperform server 3&4.

      Currently I can only pinpoint this as a difference in the transfer speed of the SQL server when the SQL server VM and client VM are both on the same node (server 1 or 2).
      The NIC's are identical in configuration and when we test the transfer speed for the servers we receive maximum performance, so what is holding the SQL transfer back?

      It's rather complicated to just pinpoint it to sql server but I have to start somewhere.
      Last edited by CE_MvB; 17th April 2015, 11:58.

      Comment


      • #4
        Re: SQL Server data Transfer speed differs per HyperV Host

        Got any antivirus on the 630 that may be causing the slowdown?
        1 1 was a racehorse.
        2 2 was 1 2.
        1 1 1 1 race 1 day,
        2 2 1 1 2

        Comment


        • #5
          Re: SQL Server data Transfer speed differs per HyperV Host

          A few things you can check:
          - Verify the power settings on all the nodes
          - Verify Hyperthreading settings match on all the nodes
          - Run the cluster validation wizard and fix any issues noted (note: you will get certain disk errors reported since it won't have any available disks to check)

          Also to note, VM to VM transfers on the same node will not touch the physical NIC if both VMs are connected to the same vswitch.

          Are you using CSVs?
          Do any of the cluster disks show as redirected?
          Regards,
          Jeremy

          Network Consultant/Engineer
          Baltimore - Washington area and beyond
          www.gma-cpa.com

          Comment


          • #6
            Re: SQL Server data Transfer speed differs per HyperV Host

            In addition, look and see if CSV volumes indicate a paused state around the time of some slow downs as well. it's perhaps worth getting some Perfmon counters going as well to see if it sheds more light.

            Comment


            • #7
              Re: SQL Server data Transfer speed differs per HyperV Host

              @biggles77
              Actually we tried turning this off but without success.
              Another note is that usually these transfers aren't disrupted by a virus scan. If this would be the case, I would suspect to notice speed differences not especially on the new servers.

              @JeremyW
              -Could you be more specific?
              -Pretty much have checked everything, came here since I cannot find the setting difference
              - Please be carefull what you 'advise':
              "Cluster Validation Wizard, will perform various tests on cluster nodes. It is not recommended to run it in production. For example during validation, wizard will "reset" connection to storage, and failover will occur.
              I would like to sugest to perform this during some downtime window, or move all cluster group to other node(s) and then run "CVW"."

              As this is a PRODUCTION environment, it's not safe to use this. I'd rather find the issue manual.

              And yes, we are using CSV's, all the vm's reside on the same CSV.
              From what view should I be noticing this? In the failover cluster manager?

              @Virtual
              Don't think it's possible for the CSV to go in a paused state when the VM is residing on that same CSV.
              Also this would cause freezing, and we're not experiencing such at at all.
              Remember the focus seems to be on SERVER1+2 against SERVER3+4
              Some perf monitors would be interesting, but actually that is why I started this thread, I'm not able to figure out which of the perf monitors would be able to filter out more information on this issue.

              Comment


              • #8
                Re: SQL Server data Transfer speed differs per HyperV Host

                Originally posted by CE_MvB View Post
                @JeremyW
                -Could you be more specific?
                Yes, make sure all your hosts are set to High Performance in the power options.
                Originally posted by CE_MvB View Post
                - Please be carefull what you 'advise':
                "Cluster Validation Wizard, will perform various tests on cluster nodes. It is not recommended to run it in production. For example during validation, wizard will "reset" connection to storage, and failover will occur.
                I would like to sugest to perform this during some downtime window, or move all cluster group to other node(s) and then run "CVW"."


                As this is a PRODUCTION environment, it's not safe to use this. I'd rather find the issue manual.
                I don't know where you're getting your info but the validation wizard is safe to run on a production cluster (have done this many times). The issue with running it on a production cluster is that it can't perform all the test to get the full validation. If you need the full validation you have to take the cluster offline. See this link for more details.
                https://technet.microsoft.com/en-us/...tion_scenarios

                Originally posted by CE_MvB View Post
                And yes, we are using CSV's, all the vm's reside on the same CSV.
                From what view should I be noticing this? In the failover cluster manager?
                In Failover Cluster Manager, expand the Storage->Disks section. The status is where it would show if it's redirected.
                Regards,
                Jeremy

                Network Consultant/Engineer
                Baltimore - Washington area and beyond
                www.gma-cpa.com

                Comment

                Working...
                X