A Platform as a Service (PaaS) sits atop an Infrastructure as a Service (IaaS) running virtual machines. The PaaS developers control information systems that are anywhere in the development system life cycle, from development to deployment. A group of developers builds an information system while another group tests a different system.
Whatever roles the developers take, the group leader should keep communications open with an IaaS infrastructure specialist, who can perform certain tasks a PaaS developer can't.
Let's suppose the PaaS developer wants the latest revision to the operating system that is part of the PaaS. He is not permitted to upgrade it at the virtual machine level, so he requests the infrastructure specialist perform this task.
If the PaaS developer discovers issues with the infrastructure of physical servers underlying the virtual machines, he sends a report to his group leader who in turn forwards it to the infrastructure specialist. The specialist contacts the IaaS provider for resolutions and gets one of these responses:
- We can't fix the problem, or;
- We plan to go out of business, or;
- We plan to merge with another IaaS provider.
As a result, the PaaS developer can't transfer information systems to a PaaS platform running on a proprietary IaaS hosted by a different IaaS provider.
Traditional IaaS services
The good news is that information systems can be moved from one interoperable IaaS to another — just make sure an IaaS provider you are considering includes the following traditional services.
- Failover service. Failing physical servers automatically fail over to healthy physical servers underlying the virtual machines. This allows PaaS developers to continue their work without interruptions.
- Disaster recovery. If the failover mechanism doesn't work, a disaster recovery service is immediately activated. Some IaaS providers provide a single disaster recovery service for all; others maintain a virtual library of different disaster recovery services, each one for a specific information system.
- Storage service. The storage technology effectively compresses data while increasing performance of retrieving and storing data on virtual and physical servers. The more unstructured data containing video and audio streams are to be stored, the more important the criteria for selecting a data compression technique are. Not to be overlooked are the data protection techniques for both structured and unstructured data.
- Virtual human-faced infrastructure. Virtual desktops running the same desktop operating system are created by installing that operating system within a virtual machine. Newcomers to the virtual human-faced infrastructure include virtual tablets. A tablet can be connected to a physical keyboard, a physical mouse, and a TV monitor with a built-in wireless video receiver.
- Cloudburst testing service. The PaaS developers use this service to test how well an information system on the PaaS can withstand sudden demand upsurge from Software as a Service (SaaS) users.
Interoperable IaaS options
IaaS interoperability is possible with open-source IaaS operating systems — keep in mind that each one has its pros and cons. When shopping, consider the following:
- OpenStack is vendor-driven. Vendors contribute source code to the community version.
- OpenNebula is vendor-agnostic. Users contribute source code.
OpenStack is an open source IaaS cloud operating system for private and public clouds. To make it easier for administrators to do their job, a dashboard is provided. OpenStack developers use a web interface to provision resources.
OpenStack is organized into three projects:
- Compute with a focus on provisioning and management of a large network of virtual machines. The codename is Nova.
- Storage with a focus on object storage (codename Swift) and block storage (codename Cinder) for use with servers and applications.
- Networking with a focus on pluggable, scalable, API-driven network and IP management. The codename is Neutron.
Although OpenStack makes the code freely available, it comes with vendor-based stacks (mainly from HP, IBM, and Red Hat). A vendor only supports its stacks, not the community version of OpenStack. The organization running the PaaS is locked into the distribution provided by that vendor.
OpenNebula is an open source alternative to VMware's vCloud. Like OpenStack, OpenNebula runs a virtual data center. Unlike how OpenStack comprises three projects, OpenNebula is a single virtual management interface for public and private cloud resources.
The OpenNebula administrator provides cloud provisioning services. The users create and manage compute, storage, and networking resources.
Your best bet is to choose interoperable IaaS services that allow you to transfer information systems from one PaaS to another. When you shop, list your criteria so you can compare all available open source IaaS operating systems, including OpenStack and OpenNebula.
Judith M. Myerson is a Systems Engineering Consultant and Security Professional. She is the editor of Enterprise System Integration and the author of RFID in the Supply Chain. She has researched and published articles on a wide range of cloud computing topics, RFID, security, networking, and mobile. She was awarded a Master of Science degree in Engineering (Computer and Information Sciences). President of a toastmasters group, Judith was awarded her Advanced Communications Gold certificate. She is a member of The Operational Security Professional Association.