More in this section

Forums / General Discussions / Load Balancing Configuration Question

Load Balancing Configuration Question

8 posts, 1 answered
  1. Sowmya
    Sowmya avatar
    17 posts
    Registered:
    09 Dec 2010
    22 Jun 2011
    Link to this post

    Hi,
     We have a Sitefinity Standard with Load Balancing License.
      Our server structure:
        One Load Balancing Server
        Two Webservers talking with this load balancing server.

    I followed the link http://www.sitefinity.com/documentation/installation-and-administration-guide/running-sitefinity-in-a-load-balanced-environment/configuring-sitefinity-for-load-balancing.aspx.

    I had a few questions about setting up the site with Load Balancing configuration,
    1. We are currently only in Dev and have not take Sitefinity live for any website yet, this will be our first.
    2. We are going live next week.
    3. We already have a Load Balanced envoirnment as described above, our servers are Windows 2003 with IIS 6.0
    4. Given that we have a working Load Balanced Envoirnment, what do we have to do next?
    5.  According to this statement in the link referred above
    " Install Sitefinity to the central location from which each front end server in the cluster will access Sitefinity.
    This must be a network share available to all servers"
        a. Should we install Sitefinity on the Load Balanced Server (central server) or on both the web servers?

        b.  What is the machine key that is being referred to in the (2) point of the link?
        c. We were planning on having a copy of the website (folder structure) on each of the webserver, shouldn't that be the case as there is a reference to a common shared location?
       d. Is there anyway to test the Load Balancing set up without actually hooking up the domain to the site but just have the code there and the IIS instances set up?
    6. The most important question I guess would  be worst case we were not able to configure our site for using Load Balancing, what would be the consequeuences?

    We are in a hurry as I mentioned the go live being next week, would greatly appreciate your help with the same.

    Thanks,
    Soumya

  2. Sowmya
    Sowmya avatar
    17 posts
    Registered:
    09 Dec 2010
    24 Jun 2011
    Link to this post
    Would greatly appreciate any guidance regarding my question.

    Thanks,
    Soumya
  3. Andrei
    Andrei avatar
    553 posts
    Registered:
    27 Nov 2008
    24 Jun 2011
    Link to this post
    Sowmya,

    I have had some extensive dealings with Load balancing and so I will do my best at answering your questions:

    My load balancing structure was different, I had 2 Webservers that were Loadbalanced without this one server that you are talking about. Just 2 servers with a common IP address which can be done through the NLB setup wizard on Windows Server 2003+. Not sure what would happen in your case if the network load balanced server was to die, would the traffic get to any one of the two webservers? Not too sure about your set-up.

    1. We are currently only in Dev and have not take Sitefinity live for any website yet, this will be our first.
    Ok.
    2. We are going live next week.
    Ok.
    3. We already have a Load Balanced envoirnment as described above, our servers are Windows 2003 with IIS 6.0
    Here are the system requirements: http://www.sitefinity.com/documentation/installation-and-administration-guide/installing-sitefinity/system-requirements.aspx
    It looks like your set-up will be fine, but I used Windows Server 2008 with IIS7+
    4. Given that we have a working Load Balanced Envoirnment, what do we have to do next? 
    I had a complete copy of everything on both Webservers. I had nothing shared between the servers, because as soon as you share anything you create a single point of failure. So when you set-up your NLB you give the IP address and a domain name for it. After that you navigate to the domain name address and it takes you to either one of the webservers. So that will answer many of your below questions.
    5.  According to this statement in the link referred above 
    " Install Sitefinity to the central location from which each front end server in the cluster will access Sitefinity.
    This must be a network share available to all servers"
        a. Should we install Sitefinity on the Load Balanced Server (central server) or on both the web servers?

        b.  What is the machine key that is being referred to in the (2) point of the link?
    The machine key is a randomly generated key that looks like this:
    <machineKey validationKey="AEFF53E12A22F21880C6273B547E1CD35B439A74A5ED4744DCD1AD1ADCA3763DC7ADBEE58231C1BCB03838279A53F6493074D3E1113A42CABE9623D234E5B6E1" decryptionKey="2F0D0F495D769327AD12AAC7EF226FDFF4CF5081AC3199399C3F9F59A33DFC71" validation="SHA1" decryption="AES" />
    And you can get them online from lets say: http://aspnetresources.com/tools/machineKey
    It goes in the web.config in teh following position <machineKey ...></system.web> and also make sure that the identical key is on both sides.
        c. We were planning on having a copy of the website (folder structure) on each of the webserver, shouldn't that be the case as there is a reference to a common shared location?
    As i said.
       d. Is there anyway to test the Load Balancing set up without actually hooking up the domain to the site but just have the code there and the IIS instances set up?
    Yes, create your own environment. I must say, we have tested the NLB functionality quite a bit and now it is very robust.
    6. The most important question I guess would  be worst case we were not able to configure our site for using Load Balancing, what would be the consequeuences?
    Not sure what you are referring to here. If you configure it properly then it will work, but make sure you test it properly once up and running with unplugging one side and then the other. Is your database dual redundant? 

    Also make sure you configure the two webservers in the system section. Its a must.
    E.g.  <loadBalancingConfig>
    <parameters>
    <add value="http://web-a.mydomain.com/" />
    <add value="http://web-b.mydomain.com/" />
    </parameters>
    </loadBalancingConfig>

    Hope it helps,
    Andrei

    Answered
  4. Suzanne
    Suzanne avatar
    43 posts
    Registered:
    12 Jul 2012
    05 Jul 2011
    Link to this post
    Andrei - So you didn't run into any issues installing in a load balanced environment, with two separate instances of the codebase on each server, both pointing to one database?
  5. Sowmya
    Sowmya avatar
    17 posts
    Registered:
    09 Dec 2010
    05 Jul 2011
    Link to this post
    Hi All,

    Very sorry for the late response. We were able to test out the load balancing feature successfully on our staging servers in the described configuration.

    @Andrei: Thanks a ton for your detailed response, definelty helped us and really appreciate it.

    @Suzanne: We have the same configuration of load balancing environment with two separate instances of the codebase on each server, both pointing to one database. We already had the Laod Balancing component configured on our servers, so it was just a matter of configuring Sitefinity to read the same. Following the instructions of adding the two server urls to the configuration sections on both servers, just worked.

    We did not install Sitefinity on the servers and hence did not use the machine key step. But its working without that.

    Hope this answered your question and again thanks everyone for helping.

    Sowmya
  6. Andrei
    Andrei avatar
    553 posts
    Registered:
    27 Nov 2008
    06 Jul 2011
    Link to this post
    @Suzanne: We run into issues to start with, but after reporting all the issues to Sitefinity, they fixed them and now its working fine. We have tested the functionality thoroughly. 

    @Sowmya: Thanks, glad it works.

    Andrei
  7. Suzanne
    Suzanne avatar
    43 posts
    Registered:
    12 Jul 2012
    06 Jul 2011
    Link to this post
    Thanks Andrei.  A few more questions - how are you synchronizing the config files between both servers?  Also, are you using 4.1 SP2?
  8. Andrei
    Andrei avatar
    553 posts
    Registered:
    27 Nov 2008
    06 Jul 2011
    Link to this post
    Suzanne I am not. I have raised that up with Sitefinity since having a common shared location for the config files would create a single point of failure. I am trying to avoid that. Sitefinity will look into it. At the moment, most of the configuration happens before deployment anyway. And if anything needs configuring after then I navigate directly to Side-A and configure it, then go directly to Side-B and do the same.

    Not elegant, I know, but soon it will be sorted I believe. 

    Thanks,
    Andrei

    Oops, forgot. Yes I am using 4.1 SP2 (4.1.1501.0).
8 posts, 1 answered