Solved

How to create a active/active load balancing in Windows 2003 server

Posted on 2015-02-05
3
81 Views
Last Modified: 2015-04-28
Hi,

I have a custom php based web application created, which I need to run from a cluster of servers i.e. all the servers are running the same web application and the load on to them is controlled by a load balancer. But the actual thing that I want to configure is that all the servers are running the same code of the application. I need not go on to each server and make the changes in the application everytime.

Kindly let me know if anything else is required.

Thanks in advance.
0
Comment
Question by:Vipin Kumar
  • 2
3 Comments
 
LVL 34

Assisted Solution

by:gr8gonzo
gr8gonzo earned 500 total points
ID: 40591461
You can do it in a number of ways:

1. Put the to-be-shared-code on a shared NAS. This, however, could create a resource bottleneck that partially defeats the purpose of load-balancing.

2. Use an automatic file-sharing-updating mechanism like OneDrive/SkyDrive (whatever it's called these days), so when you make changes to the code base, it gets automatically pushed to the other servers. The caveat here is that the application isn't very I/O friendly. So you'll have an application that is hitting the filesystem a fair amount throughout the day and it can be performance-degrading. (It hooks into explorer.exe, so that's where you'll start seeing I/O spikes if you're watching the resource usage through something like Process Explorer).

3. Don't change code directly on the servers - use a deployment tool to push the code directly to all servers at the same time. For example, have a development box that has the master code. When it's ready to be pushed, have the tool send the changed files to all the servers via SFTP or something like that (not regular FTP - NEVER regular FTP).

4. Similar to #3, but use a version control system like Git. Once you reach a point where the new code is tested and ready to go, commit that code to the repository and tag it as the next version. Then send some kind of signal (a dozen ways to do this part) to all of the production servers and tell them to do a git checkout of that new tagged commit. They should get all of the new code and be in perfect sync. This approach also lets you rollback to previous code easily in case the new code has an unexpected disastrous effect. Just send the same kind of signal but send the previous tag version and they'll all check out the previous code and be instantly rolled back.

#4 takes a little bit of setup time, but it's worth the trouble.
0
 
LVL 1

Author Comment

by:Vipin Kumar
ID: 40593320
Is there no way that I can implement it locally, as the servers donot have internet access. Kindly share the implementation steps for the local method as well as the Git setup method as well.
0
 
LVL 34

Accepted Solution

by:
gr8gonzo earned 500 total points
ID: 40603395
Okay, so a lack of internet access eliminates option #2.

I would not recommend #1 - I only mentioned it because some people suggest it without realizing that it can be a bottleneck in a load-balanced situation.

Option 3 and option 4 don't need internet access - they only require that the servers are all networked together. A Git code repository can be set up on a local server and all of the other servers can communicate with it. Here is an article on Git if you are unfamiliar with it:

http://www.experts-exchange.com/Programming/Project_Management/Version_Control_CVS/A_12235-Git-101.html
0

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Some time ago I faced the need to use a uniform folder structure that spanned across numerous sites of an enterprise to be used as a common repository for the Software packages of the Configuration Manager 2007 infrastructure. Because the procedu…
If you are a web developer, you would be aware of the <iframe> tag in HTML. The <iframe> stands for inline frame and is used to embed another document within the current HTML document. The embedded document could be even another website.
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

778 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question