ไดรฟ์ข้อมูล 16TB และ SNMP บน Windows


12

เมื่อไดรฟ์ข้อมูลที่มีขนาดใหญ่กว่า 16TB กลายเป็นเรื่องธรรมดาเป็นที่ทราบกันดีว่าค่า 32 บิตที่ใช้ในการรายงานขนาดดิสก์และการใช้งานภายใน MIB "HOST-RESOURCES" มาตรฐานใน MIB ใน SNMP ไม่ใหญ่พอที่จะรายงานขนาดของดิสก์ที่เหมาะสม

Net-SNMP ดูเหมือนว่าจะได้รับการแก้ไขปัญหานี้โดยเพียงแค่จัดการค่าของ "AllocationUnits" เพื่อรักษาค่า 32 บิตสำหรับการใช้งานดิสก์ (เนื่องจากขนาดดิสก์ / การใช้งานทั้งหมดเท่ากับค่าพื้นที่ 32 บิตคูณหน่วยการจัดสรร) เพื่ออนุญาต สำหรับการคำนวณปริมาณที่มากกว่า 8 / 16TB สมมติว่าคุณไม่มีความสนใจการรายงานในหน่วยการจัดสรรและไม่เป็นที่น่าพอใจในระดับเล็กน้อย ดูเหมือนว่าจะเป็นทางออกที่สง่างาม

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

หน้าต่างที่สร้างขึ้นในบริการ SNMP ดูเหมือนว่าจะยังคงประสบกับข้อผิดพลาดนี้เพียงรายงาน modulo ของพื้นที่ดิสก์ที่ใช้ / กำหนดแล้วส่งผลให้การรายงานขนาดของดิสก์ไม่ถูกต้อง

มีวิธีการเปิดใช้งาน Windows เพื่อรายงานการใช้งานดิสก์อย่างถูกต้องสำหรับโวลุ่มที่เกิน 16TB หรือไม่? เราพยายามติดตั้ง Net-SNMP 5.5 x64 และปิดใช้งานบริการ Windows SNMP โดยสิ้นเชิง แต่สิ่งนี้ไม่ได้ช่วยแก้ไขปัญหาของเรา

เมื่อใช้ส่วนขยาย NetSNMP ข้อมูลที่เรารวบรวมสำหรับดิสก์เฉพาะที่เราสนใจมีดังนี้:

ป้อนคำอธิบายรูปภาพที่นี่

ผลลัพธ์เหล่านี้เหมือนกันไม่ว่าเราจะใช้บริการ vanilla Windows SNMP หรือ NetSNMP

ฉันเคยเห็นคนในชุมชน Cacti พูดถึงเพียงแค่การเขียนสคริปต์ทางออก น่าเสียดายที่เราใช้ Observium เพื่อการตรวจสอบระบบที่รวดเร็วและพื้นฐาน หากไม่สามารถแก้ไขปัญหาได้ที่ด้านข้างของหน้าต่าง Observium สามารถทำเพื่อรายงาน MIB ที่กำหนดเองได้หรือไม่

- อัปเดต -

จากการดูรายงานข้อผิดพลาดของการเพิ่ม "realStorageUnits" ในไฟล์ snmpd.conf เราพบปัญหาต่อไปนี้เมื่อตั้งค่าคำสั่งนั้น:

หน่วยจัดเก็บจริงของเรา

- อัปเดต 2 -

หลังจากการซ่อมบำรุงมากดูเหมือนว่า Net-SNMP เวอร์ชัน Windows ใด ๆ จะไม่เหมือนกับคำสั่ง "realStorageUnits" การรวมคำสั่งผลลัพธ์ในการเตือนเมื่อเริ่มต้น SNMP เราลองใช้เวอร์ชัน 5.5, 5.6 และ 5.7 มีใครเคยคิดวิธีรับ SNMP เพื่อรายงานวอลุ่ม 16+ TB บน Windows หรือไม่


คุณบอกว่าติดตั้ง Net-SNMPD ไม่ได้แก้ไขปัญหา คุณหมายความว่าไม่ได้ปรับ AllocationUnits ตามที่ตั้งใจไว้หรือไม่ประสบความสำเร็จในการทำให้มันทำงาน?
Alexander Janssen

ดูเหมือนจะไม่เปลี่ยนหน่วยการจัดสรร บริการทำงานได้ดี แต่ในที่สุดดูเหมือนว่าจะไม่เปลี่ยนแปลงสิ่งที่ถูกรายงาน - ค่าดิสก์ยังไม่ถูกต้องและค่าต่างๆที่รายงานยังคงเหมือนเดิม ฉันสามารถยืนยันได้ว่า "บริการ SNMP" หยุดทำงานและ "บริการ Net-SNMP" เริ่มขึ้น โอกาสใดที่ฉันกำหนดค่าสิ่งผิดปกติ
Univ426

บันทึกย่อขนาดเล็กเพิ่มเติมฉันกำลังแสดงต้นไม้โดยใช้การตั้งค่า v2c "rwcommunity <string>" พื้นฐานสำหรับการทดสอบ
Univ426

สำหรับการเริ่มต้นคุณสามารถสอบถาม OID .1.3.6.1.4.1.2021.100.2.0เพื่อตรวจสอบว่าเป็น Net-SNMP จริงหรือไม่ซึ่งเป็นการตอบรับ บนโฮสต์ (Linux) ของฉันกับ Net-SNMP มันมอบให้SNMPv2-SMI::enterprises.2021.100.2.0 = STRING: "5.4.1"
Alexander Janssen

ฉันได้รับ "UCD-SNMP-MIB :: versionTag.0 = STRING: 5.5" ดูต่างไปเล็กน้อย แต่ netSNMP 5.5 เป็นเวอร์ชั่นที่ฉันติดตั้ง ปิด Net-SNMP และเปิดบริการ Windows SNMP ฉันได้รับ "UCD-SNMP-MIB :: verionTag.0 = ไม่มีตัวแปรเหลืออยู่ในมุมมอง MIB" ดังนั้นดูเหมือนว่า NetSNMP จะทำงานแน่นอน
Univ426

คำตอบ:


2

เมื่อไม่นานมานี้มีแพตช์สำหรับ Net-SNMP 5.5 ซึ่งแนะนำตัวเลือกใหม่realStorageUnitsสำหรับไฟล์การกำหนดค่า

จากRedhat Bugreport # 748410 :

เมื่อต้องการแก้ไขปัญหานี้ [ค่าลบ hrStorageSite] การปรับปรุงนี้เพิ่มตัวเลือกใหม่ไปยังไฟล์การกำหนดค่า /etc/snmp/snmpd.conf, realStorageUnits ด้วยการเปลี่ยนค่าของตัวเลือกนี้เป็น 0 ผู้ใช้สามารถเปิดใช้งานการคำนวณค่าทั้งหมดใหม่ใน hrStorageTable เพื่อให้แน่ใจว่าการคูณของ hrStorageSize และ hrStorageAllocationUnits จะสร้างขนาดอุปกรณ์ที่ถูกต้องเสมอ

(ข้อความใน [วงเล็บ] เป็นของฉัน)

ดังนั้นการเพิ่มคำสั่งกำหนดค่าrealStorageUnits 0ให้ snmpd.conf ของคุณอาจแก้ไขปัญหา

อย่างไรก็ตามค่าจะไม่ถูกต้องจนถึงเมกะไบต์สุดท้าย YMMV

ฉันไม่สามารถบอกได้ว่าแพตช์นี้รวมอยู่ในการกระจายแบบไบนารีของคุณของ Net-SNMP แต่มันจะดีมากถ้าคุณสามารถรายงานผลลัพธ์และไบนารีที่คุณใช้อยู่ นอกจากนี้ฉันยังไม่ได้ทดสอบเพราะไม่มีฮาร์ดแวร์เพียงพอในขณะนี้


ขอบคุณ Alex เราเคยลองใช้มาก่อน - ด้วยความหวังมาก - โชคไม่ดีเมื่อเราทำเราได้รับข้อผิดพลาดดังต่อไปนี้ - C: /usr/etc/snmp/snmpd.conf: บรรทัด 2: คำเตือน: โทเค็นที่ไม่รู้จัก: realStorageUnits คำสั่งนั้นลดลงทุกที่หรือไม่เช่นด้านล่าง "rwcommunity private" เป็นต้น?
Univ426

ฮ่าฮ่าใช่ฉันเคยทำผิดพลาดมาก่อน - ฉันได้ตรวจสอบอีกครั้ง แต่ฉันจะอัปเดตคำถามของฉันด้วยรูป
Univ426

โอกาสใดที่ฉันกำลังเขียนคำสั่งนั้นผิด?
Univ426

ไม่มันดูดี ขอโทษด้วยตอนนี้ฉันหลงทาง ฉันไม่มีเครื่องที่เหมาะสมกับ Windows เวอร์ชันของคุณเพื่อตรวจสอบสิ่งนี้ แต่ตามความจริงแล้ว snmpd.conf ของคุณดูเหมือน "เล็ก" เล็กน้อย ลองนี้การตั้งค่าที่น้อยที่สุดสำหรับ v2c แทน ไม่แน่ใจว่ามันจะช่วยได้หรือไม่ แต่จะทำให้แน่ใจว่าไม่มีสิ่งขี้ขลาดอื่น ๆ เกิดขึ้น และปรับเครือข่ายในคำสั่ง localnet
Alexander Janssen

5.5 บน Linux ด้วยการตั้งค่าขั้นต่ำของฉันเริ่มต้นอย่างมีความสุขด้วยrealStorageUnitsคำสั่ง หากยังไม่ได้ผลสำหรับคุณฉันมีความรู้สึกที่แตกต่างว่าคุณลักษณะนี้จะไม่รวมอยู่ในไบนารี NetSNMP ที่คุณใช้อยู่
Alexander Janssen

1

ฉันรู้ว่านี่ไม่ใช่คำตอบสำหรับคำถามของคุณโดยตรง แต่อาจช่วยได้ ฉันขอแนะนำให้คุณลองติดต่อทีมที่ทำให้ SNMP Informant: http://www.snmp-informant.com/

พวกเขาขยายเอเจนต์ Windows SNMP เพื่อแก้ไขข้อ จำกัด ของ Microsoft สำหรับ OID บางตัว ฉันใช้กับ Zenoss เพื่อให้ได้การใช้ CPU และจำนวนที่เก็บข้อมูลที่แม่นยำยิ่งขึ้นและมีโอกาสที่ดีที่จะสามารถแก้ไขปัญหาของคุณได้ แต่ฉันไม่สามารถพูดได้อย่างแน่นอน


คุณสามารถใช้มันเพื่อสอบถามเคาน์เตอร์ WMI แทนก็ได้
SpacemanSpiff

ไม่ใช่ความคิดที่แย่ฉันจะต้องแน่ใจในเรื่องนี้ ในทางทฤษฎีแล้วไลบรารี Net-SNMP ควรทำเช่นเดียวกัน แต่ระดับการปรับแต่งที่ชัดเจนอาจมีประโยชน์ขอบคุณ!
Univ426
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.