Skip to main content

Solvice Maps: Infrastructure and Deployment Guide

Infrastructure Overview

Solvice Maps runs on Google Cloud Platform (GCP) using a modern cloud-native architecture designed for high availability, scalability, and operational excellence. The infrastructure supports both real-time routing services and batch processing workloads with automatic scaling and comprehensive monitoring.

Cloud Architecture

Platform: Google Cloud Platform

Project Structure:
  • Primary Project: solver-285414
  • Primary Region: europe-west1 (Belgium)
  • Availability Zone: europe-west1-b
  • Secondary Regions: Available for multi-region deployment
Key GCP Services Used:
  • Compute: Google Compute Engine + Google Kubernetes Engine
  • Storage: Cloud Storage for large results and OSRM map data
  • Database: Cloud SQL (PostgreSQL) for request metadata
  • Messaging: Cloud Pub/Sub for event-driven processing
  • Networking: Global Load Balancer with Cloud CDN
  • Monitoring: Cloud Monitoring + Cloud Logging
  • Security: Cloud IAM + Secret Manager

Service Deployment Architecture

1. MapR Gateway Service (Primary API)

Deployment Platform: Google Cloud Run
  • Runtime: JVM 17 with Quarkus native compilation
  • Container: Distroless base image for security
  • Scaling: 0-100 instances with request-based auto-scaling
  • Cold Start: < 100ms with native compilation
Resource Configuration:
Environment Variables:

2. OSRM Service (Routing Engine)

Deployment Platform: Google Kubernetes Engine (GKE)
  • Cluster: osrm-cluster (3 nodes, n1-highmem-2)
  • Node Pool: Container-Optimized OS with SSD persistent disks
  • Scaling: Horizontal Pod Autoscaler with custom metrics
Kubernetes Deployment:
Auto-Scaling Configuration:

Infrastructure as Code (Terraform)

Terraform Configuration Structure

Key Terraform Resources

Instance Template:
Global Load Balancer:
Pub/Sub Configuration:

Deployment Processes

1. CI/CD Pipeline (GitLab CI)

Pipeline Structure:

2. Zero-Downtime Deployment Strategy

Rolling Update Process:
  1. Health Check: Ensure all current instances are healthy
  2. New Instance Launch: Launch new instances with updated configuration
  3. Health Validation: Wait for new instances to pass health checks
  4. Traffic Migration: Gradually shift traffic to new instances
  5. Old Instance Termination: Terminate old instances after validation
  6. Rollback Plan: Automated rollback if health checks fail
Blue-Green Deployment for Critical Updates:

3. Map Data Deployment

OSRM Map Update Process:

Monitoring and Alerting

1. Infrastructure Monitoring

Cloud Monitoring Metrics:
Alerting Policies:

2. Application-Level Monitoring

Health Check Endpoints:
Performance Metrics:

Security Configuration

1. Network Security

VPC Configuration:
SSL/TLS Configuration:

2. IAM and Access Control

Service Account Configuration:
Secret Management:

Disaster Recovery and Backup

1. Data Backup Strategy

Database Backups:
Configuration Backups:

2. Multi-Region Deployment

Regional Failover Configuration:

Cost Optimization

1. Resource Optimization

Preemptible Instances:
Auto-Scaling Configuration:
This infrastructure provides a robust, scalable, and cost-effective foundation for the Solvice Maps platform, with comprehensive monitoring, security, and disaster recovery capabilities.