The cloud-native applications initiative started in 2014 with the aim of providing guidelines, recommendations, tools and best practices to companies and practitioners facing the daunting task of developing from scratch or migrating from legacy code an application optimized to be run in the cloud.
In order to gather practical experience, roughly one year ago the CNA seed project was kicked off, focusing explicitly on the migration of a traditional (LAMP stack) legacy application to a cloud-native architecture. In this post we relate on the results achived until now.
You can follow the progress of the CNA seed project going through the list of related blog posts collected on the initiative page (look for the “Articles” section).
One year has gone by and a small team of great people have worked together to scout, test, design, code, deploy, record, and yell at a little code base that we’re happy to share as open source on our github (https://github.com/icclab/cna-seed-project/).
Cloud-Native Applications is a new research initiative which was launched by the ICCLab a couple of months ago. The initial time was used to gather knowledge on this very interesting and broad topic. For a detailed description of the initiative and cloud-native applications in general head to the initiative overview page.
But all the knowledge in the world is not worth much without some actual experience. And therefore as of the beginning of this year we launched the Cloud-Native Applications Seed Project or CNA Seed Project for short. The goal of this project is to take a traditional business application which was not designed to run in the cloud and modify it so that it can be deployed and operated in a cloud-environment.
At the beginning of this year the Cloud-Native Applications Seed Project (short: CNA Seed Project) was launched as described in this blog-post.
The goal of the CNA Seed Project is to gain experience in what it takes to migrate an application into the cloud. So at the heart of this project lies the application that will be migrated.
We set ourselves the following parameters in chosing a suitable application:
- Must be open source
- Should be a business application
- Should be a common used type of application
There were a lot of different types of business application types to choose from:
- Customer Relation Management (CRM)
- Enterprise Resource Planning (ERP)
- Document Management Systems (DMS)
- Ticketing Systems
- Content Management Software (CMS)
In the end we mainly focused on CRM applications because they are a common type of business application, is not too complex and a lot of open source solutions are available.