Konfigurieren Ihres Azure-Projekts in Visual Studio für die Verwendung mehrerer Dienstkonfigurationen
Anmerkung
Dieser Artikel bezieht sich auf Azure Azure Cloud Services (erweiterter Support). Cloud Services (klassisch) wird ab dem 31. August 2024 eingestellt. Weitere Informationen finden Sie unter Cloud Services-Bereitstellungsmodell (klassisch) wird am 31. August 2024 eingestellt. Für eine neue Entwicklung empfehlen wir, einen neueren Diensttyp zu verwenden, der für Ihren spezifischen Zweck entwickelt wurde, z. B. Azure App Service, Azure Functionsoder Azure Container Apps. Die neueste Liste der verfügbaren Dienste finden Sie unter Verzeichnis der Azure-Produkte.
Ein Azure Cloud Services-Projekt (erweiterter Support) in Visual Studio umfasst drei Konfigurationsdateien: ServiceDefinition.csdef
, ServiceConfiguration.Local.cscfg
und ServiceConfiguration.Cloud.cscfg
:
ServiceDefinition.csdef
wird in Azure bereitgestellt, um die Anforderungen des Clouddiensts und seiner Rollen zu beschreiben und Einstellungen bereitzustellen, die für alle Instanzen gelten. Einstellungen können zur Laufzeit mithilfe der Azure Service Hosting Runtime-API gelesen werden. Diese Datei kann nur bei Azure aktualisiert werden, wenn der Clouddienst beendet wird.- Die Elemente
ServiceConfiguration.Local.cscfg
undServiceConfiguration.Cloud.cscfg
stellen Werte für Einstellungen in der Definitionsdatei bereit und geben die Anzahl der Instanzen an, die für jede Rolle ausgeführt werden sollen. Die Datei "Lokal" enthält Werte, die im lokalen Debuggen verwendet werden; die Datei "Cloud" wird in Azure alsServiceConfiguration.cscfg
bereitgestellt und stellt Einstellungen für die Serverumgebung bereit. Diese Datei kann aktualisiert werden, während Ihr Clouddienst in Azure ausgeführt wird.
Konfigurationseinstellungen werden in Visual Studio mithilfe von Eigenschaftenseiten für die entsprechende Rolle verwaltet und geändert (klicken Sie mit der rechten Maustaste auf die Rolle, und wählen Sie Eigenschaftenaus, oder doppelklicken Sie auf die Rolle). Änderungen können auf die in der Dropdownliste Dienstkonfiguration ausgewählte Konfiguration beschränkt werden. Die Unterschiede zwischen den ansonsten ähnlichen Eigenschaften für Web- und Workerrollen werden in den folgenden Abschnitten beschrieben.
Informationen zu den zugrunde liegenden Schemas für die Dienstdefinitions- und Dienstkonfigurationsdateien finden Sie in den Artikeln .csdef XML Schema und .cscfg XML Schema. Weitere Informationen zur Dienstkonfiguration finden Sie unter Konfigurieren von Cloud Services.
Konfigurationsseite
Dienstkonfiguration
Wählt aus, welche ServiceConfiguration.*.cscfg
Datei von Änderungen betroffen ist. Standardmäßig gibt es lokale und Cloudvarianten, und Sie können den Befehl Verwalten... verwenden, um Konfigurationsdateien zu kopieren, umzubenennen und zu entfernen. Diese Dateien werden Ihrem Clouddienstprojekt hinzugefügt und werden im Projektmappen-Explorerangezeigt. Das Umbenennen oder Entfernen von Konfigurationen kann jedoch nur über dieses Steuerelement erfolgen.
Instanzen
Legen Sie die eigenschaft Instance count auf die Anzahl der Instanzen fest, die der Dienst für diese Rolle ausführen soll.
Startaktion (nur Webrolle)
Legen Sie diese Eigenschaft fest, um anzugeben, dass Visual Studio einen Webbrowser für die HTTP-Endpunkte oder die HTTPS-Endpunkte starten soll, oder beides, wenn Sie mit dem Debuggen beginnen.
Die option HTTPS-Endpunkt ist nur verfügbar, wenn Sie bereits einen HTTPS-Endpunkt für Ihre Rolle definiert haben. Sie können einen HTTPS-Endpunkt auf der Eigenschaftenseite Endpunkte definieren.
Wenn Sie bereits einen HTTPS-Endpunkt hinzugefügt haben, ist die HTTPS-Endpunktoption standardmäßig aktiviert, und Visual Studio startet einen Browser für diesen Endpunkt, wenn Sie mit dem Debuggen beginnen, zusätzlich zu einem Browser für Ihren HTTP-Endpunkt, vorausgesetzt, beide Startoptionen sind aktiviert.
Seite "Einstellungen"
Auf der Seite Einstellungen können Sie einer Konfiguration Einstellungen in Form von Name-Wert-Paaren hinzufügen. Code, der in der Rolle ausgeführt wird, kann die Werte Ihrer Konfigurationseinstellungen zur Laufzeit mithilfe von Klassen lesen, die von der azure Managed Librarybereitgestellt werden, insbesondere die GetConfigurationSettingValue-Methode.
Konfigurieren einer Verbindungszeichenfolge für ein Speicherkonto
Eine Verbindungszeichenfolge ist eine Einstellung, die Verbindungs- und Authentifizierungsinformationen für den Speicheremulator oder für ein Azure Storage-Konto bereitstellt. Wenn Code in einer Rolle auf Azure Storage (Blobs, Warteschlangen oder Tabellen) zugreift, benötigt er eine Verbindungszeichenfolge.
Anmerkung
Eine Verbindungszeichenfolge für das Azure Storage-Konto muss ein definiertes Format verwenden (siehe Konfigurieren von Azure Storage-Verbindungszeichenfolgen).
Sie können die Verbindungszeichenfolge festlegen, um den lokalen Speicher bei Bedarf zu verwenden, und dann auf ein Azure Storage-Konto umzustellen, wenn Sie die Anwendung im Clouddienst bereitstellen. Wenn die Verbindungszeichenfolge nicht ordnungsgemäß festgelegt wird, wird die Rolle möglicherweise nicht gestartet, oder die Zustände „Initialisieren“, „Ausgelastet“ und „Beenden“ werden nicht durchlaufen.
Zum Erstellen einer Verbindungszeichenfolge wählen Sie Einstellung hinzufügen aus und legen den Typ auf „Verbindungszeichenfolge“ fest.
Wählen Sie für neue oder vorhandene Verbindungszeichenfolgen ...* rechts neben dem Feld Wert aus, um das Dialogfeld Speicherkonto-Verbindungszeichenfolge erstellen zu öffnen:
- Wählen Sie unter Verbindung herstellen über die Option Ihr Abonnement aus, um ein Speicherkonto aus einem Abonnement auszuwählen. Visual Studio ruft dann die Anmeldeinformationen des Speicherkontos automatisch aus der
.publishsettings
Datei ab. - Wenn Sie Manuell eingegebene Anmeldeinformationen auswählen können Sie den Kontonamen und den Schlüssel direkt mithilfe von Informationen aus dem Azure-Portal angeben. So kopieren Sie den Kontoschlüssel:
- Navigieren Sie zum Speicherkonto im Azure-Portal. Wählen Sie dann Schlüssel verwaltenaus.
- Um den Kontoschlüssel zu kopieren, navigieren Sie zum Speicherkonto im Azure-Portal, wählen Sie Einstellungen > Zugriffstastenaus. Verwenden Sie dann die Schaltfläche "Kopieren", um den Primärzugriffsschlüssel in die Zwischenablage zu kopieren.
- Wählen Sie eine der Verbindungsoptionen aus. Bei Benutzerdefinierte Endpunkte angeben werden Sie aufgefordert, bestimmte URLs für Blobs, Tabellen und Warteschlangen anzugeben. Benutzerdefinierte Endpunkte ermöglichen Ihnen die Verwendung benutzerdefinierter Domänen und eine genauere Steuerung des Zugriffs. Siehe Konfigurieren von Azure Storage-Verbindungszeichenfolgen.
- Wählen Sie OKaus, dann Datei > Speichern, um die Konfiguration mit der neuen Verbindungszeichenfolge zu aktualisieren.
Wenn Sie Ihre Anwendung in Azure veröffentlichen, wählen Sie erneut die Dienstkonfiguration aus, die das Azure Storage-Konto für die Verbindungszeichenfolge enthält. Überprüfen Sie nach der Veröffentlichung Ihrer Anwendung, ob die Anwendung für die Azure Storage-Dienste erwartungsgemäß funktioniert.
Weitere Informationen zum Aktualisieren von Dienstkonfigurationen finden Sie im Abschnitt Verwalten von Verbindungszeichenfolgen für Speicherkonten.
Seite „Endpunkte“
Eine Webrolle verfügt in der Regel über einen einzelnen HTTP-Endpunkt am Port 80. Eine Workerrolle kann dagegen eine beliebige Anzahl von HTTP-, HTTPS- oder TCP-Endpunkten aufweisen. Endpunkte können Eingabeendpunkte sein, die für externe Clients oder interne Endpunkte verfügbar sind, die für andere Rollen verfügbar sind, die im Dienst ausgeführt werden.
- Um externen Clients und Webbrowsern einen HTTP-Endpunkt zur Verfügung zu stellen, ändern Sie den Endpunkttyp auf Eingabe und geben Sie einen Namen sowie eine öffentliche Portnummer an.
- Um einen HTTPS-Endpunkt für externe Clients und Webbrowser verfügbar zu machen, ändern Sie den Endpunkttyp in Eingabe-, und geben Sie einen Namen, eine öffentliche Portnummer und einen Verwaltungszertifikatnamen an. Sie müssen das Zertifikat auch auf der Eigenschaftenseite Zertifikate definieren, bevor Sie ein Verwaltungszertifikat angeben können.
- Um einen Endpunkt für den internen Zugriff durch andere Rollen im Clouddienst verfügbar zu machen, ändern Sie den Endpunkttyp in "intern", und geben Sie einen Namen und mögliche private Ports für diesen Endpunkt an.
Lokale Speicherseite
Sie können die Eigenschaftenseite Lokaler Speicher verwenden, um mindestens eine lokale Speicherressource für eine Rolle zu reservieren. Eine lokale Speicherressource ist ein reserviertes Verzeichnis im Dateisystem des virtuellen Azure-Computers, auf dem eine Instanz einer Rolle ausgeführt wird.
Seite "Zertifikate"
Auf der Eigenschaftenseite "Zertifikate" werden Ihrer Dienstkonfiguration Informationen zu Ihren Zertifikaten hinzugefügt. Beachten Sie, dass Ihre Zertifikate nicht mit Ihrem Dienst verpackt sind; Sie müssen Ihre Zertifikate separat in Azure über das Azure-Portalhochladen.
Wenn Sie hier ein Zertifikat hinzufügen, werden Informationen zu Ihren Zertifikaten zur Dienstkonfiguration hinzugefügt. Zertifikate werden nicht mit dem Dienst verpackt; Sie müssen Ihre Zertifikate separat über das Azure-Portal hochladen.
Um ihrem Rollen ein Zertifikat zuzuordnen, geben Sie einen Namen für das Zertifikat an. Sie verwenden diesen Namen, um auf das Zertifikat zu verweisen, wenn Sie einen HTTPS-Endpunkt auf der seite Endpunkte konfigurieren. Geben Sie als Nächstes an, ob der Zertifikatspeicher Lokale Maschine oder Aktueller Benutzer ist, und den Namen des Speichers. Geben Sie schließlich den Fingerabdruck des Zertifikats ein. Wenn sich das Zertifikat im Aktuellen Benutzer\Persönlichen Speicher (My) befindet, können Sie den Fingerabdruck des Zertifikats eingeben, indem Sie das Zertifikat aus einer ausgefüllten Liste auswählen. Wenn sie sich an einer anderen Stelle befindet, geben Sie den Fingerabdruckwert manuell ein.
Wenn Sie ein Zertifikat aus dem Zertifikatspeicher hinzufügen, werden alle Zwischenzertifikate automatisch den Konfigurationseinstellungen für Sie hinzugefügt. Darüber hinaus müssen diese Zwischenzertifikate in Azure hochgeladen werden, um Ihren Dienst für SSL ordnungsgemäß zu konfigurieren.
Alle Verwaltungszertifikate, die Sie Ihrem Dienst zuordnen, gelten nur für Ihren Dienst, wenn sie in der Cloud ausgeführt wird. Wenn Ihr Dienst in der lokalen Entwicklungsumgebung ausgeführt wird, verwendet er ein Standardzertifikat, das vom Computeemulator verwaltet wird.