Skip to main content

Config Server

Purpose

Centralized configuration management for all microservices using Spring Cloud Config.

Responsibilities

  • Store environment-specific configuration
  • Serve config to services at startup
  • Support config refresh
  • Encrypt sensitive properties

Non-Responsibilities

  • Runtime secret rotation (use Secrets Manager)
  • Service discovery

APIs

MethodEndpointDescription
GET/{app}/{profile}Fetch configuration
GET/{app}/{profile}/{label}Fetch labeled config
POST/actuator/refreshTrigger refresh

Database

Git-backed or native file store. No application database.

Kafka

Produces: None Consumes: None

Dependencies

Sync: Git repository, AWS Secrets Manager for encryption keys

Failure Handling

  • Config unavailable → services use cached/local fallback
  • Git repo down → serve from last known state

Scaling

Single instance sufficient with HA pair. Low traffic.

Security

mTLS between services and config server. Encrypted sensitive properties.

Observability

Metrics: config_fetch_total, config_fetch_errors. Logs: config refresh events.