Kubernetes infrastructure from scratch for a B2C startup: Terraform, GitOps and observability
This article describes a real project for a B2C startup in Germany. The client is anonymized. One senior DevOps engineer provided consulting and support between July and November 2024.
Project goals
- A technical audit and recommendations to optimize the budget.
- Less vendor dependence, through open-source solutions.
- Optimized and unified CI/CD, for fast cluster deployment for new customers.
- A DevOps team acting as a universal helper for the client's development team.
What was delivered
Fully managed infrastructure, built from scratch for a microservices architecture, using a GitOps approach:
- A Kubernetes cluster on DigitalOcean, built with Terraform.
- Monitoring with ElasticSearch, Kibana and FluentD (Fluent Bit).
- Argo CD for staging and production.
- Load balancing and Nginx Ingress Controllers for the clusters.
- Separate dev, stage and prod environments.
- Elasticsearch, ELK, Helm, PostgreSQL, RabbitMQ, S3 and other services.
- Dockerfiles for the Node application and services.
Additional services
- A PostgreSQL cluster.
- ELK, RabbitMQ, an S3 bucket, Prometheus and Grafana monitoring, plus Zabbix.
CI/CD
- CI/CD optimized for GitLab and the new DigitalOcean registry.
- CI/CD for 7 microservices, written in ReactJS, Laravel and NodeJS.
- Help deploying the end product on DigitalOcean, with environment configuration and the other underlying tasks.
The stack at a glance
| Layer | Technologies |
|---|---|
| Cloud | DigitalOcean |
| Infrastructure as code | Terraform |
| Orchestration | Kubernetes, Helm |
| GitOps and CI/CD | Argo CD, GitLab CI/CD |
| Ingress | Nginx Ingress Controller |
| Data and messaging | PostgreSQL, RabbitMQ, S3 |
| Monitoring and logs | Prometheus, Grafana, Zabbix, ELK, Fluent Bit |
Want infrastructure like this?
Tell us what you run today and get a fixed-price quote within 24 business hours.
Get a quote in 24 hours