Loves Cloud’s customer is one of the largest business conglomerates in India, with business verticals including telecom, retail, petrochemicals among others. With a thrust on embracing cloud and DevOps tools and platforms from management to support humongous load of applications catering to internal and external stakeholders through 100+ microservices, our customer needed a robust solution with a challenging timeline.
During our discussion with customer AVP we zeroed in for following goals:
- Deploying Kubernetes on Azure Stack
- Making Kubernetes highly available and robust
- Connecting Kubernetes with existing CI/CD pipeline
- Converting entire deployment into infrastructure as a code
By utilizing past experiences of working with Kubernetes on multiple cloud platforms, Loves Cloud implemented following solution:
- Setup Kubernetes cluster using multi-master and external ETCD configuration on Azure Stack
- Configured ingress for 100+ microservices
- Added Kubernetes cluster as a deployment target for all deployments in CI/CD pipeline
- Converted entire infrastructure into a code through Ansible Tower
- Setup real time monitoring and alerting through Prometheus and Grafana
This solution used following tool, platforms and programming and scripting languages:
- Private cloud platform – Azure Stack
- DevOps tools – Kubernetes, Ansible Tower, Prometheus and Grafana
- Programming & Scripting languages – Python, Shell Scripting
Click to see large view
Based on changes implemented within predefined timeline by Loves Cloud, customer gained following benefits in addition to predefined goals:
- More than 2000 deployments successfully deployed on this sturdy cluster in 6 months
- Entire cluster can be recreated in less than two hours in an event of disaster, thus reducing disaster recovery time significantly
- Entire deployment process was automated through extensive use of scripting languages
- Entire process was documented by Loves Cloud that was used by customer to train internal teams
- Best practices used by Loves Cloud for creating this Kubernetes cluster were used by other teams at customer’s end