Khối lượng 16TB và SNMP trên Windows


12

Khi dung lượng lớn hơn 16TB trở nên phổ biến hơn, người ta nhận ra rằng giá trị 32 bit được sử dụng để báo cáo kích thước và mức sử dụng của đĩa trong MIB "HOST-RESOURCES" tiêu chuẩn trong SNMP không đủ lớn để báo cáo kích thước đĩa phù hợp.

Net-SNMP dường như đã giải quyết vấn đề này bằng cách thao tác giá trị của "AllocationUnits" để duy trì giá trị 32 bit cho việc sử dụng đĩa (vì tổng kích thước / mức sử dụng đĩa bằng với giá trị không gian 32 bit của đơn vị phân bổ), cho phép để tính toán khối lượng lớn hơn 8 / 16TB. Giả sử bạn không có bất kỳ mối quan tâm báo cáo nào trong đơn vị phân bổ và sẽ ổn với mức độ không chính xác nhỏ. đây có vẻ là một giải pháp tao nhã

https://ormszilla.redhat.com/show_orms.cgi?id=654384

Tuy nhiên, dịch vụ SNMP tích hợp của Window dường như tiếp tục gặp phải lỗi này, chỉ đơn giản là báo cáo modulo của không gian đĩa được sử dụng / được chỉ định, dẫn đến báo cáo kích thước đĩa không chính xác.

Có cách nào để cho phép Windows báo cáo chính xác việc sử dụng đĩa cho khối lượng trên 16TB không? Chúng tôi đã cố gắng cài đặt Net-SNMP 5.5 x64 và vô hiệu hóa hoàn toàn dịch vụ Windows SNMP, tuy nhiên điều này không may không khắc phục được sự cố của chúng tôi.

Khi sử dụng các tiện ích mở rộng NetSNMP, thông tin chúng tôi thu thập cho đĩa cụ thể mà chúng tôi quan tâm như sau:

nhập mô tả hình ảnh ở đây

Các kết quả này là như nhau bất kể chúng tôi đang sử dụng dịch vụ Windows SNMP của vanilla hay NetSNMP.

Tôi đã thấy những người trong cộng đồng Cacti đề cập đến việc viết ra một giải pháp. Thật không may, chúng tôi đang sử dụng Observium để theo dõi hệ thống nhanh chóng và cơ bản. Nếu vấn đề không thể được khắc phục ở phía Cửa sổ, liệu Observium có thể được thực hiện để báo cáo MIB tùy chỉnh không?

- Cập nhật -

Nhìn vào đề cập của báo cáo lỗi về việc thêm "realStorageUnits" vào tệp snmpd.conf, chúng tôi đã gặp phải sự cố sau khi cài đặt lệnh đó:

realStorageUnits bảo lãnh cho chúng tôi

- Cập nhật 2 -

Chà, sau nhiều lần mày mò, nó không giống bất kỳ phiên bản Windows nào của Net-SNMP như chỉ thị "realStorageUnits". Bao gồm các kết quả chỉ thị trong một cảnh báo khi bắt đầu SNMP. Chúng tôi đã thử trên phiên bản 5.5, 5.6 và 5.7. Có ai ở đây đã từng tìm ra cách để SNMP báo cáo khối lượng 16+ TB trên Windows chưa?


Bạn nói rằng việc cài đặt Net-SNMPD không khắc phục được sự cố. Bạn có nghĩa là nó không điều chỉnh AllocationUnits như ý định hoặc bạn đã không thành công trong việc chạy nó?
Alexander Janssen

Nó dường như không thay đổi các đơn vị phân bổ. Dịch vụ đã chạy tốt, nhưng cuối cùng, nó dường như không thay đổi những gì được báo cáo - giá trị đĩa vẫn không chính xác và các giá trị khác nhau được báo cáo vẫn giống như trước đây. Mặc dù vậy, tôi có thể xác nhận rằng "Dịch vụ SNMP" đã bị dừng và "Dịch vụ Net-SNMP" đã được bắt đầu. Bất cứ cơ hội nào tôi đang cấu hình một cái gì đó sai?
Univ426

Một lưu ý nhỏ nữa, tôi đang phơi bày các cây bằng cách sử dụng thiết lập v2c "rwcommunity <string>" rất cơ bản cho mục đích thử nghiệm.
Univ426

Để bắt đầu, bạn có thể truy vấn OID .1.3.6.1.4.1.2021.100.2.0để kiểm tra xem đó có thực sự là Net-SNMP đang trả lời hay không. Trên máy chủ (Linux) của tôi có Net-SNMP, nó mang lạiSNMPv2-SMI::enterprises.2021.100.2.0 = STRING: "5.4.1"
Alexander Janssen

Tôi nhận được "UCD-SNMP-MIB :: versionTag.0 = STRING: 5.5" Trông hơi khác một chút, nhưng netSNMP 5.5 là phiên bản tôi đã cài đặt. Tắt Net-SNMP và bật dịch vụ SNMP của Windows, tôi nhận được "UCD-SNMP-MIB :: verionTag.0 = Không còn biến nào trong Chế độ xem MIB" Vì vậy, có vẻ như NetSNMP chắc chắn đang chạy
Univ426

Câu trả lời:


2

Cách đây một thời gian, có một bản vá cho Net-SNMP 5.5 đã giới thiệu một tùy chọn mới realStorageUnitscho tệp cấu hình.

Từ Redhat Bugreport # 748410 :

Để giải quyết vấn đề này [giá trị hrStorageSite âm], bản cập nhật này thêm một tùy chọn mới vào tệp cấu hình /etc/snmp/snmpd.conf, realStorageUnits. Bằng cách thay đổi giá trị của tùy chọn này thành 0, giờ đây người dùng có thể kích hoạt tính toán lại tất cả các giá trị trong hrStorageTable để đảm bảo rằng phép nhân hrStorageSize và hrStorageAllocationUnits luôn tạo ra kích thước thiết bị chính xác.

(văn bản trong [ngoặc] là của tôi)

Vì vậy, việc thêm chỉ thị cấu hình realStorageUnits 0vào snmpd.conf của bạn có thể giải quyết vấn đề của bạn.

Tuy nhiên, các giá trị sẽ không chính xác cho đến megabyte cuối cùng; ymmv.

Tôi không thể biết liệu bản vá này có được bao gồm trong bản phân phối nhị phân Net-SNMP của bạn hay không, nhưng sẽ rất tuyệt nếu bạn có thể báo cáo kết quả và loại nhị phân nào bạn đang sử dụng. Ngoài ra, tôi đã không kiểm tra nó vì thiếu phần cứng đầy đủ ngay bây giờ.


Cảm ơn Alex, chúng tôi đã thử điều đó trước đây - với rất nhiều hy vọng - thật không may khi chúng tôi làm điều đó, chúng tôi gặp phải lỗi sau - C: /usr/etc/snmp/snmpd.conf: dòng 2: Cảnh báo: Mã thông báo không xác định: realStorageUnits. Có phải lệnh đó đã bị bỏ ở bất cứ đâu tức là ngay bên dưới "rwcommunity private" chẳng hạn?
Univ426

Haha, vâng, tôi đã mắc lỗi đó một lần trước đây - tôi đã kiểm tra lại, nhưng tôi sẽ cập nhật câu hỏi của mình bằng một bức ảnh.
Univ426

Bất cứ cơ hội nào tôi đang viết chỉ thị đó sai?
Univ426

Không, nó có vẻ tốt. Xin lỗi, tôi bị lạc bây giờ. Tôi không có một máy thích hợp với phiên bản Windows của bạn để xác minh điều này, nhưng thành thật mà nói, snmpd.conf của bạn trông hơi "nhỏ". Thay vào đó, hãy thử cấu hình tối thiểu này cho v2c . Không chắc chắn nếu nó sẽ giúp, nhưng nó sẽ đảm bảo rằng không có gì khác xảy ra. Và, điều chỉnh mạng trong chỉ thị localnet.
Alexander Janssen

5.5 trên Linux với cấu hình tối thiểu của tôi bắt đầu vui vẻ với realStorageUnitschỉ thị. Nếu điều này vẫn không hiệu quả với bạn, tôi có cảm giác khác biệt rằng tính năng này bằng cách nào đó không được bao gồm trong nhị phân NetSNMP bạn đang sử dụng.
Alexander Janssen

1

Tôi biết đây không phải là câu trả lời trực tiếp cho câu hỏi của bạn, nhưng có lẽ nó sẽ giúp ích. Tôi khuyên bạn nên thử liên hệ với nhóm tạo SNMP Informant: http://www.snmp-informant.com/

Họ mở rộng tác nhân Windows SNMP để khắc phục những hạn chế của Microsoft đối với một số OID của họ. Tôi sử dụng nó với Zenoss để có được số lần lưu trữ và sử dụng CPU chính xác hơn và rất có thể điều này sẽ giải quyết vấn đề của bạn, nhưng tôi không thể nói chắc chắn được.


Thay vào đó, bạn cũng có thể sử dụng nó để truy vấn các bộ đếm WMI.
SpacemanSpiff

Một ý tưởng không tồi, tôi chắc chắn sẽ tham gia vào việc này. Về lý thuyết, các thư viện Net-SNMP cũng nên làm như vậy, nhưng mức độ tùy biến rõ ràng của chúng có thể hữu ích, cảm ơn!
Univ426
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.