Udostępnij za pośrednictwem


Jak używać usługi Azure Pipelines z usługą Apache Flink® w usłudze HDInsight w usłudze AKS

Uwaga

Wycofamy usługę Azure HDInsight w usłudze AKS 31 stycznia 2025 r. Przed 31 stycznia 2025 r. należy przeprowadzić migrację obciążeń do usługi Microsoft Fabric lub równoważnego produktu platformy Azure, aby uniknąć nagłego zakończenia obciążeń. Pozostałe klastry w ramach subskrypcji zostaną zatrzymane i usunięte z hosta.

Tylko podstawowa pomoc techniczna będzie dostępna do daty wycofania.

Ważne

Ta funkcja jest aktualnie dostępna jako funkcja podglądu. Dodatkowe warunki użytkowania dla wersji zapoznawczych platformy Microsoft Azure obejmują więcej warunków prawnych, które dotyczą funkcji platformy Azure, które znajdują się w wersji beta, w wersji zapoznawczej lub w inny sposób nie zostały jeszcze wydane w wersji ogólnodostępnej. Aby uzyskać informacje o tej konkretnej wersji zapoznawczej, zobacz Informacje o wersji zapoznawczej usługi Azure HDInsight w usłudze AKS. W przypadku pytań lub sugestii dotyczących funkcji prześlij żądanie w usłudze AskHDInsight , aby uzyskać szczegółowe informacje i postępuj zgodnie z nami, aby uzyskać więcej aktualizacji w społeczności usługi Azure HDInsight.

W tym artykule dowiesz się, jak używać usługi Azure Pipelines z usługą HDInsight w usłudze AKS do przesyłania zadań Flink za pomocą interfejsu API REST klastra. Przeprowadzimy Cię przez proces przy użyciu przykładowego potoku YAML i skryptu programu PowerShell, który usprawnia automatyzację interakcji interfejsu API REST.

Wymagania wstępne

  • Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, utwórz bezpłatne konto.

  • Konto usługi GitHub, na którym można utworzyć repozytorium. Utwórz je bezpłatnie.

  • Tworzenie .pipeline katalogu, kopiowanie flink-azure-pipelines.yml i flink-job-azure-pipeline.ps1

  • Organizacja usługi Azure DevOps. Utwórz go bezpłatnie. Jeśli twój zespół już go ma, upewnij się, że jesteś administratorem projektu usługi Azure DevOps, którego chcesz użyć.

  • Możliwość uruchamiania potoków na agentach hostowanych przez firmę Microsoft. Aby korzystać z agentów hostowanych przez firmę Microsoft, organizacja usługi Azure DevOps musi mieć dostęp do zadań równoległych hostowanych przez firmę Microsoft. Możesz kupić zadanie równoległe lub zażądać bezpłatnej dotacji.

  • Klaster Flink. Jeśli go nie masz, utwórz klaster Flink w usłudze HDInsight w usłudze AKS.

  • Utwórz jeden katalog na koncie magazynu klastra, aby skopiować plik jar zadania. Ten katalog należy później skonfigurować w potoku YAML dla lokalizacji pliku jar zadania (<JOB_JAR_STORAGE_PATH>).

Kroki konfigurowania potoku

Tworzenie jednostki usługi dla usługi Azure Pipelines

Utwórz jednostkę usługi Microsoft Entra w celu uzyskania dostępu do platformy Azure — udziel uprawnień dostępu do usługi HDInsight w klastrze usługi AKS z rolą Współautor, zanotuj identyfikator appId, hasło i dzierżawę z odpowiedzi.

az ad sp create-for-rbac -n <service_principal_name> --role Contributor --scopes <Flink Cluster Resource ID>`

Przykład:

az ad sp create-for-rbac -n azure-flink-pipeline --role Contributor --scopes /subscriptions/abdc-1234-abcd-1234-abcd-1234/resourceGroups/myResourceGroupName/providers/Microsoft.HDInsight/clusterpools/hiloclusterpool/clusters/flinkcluster`

Odwołanie

Uwaga

Nazwy projektów apache, Apache Flink, Flink i skojarzone z nimi są znakami towarowymi programu Apache Software Foundation (ASF).

Tworzenie magazynu kluczy

  1. Utwórz usługę Azure Key Vault. Możesz skorzystać z tego samouczka , aby utworzyć nową usługę Azure Key Vault.

  2. Tworzenie trzech wpisów tajnych

    • klaster-storage-key dla klucza magazynu.

    • service-principal-key dla identyfikatora klienta jednostki lub appId.

    • klucz tajny jednostki usługi dla klucza tajnego jednostki.

    Zrzut ekranu przedstawiający sposób tworzenia magazynu kluczy.

  3. Udziel uprawnień dostępu do usługi Azure Key Vault za pomocą roli "Key Vault Secrets Officer" dla jednostki usługi.

Potok instalacji

  1. Przejdź do projektu i kliknij pozycję Ustawienia projektu.

  2. Przewiń w dół i wybierz pozycję Połączenia z usługą, a następnie pozycję Nowe połączenie z usługą.

  3. Wybierz pozycję Azure Resource Manager.

    Zrzut ekranu przedstawiający sposób wybierania nowego połączenia z usługą.

  4. W metodzie uwierzytelniania wybierz pozycję Jednostka usługi (ręcznie).

    Zrzut ekranu przedstawiający nowe połączenie z usługą.

  5. Edytuj właściwości połączenia usługi. Wybierz niedawno utworzoną jednostkę usługi.

    Zrzut ekranu przedstawiający sposób edytowania połączenia z usługą.

  6. Kliknij przycisk Weryfikuj, aby sprawdzić, czy połączenie zostało poprawnie skonfigurowane. Jeśli wystąpi następujący błąd:

    Zrzut ekranu przedstawiający komunikat o błędzie połączenia z usługą.

  7. Następnie musisz przypisać rolę Czytelnik do subskrypcji.

  8. Następnie weryfikacja powinna zakończyć się pomyślnie.

  9. Zapisywanie połączenia z usługą.

    Zrzut ekranu przedstawiający sposób wyświetlania identyfikatora dzierżawy.

  10. Przejdź do potoków i kliknij pozycję Nowy potok.

    Zrzut ekranu przedstawiający sposób tworzenia nowego potoku.

  11. Wybierz pozycję GitHub jako lokalizację kodu.

  12. Wybierz repozytorium . Zobacz , jak utworzyć repozytorium w usłudze GitHub. obraz select-github-repo.

    Zrzut ekranu przedstawiający sposób wyszukiwania kodu.

  13. Wybierz repozytorium . Aby uzyskać więcej informacji, zobacz How to create a repository in GitHub (Jak utworzyć repozytorium w usłudze GitHub).

    Zrzut ekranu przedstawiający sposób wybierania repozytorium GitHub.

  14. W obszarze skonfiguruj opcję potoku możesz wybrać pozycję Istniejący plik YAML usługi Azure Pipelines. Wybierz skopiowany wcześniej skrypt gałęzi i potoku. (.pipeline/flink-azure-pipelines.yml)

    Zrzut ekranu przedstawiający sposób konfigurowania potoku.

  15. Zastąp wartość w sekcji zmiennej.

    Zrzut ekranu przedstawiający sposób zastępowania wartości.

  16. Popraw sekcję kompilacji kodu na podstawie wymagań i skonfiguruj <JOB_JAR_LOCAL_PATH> w sekcji zmiennej dla ścieżki lokalnej pliku jar zadania.

    Zrzut ekranu przedstawiający sekcję kompilacji kodu.

  17. Dodaj zmienną potoku "action" i skonfiguruj wartość "RUN".

    Zrzut ekranu przedstawiający sposób dodawania zmiennej potoku.

    Wartości zmiennej można zmienić przed uruchomieniem potoku.

    • NOWY: Ta wartość jest domyślna. Uruchamia nowe zadanie, a jeśli zadanie jest już uruchomione, aktualizuje uruchomione zadanie przy użyciu najnowszego pliku jar.

    • SAVEPOINT: Ta wartość przyjmuje punkt zapisywania dla uruchomionego zadania.

    • DELETE: Anuluj lub usuń uruchomione zadanie.

  18. Zapisz i uruchom potok. Uruchomione zadanie można wyświetlić w portalu w sekcji Zadanie Flink.

    Zrzut ekranu przedstawiający sposób zapisywania i uruchamiania potoku.

Uwaga

Jest to jeden z przykładów do przesłania zadania przy użyciu potoku. Możesz postępować zgodnie z dokumentem interfejsu API REST Flink, aby napisać własny kod do przesłania zadania.