Multi-tenancy Environment Provisioning on a Non-virtualized Cloud (Bare Metal) Platform
Abstract
Cloud computing consists of compute and security and network resources provided and maintained by Cloud Service Providers (CSP) that enable cloud users to access and process workloads in a remotely located compute resources. The cloud providers offer varied services to appeal to the would-be subscribers and the fate of any cloud provider with regard to cloud capture and market share depend on how competitively packaged, robust and agile the CSP service offerings are. Cloud Computing is equated to access to utilities offered by utility companies. The utility companies pipe and terminate the utilities to points near consumers who use requisite equipment to tap. Cloud computing is a collection of IT resources that are accessible in multiple ways viz: via web browser or through other CSP provided remote access tools. CSPs invest in massive infrastructure and service requestors also known as tenants are then provided with virtual resources with ordered specifications or in increments of pre-defined resource capacity shapes. This slicing of a big physical resource to create a sub resources and separation of these derivative resources is achieved through virtualization technology. More recently, isolation has been achieved at Operating System (OS) level through application of containerization technologies. The massive infrastructure is sliced using different technologies to allow multiple and independent users access the resources without any data or access leaks. The main technology used is virtualization which is either hardware or host-based. Recently, containerization technology has been adopted but this is mostly at application layer level. However, the existing service enablers specifically virtualization technologies provision virtual resources based on preset configurations, compute shapes and based on inbuilt capabilities. This means that customers choices are limited to pre-defined capacities forcing customers to purchase excess capacity. This limitation is causing the customers to forfeit the elasticity feature that is a defining characteristic of cloud platforms. Containerization technologies are implemented based on a small set of features that do not guarantee complete isolation as desired. There is need to understand how the use of current cloud multi tenancy enabling technologies and use of Linux Kernel features to facilitate multi tenancy and resource isolation in cloud computing. The findings will then be used to explore an alternative way that can complement or improve current technologies or devise a better and more efficient mechanism altogether. This study aimed at exploring the possibility of achieving multi tenancy through complete isolation using non-virtualized approach but based on In-Kernel Linux features. The study was based on CentOS Linux distribution. The study involved detailed understanding of the structure and components of the Linux Kernel and configurations that can be tuned to refine, activate, or deactivate the features and functional behaviour of the computer host. The study was based on Linux complete Code Base downloaded from the Gitub web repository. This was used to re-affirm
the features, structure, modularity and moving parts of Linux as described in the existing literature. This was the drilled down to Kernel sub system which was the focus area of this study. The full set of features of the core Kernel Linux were extracted and loaded in a relational database management system (RDBS). Each feature is supported by a module or C source code. The list of all source code files was then extracted. This constituted 100% sampling. To narrow down the scope as defined for the study, three more configuration files were used. Two (2) header files that relate to resource and process management were identified as per the existing literature. The C source files referencing these were matched and this created a smaller set of objects to consider. To further limit and pick key features, a Makefile which contains the build rules and compilation entries for the Kernel was referenced. Out of above, three (3) features were selected and subjected to further review and tweaking to understand customize their behaviour. The corresponding source codes were then reviewed. Out of above, a number of scripts were developed using bash or scripting languages to implement the features identified can be used to achieve multi-tenancy provisioning
Publisher
University of Nairobi
Rights
Attribution-NonCommercial-NoDerivs 3.0 United StatesUsage Rights
http://creativecommons.org/licenses/by-nc-nd/3.0/us/Collections
The following license files are associated with this item: