Delen via


Een Databricks-app implementeren

Nadat u uw Azure Databricks-app hebt gemaakt en ontwikkeld, implementeert u deze om deze toegankelijk te maken in de Azure Databricks-werkruimte. Implementatie bouwt uw app, installeert afhankelijkheden en voert deze uit met behulp van de configuratie die is gedefinieerd in uw projectbestanden. U kunt apps implementeren met behulp van de Gebruikersinterface van Azure Databricks of de Databricks CLI.

Opmerking

Als u een app maakt op basis van een sjabloon, wordt deze automatisch door Azure Databricks geïmplementeerd wanneer u deze voor het eerst maakt. U kunt deze echter later nog steeds opnieuw implementeren nadat u wijzigingen hebt aangebracht. Zie Een Databricks-app maken op basis van een sjabloon.

Implementatielogica

Databricks Apps ondersteunt het implementeren van toepassingen die gebruikmaken van Python, Node.jsof een combinatie van beide. Dit maakt flexibele architecturen mogelijk, zoals een Node.js front-end met een Python-back-end.

Tijdens de implementatie controleert het buildproces op een package.json bestand in de hoofdmap van uw app-map om te bepalen of Node.js wordt gebruikt. Als het aanwezig is, bevat het knooppuntspecifieke bouwstappen naast Python-stappen. De implementatielogica volgt dit patroon:

Als package.json aanwezig is:

  1. Voer npm install uit
  2. Uitvoeren pip install -r requirements.txt (indien aanwezig)
  3. Voer npm run build uit (als een build script is gedefinieerd in package.json)
  4. Voer de opdracht uit die is opgegeven in app.yamlof npm run start als er geen opdracht is opgegeven

Opmerking

Als er geen opdracht is opgegeven in app.yaml, wordt Azure Databricks uitgevoerd npm run start, zelfs als de app Python-code bevat. Als u zowel Python- als Node.js-processen wilt uitvoeren, definieert u een aangepast start script dat gebruikmaakt van een hulpprogramma zoals concurrently beide starten. Voorbeeld: concurrently "npm run start:node" "python my_app.py".

Als package.json niet aanwezig is

  1. Uitvoeren pip install -r requirements.txt (indien aanwezig)
  2. Voer de opdracht uit die is opgegeven in app.yamlof python <my-app>.py als er geen opdracht is opgegeven

Implementatie voorbereiden

Controleer voordat u uw app implementeert of uw project de benodigde onderdelen bevat:

Zorg er bovendien voor dat de app-service-principal toegang heeft tot de broncodemap.

Een implementatiebron kiezen

U kunt Databricks-apps implementeren vanuit de volgende bronnen:

  • Werkruimtemap : upload app-bestanden naar een werkruimtemap en implementeer van daaruit. Dit is de standaardimplementatiemethode.
  • Git-opslagplaats : configureer een Git-opslagplaats voor een app en implementeer rechtstreeks zonder bestanden naar de werkruimte te uploaden. De app leest code uit de geconfigureerde Git-verwijzing (vertakking, tag of doorvoer) telkens wanneer u implementeert. Alle belangrijke Git-providers worden ondersteund, waaronder GitHub, GitLab en Bitbucket. Zie Uw Git-provider verbinden met Databricks voor een volledige lijst met ondersteunde providers.

U kunt op elk gewenst moment schakelen tussen werkruimte- en Git-bronnen voor dezelfde app.

De app implementeren

In de volgende secties wordt beschreven hoe u implementeert vanuit een werkruimtemap of rechtstreeks vanuit een Git-opslagplaats.

Implementeren vanuit een werkruimtemap

Databricks-gebruikersinterface

Een app implementeren vanuit de Gebruikersinterface van Azure Databricks:

  1. Upload de app-bestanden naar uw Azure Databricks-werkruimte. Zie Een bestand importeren voor instructies.
  2. Klik op rekenpictogramCompute in de zijbalk.
  3. Ga naar het tabblad Apps en klik op de koppeling naar uw app in de kolom Naam .
  4. Klik op Implementeren en selecteer de map in uw werkruimte waar u de app-bestanden hebt geüpload.
  5. Klik op Selecteren en vervolgens implementeren.
  6. Controleer de configuratie en klik op Implementeren.

Databricks-CLI

Een app implementeren met behulp van de CLI:

  1. Open een terminal en navigeer naar de map met uw app-bestanden.

  2. Upload uw app-bestanden naar de Azure Databricks-werkruimte met behulp van de sync opdracht. Vervang het pad door de locatie van de werkruimte waar u de bestanden wilt uploaden.

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

    Met de --watch vlag blijft het synchronisatieproces actief en worden wijzigingen automatisch geüpload wanneer u bestanden lokaal wijzigt. Als u specifieke bestanden of mappen wilt uitsluiten van synchronisatie, voegt u deze toe aan een .gitignore bestand in uw lokale app-map. Veelvoorkomende bestanden die moeten worden uitgesloten, zijn node_modules/, .env, __pycache__/, .DS_Store, en eventuele grote gegevensbestanden of buildartefacten.

  3. Controleer het uploaden door de bestanden in uw werkruimte weer te geven. Klik op WerkruimtepictogramWerkruimte in de zijbalk en navigeer naar de map die u voor uw app hebt gemaakt.

  4. Implementeer de app door de volgende opdracht uit te voeren. Vervang de app-naam en het broncodepad door uw waarden.

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

    De CLI geeft de voortgang van de implementatie weer en bevestigt wanneer de app wordt uitgevoerd.

Implementeren vanuit een Git-opslagplaats

Belangrijk

Deze functie bevindt zich in de bètaversie. Als een beheerder de functie uitschakelt, blijven bestaande apps die vanuit Git zijn geïmplementeerd, actief, maar kunt u deze pas opnieuw implementeren of opnieuw starten als u de preview opnieuw inschakelt of de opslagplaats uit de app verwijdert.

Als u een app vanuit een Git-opslagplaats wilt implementeren, voegt u de opslagplaats toe op app-niveau en geeft u vervolgens de Git-verwijzing op wanneer u deze implementeert. Uw Git-opslagplaats moet de app-bestanden bevatten, waaronder app.yaml, afhankelijkheden en toegangspunt. Alle belangrijke Git-providers worden ondersteund, waaronder GitHub, GitLab en Bitbucket.

