Gestion de la configuration - Implémentation de microservices sur AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Gestion de la configuration

Dans une architecture de microservices, chaque service interagit avec diverses ressources telles que des bases de données, des files d'attente et d'autres services. Il est essentiel de disposer d'une méthode cohérente pour configurer les connexions et l'environnement d'exploitation de chaque service. Idéalement, une application doit s'adapter aux nouvelles configurations sans avoir besoin de redémarrer. Cette approche fait partie des principes de l'application à douze facteurs, qui recommandent de stocker les configurations dans des variables d'environnement.

Une autre approche consiste à utiliser AWS App Config. Il s'agit d'une fonctionnalité de AWS Systems Manager qui permet aux clients de configurer, de valider et de déployer rapidement et en toute sécurité des indicateurs de fonctionnalités et la configuration des applications. Votre indicateur de fonctionnalité et vos données de configuration peuvent être validés syntaxiquement ou sémantiquement lors de la phase de pré-déploiement, et peuvent être surveillés et automatiquement annulés si une alarme que vous avez configurée est déclenchée. AppConfig peut être intégré à Amazon ECS et Amazon EKS à l'aide de l' AWS AppConfig agent. L'agent fonctionne comme un conteneur annexe exécuté parallèlement à vos applications de conteneur Amazon ECS et Amazon EKS. Si vous utilisez des indicateurs de AWS AppConfig fonctionnalité ou d'autres données de configuration dynamiques dans une fonction Lambda, nous vous recommandons d'ajouter l'extension AWS AppConfig Lambda en tant que couche à votre fonction Lambda.

GitOpsest une approche innovante de la gestion des configurations qui utilise Git comme source fiable pour toutes les modifications de configuration. Cela signifie que toutes les modifications apportées à vos fichiers de configuration sont automatiquement suivies, versionnées et auditées via Git.

Gestion des secrets

La sécurité étant primordiale, les informations d'identification ne doivent pas être transmises en texte brut. AWS propose des services sécurisés à cet effet, tels que AWS Systems Manager Parameter Store et AWS Secrets Manager. Ces outils peuvent envoyer des secrets aux conteneurs d'Amazon EKS sous forme de volumes ou à Amazon ECS sous forme de variables d'environnement. Dans AWS Lambda, les variables d'environnement sont automatiquement mises à la disposition de votre code. Pour les flux de travail Kubernetes, l'opérateur de secrets externes récupère les secrets directement auprès de services AWS Secrets Manager, par exemple en créant les secrets Kubernetes correspondants. Cela permet une intégration fluide avec les configurations natives de Kubernetes.