Externalized configurations in python microservices

Tags: , , ,



The Current State:

I have some non-negligeble amount of microservices written in python.

Each such microservice has its own yaml configuration file that is located in the git repo. We use dynaconf to read the configuraion.

The Problem:

At first it was fine, the configurations were relatively small and it was easy to maintain them. Time went by, and the configurations went larger. It became annoying to change the configurations and it is bad that they are scattered between different git repos, i.e. not centralized.

I want to use “Externalized Configurations” in order to maintain all the configurations in a single repo and that each microservice will read its portion on startup. I have heard about Spring Boot, but it seems to be way too much and apart from it, it seems that the pip libraries seems to be at beta stage, new and unriliable…

Is there another reccomendation in this particular use case? Or should I proceed with Spring Boot?

Answer

You can use Microconfig.IO to manage your configuration with powerful templating and distribution. It’s language agnostic as long as your configs are YAML or properties format.



Source: stackoverflow