Übung: Bereitstellen einer Funktion in Azure
Da Sie jetzt gelernt haben, wie Sie Funktionen erstellen und in Azure bereitstellen, sollten Sie Ihr theoretisches Wissen nun in der Praxis anwenden.
In dieser Übung lernen Sie, wie Sie Ihre Funktion für die Bereitstellung in Azure Functions konfigurieren. Anschließend verwenden Sie Maven, um die Funktion bereitzustellen, und testen die Funktion dann in der Cloud.
Konfigurieren des Funktionsprojekts für die Bereitstellung
Es gibt einige Änderungen, die an Ihrer Funktionsanwendung vorgenommen werden müssen, bevor sie in Azure bereitgestellt werden kann. Die folgenden Schritte führen Sie durch die Aktualisierung Ihres Projekts für die Bereitstellung.
Bestimmen Sie die Region für die Sandboxressourcengruppe:
Verwenden Sie den Namen der Ressourcengruppe, die automatisch für Sie erstellt wurde, als Sie die Sandbox aktiviert haben, um die Region abzurufen, in der sich die Ressourcengruppe befindet:
az group show --name "<rgn>[sandbox resource group name]</rgn>" | jq -r '.location'
Kopieren Sie den Namen der angezeigten Region zur Verwendung in den folgenden Schritten.
Bearbeiten Sie die Datei pom.xml, um die Einstellungen zu aktualisieren:
Wechseln Sie in Azure Cloud Shell zum Stammordner der Anwendung. Beispiel:
cd ~/event-reporting
Öffnen Sie pom.xml mithilfe des Code-Editors von Cloud Shell.
code pom.xml
Suchen Sie die folgende Artefakt-ID:
<artifactId>azure-functions-maven-plugin</artifactId>
Suchen Sie im folgenden
<configuration>
-Abschnitt das<resourceGroup>
-Element, und passen Sie es mit dem Namen Ihrer Ressourcengruppe an. Beispiel:<resourceGroup><rgn>[sandbox resource group name]</rgn></resourceGroup>
Suchen Sie das
<region>
-Element, und passen Sie es mit dem Namen der Region an, in der sich die Ressourcengruppe befindet. Beispiel:<region>westus</region>
Drücken Sie erst STRG+S, um die Datei pom.xml zu speichern, und anschließend STRG+Q, um den Code-Editor zu schließen.
Bereitstellen der Azure-Funktion
Nachdem Sie die Funktion für die Bereitstellung konfiguriert haben, müssen Sie sie im nächsten Schritt in Azure Functions bereitstellen.
Wechseln Sie in Azure Cloud Shell zum Stammordner der Anwendung. Beispiel:
cd ~/event-reporting
Verwenden Sie den folgenden Befehl, um die Funktion in Azure Functions zu erstellen und bereitzustellen:
mvn clean package azure-functions:deploy
Maven zeigt den Status „Wird ausgeführt“ für die Bereitstellung an. Beispiel:
[INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building Azure Java Functions 1.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- azure-functions-maven-plugin:1.4.1:deploy (default-cli) @ event-reporting --- [INFO] Auth Type : AZURE_CLI [INFO] Subscription : Concierge Subscription(12345678-1234-1234-1234-123456789abc) [INFO] The specified function app does not exist. Creating a new function app... [INFO] Set function worker runtime to java. [INFO] Successfully created the function app: event-reporting-20240125192009873. [INFO] Trying to deploy the function app... [INFO] Trying to deploy artifact to event-reporting-20240125192009873... [INFO] Successfully deployed the artifact to https://event-reporting-20240125192009873.azurewebsites.net [INFO] Deployment done, you may access your resource through event-reporting-20240125192009873.azurewebsites.net [INFO] Syncing triggers and fetching function information [INFO] Querying triggers... [INFO] HTTP Trigger Urls: [INFO] HttpExample : https://event-reporting-20240125192009873.azurewebsites.net/api/httpexample [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 01:01 min [INFO] Finished at: 2024-01-25T20:12:04Z [INFO] ------------------------------------------------------------------------
Abrufen der Azure-Funktions-URL über das Portal
In der Übung einer vorherigen Lerneinheit mussten Sie die URL erstellen, mit der die Funktion in einem Webbrowser getestet wird. Es gibt jedoch eine einfachere Methode, um die URL für Ihre Azure-Funktion abzurufen: über das Azure-Portal. Führen Sie dazu die folgenden Schritte aus:
Melden Sie sich beim Azure-Portal mit demselben Konto an, das Sie zum Aktivieren der Sandbox verwendet haben.
Klicken Sie im Menü auf der linken Seite auf Alle Ressourcen.
Wählen Sie Ihre Funktions-App in der Liste der Ressourcen aus. Für diese Übung beginnt der Name Ihrer Funktions-App mit event-reporting. Beispiel:
event-reporting-20240125192009873
Dies ist derselbe
function app
-Name, der in einem früheren Schritt dieser Übung in der Bereitstellungsantwort angegeben wurde.Wählen Sie auf der Seite Übersicht für Ihre Funktions-App auf der Registerkarte Funktionen Ihre HttpExample-Funktion aus. Hier wird die Seite Übersicht für Ihre Funktion gezeigt.
Wählen Sie oben auf der Funktionsseite Funktions-URL abrufen aus. Kopieren Sie die vollständig konstruierte URL Ihrer Funktion. Beispiel:
https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample
Sie verwenden diese URL im nächsten Abschnitt dieser Übung.
Testen Ihrer Azure-Funktion im Portal
Nachdem Sie Ihre Funktion in Azure bereitgestellt haben, müssen Sie zum Testen Ihrer Funktion in einem Webbrowser lediglich wie in vorherigen Übungen eine Abfragezeichenfolge an das Ende der URL anfügen.
Konstruieren Sie die URL für die API der Funktion:
Rufen Sie die URL ab, die Sie im Abschnitt Abrufen der Azure-Funktions-URL über das Portal dieser Übung kopiert haben. Beispiel:
https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample
Fügen Sie eine Abfragezeichenfolge an, die der API-URL einen Namen übergibt. Beispiel:
https://event-reporting-20240125192009873.azurewebsites.net/api/HttpExample?name=Bob
Kopieren Sie diese vollständig konstruierte URL für die Verwendung in den folgenden Schritten.
Öffnen Sie eine neue Registerkarte im Webbrowser, und fügen Sie die vollständig konstruierte URL aus den vorherigen Schritten in das Adressfeld ein.
Wenn Sie den Webbrowser anweisen, die URL anzufordern, wird eine Klartextnachricht an den Webbrowser zurückgegeben, die auf den Namen personalisiert wird, den Sie in der Abfragezeichenfolge angegeben haben. Beispiel:
Hello, Bob
Herzlichen Glückwunsch, Sie haben Ihre Funktion nun erfolgreich in Azure bereitgestellt und getestet!