Volume 16TB dan SNMP Pada Windows

12

Ketika volume lebih besar dari 16TB menjadi lebih umum, diakui bahwa nilai 32 bit yang digunakan untuk melaporkan ukuran disk dan penggunaan dalam MIB "HOST-SUMBER DAYA" standar dalam SNMP tidak cukup besar untuk melaporkan ukuran disk yang tepat.

Net-SNMP tampaknya telah mengatasi masalah ini dengan hanya memanipulasi nilai "AllocationUnits" untuk mempertahankan nilai 32 bit untuk pemanfaatan disk (karena total ukuran / penggunaan disk sama dengan nilai ruang 32 bit kali alokasi unit), untuk memungkinkan untuk perhitungan volume yang lebih besar dari 8 / 16TB. Anggap Anda tidak memiliki minat pelaporan dalam unit alokasi, dan tidak apa-apa dengan tingkat ketidakakuratan yang kecil. ini sepertinya solusi yang elegan.

https://bugzilla.redhat.com/show_bug.cgi?id=654384

Window yang dibangun di layanan SNMP, tampaknya terus menderita dari kesalahan ini, hanya melaporkan modulo dari ruang disk yang digunakan / ditugaskan, menghasilkan pelaporan ukuran disk yang tidak akurat.

Apakah ada cara untuk mengaktifkan Windows untuk melaporkan penggunaan disk dengan benar untuk volume lebih dari 16TB? Kami mencoba menginstal Net-SNMP 5.5 x64 dan menonaktifkan layanan Windows SNMP sepenuhnya, namun sayangnya ini tidak memperbaiki masalah kami.

Saat menggunakan ekstensi NetSNMP, informasi yang kami kumpulkan untuk disk tertentu yang kami minati adalah sebagai berikut:

masukkan deskripsi gambar di sini

Hasil ini sama terlepas apakah kita menggunakan layanan SNMP vanilla Windows, atau NetSNMP.

Saya telah melihat orang-orang di komunitas Cacti menyebutkan hanya menuliskan solusi. Sayangnya, kami menggunakan Observium untuk pemantauan sistem yang cepat dan dasar. Jika masalah tidak dapat diperbaiki di sisi Window, bisakah Observium dibuat untuk melaporkan MIB khusus?

- Perbarui -

Melihat ke dalam laporan bug yang menyebutkan tentang menambahkan "realStorageUnits" ke file snmpd.conf, kami mengalami masalah berikut saat mengatur arahan itu:

realStorageUnits menjamin kami

- Perbarui 2 -

Nah, setelah banyak mengutak-atik, tidak terlihat seperti versi Windows dari Net-SNMP seperti arahan "realStorageUnits". Termasuk arahan menghasilkan peringatan saat memulai SNMP. Kami mencoba pada versi 5.5, 5.6, dan 5.7. Adakah orang di sini yang pernah tahu cara mendapatkan SNMP untuk melaporkan volume 16+ TB di Windows?

Univ426
sumber
Anda mengatakan menginstal Net-SNMPD tidak memperbaiki masalah. Apakah maksud Anda bahwa itu tidak menyesuaikan AllocationUnits sebagai intendet atau tidakkah Anda berhasil menjalankannya?
Alexander Janssen
Tampaknya tidak mengubah unit alokasi. Layanan berjalan dengan baik, tetapi pada akhirnya, sepertinya tidak mengubah apa yang dilaporkan - nilai disk masih salah, dan berbagai nilai yang dilaporkan masih sama seperti sebelumnya. Saya dapat mengkonfirmasi, bahwa "Layanan SNMP" dihentikan, dan "Layanan Net-SNMP" telah dimulai. Apakah ada kemungkinan saya mengkonfigurasi sesuatu yang salah?
Univ426
Catatan tambahan kecil, saya mengekspos pohon menggunakan pengaturan v2c "rwcommunity <string>" yang sangat dasar untuk tujuan pengujian.
Univ426
Sebagai permulaan, Anda bisa meminta OID .1.3.6.1.4.1.2021.100.2.0untuk memeriksa apakah benar-benar Net-SNMP yang menjawab. Pada host saya (Linux) dengan Net-SNMP yang diberikannyaSNMPv2-SMI::enterprises.2021.100.2.0 = STRING: "5.4.1"
Alexander Janssen
Saya mendapatkan "UCD-SNMP-MIB :: versionTag.0 = STRING: 5.5" Kelihatannya sedikit berbeda, tetapi netSNMP 5.5 adalah versi yang telah saya instal. Mematikan Net-SNMP dan menghidupkan layanan Windows SNMP, saya mendapatkan "UCD-SNMP-MIB :: verionTag.0 = Tidak ada lagi variabel yang tersisa di tampilan MIB Anda" Jadi sepertinya NetSNMP sudah pasti berjalan
Univ426

Jawaban:

2

Beberapa waktu yang lalu ada patch untuk Net-SNMP 5.5 yang memperkenalkan opsi baru realStorageUnitsuntuk file konfigurasi.

Dari Redhat Bugreport # 748410 :

Untuk mengatasi masalah ini [nilai hrStorageSite negatif], pembaruan ini menambahkan opsi baru ke file konfigurasi /etc/snmp/snmpd.conf, realStorageUnits. Dengan mengubah nilai opsi ini menjadi 0, pengguna sekarang dapat mengaktifkan penghitungan ulang semua nilai di hrStorageTable untuk memastikan bahwa perkalian hrStorageSize dan hrStorage AllocationUnits selalu menghasilkan ukuran perangkat yang akurat.

(teks dalam [kurung] adalah milikku)

Jadi menambahkan direktif konfigurasi realStorageUnits 0ke snmpd.conf Anda mungkin bisa menyelesaikan masalah Anda.

Namun, nilai tidak akan benar hingga megabyte terakhir; ymmv.

Saya tidak tahu apakah tambalan ini termasuk dalam distribusi biner Net-SNMP Anda, tetapi akan lebih baik jika Anda dapat melaporkan hasilnya dan biner apa yang Anda gunakan. Juga, saya tidak mengujinya karena kurangnya perangkat keras yang memadai saat ini.

Alexander Janssen
sumber
Terima kasih Alex, kami telah mencobanya sebelumnya - dengan banyak harapan - sayangnya ketika kami melakukannya, kami mendapatkan kesalahan berikut - C: /usr/etc/snmp/snmpd.conf: baris 2: Peringatan: Token tidak dikenal: realStorageUnits. Apakah arahan itu hanya dijatuhkan di mana saja yaitu tepat di bawah "rwcommunity private" misalnya?
Univ426
Haha, ya saya pernah melakukan kesalahan itu sebelumnya - saya mengecek, tapi saya akan memperbarui pertanyaan saya dengan foto.
Univ426
Apakah ada kemungkinan saya menulis arahan yang salah?
Univ426
Tidak, ini terlihat bagus. Maaf, saya tersesat sekarang. Saya tidak memiliki mesin yang sesuai dengan versi Windows Anda untuk memverifikasi ini, tetapi, jujur ​​saja, snmpd.conf Anda terlihat sedikit "kecil". Coba konfigurasi minimal ini untuk v2c sebagai gantinya . Tidak yakin apakah itu akan membantu, tetapi itu akan memastikan bahwa tidak ada hal funky lainnya terjadi. Dan, adaptasi jaringan dalam direktif localnet.
Alexander Janssen
5.5 di Linux dengan konfigurasi minimal saya dimulai dengan senang hati dengan realStorageUnitsarahan. Jika ini masih tidak berhasil untuk Anda, saya merasa bahwa fitur ini entah bagaimana tidak termasuk dalam biner NetSNMP yang Anda gunakan.
Alexander Janssen
1

Saya tahu ini bukan jawaban langsung untuk pertanyaan Anda, tetapi mungkin itu akan membantu. Saya sarankan Anda mencoba menghubungi tim yang membuat SNMP Informan: http://www.snmp-informant.com/

Mereka memperluas agen SNMP Windows untuk mengatasi keterbatasan Microsoft untuk beberapa OID mereka. Saya menggunakannya dengan Zenoss untuk mendapatkan utilisasi CPU dan nomor penyimpanan yang lebih akurat dan ada peluang bagus untuk mengatasi masalah Anda, tetapi saya tidak bisa mengatakannya dengan pasti.

SpacemanSpiff
sumber
Anda juga bisa menggunakannya untuk meminta penghitung WMI, mungkin.
SpacemanSpiff
Bukan ide yang buruk, saya pasti akan membahas ini. Secara teori, pustaka Net-SNMP harus melakukan hal yang sama, tetapi tingkat kustomisasi yang terlihat mungkin sangat membantu, terima kasih!
Univ426