bility Profile(APP) which is an OSE standard profile
was developed by NIST to define US federal agen-
cies requirement of application. This was probably
the first instance when requirement of a software ap-
plication was defined in the form of standard profiles,
an idea that ’ll later be seen in application portability
solutions and approaches for cloud systems.
After the growth in adoption of linux operating
system, The Linux Foundation drafted its first version
of Linux Standard Base(LSB) (Foundation, b) in 2001
to develop and promote open standard and increase
compatibility among various distributions. LSB gave
guidelines for common libraries, commands, utilities,
runlevels, printing systems etc. It extensively adopted
guidelines from POSIX and in particular it incorpo-
rated Filesystem Hierarchy Standard(FHS) (Founda-
tion, a) that was published in 1994.
When virtualization in x86 machine grew adop-
tion of technology like VMware and XEN and later
KVM, researchers (Ribiere, 2008) saw virtualization
as an important tool for application portability. It was
during this time that Distributed Management Task
Force(DMTF) came up with a virtual machine im-
age standard called Open Virtualization Format(OVF)
(DMTF, 2017). Before this there were different im-
age formats like VMDK, VHD, VDI, etc. Now with a
common image format even if the source image was
something else it could be converted to either OVF or
OVA(open virtualization appliance) and could be im-
ported at the target virtual machine. This helped a lot
for the cause of application portability, however one
couldn’t port an image to a bare metal server,
With the growth in adoption of cloud infrastruc-
ture, researchers tried to find the solution for the prob-
lem for application portability in this new kind of en-
vironment. Cretella and Martino (Cretella and Mar-
tino, 2012) suggested a method for automated analy-
sis of cloud vendors.
Research in application portability in cloud are fo-
cused in two levels of abstraction:
One, at a higher level of abstraction where stan-
dard profiles are created for application where the ca-
pabilities required by the application from the plat-
form is defined in a descriptive language. The capa-
bilities of the platforms can be queried and a mapping
can be done whether application can run on a particu-
lar platform or not. For example, an application pro-
file might mention the requirement as an http server
running on port 80. This requirement can be fulfilled
by platform running either Apache, lighttpd or ng-
inx. This type of application portability research fo-
cuses more on cloud native applications, applications
with microservices architecture, applications that are
highly scalable in design.
Second type of research focuses on a slightly
lower level of abstraction where the application along
with its required dependencies is ported from one in-
frastructure to the other. The infrastructure here can
be Physical, virtual, containers or cloud. This type of
application portability research focuses more on ap-
plication with traditional monolithic and N-tier archi-
tecture.
Different researchers have suggested different ap-
proach to solve the problem of application portabil-
ity in cloud. Petcu et al (D. Petcu and Crciun, 2013)
solution creates a higher layer of abstraction which
abstracts different APIs of different cloud so that the
application finds a common API to work with. The
problem with this approach is that it is not useful
when a set of API is not covered under the abstrac-
tion layer of this solution.
OASIS provided a different approach, a standard
called TOSCA for portability and interoperable op-
erations on cloud applications. Binz et al (T. Binz
and Leymann, 2014) introduces TOSCA as a stan-
dard which provides new way to enable portable au-
tomated deployment and management of composite
applications, TOSCA uses a modeling language to
formalize the application structure as typed topology
graph. TOSCA has since been very popular with re-
searchers with implementation done by Katasaros et.
al. (G. Katsaros and Eberhardt, 2014) and Antoniades
et. al. (D. Antoniades and Kornmayer, 2015).
There are however other approaches or notable ex-
perimental work done by:
Gonidis reported an experimental work with dif-
ferent PaaS platforms. Munnisso demonstrates a
proof-of-concept for application portability of cloud
application that consumes restful APIs using an al-
gorithm for mapping the application to its cloud re-
source.
3 OBJECTIVE AND MOTIVATION
There are several use cases that are the objective of
this work like upgradation of an existing linux system,
moving of workload from physical/virtual to cloud,
regulatory and compliance requirements. However,
the main motivation is to find a solution to avoid ven-
dor lock-in for a paid linux distribution. The linux
distributions like Amazon Linux, Canonical Linux,
Oracle Linux RHEL, SLES provides great services
and support to their customers but sometimes when
the consumer wants to port from one distro to another
there is no easy way to do that.
In december 2020 Redhat announced that they
will discontinue centOS in its original format used by
CLOSER 2022 - 12th International Conference on Cloud Computing and Services Science
274