Konfigurationsmanagement - Implementierung von Microservices auf AWS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Konfigurationsmanagement

In einer Microservices-Architektur interagiert jeder Dienst mit verschiedenen Ressourcen wie Datenbanken, Warteschlangen und anderen Diensten. Eine konsistente Methode zur Konfiguration der Verbindungen und der Betriebsumgebung der einzelnen Dienste ist von entscheidender Bedeutung. Im Idealfall sollte sich eine Anwendung an neue Konfigurationen anpassen, ohne dass ein Neustart erforderlich ist. Dieser Ansatz ist Teil der Twelve-Factor App-Prinzipien, die empfehlen, Konfigurationen in Umgebungsvariablen zu speichern.

Ein anderer Ansatz ist die Verwendung von AWS App Config. Es handelt sich um eine Funktion von AWS Systems Manager, die es Kunden leicht macht, Feature-Flags und Anwendungskonfigurationen schnell und sicher zu konfigurieren, zu validieren und bereitzustellen. Ihre Feature-Flags- und Konfigurationsdaten können in der Phase vor der Bereitstellung syntaktisch oder semantisch validiert werden. Sie können überwacht und automatisch zurückgesetzt werden, wenn ein von Ihnen konfigurierter Alarm ausgelöst wird. AppConfig kann mithilfe des AWS AppConfig Agenten in Amazon ECS und Amazon EKS integriert werden. Der Agent fungiert als Sidecar-Container, der neben Ihren Amazon ECS- und Amazon EKS-Containeranwendungen ausgeführt wird. Wenn Sie AWS AppConfig Feature-Flags oder andere dynamische Konfigurationsdaten in einer Lambda-Funktion verwenden, empfehlen wir Ihnen, die AWS AppConfig Lambda-Erweiterung als Ebene zu Ihrer Lambda-Funktion hinzuzufügen.

GitOpsist ein innovativer Ansatz für das Konfigurationsmanagement, der Git als Informationsquelle für alle Konfigurationsänderungen verwendet. Das bedeutet, dass alle an deinen Konfigurationsdateien vorgenommenen Änderungen automatisch über Git verfolgt, versioniert und geprüft werden.

Verwaltung von Secrets

Sicherheit ist von größter Bedeutung, daher sollten Anmeldeinformationen nicht im Klartext weitergegeben werden. AWS bietet dafür sichere Dienste wie AWS Systems Manager Parameter Store und AWS Secrets Manager. Diese Tools können Geheimnisse als Volumes an Container in Amazon EKS oder als Umgebungsvariablen an Amazon ECS senden. AWS Lambda In werden Umgebungsvariablen automatisch für Ihren Code verfügbar gemacht. Bei Kubernetes-Workflows ruft der Operator External Secrets Secrets Secrets direkt von Diensten ab und erstellt beispielsweise AWS Secrets Manager entsprechende Kubernetes-Geheimnisse. Dies ermöglicht eine nahtlose Integration mit Kubernetes-nativen Konfigurationen.