Gegevens uit Azure Data Explorer in Kibana visualiseren met de opensource-connector K2Bridge

Met K2Bridge (Kibana-Kusto Bridge) kunt u Azure Data Explorer als gegevensbron gebruiken en deze gegevens visualiseren in Kibana. K2Bridge is een opensource-toepassing in een container. Het fungeert als een proxy tussen een Kibana-exemplaar en een Azure Data Explorer-cluster. In dit artikel wordt beschreven hoe u K2Bridge gebruikt om die verbinding te maken.

K2Bridge vertaalt Kibana-query's naar Kusto-querytaal (KQL) en stuurt de Azure Data Explorer-resultaten terug naar Kibana.

Kibana-verbinding met Azure Data Explorer via K2Bridge.

K2Bridge ondersteunt de tabbladen Ontdekken, Visualiseren en Dashboard van Kibana.

Met het tabblad Ontdekken kunt u het volgende doen:

  • Zoek en verken de gegevens.
  • Resultaten filteren.
  • Velden toevoegen aan of verwijderen uit het resultatenraster.
  • Recordinhoud weergeven.
  • Zoekacties opslaan en delen.

Met het tabblad Visualiseren kunt u het volgende doen:

  • Maak visualisaties zoals staafdiagrammen, cirkeldiagrammen, gegevenstabellen, heatmaps en meer.
  • Een visualisatie opslaan

Met het tabblad Dashboard kunt u het volgende doen:

  • Maak deelvensters met behulp van nieuwe of opgeslagen visualisaties.
  • Een dashboard opslaan.

In de volgende afbeelding ziet u een Kibana-exemplaar dat is gebonden aan Azure Data Explorer door K2Bridge. De gebruikerservaring in Kibana is ongewijzigd.

Kibana-pagina die is gekoppeld aan Azure Data Explorer.

Vereisten

Voordat u gegevens uit Azure Data Explorer in Kibana kunt visualiseren, moet u het volgende bij de hand hebben:

Als u ervoor kiest om een Microsoft Entra service-principal te gebruiken, moet u een Microsoft Entra service-principal maken. Voor de installatie hebt u de ClientID en een Geheim nodig. We raden een service-principal aan met viewermachtigingen en raden u af om machtigingen op een hoger niveau te gebruiken. Zie Databasemachtigingen beheren in de Azure Portal of beheeropdrachten gebruiken om databasebeveiligingsrollen te beheren als u machtigingen wilt toewijzen.

Als u ervoor kiest om een door het systeem toegewezen identiteit te gebruiken, moet u de ClientID van de beheerde identiteit van de agentgroep ophalen (zich in de gegenereerde resourcegroep [MC_xxxx])

K2Bridge uitvoeren op Azure Kubernetes Service (AKS)

Standaard verwijst de Helm-grafiek van K2Bridge naar een openbaar beschikbare installatiekopieën in Microsoft Container Registry (MCR). VOOR MCR zijn geen referenties vereist.

  1. Download de vereiste Helm-grafieken.

  2. Voeg de afhankelijkheid Elasticsearch toe aan Helm. De afhankelijkheid is vereist omdat K2Bridge gebruikmaakt van een kleine interne Elasticsearch-instantie. Het exemplaar biedt metagegevensgerelateerde aanvragen, zoals query's met indexpatronen en opgeslagen query's. Met dit interne exemplaar worden geen bedrijfsgegevens opgeslagen. U kunt het exemplaar beschouwen als een implementatiedetail.

    1. Voer de volgende opdrachten uit om de Elasticsearch-afhankelijkheid toe te voegen aan Helm:

      helm repo add elastic https://helm.elastic.co
      helm repo update
      
    2. Ga als volgende te werk om de K2Bridge-grafiek op te halen uit de map grafieken van de GitHub-opslagplaats:

      1. Kloon de opslagplaats vanuit GitHub.

      2. Ga naar de hoofdmap van de K2Bridges-opslagplaats.

      3. Voer deze opdracht uit:

        helm dependency update charts/k2bridge
        
  3. K2Bridge implementeren.

    1. Stel de variabelen in op de juiste waarden voor uw omgeving.

      ADX_URL=[YOUR_ADX_CLUSTER_URL] #For example, https://mycluster.westeurope.kusto.windows.net
      ADX_DATABASE=[YOUR_ADX_DATABASE_NAME]
      ADX_CLIENT_ID=[SERVICE_PRINCIPAL_CLIENT_ID]
      ADX_CLIENT_SECRET=[SERVICE_PRINCIPAL_CLIENT_SECRET]
      ADX_TENANT_ID=[SERVICE_PRINCIPAL_TENANT_ID]
      

      Notitie

      Wanneer u een beheerde identiteit gebruikt, is de ADX_CLIENT_ID waarde de client-id van de beheerde identiteit, die zich in de gegenereerde resourcegroep [MC_xxxx] bevindt. Zie MC_ resourcegroep voor meer informatie. De ADX_SECRET_ID is alleen vereist als u een Microsoft Entra-service-principal gebruikt.

    2. Schakel desgewenst Application Insights-telemetrie in. Als u Application Insights voor het eerst gebruikt, maakt u een Application Insights-resource. Kopieer de instrumentatiesleutel naar een variabele.

      APPLICATION_INSIGHTS_KEY=[INSTRUMENTATION_KEY]
      COLLECT_TELEMETRY=true
      
    3. Installeer de K2Bridge-grafiek. Visualisaties en dashboards worden alleen ondersteund met de Kibana 7.10-versie. De meest recente installatiekopieëntags zijn: 6.8_latest en 7.16_latest, die respectievelijk Kibana 6.8 en Kibana 7.10 ondersteunen. De installatiekopieën van '7.16_latest' ondersteunen Kibana OSS 7.10.2 en het interne Elasticsearch-exemplaar is 7.16.2.

      Als er een Microsoft Entra service-principal is gebruikt:

      helm install k2bridge charts/k2bridge -n k2bridge --set settings.adxClusterUrl="$ADX_URL" --set settings.adxDefaultDatabaseName="$ADX_DATABASE" --set settings.aadClientId="$ADX_CLIENT_ID" --set settings.aadClientSecret="$ADX_CLIENT_SECRET" --set settings.aadTenantId="$ADX_TENANT_ID" [--set image.tag=6.8_latest/7.16_latest] 
      [--set image.repository=$REPOSITORY_NAME/$CONTAINER_NAME] 
      [--set privateRegistry="$IMAGE_PULL_SECRET_NAME"] [--set settings.collectTelemetry=$COLLECT_TELEMETRY]
      

      Of, als er een beheerde identiteit is gebruikt:

      helm install k2bridge charts/k2bridge -n k2bridge --set settings.adxClusterUrl="$ADX_URL" --set settings.adxDefaultDatabaseName="$ADX_DATABASE" --set       settings.aadClientId="$ADX_CLIENT_ID" --set settings.useManagedIdentity=true --set settings.aadTenantId="$ADX_TENANT_ID" [--set image.tag=7.16_latest] [--set  settings.collectTelemetry=$COLLECT_TELEMETRY]
      

      In Configuratie vindt u de volledige set configuratieopties.

    4. De uitvoer van de vorige opdracht suggereert de volgende Helm-opdracht om Kibana te implementeren. Voer desgewenst deze opdracht uit:

      helm install kibana elastic/kibana -n k2bridge --set image=docker.elastic.co/kibana/kibana-oss --set imageTag=7.10.2 --set elasticsearchHosts=http://k2bridge:8080
      
    5. Gebruik port forwarding om toegang te krijgen tot Kibana op localhost.

      kubectl port-forward service/kibana-kibana 5601 --namespace k2bridge
      
    6. Maak verbinding met Kibana door naar te http://127.0.0.1:5601gaan.

    7. Kibana beschikbaar maken voor gebruikers. Er zijn meerdere methoden om dit te doen. De methode die u gebruikt, is grotendeels afhankelijk van uw gebruiksscenario.

      U kunt de service bijvoorbeeld beschikbaar maken als een Load Balancer service. Hiervoor voegt u de parameter --set service.type=LoadBalancer toe aan de eerdere Kibana Helm-installatieopdracht.

      Voer vervolgens deze opdracht uit:

      kubectl get service -w -n k2bridge
      

      De uitvoer moet er ongeveer als volgt uitzien:

      NAME            TYPE           CLUSTER-IP     EXTERNAL-IP   PORT(S)          AGE
      kibana-kibana   LoadBalancer   xx.xx.xx.xx    <pending>     5601:30128/TCP   4m24s
      

      U kunt vervolgens de gegenereerde EXTERNAL-IP-waarde gebruiken die wordt weergegeven. Gebruik het om toegang te krijgen tot Kibana door een browser te openen en naar EXTERNAL-IP>:5601 te <gaan.

  4. Indexpatronen configureren voor toegang tot uw gegevens.

    In een nieuw Kibana-exemplaar:

    1. Open Kibana.
    2. Blader naar Beheer.
    3. Selecteer Indexpatronen.
    4. Een indexpatroon maken. De naam van de index moet exact overeenkomen met de tabelnaam of functienaam zonder een sterretje (*). U kunt de relevante regel uit de lijst kopiëren.

Notitie

Als u K2Bridge wilt uitvoeren op andere Kubernetes-providers, wijzigt u de waarde elasticsearch storageClassName in values.yaml zodat deze overeenkomt met de waarde die door de provider wordt voorgesteld.

Gegevens verkennen

Wanneer Azure Data Explorer is geconfigureerd als een gegevensbron voor Kibana, kunt u Kibana gebruiken om de gegevens te verkennen.

Schermopname van het tabblad Ontdekken in Kibana.

  1. Selecteer in Kibana het tabblad Ontdekken .

  2. Selecteer in de lijst met indexpatronen een indexpatroon dat de gegevensbron definieert die u wilt verkennen. Hier is het indexpatroon een Azure Data Explorer tabel.

    Schermopname van de lijst met gegevensbronpatronen.

  3. Als uw gegevens een tijdfilterveld hebben, kunt u het tijdsbereik opgeven. Selecteer rechtsboven op de pagina Ontdekken een tijdfilter. Op de pagina worden standaard gegevens weergegeven voor de afgelopen 15 minuten.

    Schermopname van het selecteren van een tijdfilter.

  4. De resultatentabel toont de eerste 500 records. U kunt een document uitvouwen om de veldgegevens in JSON- of tabelindeling te bekijken.

    Schermopname van een uitgevouwen record op het tabblad Ontdekken.

  5. U kunt specifieke kolommen toevoegen aan de resultatentabel door Toevoegen naast de veldnaam te selecteren. De resultatentabel bevat standaard de kolom _source en een kolom Tijd als het tijdveld bestaat.

    Schermopname van het toevoegen van kolommen.

  6. In de querybalk kunt u zoeken naar gegevens door:

    • Een zoekterm invoeren.
    • De Lucene-querysyntaxis gebruiken. Bijvoorbeeld:
      • Zoek naar 'fout' om alle records te vinden die deze waarde bevatten.
      • Zoek naar 'status: 200' om alle records met de statuswaarde 200 op te halen.
    • De logische operatoren EN, OF en NIET gebruiken.
    • Het jokertekens sterretje (*) en vraagteken (?) gebruiken. De query 'destination_city: L*' komt bijvoorbeeld overeen met records waar de waarde van bestemmingsstad begint met 'L' of 'l'. (K2Bridge is niet hoofdlettergevoelig.)

    Schermopname van actieve query's.

Notitie

Alleen de Lucene-querysyntaxis van Kibana wordt ondersteund. Gebruik niet de KQL-optie, die staat voor Kibana-querytaal.

Tip

In Zoeken vindt u meer zoekregels en logica.

  1. Als u de zoekresultaten wilt filteren, gebruikt u de lijst Beschikbare velden . In de lijst met velden kunt u het volgende zien:

    • De vijf belangrijkste waarden voor het veld.
    • Het aantal records dat het veld bevat.
    • Het percentage records dat elke waarde bevat.

    Tip

    Gebruik het vergrootglas om alle records te vinden die een specifieke waarde hebben.

    Schermopname van een lijst met velden met het vergrootglas gemarkeerd.

    U kunt ook het vergrootglas gebruiken om resultaten te filteren en de tabelweergave van de resultaten van elke record in de resultatentabel te bekijken.

    Schermopname van een tabellijst met het vergrootglas gemarkeerd.

  2. Selecteer Opslaan of Delen om uw zoekopdracht te behouden.

    Schermopname van het opslaan van een zoekopdracht in Kibana.

Gegevens visualiseren

Gebruik Kibana-visualisaties om in één oogopslag een overzicht te krijgen van Azure Data Explorer-gegevens.

Een visualisatie maken op het tabblad Ontdekken

  1. Als u een verticale balkvisualisatie wilt maken, zoekt u op het tabblad Ontdekken de zijbalk Beschikbare velden .

    Schermopname van het selecteren van een veld in de beschikbare velden op het tabblad Ontdekken.

  2. Selecteer een veldnaam en klik vervolgens op Visualiseren.

    Schermopname van het maken van een visualisatie en het selecteren van het veld.

  3. Het tabblad Visualiseren wordt geopend en de visualisatie wordt weergegeven. Als u de gegevens en metrische gegevens van de visualisatie wilt bewerken, raadpleegt u ook Een visualisatie maken op het tabblad Visualiseren.

    Schermopname van het bewerken van de visualisatie op het tabblad Visualiseren.

Een visualisatie maken op het tabblad Visualiseren

  1. Selecteer het tabblad Visualiseren en klik op Visualisatie maken.

    Schermopname van het selecteren van het tabblad Visualiseren.

  2. Selecteer een visualisatietype in het venster Nieuwe visualisatie .

    Schermopname van het selecteren van een visualisatietype.

  3. Nadat de visualisatie is gegenereerd, kunt u de metrische gegevens bewerken en maximaal één bucket toevoegen.

    Schermopname van het bewerken van de metrische gegevens.

Notitie

K2Bridge ondersteunt aggregatie van één bucket. Sommige aggregaties ondersteunen zoekopties. Gebruik de Lucene-syntaxis, niet de optie KQL, die staat voor de syntaxis van de Kibana-querytaal.

Belangrijk

  • De volgende visualisaties worden ondersteund: Vertical bar, Area chart, Line chart, Horizontal bar, Pie chart, Gauge, Data table, , Goal chartHeat map, en Metric chart.
  • De volgende metrische gegevens worden ondersteund: Average, Count, Max, Median, Min, Percentiles, Standard deviation, Sumen Unique countTop hits .
  • De metrische gegevens Percentiles ranks worden niet ondersteund.
  • Het gebruik van bucketaggregaties is optioneel. U kunt gegevens visualiseren zonder bucketaggregatie.
  • De volgende buckets worden ondersteund: No bucket aggregation, Date histogram, Filters, Range, Date range, Histogram, en Terms.
  • De buckets IPv4 range en Significant terms worden niet ondersteund.

Dashboards maken

U kunt dashboards maken met Kibana-visualisaties om weergaven van Azure Data Explorer-gegevens in één oogopslag samen te vatten, te vergelijken en te contrasteren.

  1. Als u een dashboard wilt maken, selecteert u het tabblad Dashboard en klikt u vervolgens op Nieuw dashboard maken.

    Schermopname van het selecteren van het tabblad Dashboard.

    Het nieuwe dashboard wordt geopend in de bewerkingsmodus.

  2. Als u een nieuw visualisatievenster wilt toevoegen, klikt u op Nieuwe maken.

    Schermopname van het toevoegen van een bestaande visualisatie aan een dashboard.

  3. Als u een visualisatie wilt toevoegen die u al hebt gemaakt, klikt u op Een bestaande toevoegen en selecteert u een visualisatie.

  4. Als u deelvensters wilt rangschikken, deelvensters wilt ordenen op prioriteit, de grootte van de deelvensters wilt wijzigen en meer, klikt u op Bewerken en gebruikt u de volgende opties:

    • Als u een deelvenster wilt verplaatsen, houdt u de koptekst van het deelvenster ingedrukt en sleept u naar de nieuwe locatie.
    • Als u het formaat van een deelvenster wilt wijzigen, klikt u op het besturingselement formaat wijzigen en sleept u naar de nieuwe afmetingen.

    Schermopname van dashboards met visualisaties van Azure Data Explorer-gegevens.