Originally published at Ascendix Tech's blog.
Automated deployment has become one of the effective ways to save much time and costs on the deployment process.
Today, we want to share our post on how we helped the client reach 245% ROI through deployment automation covering the basic.
Specifically, you can learn more details on What is deployment automation, how to automate deployment process, and the key benefits of automated deployment in our full blog post article.
Now, let's dive into the details of the project.
How to Automate Deployment Process: Client Case Study
So, we received a request from the client to help them transform their security model into a more effective and modern solution for their existing application running on .NET Framework 4.8 that was initially run on Amazon AWS cloud platform.
Once finished the project discovery phase, we moved to building a Proof of Concept (POC) to offer several technology solutions and answer the question ‘how to automate deployment process’.
Our ideas were perceived as a full success in the customer’s eyes. As the next step, they asked to prepare a work breakdown structure (WBS) on reorganizing their microservice architecture.
In order to succeed, we’ve carried out an analysis of the existing infrastructure. It included TeamCity (a build management and continuous integration server) and Octopus (an application deployment automation server).
Based the analysis results, we recommended the client to migrate their software infrastructure to Elastic Kubernetes Services (EKS) by Amazon.
Here came the challenges. One of the them was to implement a microservice architecture using Linux and Windows containers. The reason was that the existing customer’s app was running on .NET Framework 4.8, but our security model was based on .NET Core.
Despite the fact that we had never faced working with Windows containers before, we still accepted that challenge.
- Daniil Artemiev, IT & Support Team Engineer at Ascendix
Based on our experience with Windows systems and the provided documentation, we have implemented the process of building containers. What's more, we've described our own Help templates for automated deployment of Windows apps to Amazon Elastic Kubernetes Service.
We've utilized TeamCity, a Continuous Integration tool, and organized an efficient process for building containers and testing code.
Also, we used TeamCity as one of the automated deployment tools for delivering the project containers to Kubernetes.
The mentioned above technology and architecture solutions were positively perceived by the client's team was delighted and they started planning to avoid using Octopus as the main application deployment automation tool in the future.
- Daniil Artemiev, IT & Support Team Engineer at Ascendix
Besides, we have developed a powerful monitoring system based on Prometheus and its exporters (built-in functionality) for exporting crucial metrics.
Currently, we have multiple insightful dashboards for in-depth analysis of the entire software infrastructure, including:
- Containers
- Virtual machines
- Databases (Amazon Relational Database Service)
- Application Load Balancer (an Amazon tool for configuring and routing end-users’ incoming traffic)
- And many others.
Ascendix Tech Stack
We used the following tech stack for application deployment automation and other project tasks:
- AWS EKS
- ASP .NET Core
- Aurora MySQL
- AWS Cognito (security model redesign and re-implementation)
- AWS SQA (a simple queue service)
- AWS Lambda (AWS infrastructure optimization and improvement)
- AWS Web Forms
- AWS VM + IIS
- Vue.js
Client’s initial challenges
So, let's now summarize the mentioned above project details and discuss the key challenges we had, the core technology solutions we implemented, and the business results our client got after our cooperation.
NOTE: here we list only some of them, so please check the full blog article to know more insights.
- The existing security model didn’t have user entities, which caused lots of issues in permission management and data sharing
- The company was unable to provide their customers with personalized domain credentials for system login
- Cost-consuming infrastructure maintenance and redeployment processes for each organization
- Time-consuming application deployment automation cycle Significant service distraction.
Ascendix technology solutions
Security model redesign and re-implementation for flexible permission management and personalized domain credentials usage
Multitenancy implementation for just-in-time software version automated cloud deployment and reduction of maintenance costs
AWS infrastructure improvement and optimization to minimize infrastructure maintenance expenses and automated instance creation for autoscaling.
Key Business Results
- Improvement of the existing client’s solution
We helped the client to convert their one app into an entire ecosystem that now supports existing solutions and implementations of new applications (Admin App, Partner Central, User Interface, Growth Central).
- 245% ROI boost
Through application deployment automation, we were able to help the client reach over 245% ROI compared to the old deployment approach.
Wrapping Up
Automated deployment is one of the possible solutions that can help you decrease the time and cost required on each deployment iteration thus boosting ROI of a project and giving extra space for DevOps and implementation engineers to focus on major tasks.
We shared a brief version of our experience, so feel free to get more insights reading the full blog article How to Automate Deployment Process: 245% ROI Case.
Top comments (0)