Een app configureren en implementeren vanuit Git:

  1. Upload uw app-bestanden naar een Git-opslagplaats.
  2. Klik in uw Azure Databricks-werkruimte op RekenpictogramCompute in de zijbalk.
  3. Ga naar het tabblad Apps en selecteer een bestaande app die u wilt bewerken of klik op App maken.
  4. Voer in de stap Git-opslagplaats configureren de URL van de Git-opslagplaats in (bijvoorbeeld https://github.com/org/repo) en selecteer een Git-provider.
  5. Klik op App maken of Opslaan om terug te keren naar de pagina met app-details.
  6. Voor privéopslagplaatsen moet de service-principal van de app een Git-referentie hebben geconfigureerd. Klik op de pagina met app-details op Git-referenties configureren. U kunt de app ook bewerken en de referentie toevoegen in de stap Git-opslagplaats configureren . U moet machtigingen voor de app hebben CAN MANAGE om een Git-referentie toe te voegen. Zie Uw Git-provider verbinden met Databricks voor instructies voor elke provider.

Belangrijk

Voor beveiliging verwijdert Azure Databricks alle Git-referenties die zijn gekoppeld aan de service-principal van de app wanneer u de implementatiebron (van Git naar werkruimte of werkruimte in Git) wijzigt of wanneer u de Git-opslagplaats wijzigt. Als u alleen de Git-verwijzing wijzigt, worden referenties niet verwijderd. Nadat u de implementatiebron of opslagplaats hebt gewijzigd, moet u de Git-referentie opnieuw configureren om vanuit Git te implementeren.

Opmerking

App-makers ontvangen CAN MANAGE automatisch machtigingen voor de service-principal alleen wanneer de bètafunctie voor Git-implementatie is ingeschakeld. Als u een app hebt gemaakt terwijl de functie is uitgeschakeld, bent u mogelijk niet gemachtigd om een Git-referentie toe te voegen.

Service-principals ondersteunen één Git-referentie per provider. Het bijwerken van een referentie, zoals via de accountconsole, vervangt de bestaande referentie voor die provider en is van invloed op alle apps die die service-principal gebruiken met die provider.

Implementeer vervolgens de app:

  1. Klik op de pagina met app-details op Implementeren.
  2. Selecteer Van Git.
  3. Voer voor Git-naslaginformatie de naam van de vertakking, tag of doorvoer-SHA in (bijvoorbeeldmainv1.0.0, of een doorvoer-hash).
  4. Geef voor verwijzingstype het type verwijzing op, zoals een vertakking, tag of doorvoer.
  5. Klik op Implementeren.

Voor vertakkings- of tagverwijzingen implementeert Azure Databricks de meest recente doorvoer vanuit die vertakking of tag. Voor commit-SHA-referenties voert Azure Databricks altijd die specifieke commit uit. Als de Git-referentie van de service-principal ongeldig of verlopen is, mislukt de implementatie.

Gedrag na implementatie

Nadat de implementatie is voltooid, start Azure Databricks uw app op basis van de gedefinieerde command in uw app.yaml bestand of maakt gebruik van de standaard python app.py. Op de pagina met app-details ziet u de huidige status en verleent u toegang tot logboeken, implementatiegeschiedenis en omgevingsinformatie.

De pagina met app-details weergeven na de implementatie van de app

Als u de uitvoer van de geïmplementeerde app wilt weergeven, klikt u op de app-koppeling.

Ga naar het tabblad Logboeken voor foutopsporing en runtimebewaking. Zie Logboekregistratie en bewaking voor Databricks-apps.

De app bijwerken of opnieuw implementeren

Implementeer uw app opnieuw nadat u wijzigingen hebt aangebracht in de broncode of configuratie. Opnieuw implementeren past uw meest recente updates toe zonder de app opnieuw te maken. U kunt op elk gewenst moment opnieuw implementeren vanuit de werkruimte of Git-opslagplaats.

Opnieuw implementeren vanuit een werkruimtemap

Opnieuw implementeren vanuit een werkruimtemap:

  1. Werk uw app-bestanden bij in de werkruimtemap.
  2. Selecteer de app en klik op Implementeren.
  3. Als het broncodepad is gewijzigd of als u overschakelt van een Git-bron, klikt u op de pijl naast Implementeren en selecteert u Implementeren met een andere bron.

Opnieuw implementeren vanuit een Git-opslagplaats

Opnieuw implementeren vanuit een Git-opslagplaats:

  1. Push uw wijzigingen naar de Git-opslagplaats.
  2. Selecteer uw app in uw Azure Databricks-werkruimte en klik op Implementeren.
  3. Als de Git-verwijzing is gewijzigd of als u overschakelt van een werkruimtebron, klikt u op de pijl naast Implementeren en selecteert u Implementeren met een andere bron.

Als u de Git-opslagplaats of -referentie wilt wijzigen, bewerkt u de app-configuratie. Als u de Git-opslagplaats uit de app verwijdert, wordt implementatie vanuit de werkruimte afgedwongen.

Belangrijk

Als u de Git-opslagplaats wijzigt of schakelt tussen implementatiebronnen (Git en werkruimte), worden alle Git-referenties voor de service-principal van de app verwijderd. U moet referenties opnieuw configureren voordat u deze opnieuw implementeert vanuit Git.

Implementatieproblemen oplossen

Als uw app niet kan worden geïmplementeerd of niet wordt uitgevoerd zoals verwacht, voert u de volgende stappen voor probleemoplossing uit:

  • Controleer de logboeken op foutberichten of runtime-uitvoer.
  • De syntaxis en instellingen valideren app.yaml .
  • Controleer of geheimen en omgevingsvariabelen in de env sectie goed worden opgelost.
  • Controleer of alle vereiste afhankelijkheden zijn opgenomen of geïnstalleerd.

Voor implementaties van Git-opslagplaatsen:

  • Controleer voor privéopslagplaatsen of de service-principal van de app een Git-referentie heeft geconfigureerd.
  • Controleer of de URL van de Git-opslagplaats juist is.
  • Controleer of de Git-verwijzing (vertakking, tag of doorvoer) bestaat in de opslagplaats.

Volgende stappen