|Setting Up Servers|
Project dropped in my lap! Can you help?
We are having a shortage of Network Admin in my company for various reasons, and I (being IT) have been reassigned temporarily to help out. I have been given the task of setting up a new DMZ as we are moving everything over to Windows 2003 Server Enterprise. I have been told that the "boss" wants everthing to be a clean install, so no simple upgrade and that's it. (P.S. All machines on the DMZ are in a workgroup, but not on the company domain)
Can somebody help me out here? I have set up my own server to do web development on my own machine, but never in a "more-than-one-computer-network" situation. Because of this, I figure I can install Windows 2003 with few problems, probably even get IIS 6.0 working locally, PHP, MySQL etcetera (they moved away from ASP/SQL a while back).
But how do I get the (4?) machines to talk to each other? How do I get them to share the load?
How does the DNS come into play? Must it be running on all machines that are to act as web servers? What about TCP/IP?
Are the website files to be stored all on one machine? Or does each server get a copy? If so, are they kept upt to date by replication? Or by another means? (We host serveral local websites)
Thanks for your time. If anyone has any input at all, or a good link... I would love to be able to crash through this in a few days time.
As you can see, I'm more of a programmer turned web programmer, turned network newbie. Thanks for all your help.
Are you saying that you've been thrown into a situation where you need to set up a database-driven website that's load balanced across 4 machines - and you've never done it before?
I hate to break it to you, but you might not have an easy time with this and there isn't much that I or anyone else will be able to tell you through a forum to get you there. You could take a course in it, but even then you wouldn't walk away with a full understanding until you've actually done it - and I don't recommend experimenting in a production environment unless there are a lot of job openings in your area :P
First off, you would want a hardware-based load balancer to do this. There are some switches that have it built in or you could use a solution like F5's BigIP series. You will assign a unique IP address to each system (internal IP, not external IP) and the load balancer will determine which system to send the visitor to. The systems will all need to have identical copies of the website, and if you update one you will need to sync it across the rest of them. Or, alternatively you can use a shared storage device and have all of the web servers configured to use a folder in that external disk array so you only have to do updates in one location.
That part is pretty easy, SQL won't be so easy though. You can't cluster mySQL - supposedly they are making one that can but it's still considered alpha and isn't entirely stable. Your SQL server will need to be a stand-alone machine and will remain a single point of failure. If you're going to run MS SQL or Oracle you can cluster across multiple systems, but it's very complicated to set up and I wouldn't recommend doing it given your situation. If it's a requirement, hire a temporary DBA to come and do this for you - believe me, you don't want to try this yourself :)
Thank you for your reply. However, I'm afraid "hire someone" simply isn't going to cut it. One way or the other, I'm going to have to struggle through this. While I appreciate the level of difficulty that you describe, I am confident that a large amount of help and reading will get us through.
The "boss" will be around to help, but I need a solid place to start. Some instruction, if you will. If anyone can provide that, or even point me in a likely direction, I would appreciate it. Thanks again,
If you are using MS SQL, you are going to need to use the Enterprise edition. This supports clustering and load balancing, unlike the Standard Edition.
Stretching my memory here as well, but I think you also need Advanced Server to run it as well.
I think you are in for a lot of "fun". Enjoy.