Benefits of using a virtualised environment in pipeline applications
Traditionally, pipeline application software has been implemented within a larger framework which includes a company’s SCADA system and may include the IT system as well. As such, they are most frequently implemented in a range of stand-alone hardware which varies according to the client, the third parties and even the date of purchase.
This can lead to some issues – especially about compatibility of operating systems and hardware.
Virtualized environments (VEs) and Virtual machines (VMs) have multiple benefits if compared to traditional environments used to host pipeline applications. They can be listed as follows:
- Centralisation of the management features in one console
- Harmonisation of transient workloads
- Unified backup system
- Capability to snapshot entire machines
- Reduction in the hardware footprint as multiple VMs can run on the same server
- Ease of achieving redundancy
- Ease of assigning increased resources to a machine
- Ability to create internal virtual networks
- Reduced costs in coolin
In addition to the above issues there are a few that are very pertinent to the way Pipeline Application Software systems are run today:
- Pipelines are a major piece of infrastructure: they take months to design, approve and install and have a life-span of decades. Therefore, also the Pipeline Application Software that controls and monitors them has to have a very long working life. However, the computers that host them have a relatively short working life, which is dictated not only by the components of the machines (such as the disks), but also the obsolescence of the underlying software. By implementing the Pipeline Application Software in Virtual Machines, an intimate match between hardware and software is not needed any more for the smooth running of the machines: should the hardware layer be ready for replacement, the VMs can just be transferred to the new hardware layer. This is especially important when the Functional Design Specifications identified hardware that was state of the art at the beginning of the project, but which, after inevitable delays, has become obsolete.
- Some pipelines are in continuous use and any disruption even for a few hours may cost the operator or the owner loss of revenue. By the ability of VMs to be transferred at will (or even automatically) to machines that are available, underused or free, monitoring and control services can still be available full time. This is especially important when routine maintenance has to be carried out on the hardware.
- Redundancy is easier to achieve when working in virtualized environments and it is easier to set up even after the Pipeline Application Software is running.
- Disaster recovery is easier working with Virtual Machines: the whole of the Pipeline Application Software working environment is captured and not only the application. A restored VM works exactly the same way as the original: no problems with missing dlls, or a mismatched OS layer.
- Maintenance and support is easier for the supplier as any changes that are applied to the working machine can be applied to a clone and tested thoroughly and redeployed.
- As the pipeline ages and the Pipeline Application Software gathers more and more data, if there is need for more hardware, such as larger or additional disks this can be easily achieved in a Virtual Environment by assigning more resources.
Furthermore, external data sources can be employed, such as multiple iSCSI disk devices. These enable the user:
- To expand disk space
- To choose the most suitable disk for the VM in use, for instance a Solid State disk for a VM with disk intensive applications, or a slower but cheaper IDE disk for VMs with slow applications but large databases
- To achieve High Availability and Fault Tolerance for Mission Critical applications
The use of virtualized environments is also useful for the maintenance of complex systems, as entire machines can be snap-shotted and rerun in a test environment for analysis and diagnosis. In each case the use of VMs frees the maintenance engineer from the need to verify the status of the OS for upgrades following the first installation, as the new version of the VM is installed without having to clean up data left behind by the previous one.
Finally, for demonstration purposes, it is far better to present the potential customer with entire VMs in their clean state and set up adequately to demonstrate the technology.
The only requirement for using virtualized environments is that the host machine be sufficiently powerful to run them. However, recent improvements in CPUs, RAM and disks, even for laptops, have made running VEs/VMs a realistic proposition.