Udostępnij za pośrednictwem


Samouczek: wdrażanie aplikacji Spring Boot połączonej z platformą Apache Kafka w chmurze Confluent Cloud za pomocą łącznika usługi Service Connector w usłudze Azure Spring Apps

Dowiedz się, jak uzyskać dostęp do platformy Apache Kafka w usłudze Confluent Cloud dla aplikacji Spring Boot działającej w usłudze Azure Spring Apps. W tym samouczku wykonasz następujące zadania:

  • Tworzenie platformy Apache Kafka w chmurze Confluent
  • Tworzenie aplikacji Spring Cloud
  • Kompilowanie i wdrażanie aplikacji Spring Boot
  • Łączenie platformy Apache Kafka w chmurze Confluent z usługą Azure Spring Apps przy użyciu łącznika usługi Service

Ostrzeżenie

Firma Microsoft zaleca korzystanie z najbezpieczniejszego dostępnego przepływu uwierzytelniania. Przepływ uwierzytelniania opisany w tej procedurze wymaga bardzo wysokiego poziomu zaufania w aplikacji i niesie ze sobą ryzyko, które nie występują w innych przepływach. Tego przepływu należy używać tylko wtedy, gdy inne bezpieczniejsze przepływy, takie jak tożsamości zarządzane, nie są opłacalne.

Wymagania wstępne

  • Konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.

  • Środowisko Java 8 lub nowsza wersja z obsługą długoterminową (LTS) 1.

Klonowanie lub pobieranie przykładowej aplikacji

  1. Sklonuj przykładowe repozytorium:

    git clone https://github.com/Azure-Samples/serviceconnector-springcloud-confluent-springboot/
    
  2. Przejdź do następującego folderu:

    cd serviceconnector-springcloud-confluent-springboot
    

Przygotowywanie usług w chmurze

Tworzenie wystąpienia platformy Apache Kafka dla platformy Confluent Cloud

Utwórz wystąpienie platformy Apache Kafka for Confluent Cloud, postępując zgodnie z poniższymi wskazówkami.

Tworzenie klastra i rejestru schematów platformy Kafka w chmurze Confluent

  1. Zaloguj się do platformy Confluent Cloud przy użyciu logowania jednokrotnego udostępnianego przez platformę Azure

    Link logowania jednokrotnego aplikacji Confluent w chmurze przy użyciu witryny Azure Portal

  2. Użyj środowiska domyślnego lub utwórz nowe

    Środowisko chmury platformy Apache Kafka w chmurze Confluent

  3. Utwórz klaster platformy Kafka z następującymi informacjami:

    • Typ klastra: Standardowa
    • Region/strefy: eastus(Virginia), Single Zone
    • Nazwa klastra: cluster_1 lub dowolna inna nazwa.
  4. W obszarze Przegląd klastra —> ustawienia klastra zanotuj adres URL serwera Bootstrap platformy Kafka.

    Ustawienia klastra platformy Apache Kafka w chmurze Confluent

  5. Utwórz klucze interfejsu API dla klastra w obszarze Integracja danych -> Klucze interfejsu API ->+ Dodaj klucz z dostępem globalnym. Zanotuj klucz i wpis tajny.

  6. Tworzenie tematu o nazwie z test partycjami 6 w tematach ->+ Dodaj temat

  7. W obszarze środowisko domyślne wybierz kartę Rejestr schematów. Włącz rejestr schematów i zanotuj punkt końcowy interfejsu API.

  8. Utwórz klucze interfejsu API dla rejestru schematów. Zapisz klucz i wpis tajny.

Tworzenie wystąpienia usługi Azure Spring Apps

Utwórz wystąpienie usługi Azure Spring Apps, postępując zgodnie z przewodnikiem Szybki start usługi Azure Spring Apps w języku Java. Upewnij się, że wystąpienie usługi Azure Spring Apps zostało utworzone w regionie z obsługą łącznika usługi.

Kompilowanie i wdrażanie aplikacji

Tworzenie przykładowej aplikacji i tworzenie nowej aplikacji spring

  1. Zaloguj się do platformy Azure i wybierz swoją subskrypcję.

    az login
    
    az account set --subscription <Name or ID of your subscription>
    
  2. Skompiluj projekt przy użyciu narzędzia gradle.

    ./gradlew build
    
  3. Utwórz aplikację z przypisanym publicznym punktem końcowym. Jeśli podczas generowania projektu Spring Cloud wybrano język Java w wersji 11, dołącz --runtime-version=Java_11 przełącznik.

    az spring app create -n hellospring -s <service-instance-name> -g <your-resource-group-name> --assign-endpoint true
    

Tworzenie połączenia z usługą przy użyciu łącznika usługi

Uruchom następujące polecenie, aby połączyć platformę Apache Kafka w usłudze Confluent Cloud z aplikacją spring cloud.

az spring connection create confluent-cloud -g <your-spring-cloud-resource-group> --service <your-spring-cloud-service> --app <your-spring-cloud-app> --deployment <your-spring-cloud-deployment> --bootstrap-server <kafka-bootstrap-server-url> --kafka-key <cluster-api-key> --kafka-secret <cluster-api-secret> --schema-registry <kafka-schema-registry-endpoint> --schema-key <registry-api-key> --schema-secret <registry-api-secret>

Zastąp następujące teksty zastępcze własnymi danymi:

  • Zastąp <your-resource-group-name> ciąg nazwą grupy zasobów utworzoną dla wystąpienia aplikacji Spring Apps.
  • Zastąp <kafka-bootstrap-server-url> ciąg adresem URL serwera bootstrap platformy Kafka. Na przykład: pkc-xxxx.eastus.azure.confluent.cloud:9092.
  • Zastąp <cluster-api-key> element i <cluster-api-secret> kluczem interfejsu API klastra i wpisem tajnym.
  • Zastąp <kafka-schema-registry-endpoint> element punktem końcowym rejestru schematów platformy Kafka. Na przykład: https://psrc-xxxx.westus2.azure.confluent.cloud.
  • Zastąp <registry-api-key> wartości i <registry-api-secret> kluczem interfejsu API rejestru schematów platformy kafka i wpisem tajnym.

Uwaga

Jeśli zostanie wyświetlony komunikat o błędzie "Subskrypcja nie jest zarejestrowana do korzystania z microsoft.ServiceLinker", uruchom polecenie az provider register -n Microsoft.ServiceLinker , aby zarejestrować dostawcę zasobów łącznika usługi i ponownie uruchomić polecenie połączenia.

Wdrażanie pliku JAR

Uruchom następujące polecenie, aby przekazać plik JAR (build/libs/java-springboot-0.0.1-SNAPSHOT.jar) do aplikacji Spring Cloud.

az spring app deploy -n hellospring -s <service-instance-name> -g <your-resource-group-name>  --artifact-path build/libs/java-springboot-0.0.1-SNAPSHOT.jar

Weryfikowanie pozyskiwania danych platformy Kafka

Przejdź do punktu końcowego aplikacji Spring Cloud z witryny Azure Portal i wybierz adres URL aplikacji. Zobaczysz komunikat "10 komunikatów zostało utworzonych do testowania tematu".

Następnie przejdź do portalu Confluent i na stronie tematu zostanie wyświetlona przepływność produkcyjna.

Przykładowe metryki

Następne kroki

Postępuj zgodnie z samouczkami wymienionymi poniżej, aby dowiedzieć się więcej o łączniku usługi.