Verwalten von Anwendungen für mehrere Umgebungen
Mit Azure Service Fabric-Clustern können Sie Cluster mit einem oder mehreren Tausend Computern erstellen. In den meisten Fällen müssen Sie Ihre Anwendung unter verschiedenen Clusterkonfigurationen bereitstellen: in Ihrem lokalen Entwicklungscluster, in einem gemeinsam verwendeten Entwicklungscluster und in Ihrem Produktionscluster. Alle diese Cluster gelten als unterschiedliche Umgebungen, in denen Ihr Code ausgeführt werden muss. Anwendungsbinärdateien können ohne Änderungen in diesem breiten Spektrum ausgeführt werden. Häufig möchten Sie die Anwendung jedoch anders konfigurieren.
Betrachten Sie zwei einfache Beispiele:
- Der Dienst lauscht an einem festgelegten Port, der jedoch in den verschiedenen Umgebungen unterschiedlich sein muss.
- Sie müssen in den verschiedenen Umgebungen unterschiedliche Bindungsanmeldeinformationen für eine Datenbank angeben.
Angeben der Konfiguration
Die Konfiguration, die Sie bereitstellen, kann in zwei Kategorien unterteilt werden:
- Konfiguration der Dienstausführung
- Dazu gehören z.B. die Portnummer für einen Endpunkt oder die Anzahl der Instanzen eines Diensts.
- Diese Konfiguration wird in der Manifestdatei der Anwendung oder des Diensts angegeben.
- Konfiguration für den Anwendungscode
- Dazu gehören z.B. Bindungsinformationen für eine Datenbank.
- Diese Konfiguration kann über Konfigurationsdateien oder Umgebungsvariablen bereitgestellt werden.
Hinweis
Nicht alle Attribute in der Manifestdatei der Anwendung oder des Diensts unterstützen Parameter. In solchen Fällen müssen Sie die Zeichenfolgen im Rahmen des Bereitstellungsworkflows ersetzen. In Azure DevOps können Sie eine Erweiterung wie „Replace Tokens: https://marketplace.visualstudio.com/items?itemName=qetza.replacetokens“ verwenden. In Jenkins könnten Sie auch eine Skriptaufgabe ausführen, um die Werte zu ersetzen.
Angeben von Parametern während der Anwendungserstellung
Sie können beim Erstellen von benannten Anwendungsinstanzen in Service Fabric Parameter übergeben. Die Vorgehensweise hängt davon ab, wie Sie die Anwendungsinstanz erstellen.
- In PowerShell akzeptiert das Cmdlet
New-ServiceFabricApplication
die Anwendungsparameter als Hashtabelle. - Bei sfctl akzeptiert der Befehl
sfctl application create
Parameter als JSON-Zeichenfolge. Das Skript „install.sh“ verwendet sfctl. - Visual Studio stellt Ihnen im Ordner „Parameters“ im Anwendungsprojekt eine Reihe von Parameterdateien zur Verfügung. Diese Parameterdateien werden bei der Veröffentlichung aus Visual Studio heraus unter Verwendung von Azure DevOps Services oder Azure DevOps Server verwendet. In Visual Studio werden die Parameterdateien an das Skript „Deploy-FabricApplication.ps1“ übergeben.
Nächste Schritte
In den folgenden Artikeln wird gezeigt, wie einige der hier beschriebenen Konzepte verwendet werden: