Freigeben über


Verwalten Ihrer Funktions-App

In Azure Functions stellt eine Funktions-App den Ausführungskontext für Ihre einzelnen Funktionen bereit. Funktionen-App-Verhalten gelten für alle von einer bestimmten Funktionen-App gehosteten Funktionen. Alle Funktionen in einer Funktions-App müssen in der gleichen Sprache geschrieben sein.

Einzelne Funktionen in einer Funktions-App werden gemeinsam bereitgestellt und skaliert. Beim Skalieren der Funktions-App nutzen alle Funktionen in der gleichen Funktions-App die Ressourcen gemeinsam (pro Instanz).

Verbindungszeichenfolgen, Umgebungsvariablen und andere Anwendungseinstellungen werden für jede Funktions-App separat definiert. Daten, die von Funktions-Apps gemeinsam genutzt werden sollen, müssen extern in einem persistenten Speicher gespeichert werden.

Erste Schritte im Azure-Portal

Hinweis

Aufgrund von Einschränkungen beim Bearbeiten von Funktionscode im Azure-Portal sollten Sie Ihre Funktionen lokal entwickeln und Ihr Codeprojekt in einer Funktions-App in Azure veröffentlichen. Weitere Informationen finden Sie unter Entwicklungseinschränkungen im Azure-Portal

Führen Sie die folgenden Schritte aus, um die App-Einstellungen in Ihrer Funktions-App anzuzeigen:

  1. Melden Sie sich mit Ihrem Azure-Konto beim portal Azure an. Suchen Sie nach Ihrer Funktions-App, und wählen Sie sie aus.

  2. Erweitern Sie im linken Bereich Ihrer Funktions-App die Option Einstellungen, wählen Sie Umgebungsvariablen aus, und wählen Sie dann die Registerkarte App-Einstellungen aus.

    Screenshot: Auswählen der Seite „App-Einstellungen“ in einer Funktions-App

Arbeiten mit Anwendungseinstellungen

Zusätzlich zu den vordefinierten App-Einstellungen, die von Azure Functions verwendet werden, können Sie eine beliebige Anzahl von App-Einstellungen erstellen, wie sie vom Funktionscode benötigt werden. Weitere Informationen finden Sie unter App-Einstellungsreferenz für Azure Functions.

Diese Einstellungen werden verschlüsselt gespeichert. Weitere Informationen finden Sie unter Anwendungseinstellungen.

Sie können App-Einstellungen über das portal Azure und mithilfe der Azure CLI und Azure PowerShell verwalten. Sie können App-Einstellungen auch über Visual Studio Code und von Visual Studio verwalten.

Hinweis

Wenn Sie Anwendungseinstellungen ändern, wird ihre Funktions-App standardmäßig in allen Hostingplänen neu gestartet. Verwenden Sie bei Bereitstellungen ohne Ausfallzeiten beim Ändern von Einstellungen den Flex-Verbrauchsplan mit schrittweisen Aktualisierungen als Aktualisierungsstrategie für die Website. Weitere Hostingpläne finden Sie unter Optimieren von Bereitstellungen, um Anleitungen zur Minimierung von Ausfallzeiten zu erhalten.

Informationen zum Anzeigen Ihrer App-Einstellungen finden Sie unter Get started in the Azure portal.

Auf der Registerkarte App-Einstellungen werden Einstellungen verwaltet, die von Ihrer Funktions-App verwendet werden:

  1. Wählen Sie Werte anzeigen aus, um die Werte der App-Einstellungen anzuzeigen.

  2. Wenn Sie eine Einstellung hinzufügen möchten, wählen Sie + Hinzufügen aus, und geben Sie dann unter Name den Namen und unter Wert den Wert des neuen Schlüssel-Wert-Paars ein.

    Screenshot: Seite „App-Einstellungen“ in einer Funktions-App

Verwenden von Anwendungseinstellungen

Die Werte für Funktions-App-Einstellungen können auch im Code als Umgebungsvariablen gelesen werden. Weitere Informationen finden Sie im Abschnitt „Umgebungsvariablen“ dieser sprachspezifischen Referenzartikel:

Wenn Sie eine Funktions-App lokal entwickeln, müssen Sie lokale Kopien dieser Werte in der Projektdatei local.settings.json speichern. Weitere Informationen finden Sie unter Datei für lokale Einstellungen.

Einstellungen für die FTPS-Bereitstellung

Azure Functions unterstützt die Bereitstellung von Projektcode in Ihrer Funktions-App mithilfe von FTPS. Da diese Bereitstellungsmethode die Synchronisierung von Triggern erfordert, wird sie nicht empfohlen. Verwenden Sie zum sicheren Übertragen von Projektdateien immer FTPS und nicht FTP.

Die für die FTPS-Bereitstellung erforderlichen Anmeldeinformationen können mithilfe einer der folgenden Methoden abgerufen werden:

Sie können die FTPS-Veröffentlichungsanmeldeinformationen im Azure Portal abrufen, indem Sie das Veröffentlichungsprofil für Ihre Funktions-App herunterladen.

Wichtig

Das Veröffentlichungsprofil enthält wichtige Sicherheitsanmeldeinformationen. Stellen Sie immer sicher, dass die heruntergeladene Datei auf Ihrem lokalen Computer geschützt ist.

So laden Sie das Veröffentlichungs Profil Ihrer Funktions-App herunter:

  1. Suchen Sie im Azure-Portal die Seite für Ihre Funktions-App, erweitern Sie Settings>Configuration in der linken Spalte.

  2. Wählen Sie auf der Seite Konfiguration die Registerkarte Allgemeine Einstellungen aus, und stellen Sie sicher, dass die Option Veröffentlichungsanmeldeinformationen für die SCM-Standardauthentifizierung auf Ein eingestellt ist. Wenn diese Einstellung auf Aus festgelegt ist, können Sie keine Veröffentlichungsprofile verwenden. Wählen Sie daher Ein und anschließend Anwenden.

  3. Kehren Sie zur Seite Übersicht der Funktions-App zurück, und wählen Sie dann Veröffentlichungsprofil abrufen aus.

    Veröffentlichungsprofil herunterladen

  4. Speichern und kopieren Sie den Inhalt der Datei.

  1. Suchen Sie in der Datei das Element publishProfile mit dem Attribut publishMethod="FTP". In diesem Element enthalten die Attribute publishUrl, userName und userPWD die Ziel-URL und die Anmeldeinformationen für die Veröffentlichung über FTPS.

Typ des Hostingplans

Wenn Sie eine Funktions-App erstellen, erstellen Sie auch einen Hostingplan, in dem die App ausgeführt wird. Ein Plan kann mehrere Funktions-App umfassen. Funktionalität, Skalierung und Preis Ihrer Funktionen hängen vom Typ des Plans ab. Weitere Informationen finden Sie unter Azure Functions Hostingoptionen.

Sie können den Typ des Plans bestimmen, der von Ihrer Funktions-App im Azure Portal verwendet wird, oder mithilfe der Azure CLI- oder Azure PowerShell-APIs.

Die folgenden Werte geben den Plantyp an:

Plantyp Azure Portal Azure CLI/PowerShell
Verbrauch Verbrauch Dynamic
Premium ElasticPremium ElasticPremium
Dediziert (App Service) Verschiedene Verschiedene
  1. Informationen zum Bestimmen des Typs des Plans, der von Ihrer Funktions-App verwendet wird, finden Sie auf der Seite App Service Plan im Overview Seite der Funktions-App im Azure Portal.

    Screenshot: Link „App Service-Plan“ auf der Übersichtsseite einer Funktions-App

  2. Um den Tarif anzuzeigen, wählen Sie unter App Service-Plan den Namen des App Service-Plans und anschließend im linken Bereich Einstellungen > Eigenschaften aus.

Planen der Migration

Sie können eine Funktions-App zwischen einem Verbrauchsplan und einem Premium-Plan auf Windows migrieren.

Tipp

Es wird empfohlen, Ihre Verbrauchsplan-App in einem Flex-Verbrauchsplan anstelle eines Premium-Plans auszuführen. Bei einer Linux-Verbrauchsplan-App ist der Wechsel zum Flex-Verbrauchsplan die einzige Option. Da die In-Place Migration von Plänen zu und von Flex-Verbrauch nicht unterstützt wird, müssen Sie eine neue App im Flex-Verbrauchsplan erstellen. Weitere Informationen finden Sie unter Migrieren von Verbrauchsplan-Apps zum Flex Consumption-Plan, der Sie durch das Erstellen einer neuen Flex Consumption-App mit den gleichen Einstellungen wie Ihre vorhandene App führt.

Beachten Sie bei der Migration zwischen Plänen die folgenden Überlegungen:

  • Die direkte Migration zu einem dedizierten Plan (App Service) wird nicht unterstützt.
  • Die Migration wird unter Linux nicht unterstützt.
  • Der Quellplan und der Zielplan müssen sich in derselben Ressourcengruppe und geografischen Region befinden. Weitere Informationen finden Sie unter Move an app to another App Service plan (Verschieben einer App in einen anderen App Service-Plan).
  • Die spezifischen CLI-Befehle hängen von der Richtung der Migration ab.
  • Downtime bei Ihren Funktionsausführungen tritt auf, wenn die Funktions-App zwischen Plänen migriert wird.
  • Status- und andere App-spezifische Inhalte werden beibehalten, da dieselbe Azure Files-Freigabe sowohl vor als auch nach der Migration von der App verwendet wird.
  • Die In-Place Migration von Plänen in den oder aus dem Flex-Verbrauchsplan wird nicht unterstützt. Sie müssen eine neue Funktions-App im Flex Consumption-Plan erstellen.

Sie können Ihren Plan mithilfe dieser Tools migrieren:

Sie können das portal Azure verwenden, um zu einem anderen Plan zu wechseln.

Wählen Sie die Richtung der Migration für Ihre App auf Windows aus.

  1. Navigieren Sie im Azure-Portal zu Ihrer Verbrauchsplan-App, und erweitern Sie im linken Bereich App Service-Plan und wählen Sie App Service plan aus.

  2. Wählen Sie auf der Seite "App Service-Plan" unter "Aktueller App Service-Plan" die Option "Plan ändern" aus.

  3. Wählen Sie im Plan "App Service ändern" den Typ "Premium für Plan" aus, erstellen Sie einen neuen Premium-Plan, und wählen Sie "OK" aus.

Weitere Informationen finden Sie unter Move an app to another App Service plan (Verschieben einer App in einen anderen App Service-Plan).

Entwicklungsbeschränkungen im Azure-Portal

Die folgende Tabelle gibt Aufschluss über die Betriebssysteme und Programmiersprachen, die Bearbeitung im Portal unterstützen:

Sprache Flex-Verbrauch Prämie Dediziert Verbrauch
C#
Java
JavaScript (Node.js) nur Windows
Python Nur Linux Nur Linux Nur Linux
PowerShell nur Windows nur Windows nur Windows
TypeScript (Node.js)

Berücksichtigen Sie diese Einschränkungen, wenn Sie Ihre Funktionen im Azure-Portal entwickeln:

  • Die In-Portal-Bearbeitung wird nur für Funktionen unterstützt, die im Azure-Portal erstellt oder zuletzt geändert wurden.
  • Die In-Portal-Bearbeitung wird nur für JavaScript, PowerShell, Python und C#-Skript (In-Process)-Funktionen unterstützt.
  • Die Bearbeitung im Portal wird derzeit im Flex-Verbrauchstarif nicht unterstützt.
  • Die Möglichkeit, Ihre Apps unter Linux in einem Verbrauchsplan auszuführen, ist für den Ruhestand geplant. Weitere Informationen finden Sie unter Azure Functions-Verbrauchsplan-Hosting.
  • Wenn Sie Code in einer Funktions-App außerhalb des Azure Portals bereitstellen, können Sie keinen Code für diese Funktions-App im Portal mehr bearbeiten. In diesem Fall verwenden Sie einfach weiterhin lokale Entwicklung.
  • Für Python wird die Entwicklung mit benutzerdefinierten Modulen derzeit nicht im Portal unterstützt. Um Ihrer Funktions-App benutzerdefinierte Module hinzuzufügen, müssen Sie Ihre App lokal entwickeln.
  • Für kompilierte C#-Funktionen und Java Funktionen können Sie die Funktions-App und zugehörige Ressourcen im Portal erstellen. Sie müssen jedoch das Codeprojekt der Funktionen lokal erstellen und dann in Azure veröffentlichen.

Entwickeln Sie Ihre Funktionen nach Möglichkeit lokal, und veröffentlichen Sie Ihr Codeprojekt in einer Funktions-App in Azure. Weitere Informationen finden Sie unter Code und testen Sie Azure Functions lokal.

Manuelles Installieren von Erweiterungen

C#-Klassenbibliotheksfunktionen können die NuGet-Pakete für Bindungserweiterungen direkt im Klassenbibliotheksprojekt enthalten. Bei anderen Nicht-.NET Sprachen und C#-Skripts sollten Sie Erweiterungspakete use extension bundles verwenden. Wenn Sie Erweiterungen manuell installieren müssen, können Sie dies tun, indem Sie using Azure Functions Core Tools lokal verwenden. Wenn Sie Erweiterungsbündel nicht verwenden und nur in der Lage sind, im Portal zu arbeiten, müssen Sie Advanced Tools (Kudu) verwenden, um die extensions.csproj-Datei direkt auf der Website manuell zu erstellen. Stellen Sie sicher, dass Sie zuerst das Element extensionBundle aus der Datei host.json entfernen.

Der gleiche Prozess funktioniert für jede andere Datei, die Sie Ihrer App hinzufügen müssen.

Wichtig

Bearbeiten Sie Dateien nach Möglichkeit nicht direkt in Ihrer Funktions-App in Azure. Wir empfehlen, Ihre App-Dateien lokal herunterzuladen, indem Sie Core Tools verwenden, um Erweiterungen und andere Pakete zu installieren, Ihre Änderungen zu überprüfen und dann Ihre App mithilfe von Core Tools oder einer der anderen unterstützten Bereitstellungsmethoden erneut zu veröffentlichen.

Mit dem im Azure Portal integrierten Funktions-Editor können Sie Ihren Funktionscode und Ihre Konfigurationsdateien direkt im Portal aktualisieren:

  1. Wählen Sie Ihre Funktions-App und dann unter Funktionen die Option Funktionen aus.

  2. Wählen Sie Ihre Funktion aus, und wählen Sie Code+ Test unter Entwickler aus.

  3. Wählen Sie Ihre zu bearbeitende Datei aus, und wählen Sie Speichern aus, wenn Sie fertig sind.

Dateien am Stamm der App (z. B. „function.proj“ oder „extensions.csproj“) müssen mithilfe von Erweiterte Tools (Kudu) erstellt und bearbeitet werden:

  1. Wählen Sie Ihre Funktions-App aus, erweitern Sie Entwicklungstools, und wählen Sie anschließend Erweiterte Tools>Go aus.

  2. Wenn Sie dazu aufgefordert werden, melden Sie sich mit Ihren Azure Anmeldeinformationen bei der Website des Quellcodeverwaltungs-Managers (Source Control Manager, SCM) an.

  3. Wählen Sie im Menü Debugging-Konsole die Option CMD aus.

  4. Navigieren Sie zu .\site\wwwroot, wählen Sie oben die Plusschaltfläche (+) aus, und wählen Sie Neue Datei aus.

  5. Geben Sie der Datei einen Namen (z. B. extensions.csproj), und drücken Sie die EINGABETASTE.

  6. Wählen Sie die Bearbeitungsschaltfläche neben der neuen Datei aus, fügen Sie der Datei Code hinzu, oder aktualisieren Sie ihn, und wählen Sie anschließend Speichern aus.

  7. Führen Sie für eine Projektdatei wie extensions.csproj den folgenden Befehl aus, um das Erweiterungsprojekt neu zu erstellen:

    dotnet build extensions.csproj
    

Plattformfeatures

Funktions-Apps werden auf der Azure App Service-Plattform ausgeführt, die sie verwaltet. Daher haben Ihre Funktions-Apps Zugriff auf die meisten Features der zentralen Webhostingplattform von Azure. Wenn Sie das portal Azure verwenden, greifen Sie im linken Bereich auf die vielen Features der App Service-Plattform zu, die Sie in Ihren Funktions-Apps verwenden können.

Die folgende Matrix zeigt die Unterstützung von Azure-Portal-Funktionen je nach Hostingplan und Betriebssystem an.

Funktion Verbrauchsplan Flex-Verbrauchsplan Premium-Tarif Dedizierter Plan
Erweiterte Tools (Kudu) Windows: ✔
Linux: X
X
App Service-Editor Windows: ✔
Linux: X
X Windows: ✔
Linux: X
Windows: ✔
Linux: X
Backups X X X
Konsole Windows: Befehlszeile
Linux: X
X Windows: Befehlszeile
Linux: SSH
Windows: Befehlszeile
Linux: SSH

