Bagikan melalui


Mengumpulkan data trap SNMP dengan Agen Azure Monitor

Perhatian

Artikel ini mereferensikan CentOS, distribusi Linux yang merupakan status End Of Life (EOL). Harap pertimbangkan penggunaan dan perencanaan Anda yang sesuai. Untuk informasi selengkapnya, lihat panduan Akhir Masa Pakai CentOS.

Simple Network Management Protocol (SNMP) adalah protokol manajemen yang disebarkan secara luas untuk memantau dan mengonfigurasi perangkat dan appliance Linux.

Anda dapat mengumpulkan data SNMP dengan dua cara:

  • Polling - Sistem pengelola melakukan polling agen SNMP untuk mengumpulkan nilai untuk properti tertentu.
  • Traps - Agen SNMP meneruskan peristiwa atau pemberitahuan ke sistem pengelola.

Perangkap paling sering digunakan sebagai pemberitahuan peristiwa, sementara polling lebih sesuai untuk deteksi kesehatan stateful dan mengumpulkan metrik performa.

Anda dapat menggunakan Agen Azure Monitor untuk mengumpulkan perangkap SNMP sebagai peristiwa syslog atau sebagai peristiwa yang dicatat dalam file teks.

Dalam tutorial ini, Anda akan mempelajari cara:

  • Menyiapkan opsi dan format log penerima trap
  • Mengonfigurasi penerima trap untuk mengirim perangkap ke file syslog atau teks
  • Mengumpulkan perangkap SNMP menggunakan Agen Azure Monitor

Prasyarat

Untuk menyelesaikan tutorial ini, Anda perlu:

  • Ruang kerja Analitik Log tempat Anda memiliki setidaknya hak kontributor.

  • File Basis Informasi Manajemen (MIB) untuk perangkat yang Anda pantau.

    SNMP mengidentifikasi properti yang dipantau menggunakan nilai Pengidentifikasi Objek (OID), yang ditentukan dan dijelaskan dalam file MIB yang disediakan vendor.

    Vendor perangkat biasanya menyediakan file MIB. Jika Anda tidak memiliki file MIB, Anda dapat menemukan file untuk banyak vendor di situs web pihak ketiga.

    Tempatkan semua file MIB untuk setiap perangkat yang mengirim perangkap SNMP di /usr/share/snmp/mibs, direktori default untuk file MIB. Ini memungkinkan pengelogan bidang perangkap SNMP dengan nama yang bermakna alih-alih OID.

    Beberapa vendor mempertahankan satu MIB untuk semua perangkat, sementara yang lain memiliki ratusan file MIB. Untuk memuat file MIB dengan benar, snmptrapd harus memuat semua MIB dependen. Pastikan untuk memeriksa file log snmptrapd setelah memuat MIB untuk memastikan bahwa tidak ada dependensi yang hilang dalam mengurai file MIB Anda.

  • Server Linux dengan penerima perangkap SNMP.

    Dalam artikel ini, kami menggunakan snmptrapd, penerima perangkap SNMP dari agen Net-SNMP , yang disediakan sebagian besar distribusi Linux. Namun, ada banyak layanan penerima perangkap SNMP lainnya yang dapat Anda gunakan.

    Prosedur konfigurasi snmptrapd dapat bervariasi di antara distribusi Linux. Untuk informasi selengkapnya tentang konfigurasi snmptrapd, termasuk panduan tentang mengonfigurasi untuk autentikasi SNMP v3, lihat dokumentasi Net-SNMP.

    Penting bahwa penerima perangkap SNMP yang Anda gunakan dapat memuat file MIB untuk lingkungan Anda, sehingga properti dalam pesan perangkap SNMP memiliki nama yang bermakna alih-alih OID.

Menyiapkan opsi dan format log penerima trap

Untuk menyiapkan penerima perangkap snmptrapd pada server CentOS 7, Red Hat Enterprise Linux 7, Oracle Linux 7:

  1. Instal dan aktifkan 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. Otorisasi string komunitas (string autentikasi SNMP v1 dan v2) dan tentukan format untuk perangkap yang ditulis ke file log:

    1. Buka snmptrapd.conf:

      sudo vi /etc/snmp/snmptrapd.conf  
      
    2. Tambahkan baris ini ke file Anda 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
      

      Catatan

      snmptrapd mencatat perangkap dan pesan daemon - misalnya, layanan berhenti dan mulai - ke file log yang sama. Dalam contoh di atas, kami telah menentukan format log untuk memulai dengan kata "snmptrap" untuk memudahkan memfilter snmptraps dari log nanti.

Mengonfigurasi penerima trap untuk mengirim data trap ke file syslog atau teks

Ada dua cara snmptrapd dapat mengirim perangkap SNMP ke Agen Azure Monitor:

  • Teruskan perangkap masuk ke syslog, yang dapat Anda tetapkan sebagai sumber data untuk Agen Azure Monitor.

  • Tulis pesan syslog ke file, yang dapat diekor dan diurai oleh Agen Azure Monitor. Opsi ini memungkinkan Anda mengirim perangkap SNMP sebagai jenis data baru daripada mengirim sebagai peristiwa syslog.

Untuk mengedit konfigurasi perilaku output snmptrapd:

  1. /etc/snmp/snmptrapd.conf Buka file:

    sudo vi /etc/sysconfig/snmptrapd
    
  2. Konfigurasikan tujuan output.

    Berikut adalah contoh konfigurasi:

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

    Opsi dalam contoh konfigurasi ini adalah:

    • -m ALL - Muat semua file MIB di direktori default.
    • -Ls2 - Output perangkap ke syslog, ke fasilitas Local2.
    • -Lf /var/log/snmptrapd - Log perangkap ke /var/log/snmptrapd file.

Catatan

Lihat dokumentasi Net-SNMP untuk informasi selengkapnya tentang cara mengatur opsi output dan cara mengatur opsi pemformatan.

Mengumpulkan perangkap SNMP menggunakan Agen Azure Monitor

Jika Anda mengonfigurasi snmptrapd untuk mengirim peristiwa ke syslog, ikuti langkah-langkah yang dijelaskan dalam Mengumpulkan peristiwa dan penghitung kinerja dengan Agen Azure Monitor. Pastikan untuk memilih syslog Linux sebagai sumber data saat Anda menentukan aturan pengumpulan data untuk Agen Azure Monitor.

Jika Anda mengonfigurasi snmptrapd untuk menulis peristiwa ke file, ikuti langkah-langkah yang dijelaskan dalam Mengumpulkan log teks dengan Agen Azure Monitor.

Langkah berikutnya

Pelajari lebih lanjut tentang: