Bereitstellen von Azure Storage als lokale Freigabe in App Service
Azure Storage ist die Cloudspeicherlösung von Microsoft für moderne Datenspeicherszenarien. Azure Storage bietet hochverfügbaren, extrem skalierbaren, dauerhaften und sicheren Speicher für eine Vielzahl von Datenobjekten in der Cloud. In diesem Leitfaden erfahren Sie, wie Sie Azure Storage-Dateien als Netzwerkfreigabe in Windows-Code (kein Container) in App Service bereitstellen. Nur Azure Files-Dateifreigaben und Premium-Dateifreigaben werden unterstützt. Azure Storage ist ein nicht standardmäßiger Speicher für App Service und wird separat berechnet. Sie können Azure Storage auch in einer ARM-Vorlage konfigurieren.
Zu den Vorteilen benutzerdefiniert bereitgestellten Speichers zählen:
- Konfigurieren Sie persistenten Speicher für Ihre App Service-App, und verwalten Sie den Speicher separat.
- Machen Sie statische Inhalte wie Videos und Bilder ohne Weiteres für Ihre App Service-App verfügbar.
- Schreiben Sie Anwendungsprotokolldateien, oder archivieren Sie ältere Anwendungsprotokolle in Azure-Dateifreigaben.
- Geben Sie Inhalte mehrere Apps übergreifend oder für andere Azure-Dienste frei.
Die folgenden Features werden für Windows-Code unterstützt:
- Gesicherter Zugriff auf Speicherkonten mit Schlüsseltresor, privaten Endpunkten und Dienstendpunkten (bei Verwendung der VNET-Integration).
- Azure Files (Lesen/Schreiben).
- Bis zu fünf Bereitstellungspunkte pro App.
- Stellen Sie Azure Storage-Dateifreigaben mit „/mounts/
<path-name>
“ bereit.
Im Folgenden finden Sie die drei Optionen zum Einbinden von Azure Storage in Ihre App:
Einbindeoption | Verwendung |
---|---|
Basic | Wählen Sie diese Option beim Einbinden von Speicher mithilfe des Azure-Portal aus. Sie können die Basisoption verwenden, solange das Speicherkonto keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault verwendet. In diesem Fall ruft das Portal den Zugriffsschlüssel ab und speichert diesen für Sie. |
Zugriffsschlüssel | Wenn Sie den Speicher mithilfe der Azure CLI einbinden möchten, müssen Sie einen Zugriffsschlüssel abrufen. Wählen Sie diese Option Speicherkonto verwendet keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault. |
Key Vault | Verwenden Sie diese Option auch, wenn Sie die Bereitstellung von Speicher mithilfe der Azure CLI planen, die den Zugriffsschlüssel erfordert. Wählen Sie diese Option aus, wenn Sie Azure Key Vault verwenden, um Zugriffsschlüssel sicher zu speichern und abzurufen. Azure Key Vault bietet die Vorteile des zentralen und sicheren Speicherns von Anwendungsgeheimnissen mit der Möglichkeit, andere Azure-Dienste wie Azure App Service zu überwachen, zu verwalten und in sie zu integrieren. |
Voraussetzungen
Begrenzungen
- Die Speicherfirewall wird nur über Dienstendpunkte und private Endpunkte unterstützt (wenn die VNET-Integration verwendet wird).
- Azure-Blobs werden beim Konfigurieren von Azure-Speicherbereitstellungen für Windows-Code-Apps, die für App Service bereitgestellt werden, nicht unterstützt.
- FTP/FTPS-Zugriff auf bereitgestellten Speicher wird nicht unterstützt (verwenden Sie den Azure Storage-Explorer).
- Die Zuordnung von
/mounts
,mounts/foo/bar
,/
und/mounts/foo.bar/
zu benutzerdefiniert bereitgestelltem Speicher wird nicht unterstützt (Sie können nur „/mounts/pathname“ zum Bereitstellen von benutzerdefiniertem Speicher für Ihre Web-App verwenden). - Speicherbereitstellungen sind nicht in Sicherungen enthalten. Achten Sie darauf, zum Sichern der Azure Storage-Konten bewährte Methoden zu befolgen.
- Mit der VNET-Integration in Ihrer App verwendet das eingebundene Laufwerk eine RFC1918-IP-Adresse und keine IP-Adresse aus Ihrem VNET.
Vorbereiten der Einbindung
Es sind keine zusätzlichen Schritte erforderlich, da das Portal den Zugriffsschlüssel für Sie abruft und speichert.
Bereitstellen von Speicher für Windows-Code
Navigieren Sie im Azure-Portal zur App.
Klicken Sie im linken Navigationsbereich auf Konfiguration>Pfadzuordnungen>Neue Azure-Speicherbereitstellung.
Konfigurieren Sie die Speicherbereitstellung gemäß der folgenden Tabelle. Wenn Sie fertig sind, klicken Sie auf OK.
Einstellung BESCHREIBUNG Name Name der Bereitstellungskonfiguration. Leerzeichen sind nicht zulässig. Konfigurationsoptionen Wählen Sie Basic aus, wenn das Speicherkonto keine privaten Endpunkte oder Azure Key Vault verwendet. Wählen Sie andernfalls Erweitert aus. Speicherkonten Azure Storage-Konto. Es muss eine Azure Files-Freigabe enthalten sein. Freigabename Die bereitzustellende Dateifreigabe. Speicherzugriff Wählen Sie Schlüsseltresorreferenz für Azure Key Vault aus. Wählen Sie andernfalls Manuelle Eingabe aus Zugriffsschlüssel (nur „Erweitert“) Zugriffsschlüssel für Ihr Speicherkonto. Einbindungspfad Verzeichnis in Ihrem App-Dienst, das Sie einbinden möchten. Nur /mounts/pathname
wird unterstützt.Anwendungseinstellungen Wählen Sie die App-Einstellung aus, die mit dem Azure Key Vault Geheimnis konfiguriert ist. Bereitstellungssloteinstellung Bei Aktivierung dieser Einstellung gelten die Speichereinbindungseinstellungen auch für Bereitstellungsslots.
Hinweis
Das Hinzufügen, Bearbeiten oder Löschen einer Speicherbereitstellung führt dazu, dass die App neu gestartet wird.
Bewährte Methoden
Azure Storage-Einbindungen können als virtuelles Verzeichnis für die Bereitstellung statischer Inhalte konfiguriert werden. Klicken Sie zum Konfigurieren des virtuellen Verzeichnisses im linken Navigationsbereich auf Konfiguration>Pfadzuordnungen>Neue virtuelle Anwendung oder neues virtuelles Verzeichnis. Legen Sie den physischen Pfad auf den Bereitstellungspfad, der für die Azure Storage-Einbindung definiert ist.
Um Latenzprobleme zu vermeiden, platzieren Sie die App und das Azure Storage-Konto in derselben Region. Wenn Sie in der Azure Storage-Firewall-Konfiguration den Zugriff von IP-Adressen des App-Dienstes gewähren, während sich die App und das Azure Storage-Konto in derselben Region befinden, werden diese IP-Beschränkungen nicht beachtet.
Vermeiden Sie im Azure Storage-Konto das erneute Generieren des Zugriffsschlüssels, der zum Bereitstellen des Speichers in der App verwendet wird. Das Speicherkonto enthält zwei verschiedene Schlüssel. Azure App Services speichert den Azure-Speicherkontoschlüssel. Stellen Sie in einem schrittweisen Ansatz sicher, dass die Speicherbereitstellung während der erneuten Schlüsselgenerierung für die App verfügbar bleibt. Nehmen wir zum Beispiel an, dass Sie mit key1 die Speicherbereitstellung in Ihrer Anwendung konfiguriert haben:
- Generieren Sie key2 neu.
- Aktualisieren Sie in der Konfiguration der Speicherbereitstellung den Zugriff auf den Schlüssel, um den neu generierten key2 zu verwenden.
- Generieren Sie key1 neu.
Wenn Sie ein Azure Storage-Konto, einen Container oder eine Freigabe löschen, entfernen Sie die entsprechende Speicherbereitstellungskonfiguration in der App, um mögliche Fehlerszenarien zu vermeiden.
Die Leistungsstufe des bereitgestellten Azure Storage-Kontos kann Standard oder Premium sein. Wählen Sie die entsprechende Leistungsstufe für das Speicherkonto nach den Kapazität- und Durchsatzanforderungen der App aus. Weitere Informationen finden Sie unter Skalierbarkeits- und Leistungsziele für Files.
Wenn Ihre App auf mehrere Instanzen skaliert wird, wird für alle Instanzen eine Verbindung mit demselben bereitgestellten Azure Storage-Konto hergestellt. Um Leistungsengpässe und Durchsatzprobleme zu vermeiden, wählen Sie die entsprechende Leistungsstufe für das Speicherkonto aus.
Sie sollten Speicherbereitstellungen nicht für lokale Datenbanken (z. B. SQLite) oder andere Anwendungen und Komponenten verwenden, die auf Dateihandles und -sperren basieren.
Wenn Sie ein Speicherfailover initiieren, wenn das Speicherkonto in die App eingebunden ist, stellt die Einbindung erst eine Verbindung her, wenn die App neu gestartet oder die Speicherbereitstellung entfernt und erneut bereitgestellt wird.
Stellen Sie bei Verwendung der VNET-Integration sicher, dass die App-Einstellung
WEBSITE_CONTENTOVERVNET
auf1
festgelegt ist und die folgenden Ports geöffnet sind:- Azure Files: 80 und 445
Die Leistungsstufe des bereitgestellten Azure Storage-Kontos kann Standard oder Premium sein. Wählen Sie die entsprechende Leistungsstufe für das Speicherkonto nach den Kapazität- und Durchsatzanforderungen der App aus. Weitere Informationen finden Sie unter Skalierbarkeits- und Leistungsziele für Files.
Nächste Schritte
Azure Storage ist die Cloudspeicherlösung von Microsoft für moderne Datenspeicherszenarien. Azure Storage bietet hochverfügbaren, extrem skalierbaren, dauerhaften und sicheren Speicher für eine Vielzahl von Datenobjekten in der Cloud. In diesem Leitfaden erfahren Sie, wie Sie Azure Storage-Dateien als Netzwerkfreigabe in einem Windows-Container in App Service bereitstellen. Nur Azure Files-Dateifreigaben und Premium-Dateifreigaben werden unterstützt. Azure Storage ist ein nicht standardmäßiger Speicher für App Service und wird separat berechnet. Sie können Azure Storage auch in einer ARM-Vorlage konfigurieren.
Zu den Vorteilen benutzerdefiniert bereitgestellten Speichers zählen:
- Konfigurieren Sie persistenten Speicher für Ihre App Service-App, und verwalten Sie den Speicher separat.
- Machen Sie statische Inhalte wie Videos und Bilder ohne Weiteres für Ihre App Service-App verfügbar.
- Schreiben Sie Anwendungsprotokolldateien, oder archivieren Sie ein älteres Anwendungsprotokoll in Azure-Dateifreigaben.
- Geben Sie Inhalte mehrere Apps übergreifend oder für andere Azure-Dienste frei.
- Binden Sie Azure Storage in einen Windows Container, einschließlich „Isoliert“ (App Service-Umgebung v3), ein.
Die folgenden Features werden für Windows-Container unterstützt:
- Gesicherter Zugriff auf Speicherkonten mit Schlüsseltresor, privaten Endpunkten und Dienstendpunkten (bei Verwendung der VNET-Integration).
- Azure Files (Lesen/Schreiben).
- Bis zu fünf Bereitstellungspunkte pro App.
- Zuordnung von Laufwerkbuchstaben (
C:
bisZ:
).
Im Folgenden finden Sie die drei Optionen zum Einbinden von Azure Storage in Ihre App:
Einbindeoption | Verwendung |
---|---|
Basic | Wählen Sie diese Option beim Einbinden von Speicher mithilfe des Azure-Portal aus. Sie können die Basisoption verwenden, solange das Speicherkonto keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault verwendet. In diesem Fall ruft das Portal den Zugriffsschlüssel ab und speichert diesen für Sie. |
Zugriffsschlüssel | Wenn Sie den Speicher mithilfe der Azure CLI einbinden möchten, müssen Sie einen Zugriffsschlüssel abrufen. Wählen Sie diese Option Speicherkonto verwendet keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault. |
Key Vault | Verwenden Sie diese Option auch, wenn Sie die Bereitstellung von Speicher mithilfe der Azure CLI planen, die den Zugriffsschlüssel erfordert. Wählen Sie diese Option aus, wenn Sie Azure Key Vault verwenden, um Zugriffsschlüssel sicher zu speichern und abzurufen. Azure Key Vault bietet die Vorteile des zentralen und sicheren Speicherns von Anwendungsgeheimnissen mit der Möglichkeit, andere Azure-Dienste wie Azure App Service zu überwachen, zu verwalten und in sie zu integrieren. |
Voraussetzungen
Begrenzungen
- Azure-Blobs werden nicht unterstützt.
- Die Speicherfirewall wird nur über Dienstendpunkte und private Endpunkte unterstützt (wenn die VNET-Integration verwendet wird).
- FTP/FTPS-Zugriff auf bereitgestellten Speicher wird nicht unterstützt (verwenden Sie den Azure Storage-Explorer).
- Die Zuordnung von
[C-Z]:\
,[C-Z]:\home
,/
und/home
zu benutzerdefiniert bereitgestelltem Speicher wird nicht unterstützt. - Speicherbereitstellungen werden nicht gesichert, wenn Sie Ihre App sichern. Achten Sie darauf, zum Sichern der Azure Storage-Konten bewährte Methoden zu befolgen.
- Mit der VNET-Integration in Ihrer App verwendet das eingebundene Laufwerk eine RFC1918-IP-Adresse und keine IP-Adresse aus Ihrem VNET.
Vorbereiten der Einbindung
Es sind keine zusätzlichen Schritte erforderlich, da das Portal den Zugriffsschlüssel für Sie abruft und speichert.
Bereitstellen von Speicher für Windows-Container
Navigieren Sie im Azure-Portal zur App.
Klicken Sie im linken Navigationsbereich auf Konfiguration>Pfadzuordnungen>Neue Azure-Speicherbereitstellung.
Konfigurieren Sie die Speicherbereitstellung gemäß der folgenden Tabelle. Wenn Sie fertig sind, klicken Sie auf OK.
Einstellung BESCHREIBUNG Name Name der Bereitstellungskonfiguration. Leerzeichen sind nicht zulässig. Konfigurationsoptionen Wählen Sie Basic aus. Speicherkonten Azure Storage-Konto. Es muss eine Azure Files-Freigabe enthalten sein. Freigabename Die bereitzustellende Dateifreigabe. Einbindungspfad Verzeichnis in Ihrem Windows-Container, das Sie einbinden möchten. Verwenden Sie kein Stammverzeichnis ( [C-Z]:\
oder/
) oder das Verzeichnishome
([C-Z]:\home
oder/home
), da es nicht unterstützt wird.Bereitstellungssloteinstellung Bei Aktivierung dieser Einstellung gelten die Speichereinbindungseinstellungen auch für Bereitstellungsslots.
Hinweis
Das Hinzufügen, Bearbeiten oder Löschen einer Speicherbereitstellung führt dazu, dass die App neu gestartet wird.
Bewährte Methoden
Um Latenzprobleme zu vermeiden, platzieren Sie die App und das Azure Storage-Konto in derselben Region. Wenn Sie in der Azure Storage-Firewall-Konfiguration den Zugriff von IP-Adressen des App-Dienstes gewähren, während sich die App und das Azure Storage-Konto in derselben Region befinden, werden diese IP-Beschränkungen nicht beachtet.
Vermeiden Sie im Azure Storage-Konto das erneute Generieren des Zugriffsschlüssels, der zum Bereitstellen des Speichers in der App verwendet wird. Das Speicherkonto enthält zwei verschiedene Schlüssel. Azure App Services speichert den Azure-Speicherkontoschlüssel. Stellen Sie in einem schrittweisen Ansatz sicher, dass die Speicherbereitstellung während der erneuten Schlüsselgenerierung für die App verfügbar bleibt. Nehmen wir zum Beispiel an, dass Sie mit key1 die Speicherbereitstellung in Ihrer Anwendung konfiguriert haben:
- Generieren Sie key2 neu.
- Aktualisieren Sie in der Konfiguration der Speicherbereitstellung den Zugriff auf den Schlüssel, um den neu generierten key2 zu verwenden.
- Generieren Sie key1 neu.
Wenn Sie ein Azure Storage-Konto, einen Container oder eine Freigabe löschen, entfernen Sie die entsprechende Speicherbereitstellungskonfiguration in der App, um mögliche Fehlerszenarien zu vermeiden.
Die Leistungsstufe des bereitgestellten Azure Storage-Kontos kann Standard oder Premium sein. Wählen Sie die entsprechende Leistungsstufe für das Speicherkonto nach den Kapazität- und Durchsatzanforderungen der App aus. Weitere Informationen finden Sie unter Skalierbarkeits- und Leistungsziele für Files.
Wenn Ihre App auf mehrere Instanzen skaliert wird, wird für alle Instanzen eine Verbindung mit demselben bereitgestellten Azure Storage-Konto hergestellt. Um Leistungsengpässe und Durchsatzprobleme zu vermeiden, wählen Sie die entsprechende Leistungsstufe für das Speicherkonto aus.
Sie sollten Speicherbereitstellungen nicht für lokale Datenbanken (z. B. SQLite) oder andere Anwendungen und Komponenten verwenden, die auf Dateihandles und -sperren basieren.
Stellen Sie sicher, dass die Ports 80 und 445 geöffnet sind, wenn Sie Azure Files mit VNET-Integration verwenden.
Wenn Sie ein Speicherfailover initiieren, wenn das Speicherkonto in die App eingebunden ist, stellt die Einbindung erst eine Verbindung her, wenn die App neu gestartet oder die Speicherbereitstellung entfernt und erneut bereitgestellt wird.
Nächste Schritte
Hinweis
NFS-Support ist jetzt für App Service für Linux verfügbar.
In diesem Leitfaden wird gezeigt, wie sie Azure Storage als Netzwerkfreigabe in einem integrierten Linux-Container oder benutzerdefinierten Linux-Container in App Service bereitstellen. Azure Storage ist die Cloudspeicherlösung von Microsoft für moderne Datenspeicherszenarien. Azure Storage bietet hochverfügbaren, extrem skalierbaren, dauerhaften und sicheren Speicher für eine Vielzahl von Datenobjekten in der Cloud. Azure Storage ist ein nicht standardmäßiger Speicher für App Service und wird separat berechnet. Sie können Azure Storage auch in einer ARM-Vorlage konfigurieren.
Vorteile
Zu den Vorteilen benutzerdefiniert bereitgestellten Speichers zählen:
- Konfigurieren Sie persistenten Speicher für Ihre App Service-App, und verwalten Sie den Speicher separat.
- Machen Sie statische Inhalte wie Videos und Bilder ohne Weiteres für Ihre App Service-App verfügbar.
- Schreiben Sie Anwendungsprotokolldateien, oder archivieren Sie ein älteres Anwendungsprotokoll in Azure-Dateifreigaben.
- Geben Sie Inhalte mehrere Apps übergreifend oder für andere Azure-Dienste frei.
- Azure Files NFS und Azure Files SMB werden unterstützt.
- Azure-Blobs (schreibgeschützt) werden unterstützt.
- Bis zu fünf Bereitstellungspunkte pro App werden unterstützt.
Begrenzungen
Zu den Vorteilen benutzerspezifisch bereitgestellter Speicher gehören:
- Die Speicherfirewall wird nur über Dienstendpunkte und private Endpunkte unterstützt (wenn die VNET-Integration verwendet wird).
- FTP/FTPS-Zugriff auf benutzerdefiniert bereitgestellten Speicher wird nicht unterstützt (verwenden Sie den Azure Storage-Explorer).
- Speicherkonto-Zugriffsschlüssel sind die einzige unterstützte Authentifizierungsoption; Entra ID- und RBAC-Rollen werden nicht unterstützt.
- Die Unterstützung von Azure CLI, Azure PowerShell und Azure SDK befindet sich in der Vorschau.
- Die Zuordnung von
/
oder/home
zu benutzerdefiniert bereitgestelltem Speicher wird nicht unterstützt. - Ordnen Sie die Speichereinbindung nicht zu
/tmp
oder seinen Unterverzeichnissen zu, da diese Aktion beim Starten der App zu einem Timeout führen kann. - Azure Storage wird in Docker Compose-Szenarien nicht unterstützt.
- Speicherbereitstellungen sind nicht in Sicherungen enthalten. Achten Sie darauf, zum Sichern der Azure Storage-Konten bewährte Methoden zu befolgen.
- NFS-Support ist nur für App Service für Linux verfügbar. Für Windows-Code und Windows-Container wird NFS nicht unterstützt. Die Web-App und das Speicherkonto müssen auf demselben VNET für NFS konfiguriert werden. Das für die Dateifreigabe verwendete Speicherkonto sollte die Leistungsstufe „Premium“ und den Kontotyp „Filestorage“ aufweisen. Azure Key Vault kann bei Verwendung des NFS-Protokolls nicht genutzt werden.
- Mit der VNET-Integration in Ihrer App verwendet das eingebundene Laufwerk eine RFC1918-IP-Adresse und keine IP-Adresse aus Ihrem VNET.
Bereitstellungsoptionen
Sie müssen zuerst den Speicher für die App bereitstellen. Im Folgenden finden Sie drei Bereitstellungsoptionen für Azure-Speicher:
Einbindeoption | Verwendung |
---|---|
Basic | Wählen Sie diese Option beim Einbinden von Speicher mithilfe des Azure-Portal aus. Sie können die Basisoption verwenden, solange das Speicherkonto keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault verwendet. In diesem Fall ruft das Portal den Zugriffsschlüssel ab und speichert diesen für Sie. |
Zugriffsschlüssel | Wenn Sie den Speicher mithilfe der Azure CLI einbinden möchten, müssen Sie einen Zugriffsschlüssel abrufen. Wählen Sie diese Option Speicherkonto verwendet keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault. |
Key Vault | Verwenden Sie diese Option auch, wenn Sie die Bereitstellung von Speicher mithilfe der Azure CLI planen, die den Zugriffsschlüssel erfordert. Wählen Sie diese Option aus, wenn Sie Azure Key Vault verwenden, um Zugriffsschlüssel sicher zu speichern und abzurufen. Azure Key Vault bietet die Vorteile des zentralen und sicheren Speicherns von Anwendungsgeheimnissen mit der Möglichkeit, andere Azure-Dienste wie Azure App Service zu überwachen, zu verwalten und in sie zu integrieren. |
Voraussetzungen
- Eine vorhandene App Service für Linux-App.
- Ein Azure Storage-Konto
- Azure-Dateifreigabe und -Verzeichnis.
Vorbereiten der Einbindung
Es sind keine zusätzlichen Schritte erforderlich, da das Portal den Zugriffsschlüssel für Sie abruft und speichert.
Bereitstellen von Speicher für Linux-Container
Die Art und Weise, wie Sie Speicher einbinden, hängt von Ihrer Speicherzugriffsoption ab und davon, ob Sie das Portal oder die Azure CLI verwenden.
Navigieren Sie im Azure-Portal zur App.
Klicken Sie im linken Navigationsbereich auf Konfiguration>Pfadzuordnungen>Neue Azure-Speicherbereitstellung.
Konfigurieren Sie die Speicherbereitstellung gemäß der folgenden Tabelle. Wenn Sie fertig sind, klicken Sie auf OK.
Einstellung BESCHREIBUNG Name Name der Bereitstellungskonfiguration. Leerzeichen sind nicht zulässig. Konfigurationsoptionen Wählen Sie Basic aus. wenn das Speicherkonto keine Dienstendpunkte, privaten Endpunkte oder Azure Key Vault verwendet. Wählen Sie andernfalls Erweitert aus. Speicherkonten Azure Storage-Konto. Speichertyp Wählen Sie den Typ basierend auf dem Speicher aus, den Sie bereitstellen möchten. Azure-Blobs unterstützen nur schreibgeschützten Zugriff. Speichercontainer oder Freigabename Dateifreigabe oder Blobscontainer, die/der bereitgestellt werden soll. Einbindungspfad Verzeichnis innerhalb des Linux-Containers für die Bereitstellung in Azure Storage. Verwenden Sie nicht /
oder/home
.Bereitstellungssloteinstellung Bei Aktivierung dieser Einstellung gelten die Speichereinbindungseinstellungen auch für Bereitstellungsslots.
Hinweis
Das Hinzufügen, Bearbeiten oder Löschen einer Speicherbereitstellung führt dazu, dass die App neu gestartet wird.
Überprüfen des eingebundenen Speichers
So überprüfen Sie, ob Azure Storage erfolgreich für die App bereitgestellt wurde:
Öffnen Sie eine SSH-Sitzung im Container.
Führen Sie dann im SSH-Terminal folgenden Befehl aus:
df –h
Überprüfen Sie, ob die Speicherfreigabe bereitgestellt wurde. Wenn sie nicht vorhanden ist, liegt ein Problem beim Bereitstellen der Speicherfreigabe vor.
Überprüfen Sie die Latenz oder die allgemeine Erreichbarkeit der Speichermenge mit folgendem Befehl:
tcpping Storageaccount.file.core.windows.net
Bewährte Methoden
Leistung
Um Latenzprobleme zu vermeiden, platzieren Sie die App und das Azure Storage-Konto in derselben Region. Wenn Sie in der Azure Storage-Firewall-Konfiguration den Zugriff von IP-Adressen des App-Dienstes gewähren, während sich die App und das Azure Storage-Konto in derselben Region befinden, werden diese IP-Beschränkungen nicht beachtet.
Die Leistungsstufe des bereitgestellten Azure Storage-Kontos kann Standard oder Premium sein. Wählen Sie die entsprechende Leistungsstufe für das Speicherkonto nach den Kapazität- und Durchsatzanforderungen der App aus. Betrachten Sie die Skalierbarkeits- und Leistungsziele, die dem Speichertyp entsprechen:Dateien und Blobs.
Wenn Ihre App auf mehrere Instanzen skaliert wird, wird für alle Instanzen eine Verbindung mit demselben bereitgestellten Azure Storage-Konto hergestellt. Um Leistungsengpässe und Durchsatzprobleme zu vermeiden, wählen Sie die entsprechende Leistungsstufe für das Speicherkonto aus.
Sicherheit
- Vermeiden Sie im Azure Storage-Konto das erneute Generieren des Zugriffsschlüssels, der zum Bereitstellen des Speichers in der App verwendet wird. Das Speicherkonto enthält zwei verschiedene Schlüssel. Azure App Services speichert den Azure-Speicherkontoschlüssel. Stellen Sie in einem schrittweisen Ansatz sicher, dass die Speicherbereitstellung während der erneuten Schlüsselgenerierung für die App verfügbar bleibt. Nehmen wir zum Beispiel an, dass Sie mit key1 die Speicherbereitstellung in Ihrer Anwendung konfiguriert haben:
- Generieren Sie key2 neu.
- Aktualisieren Sie in der Konfiguration der Speicherbereitstellung den Zugriff auf den Schlüssel, um den neu generierten key2 zu verwenden.
- Generieren Sie key1 neu.
Problembehandlung
- Das Bereitstellungsverzeichnis im benutzerdefinierten Container sollte leer sein. Alle in diesem Pfad gespeicherten Inhalte werden gelöscht, wenn Azure Storage bereitgestellt wird (wenn Sie z. B. unter
/home
ein Verzeichnis angeben). Wenn Sie Dateien für eine bestehende App migrieren, erstellen Sie vor Beginn eine Sicherung der App und ihres Inhalts. - Wenn Sie ein Azure Storage-Konto, einen Container oder eine Freigabe löschen, entfernen Sie die entsprechende Speicherbereitstellungskonfiguration in der App, um mögliche Fehlerszenarien zu vermeiden.
- Sie sollten Speicherbereitstellungen nicht für lokale Datenbanken (z. B. SQLite) oder andere Anwendungen und Komponenten verwenden, die auf Dateihandles und -sperren basieren.
- Stellen Sie bei Verwendung der VNET-Integration sicher, dass die folgenden Ports geöffnet sind: Azure Files: 80 und 445. Azure Blobs: 80 und 443
- Wenn Sie ein Speicherfailover initiieren, wenn das Speicherkonto in die App eingebunden ist, stellt die Einbindung erst eine Verbindung her, wenn die App neu gestartet oder die Speicherbereitstellung entfernt und erneut bereitgestellt wird.