Im weiteren Verlauf dieses Artikels werden schwerpunktmäßig folgende Features im Portal behandelt, die für Ihre Funktions-Apps nützlich sind:

Weitere Informationen zum Arbeiten mit App Service-Einstellungen finden Sie unter Configure Azure App Service Settings.

App Service-Editor

Der App Service-Editor ist ein leistungsstarker Editor im Portal, mit dem Sie JSON-Konfigurationsdateien und Codedateien gleichermaßen bearbeiten können. Bei Auswahl dieser Option wird eine separate Browserregisterkarte mit einem einfachen Editor gestartet. Dieser Editor ermöglicht die Integration in das Git-Repository. Außerdem können Sie damit Code ausführen und debuggen sowie Einstellungen von Funktionen-Apps ändern. Im Vergleich zum integrierten Funktionen-Editor bietet dieser Editor eine erweiterte Entwicklungsumgebung für Ihre Funktionen.

Screenshot: App Service-Editor

Es empfiehlt sich, Funktionen auf dem lokalen Computer zu entwickeln. Wenn Sie lokal entwickeln und in Azure veröffentlichen, sind Ihre Projektdateien im Azure-Portal schreibgeschützt. Weitere Informationen finden Sie unter Code und testen Sie Azure Functions lokal.

Console

Die Konsole im Portal ist das ideale Entwicklungstool, wenn Sie Funktionen-Apps über die Befehlszeile konfigurieren möchten. Häufig verwendete Befehle sind z.B. Erstellen von Verzeichnissen und Dateien, Navigation sowie das Ausführen von Batchdateien und -skripts.

Screenshot: Konsole für Funktions-Apps

Bei der lokalen Entwicklung empfehlen wir die Verwendung der Azure Functions Core Tools und der Azure CLI.

Erweiterte Tools (Kudu)

Die erweiterten Tools für App Service (auch bekannt als Kudu) ermöglichen den Zugriff auf erweiterte Verwaltungsfunktionen der Funktionen-App. Über Kudu können Sie Systeminformationen, App-Einstellungen, Umgebungsvariablen, Websiteerweiterungen, HTTP-Header und Servervariablen verwalten. Sie können Kudu auch starten, indem Sie zum SCM-Endpunkt für die Funktions-App navigieren (Beispiel: https://<myfunctionapp>.scm.azurewebsites.net/).

Screenshot: Erweiterte Tools für App Service (Kudo)

Bereitstellungscenter

Wenn Sie Ihren Funktionencode mithilfe einer Quellcodeverwaltungslösung entwickeln und verwalten, können Sie im Bereitstellungscenter beim Erstellen und Bereitstellen auf die Quellcodeverwaltung zurückgreifen. Ihr Projekt wird erstellt und für Azure bereitgestellt, wenn Sie Aktualisierungen vornehmen. Weitere Informationen finden Sie unter Deployment-Technologien in Azure Functions.

Cross-Origin Resource Sharing

Um die Ausführung von schädlichem Code auf dem Client zu verhindern, blockieren moderne Browser Anforderungen, die von Webanwendungen an Ressourcen in einer separaten Domäne gerichtet werden. Mit Cross-Origin Resource Sharing (CORS) kann ein Header vom Typ Access-Control-Allow-Origin die Ursprünge deklarieren, von denen Endpunkte in Ihrer Funktions-App aufgerufen werden dürfen.

Wenn Sie die Liste Zulässige Ursprünge für Ihre Funktions-App konfigurieren, wird der Header Access-Control-Allow-Origin automatisch allen Antworten von HTTP-Endpunkten in Ihrer Funktions-App hinzugefügt.

Screenshot: Konfigurieren der CORS-Liste Ihrer Funktions-App

Wenn ein weiterer Domäneneintrag vorhanden ist, wird das Platzhalterzeichen (*) ignoriert.

Authentifizierung

Wenn Funktionen einen HTTP-Trigger verwenden, können Sie festlegen, dass Aufrufe zunächst authentifiziert werden müssen. Der App-Dienst unterstützt Microsoft Entra Authentifizierung und Anmeldung mit sozialen Anbietern wie Facebook, Microsoft und X. Informationen zum Konfigurieren bestimmter Authentifizierungsanbieter finden Sie unter Azure App Service Authentifizierungsübersicht.

Screenshot: Konfigurieren der Authentifizierung für eine Funktions-App