Migration of microservices based on Kubernetes to the Google Cloud Platform
Co.brick in cooperation with Hosters has migrated its platform based on Kubernetes microservices to the Google Platform. The project gained an infrastructure that allows easy scaling depending on the needs.
Co.brick supports cloud-native startups and growing businesses around the world by advising on best practices, delivering services, and comprehensive solutions. Co.brick's services are designed for startups at all stages of growth and include, in particular: product development support through dedicated teams in a partnership model, technology audit of the product, sharing and implementing best practices, notably for CI/CD, security, GDPR.
In addition, co.brick develops its own product co.brick platform, which is a collection of products and best practices to streamline and reduce the cost of creating and maintaining cloud-native products.
Project:
Headless commerce product, designed in microservices architecture on Kubernetes platform.
Problem:
The cloud service provider for one of co.brick's strategic Partners announced that its Cloud Foundry platform would soon shut down. A new solution had to be found, and a tight implementation deadline, which could not be pushed back, posed additional challenge. The decision was made to migrate to Kubernetes in Google Cloud Platform. Hostersi was selected to support the project.
Scope of work:
We were approached by co.brick to help refactor the application from Cloud Foundry to run in Kubernetes and migrate to Google Cloud Platform. The tasks set for our team included: VPC network and GCP services design and configuration staging and production environment implementation in Infrastructure as Code, support the deployment of applications, design and implement application management using Helm charts. In addition, Hostersi provided consulting on network traffic handling design and TLS/SSL certificates.
GCP services utilized by the project:
- Google Kubernetes Engine - configuration, monitoring, and deployment of Kubernetes cluster
- Google Container Registry - docker image registry
- Mongo DB Atlas - application master database
- Google Cloud Storage for artifacts and logs
- Google Load Balancer - load balancing and traffic distribution between servers and applications
Solutions used in the project:
- Terraform - infrastructure configuration
- Bitbucket - code repositories
- Traefik - monitoring and optimization of application network traffic
- Linkerd - service mesh
- Prometheus - monitoring and alerting
- Loki - log collection and storage
- Grafana - data visualization
- Cert-manager - TLS/SSL certificate management
Infrastructure scheme:
Benefits:
The improved infrastructure allows for easy and dynamic scaling based on demand. IaC enables testing, automating, and restoring for most processes. The use of containerization and Kubernetes allows, among other things, change management in the application and faster delivery of new versions, which can be critical for gaining a competitive advantage in the market.
Read also: