جمع بيانات التراكب SNMP باستخدام عامل Azure Monitor

تنبيه

تشير هذه المقالة إلى CentOS، وهو توزيع Linux يقترب من حالة نهاية العمر الافتراضي (EOL). يرجى مراعاة استخدامك والتخطيط وفقا لذلك. لمزيد من المعلومات، راجع إرشادات نهاية العمر الافتراضي CentOS.

بروتوكول إدارة الشبكة البسيط (SNMP) هو بروتوكول إدارة منتشر على نطاق واسع لمراقبة وتكوين أجهزة وأجهزة Linux.

يمكنك جمع بيانات SNMP بطريقتين:

  • الاستقصاءات - يستقصي نظام الإدارة عامل SNMP لجمع قيم لخصائص معينة.
  • التراكبات - يقوم عامل SNMP بإعادة توجيه الأحداث أو الإعلامات إلى نظام إدارة.

غالبا ما تستخدم التراكبات كإشعارات للأحداث، بينما تكون الاستقصاءات أكثر ملاءمة للكشف عن الحالة الصحية وجمع مقاييس الأداء.

يمكنك استخدام عامل Azure Monitor لجمع تراكبات SNMP كأحداث syslog أو كأحداث تم تسجيلها في ملف نصي.

في هذا البرنامج التعليمي، تتعلم كيفية:

  • إعداد خيارات سجل متلقي التراكب وتنسيقه
  • تكوين متلقي التراكب لإرسال التراكبات إلى syslog أو ملف نصي
  • جمع تراكبات SNMP باستخدام عامل Azure Monitor

المتطلبات الأساسية

لإكمال هذا البرنامج التعليمي، تحتاج إلى:

  • مساحة عمل Log Analytics حيث لديك حقوق المساهم على الأقل.

  • ملفات قاعدة معلومات الإدارة (MIB) للأجهزة التي تراقبها.

    يحدد SNMP الخصائص المراقبة باستخدام قيم معرف الكائن (OID)، والتي يتم تعريفها ووصفها في ملفات MIB المقدمة من المورد.

    يوفر مورد الجهاز عادة ملفات MIB. إذا لم يكن لديك ملفات MIB، يمكنك العثور على الملفات للعديد من الموردين على مواقع الويب التابعة لجهات خارجية.

    ضع جميع ملفات MIB لكل جهاز يرسل تراكبات SNMP في /usr/share/snmp/mibs، الدليل الافتراضي لملفات MIB. يتيح ذلك تسجيل حقول التراكب SNMP بأسماء ذات معنى بدلا من OIDs.

    يحتفظ بعض البائعين ب MIB واحد لجميع الأجهزة، بينما يمتلك البعض الآخر المئات من ملفات MIB. لتحميل ملف MIB بشكل صحيح، يجب أن يقوم snmptrapd بتحميل كافة MIBs التابعة. تأكد من التحقق من ملف سجل snmptrapd بعد تحميل MIBs للتأكد من عدم وجود تبعيات مفقودة في تحليل ملفات MIB الخاصة بك.

  • خادم Linux مع جهاز استقبال التراكب SNMP.

    في هذه المقالة، نستخدم snmptrapd، وهو جهاز استقبال تراكب SNMP من عامل Net-SNMP ، والذي توفره معظم توزيعات Linux. ومع ذلك، هناك العديد من خدمات استقبال التراكب SNMP الأخرى التي يمكنك استخدامها.

    قد يختلف إجراء تكوين snmptrapd بين توزيعات Linux. لمزيد من المعلومات حول تكوين snmptrapd، بما في ذلك إرشادات حول تكوين مصادقة SNMP v3، راجع وثائق Net-SNMP.

    من المهم أن يمكن لجهاز استقبال التراكب SNMP الذي تستخدمه تحميل ملفات MIB للبيئة الخاصة بك، بحيث تحتوي الخصائص في رسالة التراكب SNMP على أسماء ذات معنى بدلا من OIDs.

إعداد خيارات سجل متلقي التراكب وتنسيقه

لإعداد جهاز استقبال التراكب snmptrapd على CentOS 7 وRed Hat Enterprise Linux 7 وخادم Oracle Linux 7:

  1. تثبيت snmptrapd وتمكينه:

    #Install the SNMP agent
    sudo yum install net-snmp
    #Enable the service
    sudo systemctl enable snmptrapd
    #Allow UDP 162 through the firewall
    sudo firewall-cmd --zone=public --add-port=162/udp --permanent
    
  2. تخويل سلاسل المجتمع (سلاسل مصادقة SNMP v1 وv2) وتحديد تنسيق التراكبات المكتوبة في ملف السجل:

    1. افتح snmptrapd.conf:

      sudo vi /etc/snmp/snmptrapd.conf  
      
    2. أضف هذه الأسطر إلى الملف:snmptrapd.conf

      # Allow all traps for all OIDs, from all sources, with a community string of public
      authCommunity log,execute,net public
      # Format logs for collection by Azure Monitor Agent
      format2 snmptrap %a %B %y/%m/%l %h:%j:%k %N %W %q %T %W %v \n
      

      إشعار

      يسجل snmptrapd كلا من التراكبات والرسائل الخفية - على سبيل المثال، توقف الخدمة والبدء - إلى نفس ملف السجل. في المثال أعلاه، قمنا بتعريف تنسيق السجل للبدء بكلمة "snmptrap" لتسهيل تصفية snmptraps من السجل لاحقا.

تكوين متلقي التراكب لإرسال بيانات التراكب إلى syslog أو ملف نصي

هناك طريقتان يمكن ل snmptrapd إرسال تراكبات SNMP إلى عامل Azure Monitor:

  • إعادة توجيه التراكبات الواردة إلى syslog، والتي يمكنك تعيينها كمصدر بيانات لعامل Azure Monitor.

  • اكتب رسائل syslog إلى ملف، والذي يمكن لعامل Azure Monitor تتبعه وتحليله. يسمح لك هذا الخيار بإرسال التراكبات SNMP كنوع بيانات جديد بدلا من إرسال كأحداث syslog.

لتحرير تكوين سلوك الإخراج ل snmptrapd:

  1. /etc/snmp/snmptrapd.conf افتح الملف:

    sudo vi /etc/sysconfig/snmptrapd
    
  2. تكوين وجهة الإخراج.

    فيما يلي مثال على التكوين:

    # snmptrapd command line options
    # '-f' is implicitly added by snmptrapd systemd unit file
    # OPTIONS="-Lsd"
    OPTIONS="-m ALL -Ls2 -Lf /var/log/snmptrapd"
    

    الخيارات في هذا المثال التكوين هي:

    • -m ALL - تحميل كافة ملفات MIB في الدليل الافتراضي.
    • -Ls2 - تراكبات الإخراج على syslog، إلى مرفق Local2.
    • -Lf /var/log/snmptrapd - تسجيل التراكبات إلى /var/log/snmptrapd الملف.

إشعار

راجع وثائق Net-SNMP لمزيد من المعلومات حول كيفية تعيين خياراتالإخراج وكيفية تعيين خيارات التنسيق.

جمع تراكبات SNMP باستخدام عامل Azure Monitor

إذا قمت بتكوين snmptrapd لإرسال الأحداث إلى syslog، فاتبع الخطوات الموضحة في تجميع الأحداث وعدادات الأداء باستخدام عامل Azure Monitor. تأكد من تحديد Linux syslog كمصدر بيانات عند تعريف قاعدة جمع البيانات لعامل Azure Monitor.

إذا قمت بتكوين snmptrapd لكتابة الأحداث إلى ملف، فاتبع الخطوات الموضحة في تجميع سجلات النص باستخدام عامل Azure Monitor.

الخطوات التالية

تعلم المزيد عن: