Freigeben über


Bereitstellen einer Databricks-App

Nachdem Sie Ihre Azure Databricks-App erstellt und entwickelt haben, stellen Sie sie bereit, um sie im Azure Databricks-Arbeitsbereich zugänglich zu machen. Die Bereitstellung erstellt Ihre App, installiert Abhängigkeiten und führt sie mithilfe der in Ihren Projektdateien definierten Konfiguration aus. Sie können Apps mithilfe der Azure Databricks-Benutzeroberfläche oder der Databricks CLI bereitstellen.

Hinweis

Wenn Sie eine App aus einer Vorlage erstellen, stellt Azure Databricks sie automatisch bereit, wenn Sie sie zum ersten Mal erstellen. Sie können sie jedoch später noch erneut bereitstellen, nachdem Sie Änderungen vorgenommen haben. Siehe Erstellen einer Databricks-App aus einer Vorlage.

Bereitstellungslogik

Databricks-Apps unterstützen die Bereitstellung von Anwendungen, die Entweder Python, Node.jsoder eine Kombination aus beiden verwenden. Dies ermöglicht flexible Architekturen, z. B. ein Node.js-Frontend mit einem Python-Back-End.

Während der Bereitstellung überprüft der Buildprozess eine package.json Datei im Stammverzeichnis Ihres App-Verzeichnisses, um festzustellen, ob Node.js verwendet wird. Wenn vorhanden, enthält es nodespezifische Buildschritte zusammen mit Python-Schritten. Die Bereitstellungslogik folgt diesem Muster:

Wenn package.json vorhanden:

  1. Führen Sie npm install aus.
  2. pip install -r requirements.txt ausführen (falls vorhanden)
  3. Führen Sie npm run build aus (wenn ein build Skript in package.json definiert ist)
  4. Führen Sie den angegebenen Befehl in app.yaml aus, oder npm run start aus, wenn kein Befehl angegeben ist

Hinweis

Wenn kein Befehl in app.yaml angegeben ist, führt Azure Databricks npm run start aus, selbst wenn die App Python-Code enthält. Um sowohl Python- als auch Node.js-Prozesse auszuführen, definieren Sie ein benutzerdefiniertes start-Skript, das ein Tool wie concurrently verwendet, um beide zu starten. Beispiel: concurrently "npm run start:node" "python my_app.py".

Wenn package.json nicht vorhanden:

  1. pip install -r requirements.txt ausführen (falls vorhanden)
  2. Führen Sie den angegebenen Befehl in app.yaml aus, oder python <my-app>.py aus, wenn kein Befehl angegeben ist

Vorbereiten der Bereitstellung

Bevor Sie Ihre App bereitstellen, stellen Sie sicher, dass Ihr Projekt die erforderlichen Komponenten enthält:

Stellen Sie außerdem sicher, dass der App-Dienstprinzipal Zugriff auf den Quellcodeordner hat.

Auswählen einer Bereitstellungsquelle

Sie können Databricks-Apps aus den folgenden Quellen bereitstellen:

  • Arbeitsbereichsordner – Laden Sie App-Dateien in einen Arbeitsbereichsordner hoch, und stellen Sie von dort aus bereit. Dies ist die standardmäßige Bereitstellungsmethode.
  • Git-Repository – Konfigurieren Sie ein Git-Repository für eine App, und stellen Sie es direkt bereit, ohne Dateien in den Arbeitsbereich hochzuladen. Die App liest Code aus der konfigurierten Git-Referenz (Verzweigung, Tag oder Commit) jedes Mal aus, wenn Sie deployen. Alle wichtigen Git-Anbieter werden unterstützt, einschließlich GitHub, GitLab und Bitbucket. Eine vollständige Liste der unterstützten Anbieter finden Sie unter Verbinden Ihres Git-Anbieters mit Databricks.

Sie können jederzeit zwischen Arbeitsbereichs- und Git-Quellen für dieselbe App wechseln.

Bereitstellen der App

In den folgenden Abschnitten wird beschrieben, wie Sie aus einem Arbeitsbereichsordner oder direkt aus einem Git-Repository deployen.

Bereitstellen aus einem Workspace-Verzeichnis

Databricks UI

So stellen Sie eine App über die Azure Databricks-Benutzeroberfläche bereit:

  1. Laden Sie die App-Dateien in Ihren Azure Databricks-Arbeitsbereich hoch. Anweisungen finden Sie unter Importieren einer Datei.
  2. Klicken Sie auf ComputesymbolCompute in der Randleiste.
  3. Wechseln Sie zur Registerkarte "Apps ", und klicken Sie in der Spalte "Name " auf den Link zu Ihrer App.
  4. Klicken Sie auf "Bereitstellen" , und wählen Sie den Ordner in Ihrem Arbeitsbereich aus, in den Sie die App-Dateien hochgeladen haben.
  5. Klicken Sie auf "Auswählen" und dann auf "Bereitstellen".
  6. Überprüfen Sie die Konfiguration, und klicken Sie auf "Bereitstellen".

Databricks-Befehlszeilenschnittstelle

So stellen Sie eine App mit der CLI bereit:

  1. Öffnen Sie ein Terminal, und navigieren Sie zu dem Verzeichnis, das Ihre App-Dateien enthält.

  2. Laden Sie Ihre App-Dateien mithilfe des sync Befehls in den Azure Databricks-Arbeitsbereich hoch. Ersetzen Sie den Pfad durch den Arbeitsbereichsspeicherort, an dem Sie die Dateien hochladen möchten.

    databricks sync --watch . /Workspace/Users/my-email@org.com/my-app
    

    Das --watch Kennzeichen führt die Ausführung des Synchronisierungsprozesses durch und lädt änderungen automatisch hoch, wenn Sie Dateien lokal ändern. Um bestimmte Dateien oder Verzeichnisse von der Synchronisierung auszuschließen, fügen Sie sie einer .gitignore Datei in Ihrem lokalen App-Verzeichnis hinzu. Allgemein auszuschließende Dateien sind node_modules/, .env, __pycache__/, .DS_Store sowie alle großen Daten oder Build-Artefakte.

  3. Überprüfen Sie den Upload, indem Sie die Dateien in Ihrem Arbeitsbereich anzeigen. Klicken Sie auf ArbeitsbereichssymbolArbeitsbereich im Seitenbereich und navigieren Sie zu dem Verzeichnis, das Sie für Ihre App erstellt haben.

  4. Stellen Sie die App bereit, indem Sie den folgenden Befehl ausführen. Ersetzen Sie den App-Namen und den Quellcodepfad durch Ihre Werte.

    databricks apps deploy my-app-name \
       --source-code-path /Workspace/Users/my-email@org.com/my-app
    

    Die CLI zeigt den Bereitstellungsfortschritt an und bestätigt, wann die App ausgeführt wird.

Bereitstellen aus einem Git-Repository

Von Bedeutung

Dieses Feature befindet sich in der Betaversion. Wenn ein Administrator das Feature deaktiviert, werden vorhandene Apps, die von Git bereitgestellt werden, weiterhin ausgeführt, sie können jedoch erst erneut bereitgestellt oder neu gestartet werden, wenn Sie die Vorschau wieder aktivieren oder das Repository aus der App entfernen.

Um eine App aus einem Git-Repository bereitzustellen, fügen Sie das Repository auf App-Ebene hinzu, und geben Sie dann die Git-Referenz an, wenn Sie sie bereitstellen. Ihr Git-Repository muss die App-Dateien enthalten, einschließlich app.yaml, der Abhängigkeiten und des Einstiegspunkts. Alle wichtigen Git-Anbieter werden unterstützt, einschließlich GitHub, GitLab und Bitbucket.

So konfigurieren und bereitstellen Sie eine App über Git:

  1. Laden Sie Ihre App-Dateien in ein Git-Repository hoch.
  2. Klicken Sie in Ihrem Azure Databricks-Arbeitsbereich auf "Compute "Berechnen" in der Randleiste.
  3. Wechseln Sie zur Registerkarte "Apps ", und wählen Sie entweder eine vorhandene App aus, um sie zu bearbeiten oder auf "App erstellen" zu klicken.
  4. Geben Sie im Schritt " Git-Repository konfigurieren " die Git-Repository-URL (z. B. ) ein, https://github.com/org/repound wählen Sie einen Git-Anbieter aus.
  5. Klicken Sie auf "App erstellen" oder " Speichern ", um zur Seite mit den App-Details zurückzukehren.
  6. Für private Repositories muss der Dienstprinzipal der App mit einer Git-Anmeldeinformation konfiguriert sein. Klicken Sie auf der Seite "App-Details" auf "Git-Anmeldeinformationen konfigurieren". Alternativ können Sie die App bearbeiten und die Anmeldeinformationen im Schritt "Git-Repository konfigurieren" hinzufügen. Sie müssen CAN MANAGE Berechtigungen für die App besitzen, um Git-Anmeldeinformationen hinzuzufügen. Anweisungen für jeden Anbieter finden Sie unter Verbinden Ihres Git-Anbieters mit Databricks.

Von Bedeutung

Aus Sicherheitsgründen löscht Azure Databricks alle Git-Anmeldeinformationen, die dem Dienstprinzipal der App zugeordnet sind, wenn Sie die Bereitstellungsquelle (von Git in Arbeitsbereich oder Arbeitsbereich in Git) ändern oder wenn Sie das Git-Repository ändern. Das Ändern der Git-Referenz löscht keine Anmeldeinformationen. Nachdem Sie die Bereitstellungsquelle oder das Repository geändert haben, müssen Sie die Git-Anmeldeinformationen neu konfigurieren, um sie erneut von Git bereitzustellen.

Hinweis

App-Ersteller erhalten automatisch Berechtigungen für den Dienstprinzipal CAN MANAGE, nur wenn die Beta-Funktion der Git-Bereitstellung aktiviert ist. Wenn Sie eine App erstellt haben, während das Feature deaktiviert wurde, verfügen Sie möglicherweise nicht über die Berechtigung zum Hinzufügen von Git-Anmeldeinformationen.

Dienstprinzipale unterstützen eine Git-Anmeldeinformation pro Anbieter. Das Aktualisieren einer Anmeldeinformation, z. B. über die Kontokonsole, ersetzt die vorhandenen Anmeldeinformationen für diesen Anbieter und wirkt sich auf alle Apps aus, die diesen Dienstprinzipal mit diesem Anbieter verwenden.

Stellen Sie dann die App bereit:

  1. Klicken Sie auf der Seite „App-Details“ auf „Bereitstellen“.
  2. Wählen Sie aus Git aus.
  3. Geben Sie für Git-Referenz den Branch-Namen, das Tag oder das Commit-SHA ein (z. B. main, v1.0.0 oder einem Commit-Hash).
  4. Geben Sie für den Referenztyp den Typ der Referenz an, z. B. einen Branch, ein Tag oder einen Commit.
  5. Klicken Sie auf "Bereitstellen".

Für Verzweigungs- oder Tagverweise stellt Azure Databricks den letzten Commit aus dieser Verzweigung oder diesem Tag bereit. Bei Commit-SHA-Verweisen stellt Azure Databricks diesen spezifischen Commit immer bereit. Wenn die Git-Anmeldeinformationen des Dienstprinzipals ungültig oder abgelaufen sind, schlägt die Bereitstellung fehl.

Verhalten nach der Bereitstellung

Nach Abschluss der Bereitstellung startet Azure Databricks Ihre App basierend auf der in Ihrer app.yaml Datei definierten command oder sie wird standardmäßig python app.py ausgeführt. Die Seite "App-Details" zeigt den aktuellen Status an und bietet Zugriff auf Protokolle, Bereitstellungsverlauf und Umgebungsinformationen.

Ansicht der App-Details-Seite nach der Bereitstellung der App

Um die Ausgabe der bereitgestellten App zu sehen, klicken Sie auf den App-Link.

Wechseln Sie zur Registerkarte "Protokolle " zum Debuggen und zur Laufzeitüberwachung. Siehe Protokollierung und Überwachung für Databricks-Apps.

Aktualisieren oder erneutes Bereitstellen der App

Stellen Sie Ihre App erneut bereit, nachdem Sie Änderungen am Quellcode oder an der Konfiguration vorgenommen haben. Durch die erneute Bereitstellung werden Ihre neuesten Updates angewendet, ohne die App neu zu erstellen. Sie können jederzeit über den Arbeitsbereich oder das Git-Repository erneut bereitstellen.

Erneute Bereitstellung aus einem Arbeitsbereichsordner

So stellen Sie eine erneute Bereitstellung aus einem Arbeitsbereichsordner her:

  1. Aktualisieren Sie Ihre App-Dateien im Arbeitsbereichsordner.
  2. Wählen Sie die App aus, und klicken Sie auf "Bereitstellen".
  3. Wenn sich der Quellcodepfad geändert hat oder Sie von einer Git-Quelle wechseln, klicken Sie auf den Pfeil neben "Bereitstellen" , und wählen Sie "Bereitstellen mit einer anderen Quelle" aus.

Wiederbereitstellung aus einem Git-Repository

So stellen Sie aus einem Git-Repository erneut bereit:

  1. Pushen Sie Ihre Änderungen an das Git-Repository.
  2. Wählen Sie in Ihrem Azure Databricks-Arbeitsbereich Ihre App aus, und klicken Sie auf "Bereitstellen".
  3. Wenn sich der Git-Verweis geändert hat oder Sie von einer Arbeitsbereichsquelle wechseln, klicken Sie auf den Pfeil neben "Bereitstellen" , und wählen Sie "Bereitstellen mit einer anderen Quelle" aus.

Um das Git-Repository oder die Anmeldeinformationen zu ändern, bearbeiten Sie die App-Konfiguration. Durch das Entfernen des Git-Repositorys aus der App wird die Bereitstellung aus dem Arbeitsbereich erzwungen.

Von Bedeutung

Wenn Sie das Git-Repository ändern oder zwischen Bereitstellungsquellen (Git und Arbeitsbereich) wechseln, werden alle Git-Anmeldeinformationen für den Dienstprinzipal der App gelöscht. Sie müssen die Zugangsdaten neu konfigurieren, bevor Sie die Bereitstellung von Git erneut durchführen.

Behandeln von Bereitstellungsproblemen

Wenn Ihre App nicht wie erwartet bereitgestellt wird oder nicht wie erwartet ausgeführt wird, führen Sie die folgenden Schritte zur Problembehandlung aus:

  • Überprüfen Sie Protokolle auf Fehlermeldungen oder Laufzeitausgabe.
  • Überprüfen Sie die app.yaml-Syntax und die Einstellungen.
  • Überprüfen Sie, ob geheime Schlüssel und Umgebungsvariablen env im Abschnitt ordnungsgemäß aufgelöst werden.
  • Vergewissern Sie sich, dass alle erforderlichen Abhängigkeiten enthalten oder installiert sind.

Für Git-Repositorybereitstellungen:

  • Überprüfen Sie bei privaten Repositorys, ob der Dienstprinzipal der App über Git-Anmeldedaten konfiguriert ist.
  • Überprüfen Sie, ob die Git-Repository-URL korrekt ist.
  • Überprüfen Sie, ob die Git-Referenz (Branch, Tag oder Commit) im Repository vorhanden ist.

Nächste Schritte