Wizualizowanie danych z usługi Azure Data Explorer w usłudze Kibana przy użyciu łącznika typu open source K2Bridge
K2Bridge (Kibana-Kusto Bridge) umożliwia korzystanie z usługi Azure Data Explorer jako źródła danych i wizualizowania tych danych w usłudze Kibana. K2Bridge to aplikacja typu open source, konteneryzowana. Działa jako serwer proxy między wystąpieniem Kibana a klastrem usługi Azure Data Explorer. W tym artykule opisano sposób tworzenia tego połączenia za pomocą narzędzia K2Bridge.
K2Bridge tłumaczy zapytania Kibana na język zapytań Kusto (KQL) i wysyła wyniki usługi Azure Data Explorer z powrotem do kibany.
K2Bridge obsługuje karty Odnajdywanie, wizualizowanie i pulpit nawigacyjny Kibana .
Za pomocą karty Odnajdywanie możesz wykonywać następujące czynności:
- Wyszukiwanie i eksplorowanie danych.
- Filtruj wyniki.
- Dodaj lub usuń pola w siatce wyników.
- Wyświetl zawartość rekordu.
- Zapisywanie i udostępnianie wyszukiwań.
Za pomocą karty Wizualizowanie można wykonywać następujące czynności:
- Tworzenie wizualizacji, takich jak: wykresy słupkowe, wykresy kołowe, tabele danych, mapy cieplne i nie tylko.
- Zapisywanie wizualizacji
Za pomocą karty Pulpit nawigacyjny możesz wykonywać następujące czynności:
- Utwórz panele przy użyciu nowych lub zapisanych wizualizacji.
- Zapisz pulpit nawigacyjny.
Na poniższej ilustracji przedstawiono wystąpienie Kibana powiązane z usługą Azure Data Explorer przez K2Bridge. Środowisko użytkownika w usłudze Kibana jest niezmienione.
Wymagania wstępne
Przed wizualizowanie danych z usługi Azure Data Explorer w usłudze Kibana można przygotować następujące elementy:
- Subskrypcja platformy Azure. Utwórz bezpłatne konto platformy Azure.
- Klaster i baza danych platformy Azure Data Explorer. Potrzebny będzie adres URL klastra i nazwa bazy danych.
- Helm v3 , menedżer pakietów Kubernetes.
- klaster Azure Kubernetes Service (AKS) lub inny klaster Kubernetes. Użyj wersji 1.21.2 lub nowszej z co najmniej trzema węzłami Azure Kubernetes Service. Wersja 1.21.2 została przetestowana i zweryfikowana. Jeśli potrzebujesz klastra usługi AKS, zobacz, jak wdrożyć klaster usługi AKS przy użyciu interfejsu wiersza polecenia platformy Azure lub użyć Azure Portal.
- Jednostka usługi Microsoft Entra autoryzowana do wyświetlania danych na platformie Azure Data Explorer, w tym identyfikator klienta i klucz tajny klienta. Alternatywnie można użyć tożsamości zarządzanej przypisanej przez system.
Jeśli zdecydujesz się użyć jednostki usługi Microsoft Entra, musisz utworzyć jednostkę usługi Microsoft Entra. W przypadku instalacji potrzebny będzie identyfikator ClientID i wpis tajny. Zalecamy jednostkę usługi z uprawnieniem osoby przeglądającej i zniechęcić cię do korzystania z uprawnień wyższego poziomu. Aby przypisać uprawnienia, zobacz Zarządzanie uprawnieniami bazy danych w Azure Portal lub użyj poleceń zarządzania do zarządzania rolami zabezpieczeń bazy danych.
Jeśli zdecydujesz się używać tożsamości przypisanej przez system, musisz pobrać identyfikator clientID tożsamości zarządzanej puli agentów (znajdujący się w wygenerowanej grupie zasobów "[MC_xxxx]"
Uruchamianie aplikacji K2Bridge na Azure Kubernetes Service (AKS)
Domyślnie pakiet Helm K2Bridge odwołuje się do publicznie dostępnego obrazu znajdującego się w usłudze Microsoft Container Registry (MCR). McR nie wymaga żadnych poświadczeń.
Pobierz wymagane wykresy programu Helm.
Dodaj zależność Elasticsearch do programu Helm. Zależność jest wymagana, ponieważ K2Bridge używa małego wewnętrznego wystąpienia elasticsearch. Żądania związane z metadanymi usług wystąpień, takie jak zapytania indeksu i zapisane zapytania. To wystąpienie wewnętrzne nie zapisuje żadnych danych biznesowych. Możesz rozważyć wystąpienie jako szczegóły implementacji.
Aby dodać zależność elasticsearch do programu Helm, uruchom następujące polecenia:
helm repo add elastic https://helm.elastic.co helm repo update
Aby uzyskać wykres K2Bridge z katalogu charts repozytorium GitHub:
Sklonuj repozytorium z usługi GitHub.
Przejdź do katalogu głównego repozytorium K2Bridges.
Uruchom następujące polecenie:
helm dependency update charts/k2bridge
Wdróż K2Bridge.
Ustaw zmienne na prawidłowe wartości środowiska.
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]
Uwaga
W przypadku korzystania z tożsamości zarządzanej wartość ADX_CLIENT_ID jest identyfikatorem klienta tożsamości zarządzanej znajdującym się w wygenerowanej grupie zasobów "[MC_xxxx]". Aby uzyskać więcej informacji, zobacz MC_ grupę zasobów. ADX_SECRET_ID jest wymagany tylko wtedy, gdy używasz jednostki usługi Microsoft Entra.
Opcjonalnie włącz telemetrię usługi Application Insights. Jeśli używasz usługi Application Insights po raz pierwszy, utwórz zasób usługi Application Insights. Skopiuj klucz instrumentacji do zmiennej.
APPLICATION_INSIGHTS_KEY=[INSTRUMENTATION_KEY] COLLECT_TELEMETRY=true
Zainstaluj wykres K2Bridge. Wizualizacje i pulpity nawigacyjne są obsługiwane tylko w wersji Kibana 7.10. Najnowsze tagi obrazów to: 6.8_latest i 7.16_latest, które obsługują odpowiednio kibana 6.8 i Kibana 7.10. Obraz "7.16_latest" obsługuje system operacyjny Kibana OSS 7.10.2, a jego wewnętrzne wystąpienie elasticsearch to 7.16.2.
Jeśli użyto jednostki usługi Microsoft Entra:
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]
Lub jeśli użyto tożsamości zarządzanej:
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]
W obszarze Konfiguracja można znaleźć pełny zestaw opcji konfiguracji.
Dane wyjściowe poprzedniego polecenia sugerują następne polecenie helm w celu wdrożenia narzędzia Kibana. Opcjonalnie uruchom następujące polecenie:
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
Użyj przekazywania portów, aby uzyskać dostęp do aplikacji Kibana na hoście lokalnym.
kubectl port-forward service/kibana-kibana 5601 --namespace k2bridge
Połącz się z usługą Kibana, przechodząc do http://127.0.0.1:5601folderu .
Udostępnianie aplikacji Kibana użytkownikom. Istnieje wiele metod do wykonania. Używana metoda w dużej mierze zależy od przypadku użycia.
Możesz na przykład uwidocznić usługę jako usługę Load Balancer. W tym celu dodaj parametr --set service.type=LoadBalancer do wcześniejszego polecenia instalacji narzędzia Kibana Helm.
Następnie uruchom następujące polecenie:
kubectl get service -w -n k2bridge
Dane wyjściowe powinny wyglądać podobnie do poniższych:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kibana-kibana LoadBalancer xx.xx.xx.xx <pending> 5601:30128/TCP 4m24s
Następnie możesz użyć wygenerowanej wartości EXTERNAL-IP, która zostanie wyświetlona. Użyj go, aby uzyskać dostęp do aplikacji Kibana, otwierając przeglądarkę i przechodząc do <adresu EXTERNAL-IP>:5601.
Skonfiguruj wzorce indeksów w celu uzyskania dostępu do danych.
W nowym wystąpieniu Kibana:
- Otwórz aplikację Kibana.
- Przejdź do strony Zarządzanie.
- Wybierz pozycję Wzorce indeksu.
- Utwórz wzorzec indeksu. Nazwa indeksu musi być dokładnie zgodna z nazwą tabeli lub nazwą funkcji bez gwiazdki (*). Możesz skopiować odpowiedni wiersz z listy.
Uwaga
Aby uruchomić K2Bridge u innych dostawców platformy Kubernetes, zmień wartość Elasticsearch storageClassName w pliku values.yaml, aby pasowała do wartości sugerowanej przez dostawcę.
Odnajdywanie danych
Gdy usługa Azure Data Explorer jest skonfigurowana jako źródło danych dla platformy Kibana, możesz użyć narzędzia Kibana do eksplorowania danych.
W aplikacji Kibana wybierz kartę Odnajdywanie .
Z listy wzorców indeksu wybierz wzorzec indeksu, który definiuje źródło danych do zbadania. Tutaj wzorzec indeksu jest tabelą usługi Azure Data Explorer.
Jeśli dane mają pole filtru czasu, możesz określić zakres czasu. W prawym górnym rogu strony Odnajdywanie wybierz filtr czasu. Domyślnie na stronie są wyświetlane dane z ostatnich 15 minut.
W tabeli wyników przedstawiono pierwsze 500 rekordów. Możesz rozwinąć dokument, aby zbadać dane pól w formacie JSON lub tabeli.
Możesz dodać określone kolumny do tabeli wyników, wybierając pozycję Dodaj obok nazwy pola. Domyślnie tabela wyników zawiera kolumnę _source i kolumnę Czas , jeśli istnieje pole czasu.
Na pasku zapytania można wyszukiwać dane według:
- Wprowadzanie terminu wyszukiwania.
- Przy użyciu składni zapytań Lucene. Na przykład:
- Wyszukaj ciąg "error", aby znaleźć wszystkie rekordy zawierające tę wartość.
- Wyszukaj ciąg "status: 200", aby pobrać wszystkie rekordy z wartością stanu 200.
- Używanie operatorów logicznych AND, OR i NOT.
- Używając gwiazdki (*) i znaków wieloznacznych znaku zapytania (?). Na przykład zapytanie "destination_city: L*" pasuje do rekordów, w których wartość miejsca docelowego zaczyna się od "L" lub "l". (Funkcja K2Bridge nie uwzględnia wielkości liter).
Uwaga
Obsługiwana jest tylko składnia zapytań Lucene w programie kibana. Nie należy używać opcji KQL, która oznacza język zapytań Kibana.
Porada
W obszarze Wyszukiwanie można znaleźć więcej reguł wyszukiwania i logiki.
Aby filtrować wyniki wyszukiwania, użyj listy Dostępne pola . Lista pól zawiera następujące informacje:
- Pięć pierwszych wartości dla pola.
- Liczba rekordów zawierających pole.
- Procent rekordów zawierających każdą wartość.
Porada
Użyj lupy, aby znaleźć wszystkie rekordy, które mają określoną wartość.
Możesz również użyć lupy do filtrowania wyników i wyświetlić widok formatu tabeli wyników dla każdego rekordu w tabeli wyników.
Wybierz pozycję Zapisz lub Udostępnij , aby zachować wyszukiwanie.
Wizualizowanie danych
Użyj wizualizacji Kibana, aby uzyskać błyskawiczne widoki danych Data Explorer platformy Azure.
Tworzenie wizualizacji na karcie Odnajdywanie
Aby utworzyć pionową wizualizację paska, na karcie Odnajdywanie znajdź pasek boczny Dostępne pola .
Wybierz nazwę pola, a następnie kliknij pozycję Visualize (Wizualizacja).
Zostanie otwarta karta Wizualizacja i zostanie wyświetlona wizualizacja. Aby edytować dane i metryki wizualizacji, zobacz również Tworzenie wizualizacji na karcie Wizualizacja.
Tworzenie wizualizacji na karcie Wizualizacja
Wybierz kartę Visualize (Wizualizacja ) i kliknij pozycję Create visualization (Utwórz wizualizację).
W oknie Nowa wizualizacja wybierz typ wizualizacji.
Po wygenerowaniu wizualizacji możesz edytować metryki i dodać je do jednego zasobnika.
Uwaga
K2Bridge obsługuje agregację jednego zasobnika. Niektóre agregacje obsługują opcje wyszukiwania. Użyj składni Lucene, a nie opcji KQL, która oznacza składnię języka zapytań Kibana.
Ważne
- Obsługiwane są następujące wizualizacje:
Vertical bar
, ,Area chart
Gauge
Horizontal bar
Line chart
Data table
Heat map
Pie chart
,Goal chart
, i .Metric chart
- Obsługiwane są następujące metryki:
Average
, ,Max
Min
Count
Median
Percentiles
,Standard deviation
,Sum
,Top hits
i .Unique count
- Metryka
Percentiles ranks
nie jest obsługiwana. - Agregacje zasobników są opcjonalne, można wizualizować dane bez agregacji zasobnika.
- Obsługiwane są następujące zasobniki:
No bucket aggregation
, ,Date histogram
,Filters
,Range
,Date range
,Histogram
iTerms
. - Zasobniki
IPv4 range
iSignificant terms
nie są obsługiwane.
Tworzenie pulpitów nawigacyjnych
Pulpity nawigacyjne można tworzyć za pomocą wizualizacji Kibana w celu podsumowania, porównywania i kontrastowania widoków danych usługi Azure Data Explorer.
Aby utworzyć pulpit nawigacyjny, wybierz kartę Pulpit nawigacyjny , a następnie kliknij pozycję Utwórz nowy pulpit nawigacyjny.
Nowy pulpit nawigacyjny zostanie otwarty w trybie edycji.
Aby dodać nowy panel wizualizacji, kliknij pozycję Utwórz nowy.
Aby dodać już utworzoną wizualizację, kliknij pozycję Dodaj istniejącą i wybierz wizualizację.
Aby rozmieścić panele, zorganizować panele według priorytetu, zmienić rozmiar paneli i nie tylko, kliknij przycisk Edytuj, a następnie użyj następujących opcji:
- Aby przenieść panel, kliknij i przytrzymaj nagłówek panelu, a następnie przeciągnij do nowej lokalizacji.
- Aby zmienić rozmiar panelu, kliknij kontrolkę zmiany rozmiaru, a następnie przeciągnij do nowych wymiarów.