Link to home
Start Free TrialLog in
Avatar of Bes4dmin
Bes4dminFlag for Sweden

asked on

Build a high-end web server

Hello experts,

I know this question touches several topics but here it goes..

I need some guidance in designing and constructing a web server for public and internal use. There will be two websites, one public website with mostly static content, around 50-100 pages and 1000-1500 hits/month.
The other website will be a website with 500-1000 user logins where they will access different assigned webspaces and collaborating sharing documents. This website will have around 500 hits/month.

I know it's popular today to have web servers on the cloud or as SaS. Mostly because of the performance gain I guess. But that's where I'm looking for advice. If I were to build my own Web server and have it on-premises, how would this setup look like if I want to somewhat get near an online service. (Although budget is limited)

I'm planning on purchasing a host where I install vSphere and setup the servers as VM's. What would be proper hardware requirements on the host? would a set up like this be of use?

Oh, another thing is the platform for building the website, we are thinking of going for wordpress, any disadvantage using Wordpress under IIS?


Host
4-6 CPU sockets (6-8 cores per socket)
96GB RAM
Local RAID 10 15k disks (alternative SSD)
SSD disk for Host caching
2-4 1Gbit nics

Now sizing the VM's is about monitoring resources and adjusting accordingly but would it be necessary setting up a separate VM to host the database or would I gain little to nothing by doing that in comparison of giving more resources to the VM instead?

looking forward for tips
Avatar of Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Flag of United Kingdom of Great Britain and Northern Ireland image

If you are just wanting a public facing website, maybe cloud or hosting provider is all you need.

Unless you want to manage it.

How is providing the content?

You may decide to build a Web Farm, with Network Load Balancing or another load balancer to balance traffic across the web farm?

Have you considered Sharepoint ?

Is it just a Web Site, showing pages like a brochure ?

Wordpress is a Web Application. This requires a Web Engine, usually Apache! (Windows or Linux) - Word Press is popular!

IIS is just Microsoft Web Engine, it does nothing on it's own!

If using VMware vSphere ensure you hardware is in the HCL.

Are you purchasing a SAN, or more than one host?
Given your load numbers hardly two users ever meet on your website. You need something (or two) very power-saving with 1 socket and 1 core (maybe 2 cores if operating system recommends one)
Still costs will be much higher than cloud/hosting
Avatar of Bes4dmin

ASKER

Thanks,
yes, I know cloud services cost less but it is decided to host the website in-house in our environmet, so I want to build something robust and scalable that fit the goal but that also is prepared for future loads. And offcourse budget is in mind too.

I'm thinking of having the VMFS datastores on local 15k or SSD disks with RAID10. This is mainly for two reasons.
1. The budget doesn't allow me to purchase a SAN
2. A SAN isn't really necessary as I only intend to have one host (as for now at least)

To keep costs down we decided on going with Wordpress, yes one of the sites will be a static one like a broschure but with many pages with pictures, maybe some slides, videos etc. easy stuff.
The other website will be more of a portal where members of a group will have a login to see and edit their own stuff and also be able share documents. Here is where the power of Wordpress come in to play.

As we are Microsoft users I intend to install Wordpress on a windows server running IIS. I have done this kind of setu before but never for a project like this. I have mailny deployed wordpress sites under IIS internally for minor stuff so I don't know how it differs on performance or stability in comparision to running wordpress under Apache e.g using WAMP.
That leads me to the next question about where to host the database. Either I deploy a third VM and host the SQL server in it so the two websites uses it or I just install the SQL DB's locally on the corresponding website VM. I don't know if using SSD disks for the databases would boost the performance of the websites significantly
Wordpress requires MySQL or MariaDB and really not so much resources you are trying to give it.
(Not a Windows-)Cluster of multiple webservers and cluster of multiple DBs will guarantee uptime close to 5-6 nines
So how is your server ROBUST, if you just have the VM, running on a single host and datastore.

What happens when the host server blows up!

You are OFF and DOWN.

Wordpress on LAMP runs much better, and performs better. But if you have experience of Windows, then stick with WIndows.

Performance will be the same as for the DB,, depends on your licenses for Windows, if you are covered for licensed, create a new DB server. (less risk, and better security).
ASKER CERTIFIED SOLUTION
Avatar of gheist
gheist
Flag of Belgium image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Yeah I know, sorry about that, I wrote robust but I meant performance. The idea is to buy another server later to get the redundancy, maybe going vSAN but for now I want to focus more on performance.
 I'm probably going for your suggestion of having a dedicated DB server. This one can be of some Linux flavor since I'm opting for MySQL.

gheist, Could you elaborate more on your thoughts? I'm not sure I'm following you on the resilience. Yo say smaller servers, you mean VM's? 4-6 sockets on the host? Numalink?

As for now I got a quote for a PE630
2x Xeon E5-2660 (10core per socket)
96GB
1x SSD 100GB
6x SAS 15k 600GB

Think this is over dimensioned for the purpose?
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Good point. I got another quote for 2 servers with 1 Xeon E5-2620 2.4Ghz 15MCache 6 core on each
32GB RAM on each
4x 600GB SAS 15k on each

With this I now have redundancy and can apply vSphere HA. It feels like this is a good starting point to build on when needed. Putting a second CPU, adding more RAM etc. As long as the performance is being jeopardize as I understand it wont.
Question now I think is what I do about redundancy with the datastores since I'm not having a SAN nor vSAN. I guess vSphere Replication will do the trick.
VSphere HA does zero about redundancy.
DRS rules are the right way (dont run master and slave on same ESXi)

I'd dump disks for simple mirror of 2 disks and swap to RAM.

MySQL or MariaDB has replication feature built in. No need to resort for bigger edition of vmware.
Without shared data storage you need either rsync on each update or use some sort of clustered filesystem within virtual machines. (As much as it concerns wordpress - all content is in (hopefully shared) database.
Vmotions with changing CPU and storage at the same time neither....
Replication is an option, it depends on how much downtime can you afford ?
Wordpress caches everything in ram and client browser if you choose... 1h should be OK...
Crap, I didn't think of that. So what are my options here really if I go for two hosts with only local storage. One active host and one for failover? Can I have some sort of continous replication on the VM's?
Regarding downtime it is not critical being down but yeah max 1 hour I think it's acceptable.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
2 wordpress app servers (they are dependent only on database)
Whichever replicating database you choose