Memvisualisasikan data dari Azure Data Explorer di Kibana dengan konektor sumber terbuka K2Bridge
K2Bridge (Kibana-Kusto Bridge) memungkinkan Anda menggunakan Azure Data Explorer sebagai sumber data dan memvisualisasikan data tersebut di Kibana. K2Bridge adalah aplikasi kontainer sumber terbuka. Ini bertindak sebagai proksi antara instans Kibana dan kluster Azure Data Explorer. Artikel ini menjelaskan cara menggunakan K2Bridge untuk membuat koneksi tersebut.
K2Bridge menerjemahkan kueri Kibana ke Bahasa Kueri Kusto (KQL) dan mengirim hasil Azure Data Explorer kembali ke Kibana.
K2Bridge mendukung tab Temukan, Visualisasikan, dan Dasbor Kibana.
Dengan tab Temukan , Anda dapat:
- Cari dan jelajahi data.
- Memfilter hasil.
- Tambahkan atau hapus bidang di kisi hasil.
- Lihat konten rekaman.
- Simpan dan bagikan pencarian.
Dengan tab Visualisasi, Anda dapat:
- Buat visualisasi seperti: bagan batang, bagan pai, tabel data, peta panas, dan lainnya.
- Menyimpan visualisasi
Dengan tab Dasbor , Anda dapat:
- Buat panel dengan menggunakan visualisasi baru atau tersimpan.
- Simpan dasbor.
Gambar berikut menunjukkan instans Kibana yang terikat ke Azure Data Explorer oleh K2Bridge. Pengalaman pengguna di Kibana tidak berubah.
Sebelum Anda bisa memvisualisasikan data dari Azure Data Explorer di Kibana, siapkan hal berikut:
- Langganan Azure. Membuat akun Azure gratis.
- Kluster dan database Azure Data Explorer. Anda akan memerlukan URL kluster dan nama database.
- Helm v3, manajer paket Kubernetes.
- Kluster Azure Kubernetes Service (AKS) atau kluster Kubernetes lainnya. Gunakan versi 1.21.2 atau yang lebih baru, dengan minimal tiga node Azure Kubernetes Service. Versi 1.21.2 telah diuji dan diverifikasi. Jika Anda memerlukan kluster AKS, lihat cara menyebarkan kluster AKS menggunakan Azure CLI atau menggunakan portal Azure.
- Perwakilan layanan Microsoft Entra berwenang untuk melihat data di Azure Data Explorer, termasuk ID klien dan rahasia klien. Atau, Anda dapat menggunakan identitas terkelola yang ditetapkan sistem.
Jika Anda memilih untuk menggunakan perwakilan layanan Microsoft Entra, Anda harus membuat perwakilan layanan Microsoft Entra. Untuk penginstalan, Anda memerlukan ClientID dan Rahasia. Kami merekomendasikan perwakilan layanan dengan izin penampil dan mencegah Anda menggunakan izin tingkat yang lebih tinggi. Untuk menetapkan izin, lihat Mengelola izin database di portal Azure atau menggunakan perintah manajemen untuk Mengelola peran keamanan database.
Jika Anda memilih untuk menggunakan identitas yang ditetapkan sistem, Anda harus mendapatkan clientID identitas terkelola kumpulan agen (terletak di grup sumber daya "[MC_xxxx]" yang dihasilkan)
Secara default, bagan Helm K2Bridge mereferensikan gambar yang tersedia untuk umum yang terletak di Microsoft Container Registry (MCR). MCR tidak memerlukan kredensial apa pun.
Unduh bagan Helm yang diperlukan.
Tambahkan dependensi Elasticsearch ke Helm. Dependensi diperlukan karena K2Bridge menggunakan instans Elasticsearch internal kecil. Permintaan terkait metadata layanan instans seperti kueri pola indeks dan kueri yang disimpan. Instans internal ini tidak menyimpan data bisnis. Anda dapat menganggap instans sebagai detail implementasi.
Untuk menambahkan dependensi Elasticsearch ke Helm, jalankan perintah ini:
helm repo add elastic https://helm.elastic.co helm repo update
Untuk mendapatkan bagan K2Bridge dari direktori bagan repositori GitHub:
Kloning repositori dari GitHub.
Buka direktori repositori akar K2Bridges.
Jalankan perintah ini:
helm dependency update charts/k2bridge
Sebarkan K2Bridge.
Atur variabel ke nilai yang benar untuk lingkungan Anda.
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]
Catatan
Saat menggunakan identitas terkelola, nilai ADX_CLIENT_ID adalah ID klien dari identitas terkelola, yang terletak di grup sumber daya "[MC_xxxx]" yang dihasilkan. Untuk informasi selengkapnya, lihat MC_ grup sumber daya. ADX_SECRET_ID hanya diperlukan jika Anda menggunakan perwakilan layanan Microsoft Entra.
Secara opsional, aktifkan telemetri Application Insights. Jika Anda menggunakan Application Insights untuk pertama kalinya, buat sumber daya Application Insights. Salin kunci instrumentasi ke variabel.
APPLICATION_INSIGHTS_KEY=[INSTRUMENTATION_KEY] COLLECT_TELEMETRY=true
Instal bagan K2Bridge. Visualisasi dan dasbor hanya didukung dengan versi Kibana 7.10. Tag gambar terbaru adalah: 6.8_latest dan 7.16_latest, yang masing-masing mendukung Kibana 6.8 dan Kibana 7.10. Gambar '7.16_latest' mendukung Kibana OSS 7.10.2, dan instans Elasticsearch internalnya adalah 7.16.2.
Jika perwakilan layanan Microsoft Entra digunakan:
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]
Atau, jika identitas terkelola digunakan:
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]
Di Konfigurasi, Anda dapat menemukan serangkaian opsi konfigurasi lengkap.
Output perintah sebelumnya menyarankan perintah Helm berikutnya untuk menyebarkan Kibana. Secara opsional, jalankan perintah ini:
helm install kibana elastic/kibana --version 7.17.3 -n k2bridge --set image=docker.elastic.co/kibana/kibana-oss --set imageTag=7.10.2 --set elasticsearchHosts=http://k2bridge:8080
Gunakan penerusan port untuk mengakses Kibana di localhost.
kubectl port-forward service/kibana-kibana 5601 --namespace k2bridge
Sambungkan ke Kibana dengan masuk ke http://127.0.0.1:5601.
Mengekspos Kibana kepada pengguna. Ada beberapa metode untuk melakukannya. Metode yang Anda gunakan sebagian besar tergantung pada kasus penggunaan Anda.
Misalnya, Anda dapat mengekspos layanan sebagai layanan Load Balancer. Untuk melakukannya, tambahkan parameter --set service.type=LoadBalancer ke perintah penginstalan Kibana Helm sebelumnya.
Kemudian jalankan perintah ini:
kubectl get service -w -n k2bridge
Output akan terlihat seperti ini:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kibana-kibana LoadBalancer xx.xx.xx.xx <pending> 5601:30128/TCP 4m24s
Anda kemudian dapat menggunakan nilai EXTERNAL-IP yang dihasilkan yang muncul. Gunakan untuk mengakses Kibana dengan membuka browser dan masuk ke <EXTERNAL-IP>:5601.
Konfigurasikan pola indeks untuk mengakses data Anda.
Dalam instans Kibana baru:
- Buka Kibana.
- Telusuri ke Manajemen.
- Pilih Pola Indeks.
- Membuat pola indeks. Nama indeks harus sama persis dengan nama tabel atau nama fungsi tanpa tanda bintang (*). Anda dapat menyalin baris yang relevan dari daftar.
Catatan
Untuk menjalankan K2Bridge pada penyedia Kubernetes lainnya, ubah nilai Elasticsearch storageClassName di values.yaml agar sesuai dengan yang disarankan oleh penyedia.
Saat Azure Data Explorer dikonfigurasi sebagai sumber data untuk Kibana, Anda dapat menggunakan Kibana untuk menjelajahi data.
Di Kibana, pilih tab Temukan .
Dari daftar pola indeks, pilih pola indeks yang menentukan sumber data untuk dijelajahi. Di sini, pola indeks adalah tabel Azure Data Explorer.
Jika data Anda memiliki bidang filter waktu, Anda dapat menentukan rentang waktu. Di kanan atas halaman Temukan , pilih filter waktu. Secara default, halaman memperlihatkan data selama 15 menit terakhir.
Tabel hasil memperlihatkan 500 rekaman pertama. Anda dapat memperluas dokumen untuk memeriksa data bidang dalam format JSON atau tabel.
Anda bisa menambahkan kolom tertentu ke tabel hasil dengan memilih tambahkan di samping nama bidang. Secara default, tabel hasil menyertakan kolom _source dan kolom Waktu jika bidang waktu ada.
Di bilah kueri, Anda bisa mencari data dengan:
- Memasukkan istilah pencarian.
- Menggunakan sintaks kueri Lucene. Misalnya:
- Cari "kesalahan" untuk menemukan semua rekaman yang berisi nilai ini.
- Cari "status: 200" untuk mendapatkan semua rekaman dengan nilai status 200.
- Menggunakan operator logis AND, OR, dan NOT.
- Menggunakan karakter kartubebas tanda bintang (*) dan tanda tanya (?). Misalnya, kueri "destination_city: L*" cocok dengan rekaman di mana nilai kota tujuan dimulai dengan "L" atau "l". (K2Bridge tidak peka huruf besar/kecil.)
Catatan
Hanya sintaksis kueri Lucene kibana yang didukung. Jangan gunakan opsi KQL, yang merupakan singkatan dari Kibana Query Language.
Tip
Di Pencarian, Anda dapat menemukan lebih banyak aturan dan logika pencarian.
Untuk memfilter hasil pencarian Anda, gunakan daftar bidang Yang tersedia. Daftar bidang adalah tempat Anda bisa melihat:
- Lima nilai teratas untuk bidang .
- Jumlah rekaman yang berisi bidang .
- Persentase rekaman yang berisi setiap nilai.
Tip
Gunakan kaca pembesar untuk menemukan semua rekaman yang memiliki nilai tertentu.
Anda juga dapat menggunakan kaca pembesar untuk memfilter hasil dan melihat tampilan format tabel hasil dari setiap rekaman dalam tabel hasil.
Pilih Simpan atau Bagikan untuk mempertahankan pencarian Anda.
Gunakan visualisasi Kibana untuk mendapatkan tampilan sekilas data Azure Data Explorer.
Untuk membuat visualisasi bilah vertikal, di tab Temukan , temukan bilah samping Bidang yang tersedia.
Pilih nama bidang, lalu klik Visualisasikan.
Tab Visualisasi terbuka dan menampilkan visualisasi. Untuk mengedit data dan metrik visualisasi, lihat juga Membuat visualisasi dari tab Visualisasi.
Pilih tab Visualisasi dan klik Buat visualisasi.
Di jendela Visualisasi Baru, pilih jenis visualisasi.
Setelah visualisasi dihasilkan, Anda dapat mengedit metrik dan menambahkan hingga satu wadah.
Catatan
K2Bridge mendukung satu agregasi wadah. Beberapa agregasi mendukung opsi pencarian. Gunakan sintaks Lucene, bukan opsi KQL, yang merupakan singkatan dari sintaks Bahasa Kueri Kibana.
Penting
- Visualisasi berikut didukung:
Vertical bar
, , ,Line chart
Area chart
,Horizontal bar
Pie chart
,Gauge
, ,Data table
,Heat map
,Goal chart
, danMetric chart
. - Metrik berikut didukung:
Average
, , ,Max
Count
,Median
Min
,Percentiles
, ,Standard deviation
,Sum
,Top hits
danUnique count
. - Metrik
Percentiles ranks
tidak didukung. - Menggunakan agregasi wadah bersifat opsional, Anda dapat memvisualisasikan data tanpa agregasi wadah.
- Wadah berikut didukung:
No bucket aggregation
, ,Date histogram
,Filters
,Range
,Date range
,Histogram
danTerms
. - Wadah
IPv4 range
danSignificant terms
tidak didukung.
Anda dapat membuat dasbor dengan visualisasi Kibana untuk meringkas, membandingkan, dan membedakan tampilan sekilas data Azure Data Explorer.
Untuk membuat dasbor, pilih tab Dasbor , lalu klik Buat dasbor baru.
Dasbor baru terbuka dalam mode edit.
Untuk menambahkan panel visualisasi baru, klik Buat baru.
Untuk menambahkan visualisasi yang sudah Anda buat, klik Tambahkan yang sudah ada dan pilih visualisasi.
Untuk mengatur panel, atur panel berdasarkan prioritas, mengubah ukuran panel, dan lainnya, klik Edit, lalu gunakan opsi berikut:
- Untuk memindahkan panel, klik dan tahan header panel, lalu seret ke lokasi baru.
- Untuk mengubah ukuran panel, klik kontrol mengubah ukuran, lalu seret ke dimensi baru.