البرنامج التعليمي: قم بمراقبة تطبيقات Service Fabric الخاصة بك باستخدام ELK
يعد هذا البرنامج التعليمي هو الجزء الأول من سلسلة. يبين كيفية استخدام ELK (Elasticsearch، Logstash، Kibana) لمراقبة تطبيقات Service Fabric قيد التشغيل في Azure.
في الجزء الرابع من السلسلة، نتعلم طريقة:
- إعداد خادم ELK في Azure
- تكوين Logstash لتلقي سجلات من Event Hubs
- تصور النظام الأساسي وسجلات التطبيقات في Kibana
ستتعلم في سلسلة البرامج التعليمية هذه كيفية:
- بناء تطبيق خدمات Java على Service Fabric موثوقة
- قم بنشر التطبيق وتصحيحه على مجموعة محلية
- نشر التطبيق إلى مجموعة Azure
- إعداد المراقبة والتشخيصات للتطبيق
- قم بإعداد CI/CD
المتطلبات الأساسية
قبل أن تبدأ هذا البرنامج التعليمي:
- عند عدم وجود اشتراك في Azure، فقم بإنشاء حساب مجاني
- قم بإعداد التطبيق الخاص بك لإرسال السجلات إلى الموقع المحدد في الجزء الثاني.
- قم بإكمال الجزء الثالث وقم بتهيئة مجموعة Service Fabric قيد التشغيل لإرسال السجلات إلى Event Hubs.
- السياسة في Event Hubs التي لديها إذن "Listen" والمفتاح الأساسي المرتبط من السلسلة الثالثة.
قم بتنزيل تطبيق نموذج التصويت
إذا لم تقم ببناء تطبيق نموذج التصويت في الجزء الأول من هذه السلسلة التعليمية، فإنه يمكنك تنزيله. في نافذة الأوامر، قم بتشغيل الأمر التالي لاستنساخ نموذج مستودع التطبيق إلى جهازك المحلي.
git clone https://github.com/Azure-Samples/service-fabric-java-quickstart
قم بإعداد خادم ELK في Azure
يمكنك استخدام بيئة ELK التي تم تكوينها مسبقاً لهذا البرنامج التعليمي، وإذا كانت لديك بالفعل بيئة، فانتقل إلى قسم إعداد Logstash. مع ذلك، إذا لم تكن لديك بيئة، فإن الخطوات التالية تُنشئ واحدة في Azure.
قم بإنشاء ELK معتمد من قبل Bitnami في Azure. لأغراض البرنامج التعليمي، لا توجد أي مواصفات معينة لمتابعة لإنشاء هذا الخادم.
انتقل إلى المورد الخاص بك في مدخل Azure وأدخل علامة التبويب Boot Diagnostics ضمن قسم Support + Troubleshooting. بعد ذلك، انقر فوق علامة التبويب "Serial Log".
قم بالبحث في السجلات عن كلمة المرور المطلوبة للوصول إلى نموذج Kibana. وهو يشبه المقتطف التالي:
[ 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]: #########################################################################
اضغط على زر الاتصال في صفحة Overview على الخادم في مدخل Azure للحصول على تفاصيل تسجيل الدخول.
SSH في الخادم الذي يستضيف صورة ELK باستخدام الأمر التالي
ssh [USERNAME]@[CONNECTION-IP-OF-SERVER] Example: ssh testaccount@104.40.63.157
إعداد ELK
الخطوة الأولى هي تحميل بيئة ELK
sudo /opt/bitnami/use_elk
إذا كنت تستخدم بيئة موجودة، يجب تشغيل الأمر التالي لإيقاف خدمة Logstash
sudo /opt/bitnami/ctlscript.sh stop logstash
تشغيل الأمر التالي لتثبيت البرنامج المساعد Logstash لـEvent Hubs.
logstash-plugin install logstash-input-azureeventhub
إنشاء أو تعديل ملف التكوين Logstash الموجودة مع المحتويات التالية: إذا كنت تقوم بإنشاء الملف، يجب أن يتم إنشاؤه عند
/opt/bitnami/logstash/conf/access-log.conf
استخدام صورة ELK Bitnami في 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" ] } }
للتحقق من التكوين، قم بتشغيل الأمر التالي:
/opt/bitnami/logstash/bin/logstash -f /opt/bitnami/logstash/conf/ --config.test_and_exit
بدء تشغيل خدمة Logstash
sudo /opt/bitnami/ctlscript.sh start logstash
قم بالتحقق من Elasticsearch للتأكد من تلقيك للبيانات
curl 'localhost:9200/_cat/indices?v'
قم بالوصول إلى لوحة معلومات Kibana على http://SERVER-IP وأدخل اسم المستخدم وكلمة المرور الخاصين بـ Kibana. إذا كنت تستخدم صورة ELK في Azure، يكون اسم المستخدم الافتراضي هو 'user' وكلمة المرور هي التي تم الحصول عليها من Boot Diagnostics.
الخطوات التالية
في هذا البرنامج التعليمي، نتعلم طريقة القيام بما يأتي:
- الحصول على خادم ELK وتشغيلها في Azure
- تكوين الخادم لتلقي معلومات العلامات المميزة من مجموعة "Service Fabric"
تقدم إلى البرنامج التعليمي الآتي: