PHP2Uni: Building Unikernels Using Scripting Language Transpilation

Unikernels are a rapidly emerging technology in the world of cloud computing. Unikernels build on research into library operating systems to deliver smaller, faster and more secure virtual machines, specifically optimised for a single application service. These features are especially useful in cost or resource constrained environments. However, as with any new technology, early adopters need to master many technical details, and understand many aspects of the mechanisms used to build and deploy unikernels. Both of these factors may slow adoption rates. In this paper, we present our initial experiments into the use of an approach for building unikernels that is accessible to those whose technical expertise is focused on web development. We present PHP2Uni: a tool chain that takes a website built from PHP files—PHP remains the most widely used web language—and builds a resource-efficient unikernel image from them, while requiring little knowledge of the underlying operating system software complexity.

[1]  Julia L. Lawall,et al.  Documenting and automating collateral evolutions in linux device drivers , 2008, Eurosys '08.

[2]  Guilherme Ottoni,et al.  The hiphop virtual machine , 2014, OOPSLA.

[3]  Antti Kantee,et al.  Flexible Operating System Internals: The Design and Implementation of the Anykernel and Rump Kernels , 2012 .

[4]  Rüdiger Kapitza,et al.  EsseOS: Haskell-based tailored services for the cloud , 2013, ARM '13.

[5]  Arjuna Sathiaseelan,et al.  Cloudrone: Micro Clouds in the Sky , 2016, DroNet@MobiSys.

[6]  Arie van Deursen,et al.  Domain-specific languages: an annotated bibliography , 2000, SIGP.

[7]  David M. Eyers,et al.  Twenty Security Considerations for Cloud-Supported Internet of Things , 2016, IEEE Internet of Things Journal.

[8]  Serge Mankovskii,et al.  Service Oriented Architecture , 2009, Encyclopedia of Database Systems.

[9]  Benoit des Ligneris,et al.  Virtualization of Linux based computers: the Linux-VServer project , 2005, 19th International Symposium on High Performance Computing Systems and Applications (HPCS'05).

[10]  Weisong Shi,et al.  Edge Computing: Vision and Challenges , 2016, IEEE Internet of Things Journal.

[11]  John Aycock,et al.  A brief history of just-in-time , 2003, CSUR.

[12]  Dawson R. Engler,et al.  Exokernel: an operating system architecture for application-level resource management , 1995, SOSP.

[13]  Antti Kantee,et al.  Rump Kernels: No OS? No Problem! , 2014, login Usenix Mag..

[14]  David Bernstein,et al.  Containers and Cloud: From LXC to Docker to Kubernetes , 2014, IEEE Cloud Computing.

[15]  Raja Lavanya,et al.  Fog Computing and Its Role in the Internet of Things , 2019, Advances in Computer and Electrical Engineering.

[16]  Dharmesh Kakadia,et al.  Virtualization vs Containerization to Support PaaS , 2014, 2014 IEEE International Conference on Cloud Engineering.

[17]  Mazin S. Yousif,et al.  Microservices , 2016, IEEE Cloud Comput..

[18]  Jon Crowcroft,et al.  Turning Down the LAMP: Software Specialisation for the Cloud , 2010, HotCloud.

[19]  J. Wenny Rahayu,et al.  Mobile cloud computing: A survey , 2013, Future Gener. Comput. Syst..

[20]  Qi Gao,et al.  The HipHop compiler for PHP , 2012, OOPSLA '12.

[21]  David J. Scott,et al.  Unikernels: the rise of the virtual library operating system , 2013, CACM.

[22]  Jon Crowcroft,et al.  Jitsu: Just-In-Time Summoning of Unikernels , 2015, NSDI.

[23]  Hårek Haugerud,et al.  Maximizing Hypervisor Scalability Using Minimal Virtual Machines , 2013, 2013 IEEE 5th International Conference on Cloud Computing Technology and Science.

[24]  Antti Kantee,et al.  Rump kernels: no OS? no problems! , 2014 .

[25]  Roberto Bifulco,et al.  ClickOS and the Art of Network Function Virtualization , 2014, NSDI.

[26]  Paal E. Engelstad,et al.  IncludeOS: A Minimal, Resource Efficient Unikernel for Cloud Services , 2015, 2015 IEEE 7th International Conference on Cloud Computing Technology and Science (CloudCom).

[27]  Ivan Stojmenovic,et al.  The Fog computing paradigm: Scenarios and security issues , 2014, 2014 Federated Conference on Computer Science and Information Systems.