Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

We have a mid range box with quad-core CPU and 8GB of RAM running several production systems on Red Hat Linux for a light traffic website. Those systems include an Oracle DB, LDAP, Documentum Content Repository and an Apache Tomcat server running the main Liferay-based website and a couple of additional Documentum-related webapps.

Now the client decided they want a test environment as well but they wish to utilize the existing hardware, perhaps only add more memory. Test environment would be used mostly as a learning tool for new employees so only a few users at a time max. My goal is to achieve ease of configuration and maintenance, fewer stability and performance risks are also important. The current production environment needs to stay intact. What are my options and what is the best option?

The simplistic way of thinking about it is either just meaningfully duplicate all the component systems, like a separate content repository, separate DB schema, and a separate Tomcat installation or use some kind of virtualization software like VMWare Server to create a separate virtual machine within the production server and install all the systems there (if that makes sense).

share|improve this question

2 Answers 2

You should really consider new hardware for this - Separating Dev and Production physically is the only way to ensure that a problem in one won't interfere with the other.

Your best solution if you ABSOLUTELY MUST use the same hardware is to install VMWare (ESXi) or similar on the bare metal and virtualize both test & production. Connect them to separate vLANs, etc. in order to enforce separation (and security) as best you can. Note that a major workload spike in either dev or production could cause serious problems (because the machine everything is running on could be overloaded).
Also note that some applications, like Oracle, may not be officially supported in virtualized environments.

share|improve this answer
2  
VMware ESXi does allow one to speficy resource reservations, which can ensure that a certain system will always have access to a certain amount of CPU, RAM, etc. –  EEAA Mar 15 '11 at 20:55
    
@ErikA true, but storage bottlenecks can still be killer -- That's where I typically run across my issues, especially with virtualized databases. –  voretaq7 Mar 15 '11 at 20:59
1  
Agreed, but SIOC can now mitigate that as well. –  EEAA Mar 15 '11 at 21:00
    
True to a great extent -- my paranoia is hard to satisfy though :-) –  voretaq7 Mar 15 '11 at 21:03
    
Fair enough. :) –  EEAA Mar 15 '11 at 21:09

Take a look at VMWare player and stand up some VM's in that. Give them an IP and you got yourself a nice little self contained test environment. I'd strongly suggest another set of hardware, but you could make it work within a VM.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.