How we helped scale the infrastructure of an Email security company
A brief about the Client:
The client provides a cloud and on-premise solution to filter spam emails and assuring inboxing of Emails. Application has been widely adopted by Data Centers, web-hosting companies, and mass mailer applications. The profiled company asked to have their names blinded to protect their confidentiality.
Requirements of the client:
- Faster Development Cycle and improve collaboration between development, testing, and operations function.
- Decrease operational cost by minimizing the use of dedicated servers and follow containerized application deployment.
- Automating deployment: Scheduling and Scaling of containerized applications
- Implement AutoScaling Infrastructure on demand.
- Automation of routine operations (Server provisioning and configuration, database backups and restoration, software updates and rollbacks, testing environments setup, software delivery pipelines, production servers monitoring and logging )
- Multiple Clusters in the Production environment to improve the High Availability of the Application.
- Deploy all stateless services in Kubernetes clusters
Challenges towards achieving the requirements:
- The basis of the architecture had to be an excellent design for better scalability and response.
- The infrastructure should resist failures and other routine issues.
- The infrastructure and orchestration supporting the product needed refinement to support customer growth and remove a single point of failure.
- Implementing internal connectivity between the Kubernetes cluster pods and the database clusters outside of the Kubernetes clusters.
After evaluating the requirements, our team configured the environments in Kubernetes Cluster along with AWS RDS instances and helped the development team to deploy the application as containers/ pods in highly scalable and fault tolerant environment.
- Implemented containerized applications across all the state-less services. Data Store services were implemented in Clusters in AWS EC2 instances. We configured multiple environments (Test, Development, and Production) and automated the continuous delivery pipeline for these containerized services.
- We also automated integration, testing, and release tasks by building necessary automation scripts in line with identified technology stack and configure and setup the environment.
- RabbitMQ cluster has been used in this application as a message-broker.
- Casandra, RDS, and Redis clusters were implemented in this project.
- The company leverages agile software development principles to manage the release cycles and the team works with them for continuous integration and continuous delivery.
- Multiple Kubernetes clusters were deployed which ensures high availability of the application. Upgrades of production environments were made easy with Multi-Cluster environments with traffic routing restricted to a single cluster during maintenance.
The company achieved the following with Activelobby Association:
- Decreased Operational costs by 30-50% with a DevOps approach.
- Improved Software Quality and Speed of Software releases.
- Generated Test Data more rapidly and/or readily.
- The company states that Activelobby helped them increase the quality and velocity of software releases and was important to their DevOps journey.
Tools Used to deploy the application