The Doppler Quarterly (DEUTSCHE) Winter 2018 | Page 26
Infrastrukturmanagement
Entscheidungen über native Cloud-Tools wie ARM-Vorlagen und Cloud-ag-
nostische Tools wie Terraform sind hier entscheidend. Denn die Toolauswahl
bestimmt, wie Cloud-Ressourcen erstellt, aktualisiert und gelöscht werden.
Sowohl Terraform als auch ARM-Vorlagen haben ihre Vor- und Nachteile.
Terraform ist ein interessantes Automatisierungstool für Teams, die ihre
Workloads in mehreren Clouds ausführen oder von einer Cloud in eine andere
migrieren. Im aktuellsten Anwendungsfall ging es um ein Szenario, in dem
die Anwendung sowohl in AWS (Route 53, S3 usw.) als auch in IAAS-Workloads
in Azure ihre Spuren hinterlassen hat.
Im Detail erfordert die Terraform-Implementierung einerseits die Freigabe der
Hashicorp-Tools von InfoSec für die erforderlichen Sicherheitsstandards (PCI,
NIST usw.) und andererseits Erfahrung im Umgang mit Hashicorp-Tools. Im
Gegenzug können Sie jedoch die Codemodularität, die Zustandsverwaltung der
Azure-Ressourcen und eine ähnliche Codebasis für die Verwaltung von AWS und
Azure beibehalten. Während ARM-Vorlagen fertige Vorlagen für die Bereitstel-
lung von Azure-Ressourcen sind, gibt es keine einfache Möglichkeit, die Zustände
der bereits bereitgestellten Azure-Ressourcen gemeinsam zu nutzen. Dies ist
insbesondere bei groß angelegten Implementierungen wichtig, bei denen es sich
um Infrastrukturen mit mehreren Umgebungen und Regionen handelt. Bei-
spielsweise könnte es Szenarien geben, in denen Sie Subnetz-IDs aus dem Wes-
ten der USA (USA West) benötigen, wenn Sie einige NSGs im Osten der USA (USA
Ost) bereitstellen. Durch die Einbindung von Arbeitsbereichen (Workspaces) ist
es nun möglich, Zustandsinformationen zuverlässig über mehrere Regionen
oder Ebenen hinweg zu teilen. Für nicht unterstützte Azure-Ressourcen kann
Azure CLI in Terraform-Ressourcenblöcke integriert werden.
Terraform mit Consul und Vault
Terraform-Zustandsinformationen können lokal, im Azure Blob-Speicher
oder in Consul gespeichert werden. Obwohl bei Consul bei Installation und
Konfiguration ein operativer Mehraufwand anfällt, bietet Consul so genannte
Key Value Stores zum Speichern der Zustandsinformationen sowie einen
Mechanismus zum Sperren der Zustandsdateien, wenn mehrere Bereitstel-
lungsprozesse gleichzeitig auf dieselbe Zustandsdatei wirken. Diese Funktio-
nalität ist in Szenarien mit mehreren Benutzern praktisch unbezahlbar.
Außerdem können Sie mit Consul Zustände über mehrere Regionen hinweg
synchronisieren. Als Key Value Store dient Consul auch dazu, die Anwen-
dungsdaten und andere Konfigurationsdaten zu speichern, selbst für
Workloads an verschiedenen geografischen Standorten.
Vault ist ein Secret Store, der Consul als Backend verwendet, um Schlüssel,
Geheimnisse usw. zu speichern. Zudem können so administratorbezogene
Zugangsdaten und Verbindungsinformationen sicher an die Terraform- oder
Azure-CLI weitergegeben werden. Vault bietet außerdem erweiterte Funkti-
onen wie CA, Abdeckung mehrerer Regionen, dynamische Geheimnisse und
einfache Integration mit Terraform. Zu den zukünftigen Iterationen gehört u.
a. Azure Key Vault als möglicher Ersatz für Vault.
Protokollierung und Überwachung
Zur Erfüllung der Sicherheitsanforderungen müssen alle Aktivitäten inner-
halb der Azure-Infrastruktur protokolliert werden. Drittanbieter-Tools für
24 | THE DOPPLER | WINTER 2018