Delen via


Zelfstudie: Een Spring Boot-app implementeren die is verbonden met Apache Kafka in Confluent Cloud met Service Verbinding maken or in Azure Spring Apps

Meer informatie over het openen van Apache Kafka in Confluent Cloud voor een Spring Boot-toepassing die wordt uitgevoerd in Azure Spring Apps. In deze zelfstudie voert u de volgende taken uit:

  • Apache Kafka maken in Confluent Cloud
  • Een Spring Cloud-toepassing maken
  • De Spring Boot-app bouwen en implementeren
  • Verbinding maken Apache Kafka in Confluent Cloud naar Azure Spring Apps met behulp van Service Verbinding maken or

Vereisten

  • Een Azure-account met een actief abonnement. Gratis een account maken

  • Java 8 of een recentere versie met langetermijnondersteuning (LTS) 1.

De voorbeeld-app klonen of downloaden

  1. Kloon de voorbeeldopslagplaats:

    git clone https://github.com/Azure-Samples/serviceconnector-springcloud-confluent-springboot/
    
  2. Navigeer naar de volgende map:

    cd serviceconnector-springcloud-confluent-springboot
    

Cloudservices voorbereiden

Een exemplaar van Apache Kafka maken voor Confluent Cloud

Maak een exemplaar van Apache Kafka voor Confluent Cloud door deze richtlijnen te volgen.

Kafka-cluster en schemaregister maken in Confluent Cloud

  1. Meld u aan bij Confluent Cloud met behulp van de eenmalige aanmelding van Azure

    The link of Confluent cloud SSO login using Azure portal

  2. De standaardomgeving gebruiken of een nieuwe maken

    Cloud environment of Apache Kafka on Confluent Cloud

  3. Maak een Kafka-cluster met de volgende informatie:

    • Clustertype: Standaard
    • Regio/zones: eastus(Virginia), enkele zone
    • Clusternaam: cluster_1 of een andere naam.
  4. Noteer in clusteroverzicht -> Clusterinstellingen de URL van de Kafka Bootstrap-server .

    Cluster settings of Apache Kafka on Confluent Cloud

  5. Maak API-sleutels voor het cluster in Gegevensintegratie -> API-sleutels ->+ Sleutel toevoegen met globale toegang. Noteer de sleutel en het geheim.

  6. Een onderwerp maken met de naam test partities 6 in Onderwerpen -> + Onderwerp toevoegen

  7. Selecteer onder de standaardomgeving het tabblad Schemaregister . Schakel het schemaregister in en noteer het API-eindpunt.

  8. API-sleutels maken voor schemaregister. Sla de sleutel en het geheim op.

Een Azure Spring Apps-exemplaar maken

Maak een exemplaar van Azure Spring Apps door de quickstart van Azure Spring Apps in Java te volgen. Zorg ervoor dat uw Azure Spring Apps-exemplaar is gemaakt in een regio met service-Verbinding maken of ondersteuning.

De app compileren en implementeren

De voorbeeld-app bouwen en een nieuwe spring-app maken

  1. Meld u aan bij Azure en kies uw abonnement.

    az login
    
    az account set --subscription <Name or ID of your subscription>
    
  2. Bouw het project met gradle.

    ./gradlew build
    
  3. Maak de app waaraan een openbaar eindpunt is toegewezen. Als u Java-versie 11 hebt geselecteerd bij het genereren van het Spring Cloud-project, neemt u de --runtime-version=Java_11 switch op.

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

Een serviceverbinding maken met service-Verbinding maken or

Voer de volgende opdracht uit om uw Apache Kafka in Confluent Cloud te verbinden met uw Spring Cloud-app.

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>

Vervang de volgende tijdelijke aanduidingen door uw eigen gegevens:

  • Vervang door <your-resource-group-name> de naam van de resourcegroep die u hebt gemaakt voor uw Spring Apps-exemplaar.
  • Vervang door <kafka-bootstrap-server-url> de URL van uw Kafka bootstrap-server. Voorbeeld: pkc-xxxx.eastus.azure.confluent.cloud:9092.
  • Vervang <cluster-api-key> en <cluster-api-secret> door uw cluster-API-sleutel en -geheim.
  • Vervang door <kafka-schema-registry-endpoint> het Kafka Schema Registry-eindpunt. Voorbeeld: https://psrc-xxxx.westus2.azure.confluent.cloud.
  • Vervang <registry-api-key> en <registry-api-secret> door uw kafka Schema Registry API-sleutel en geheim.

Notitie

Als u het foutbericht 'Het abonnement is niet geregistreerd voor het gebruik van Microsoft.ServiceLinker' wordt weergegeven, voert az provider register -n Microsoft.ServiceLinker u de service-Verbinding maken orresourceprovider uit en voert u de verbindingsopdracht opnieuw uit.

Het JAR-bestand implementeren

Voer de volgende opdracht uit om het JAR-bestand (build/libs/java-springboot-0.0.1-SNAPSHOT.jar) te uploaden naar uw Spring Cloud-app.

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

De Gegevensopname van Kafka valideren

Navigeer vanuit Azure Portal naar het eindpunt van uw Spring Cloud-app en selecteer de toepassings-URL. U ziet '10 berichten zijn geproduceerd voor onderwerptest'.

Ga vervolgens naar de Confluent-portal en op de pagina van het onderwerp wordt de productiedoorvoer weergegeven.

Sample metrics

Volgende stappen

Volg de onderstaande zelfstudies voor meer informatie over Service Verbinding maken or.