Migration of an innovative web application from Microsoft Azure to Kubernetes
Project duration: 10 months
Brief description
Hosting of a web application is migrated from Microsoft Azure to Kubernetes. This application consists of multiple services, a cloud database and cloud based file storage. All of these components are migrated independently and iteratively.
Supplement
A web application for the innovative presentation of avatar based consultancy flows consists of various parts and services. An interactive player allows to display avatar based videos as part of a Angular based web application. The design and build of use cases for this application is supported by a portal application. Both of these apps are migrated from Azure AppServices to containers based on Docker or Podman. The underlying document database is migrated from Azure CosmosDB to MongoDB. For file storage, Azure Blobstorages are used. These are migrated to an S3 compatible storage. All video presentations are using adaptive HLS streaming for performance reasons. The construction of the respective streaming endpoints is migrated from Azure MediaServices to a self-build container solution. In support of usage analytics a serverless Azure Function is also migrated to run on top of Docker / Podman containers.
Subject description
The web application is provided as software as a service (SaaS). It serves to enhance sales and marketing activities. In support of this suitable product presentations are build and shown to potential customers for interactive exploration. Thereby, customers can navigate the product presentation and select an individually suitable configuration. Integration of CRM systems is optionally provided to persist respective leads. Another use case is in supporting customer service. Here, users with a service need are guided through an interactive consultancy flow that addresses their need. Further use cases include training of staff and assisted product and service presentations. The migration from Azure to Kubernetes serves to meet data protection requirements as defined by the GDPR as well as providing a means to operate the application on premise at a customer's facilities.