Test Environments, Virtualisation & Cloud Computing
15th September 2018
Virtualisation / Cloud Computing and Test, Development and Production Environments.
CIO’s, IT Managers and C level management who are responsible for managing IT budgets must find the fact that, there are various virtualisation software and cloud computing offerings available today, a very significant development in terms of reducing the cost of provisioning, managing and maintaining test, development and production environments specifically. As organisations continue to drive the growth of their business, by focusing on rolling out to market new services/products or features in a timely manner to increase their profit margin, reduce operational costs and also adopt different approaches to stay competitive in today’s highly interconnected global world, in which geographic location is no longer a barrier to entry for new players, at least in many sectors. Society’s continuous technology advancement from the Internet through to better telecommunication, faster and more efficient ways of distributing goods and services aided by latest technology has meant in the last 30 to 40 years, both the private and public sector has become even more competitive and demanding.
For IT senior management, the result of all the above, is an increased number of software development projects to capture and implement the several new business requirements for additional functionality, enhancements and automating manual processes, all to assist in reducing costs, to work more efficiently and ultimately increase the company’s profit.
The various flavours of Clouding Computing technology certainly can serve the IT Environment needs of an organisation particularly catering for test, development and preproduction environments.
Production or live environments can also be hosted in the cloud, particularly for organisations that have mature, audited ITIL/ISO based processes/practises, the relevant security architecture, management structure/experience/skills to effectively manage the third party hosting arrangement, ensure adherence to the agreed SLA’s, implement real time monitoring to capture any service degradation issues and resolve it accordingly etc.
Again huge cost savings can also be derived from cloud computing which also make use of virtualisation technology to host hundreds and thousands of applications or services as mentioned earlier. Again probably no different, from a virtualised applications environments estate hosted within an organisation’s data center either in the form of a private cloud or hosted by a third party, in the form of a public cloud. In considering the latter, the main concern is always security which is probably overstated, since hosting in house is most times prone to the same security challenges.
Third party hosting may even be more secure than hosting applications in house, because it it is the vendor’s core business, there are more likely to be using the latest security techniques, practise, tools and expertise to secure their servers and network.
Virtualisation and cloud computing have emerged as concepts, that can certainly assist in significantly reducing the overall IT spend, especially through this present global economic downturn, as IT C-Level management continuously ponder that fundamental basic economic question, how do I reduce my capital spend and operating costs?
Any short to long term IT strategy, will certainly need to incorporate making use of the vast number of virtualisation software, techniques and methods available today to host the several applications environments required for the different software projects.
The reduced costs, across test/development/production environments provisioning, management and maintenance could possibly account for up 30% to 40% of the overall software development costs of an organisation.
The cost reduction is off course, the difference between spending thousands of dollars in procuring one server machine to host multiple application environments, as against procuring one server machine to host one environment or application instance (in simplistic terms) at a similar expense. Also the spending on IT Environments is reduced as a result of not having to maintain several server machines, licensing and reduced data center costs (power, number of maintenance personnel required etc). Several tests, development and pre-production environments, can co-exist on the same server machine (virtualised) and use shared resources, since all the environments are not in use at the same time.
The different projects using the different application environments hosted on the server (or rather hosted on the virtual machines on the same server) may be at different stages of the SDLC, which means that there are times, when some of these environments may not be in use. Significant cost reduction is derived, as a result of sharing resources (CPU, memory, storage etc) across different application or IT environments and by just procuring just the one server machine to host several test, development and pre-production environments instead of just one instance.
Also, production application environments can be hosted on different virtual or partitioned machines such as the live business applications, databases, middleware etc all running on individually/completely segregated virtual machines but hosted on the same server. Efficient capacity management/planning and resources monitoring will have to be in place for such a scenario as just mentioned, since the application environments are ‘productionised’ and cannot be allowed to run out of allocated resources.
There are several platform emulators and hypervisor software which can be used to host application environments, the most commonly used ones are;
• VMware (platform emulator) – runs on Microsoft Windows, Linux, and Mac OS X at operating system level, also the VMWARE ESX hypervisor software literally acts as a virtual operating platform that provides the capability to run several virtual machines, hosting varying operating systems, that can now be used to host different application environments including middleware, databases, interfaces and background computer daemons etc.
• XEN - Also native bare-metal, hypervisor software, provides the same capability as VMWARE ESX. – Supported operating systems include; Linux, OpenSolaris, Unbutu, Suse Linux Enterprise Server.
• The z/VM hypervisor – Also a virtual machine operating system – runs on IBM's System z family of computers and supports operating systems to include several Linux virtual machines or z/OS running on its own as the operating system.
• IBMs’ Power Hypervisor and PR/SM facility. – The former runs on the Power Series hardware, manages the logical partitioning of the physical server machine to enable the hosting of different operating system (LPAR’s). Whilst the latter is what allows IBM mainframes operate exclusively in LPAR mode hosting operating systems such as z/OS.
• Hyper V – Windows server virtualisation – Also native hypervisor software that runs on x86-64 systems, and provides platform level virtualisation.