Tutorial: Memantau aplikasi Service Fabric Anda menggunakan ELK
Tutorial ini adalah bagian keempat dari seri ini. Tutorial ini menunjukkan cara menggunakan ELK (Elasticsearch, Logstash, dan Kibana) untuk memantau aplikasi Service Fabric yang berjalan di Azure.
Di bagian empat seri ini, Anda mempelajari cara:
- Menyiapkan server ELK di Azure
- Mengonfigurasi Logstash untuk menerima log dari Azure Event Hubs
- Memvisualisasikan platform dan log aplikasi di Kibana
Dalam tutorial ini, Anda akan belajar cara:
- Membangun aplikasi Java Service Fabric Reliable Services
- Menerapkan dan men-debug aplikasi pada kluster lokal
- Menerapkan aplikasi ke kluster Azure
- Menyiapkan pemantauan dan diagnostik untuk aplikasi
- Menyiapkan CI/CD
Prasyarat
Sebelum Anda memulai tutorial ini:
- Jika Anda tidak memiliki langganan Azure, buatlah akun gratis
- Siapkan aplikasi Anda untuk mengirim log ke lokasi yang ditetapkan di bagian dua.
- Selesaikan bagian tiga dan konfigurasikan kluster Service Fabric yang berjalan untuk mengirim log ke Azure Event Hubs.
- Kebijakan di Azure Event Hubs yang memiliki izin 'Dengar' dan kunci utama terkait dari seri tiga.
Unduh aplikasi sampel Voting
Jika Anda tidak membangun aplikasi sampel Voting di bagian satu dari seri tutorial ini, Anda dapat mengunduhnya. Di jendela perintah, jalankan perintah berikut untuk mengkloning repositori aplikasi sampel ke komputer lokal Anda.
git clone https://github.com/Azure-Samples/service-fabric-java-quickstart
Membuat server ELK di Azure
Anda dapat menggunakan lingkungan ELK prakonfigurasi untuk tutorial ini dan jika Anda sudah memilikinya, lewati ke bagian Siapkan Logstash. Namun, jika Anda tidak memilikinya, langkah-langkah berikut akan membuatnya di Azure.
Buat ELK Bersertifikat dari Bitnami di Azure. Untuk keperluan tutorial, tidak ada spesifikasi khusus yang harus diikuti untuk pembuatan server ini.
Buka sumber daya Anda di portal Microsoft Azure dan masuk ke tab Diagnostik Boot di bagian Dukungan + Pemecahan Masalah. Berikutnya, klik pada tab Log Serial.
Lakukan pencarian pada log untuk kata sandi yang diperlukan untuk mengakses instans Kibana. Ini menyerupai cuplikan berikut:
[ 25.932766] bitnami[1496]: ######################################################################### [ 25.948656] bitnami[1496]: # # [ 25.962448] bitnami[1496]: # Setting Bitnami application password to '[PASSWORD]' # [ 25.978137] bitnami[1496]: # (the default application username is 'user') # [ 26.004770] bitnami[1496]: # # [ 26.029413] bitnami[1496]: #########################################################################
Tekan tombol sambungkan pada halaman Ringkasan server di portal Microsoft Azure untuk mendapatkan detail login.
SSH ke server yang meng-hosting citra ELK menggunakan perintah berikut
ssh [USERNAME]@[CONNECTION-IP-OF-SERVER] Example: ssh testaccount@104.40.63.157
Siapkan ELK
Langkah pertama adalah memuat lingkungan ELK
sudo /opt/bitnami/use_elk
Jika menggunakan lingkungan yang ada, Anda harus menjalankan perintah berikut untuk menghentikan layanan Logstash
sudo /opt/bitnami/ctlscript.sh stop logstash
Jalankan perintah berikut untuk menginstal plugin Logstash untuk Azure Event Hubs.
logstash-plugin install logstash-input-azureeventhub
Buat atau ubah file konfigurasi Logstash yang ada dengan konten berikut: Jika Anda membuat file, file tersebut harus dibuat di
/opt/bitnami/logstash/conf/access-log.conf
jika menggunakan citra ELK Bitnami di Azure.input { azureeventhub { key => "[RECEIVER-POLICY-KEY-FOR-EVENT-HUB]" username => "[RECEIVER-POLICY-NAME]" namespace => "[EVENTHUB-NAMESPACENAME]" eventhub => "[EVENTHUB-NAME]" partitions => 4 } } output { elasticsearch { hosts => [ "127.0.0.1:9200" ] } }
Untuk memverifikasi konfigurasi, jalankan perintah berikut:
/opt/bitnami/logstash/bin/logstash -f /opt/bitnami/logstash/conf/ --config.test_and_exit
Memulai layanan Logstash
sudo /opt/bitnami/ctlscript.sh start logstash
Periksa Elasticsearch untuk memastikan Anda menerima data
curl 'localhost:9200/_cat/indices?v'
Akses dasbor Kibana Anda di http://SERVER-IP lalu masukkan nama pengguna dan kata sandi untuk Kibana. Jika Anda menggunakan citra ELK di Azure, nama pengguna default adalah 'user' dan kata sandi adalah yang diperoleh dari Diagnostik Boot.
Langkah berikutnya
Dalam tutorial ini, Anda mempelajari cara:
- Menyiapkan dan menjalankan server ELK di Azure
- Mengonfigurasi server untuk menerima informasi diagnostik dari kluster Service Fabric Anda
Melanjutkan ke tutorial berikutnya: