Application level interoperability on IaaS cloud migration

Article history Received October 4, 2017 Revised October 30, 2017 Accepted November 14, 2017 The increasing awareness of people about several benefits using cloud computing technology caused a lot of organizations, companies, and agencies are switching from utilizing physical infrastructure to cloud infrastructure, especially IaaS. Considering the strong market enthusiastic about cloud computing, cloud companies were racing competitions offer the best products with various advantages. In the process of utilizing cloud computing technology there are circumstances in which the company wants to move its infrastructure to other cloud providers caused by various aspects in order to meet better expectations of to the new provider. However, there are many obstacles in practice in the process of transfer system between two different environment or can be called migration. One of them is a vendor lock-in that caused system cannot be function properly especially application functionality after migration. This paper introduces improvement method of testing interoperability between systems that were migrated between different cloud providers which use different hypervisor technology. We also conduct interoperability application testing between several cloud providers. This is an open access article under the CC–BY-SA license.


Introduction
The increasing awareness of people about the several benefits using cloud computing technology caused a lot of organizations, companies, and agencies are switching from the use of physical infrastructure for their system which already known there are a lot of shortcomings such as the amount of maintenance costs to be incurred to manage the system to cloud computing technology.Actually, the infrastructure cost is not only the main reason for displacement of local infrastructure to the cloud, but also flexibility, disaster recovery, security and the others.Certainly, each company must have their own reasons when decide to move their infrastructure from local to cloud.
Considering the strong market enthusiastic about cloud computing, cloud companies were racing competitions offer the best products with various advantages such as a more affordable price, higher performance, and better Service Level Assurance (SLA) and security system.In the process of utilizing cloud computing technology there are circumstances in which the company wants to move its infrastructure to other providers cloud caused by various aspects above to new targeted cloud provider in order to meet better expectations of the company.However, there are many obstacles in practice in the process of transfer system between two different environment or can be called migration.There are a lot of possibilities that could become obstacles when migrating to other cloud provider.One of them is a vendor lock-in.Vendor lock-in is a situation where the user of a product depends on the provider and cannot switch to another provider without the huge costs and longtime duration [1].
In the process of migration or movement from one system to another, especially in cloud computing environments interoperability becomes an important factor [2]. Interoperability cloud is an easy migration and integration of applications and data between providers of cloud computing services , [4].The emergence of vendor lock-in problem is caused by many cloud providers have different format and type of systems construction that restrict the possibility of application migration between cloud providers.In addition, the unavailability of methods to test the level of interoperability between the two systems that migrate in Infrastructure as a Service (IaaS) cloud environment at the level of application functionality led to many organizational difficulties to determine the level of interoperability of target cloud systems when migrating.
The goal of this study is to introduce the development method to measure the level of interoperability especially application functionality when migrating between two different cloud provider.It also provides an analysis of test results in terms of technology, risk, and cost.The benefits of this research is to give a reference method interoperability testing migration between cloud systems that are more specific to the application functionality so can be implemented in real migration between cloud providers.

Interoperability and Cloud Migration Theory
Barry Sosinsky in his book defines cloud computing as a set of applications and services running and operate in a distributed network or scattered by utilizing virtual resources and internet standards [5].There are two types of models of cloud computing of deployment models and service models [3].Deployment model is a model of cloud computing that describes the location, purpose, and management of cloud infrastructure.While the service model consists of various types of cloud computing services offered.This model adopted from NIST (National Institute of Standards and Technology) which separates into 2 cloud computing services like those mentioned.Virtualization is a key technology enabling the emergence of cloud computing paradigm.Mechanical virtualization allows multiple operating systems to run simultaneously on one physical machine [6].Cloud computing comes from two important concepts, the first is the concept of abstraction which hides detail implementation of the system as users do not know where the physical devices are accessible and the second is virtualization concepts which unite and divide the available resources [5].Virtualization techniques are used when users access to the resources that are attached.
Virtual machine migration is one of the virtualization capability allows a system where applications can be moved transparently from one physical host to another without losing the features [6].In general, the migration is done by moving transfer the application along with all virtual machine system including CPU, memory, disk from the system origin to the destination system [7].Besides its use for managing resources and their applications in data center environments and virtualized cloud system, virtual machine migration also allows the system to dynamically relocate to another system that has a faster execution and more reliable.
In the process of migrating from one system to another, especially in cloud computing environments interoperability becomes an important factor.Cloud interoperability refers to the ease of migration and application integration, data and workloads between cloud service providers [3].Vendor lock-in is a situation where the user of a product depends on the provider and cannot switch to another provider without the huge costs and a long time [1].One way to overcome the problem of vendor lock-in that is making interoperability standards to support easy migration of workloads, applications, data from one cloud provider to another provider [1].
Lewis defines four basic interoperability in the case of cloud computing environments [8].First, Authentication User.Each user must be identified in a cloud environment.Second, Workload Migration.Its indicate VM image migration from one cloud provider to another.There is a need to extract workloads in source cloud then upload it to target cloud.Third, Migration Data, when the data has been transferred to the new provider cloud, entire programs that perform CRUD (create, retrieve, update, delete) in the previous cloud should be able to conduct such operations at a new cloud provider.Fourth, Workload management is a workload system built in a cloud environment.There are several methodology about cloud migration : 1. Cloud-RMM(Cloud-Reference Migration Model) [9]     TIOSA (VM Interoperability Testing at an OS and Application Level) is a method to measure system interoperability between two different hypervisor.Hypervisor is software that maintains virtual machine in one physical server or can be called virtual machine monitor [10].TIOSA method only test the interoperability at the level of the hypervisor and operating system, and have not been tested at the level of certain applications running on the system that were migrated.

System Design
The research method used in this study is adapting TIOSA method.The difference from the method TIOSA are the developed method is implemented in the actual cloud migration, namely on commercial cloud hosting and system migration process is done two times, the first from physical server to a source cloud and the second is from source cloud to the target cloud also there are additional application functionality tests in this research.Fig. 5   Application functionality test is the first to be done in physical server before migrated to the source cloud, the objective in this step is to ensure all the application process functioned properly, then start to convert system or virtual machine image appropriate with standard system image that used in source cloud.System image conversion process can be automated and manual.When the import system process in source cloud is successful, we performed application functionality test to ensure functionality running according to the original system on the physical server.Once the application functionality testing phase is complete, the system service will be discontinued in the cloud resources to begin the process of convert image and migrating to target cloud.The conversion process is done the system image using the tools available that are tailored to the type of source and destination cloud provider.System image conversion process can be automated and manual.
The import process is done after the entire configuration system in the cloud destinations is ready to do the import process image of cloud resources.The import process the image in this stage can be automatically or manually according to the type of cloud resources and cloud-purpose use.
After the import stage system image is accomplished, all services on systems that have migrated starts, including applications that will be tested functionality.Functionality testing applications on cloud has a goal of using the same testing components by testing in the physical server and source cloud.The goal is to verify the functionality of the application.
Once the entire migration testing data collected will be determined according to the level of interoperability parameters predetermined size.For every possible migration will be classified according to the level of interoperability of applications.In this phase will also be analyzed in terms of risk and cost for every possible migration do.
There are two kinds of cloud infrastructure will be testing.The first is the migration cloud infrastructure between Amazon Elastic Cloud 2 (EC2) which the types of hypervisor used is Xen and Indonesian Cloud where the hypervisor used is VMware vCloud Air.

Table 2 .
ARTIST Methodology depicts the proposed new interoperability method testing of virtual machine migration.