Câu hỏi Nagios - kiểm tra lại dịch vụ sau khi "xuống" máy đi kèm "lên"


Hãy nói rằng tôi có một nagios khách hàng. Nó có thời gian ngừng hoạt động theo lịch trình từ 8 giờ sáng thứ Hai đến 8 giờ sáng thứ Ba và máy bị tắt trong toàn bộ thời gian.

Có một dịch vụ kiểm tra nó thực hiện một lần mỗi ngày

check_interval      1440

Hãy nói rằng việc kiểm tra xảy ra sẽ được lên lịch vào 8 giờ tối. Vì vậy, lúc 8 giờ tối thứ Hai, kiểm tra xảy ra và không thành công, và nagios không làm gì vì thời gian ngừng hoạt động theo lịch trình.

Thứ Ba lúc 8 giờ sáng. Máy quay trở lại. Nhưng một dịch vụ đó sẽ vẫn còn trong CRITICAL cho đến 8 giờ tối khi kiểm tra theo lịch trình tiếp theo xảy ra.

Có cách nào tôi có thể nói nagios "Duy trì check interval 1440; nhưng, nếu bạn thấy máy đi xuống và quay trở lại, thì hãy kiểm tra lại bất kể khoảng thời gian "?


0
2017-07-21 12:13


gốc




Các câu trả lời:


Tôi đã nhận được câu trả lời từ một diễn đàn khác.

Tôi gắn một xử lý sự kiện (TIL) cho đối tượng host của tôi:

define host{
    use     linux-server    ; Inherit default values from a template
    host_name   volvo      ; The name we're giving to this host
    alias       volvo  ; A longer name associated with the host
    event_handler       host_state_change
    }

Đã liên kết tên event_handler mới của tôi với tập lệnh shell

define command{
        command_name    host_state_change
        command_line    $USER1$/eventhandlers/hostup.sh $HOSTNAME$ $HOSTSTATE$
    }

Và tạo ra một kịch bản để kiểm tra trạng thái mới là gì (tức là, nó thay đổi từ DOWN thành UP, vì vậy tôi đang tìm kiếm UP) và bắt buộc kiểm tra dịch vụ thông qua tệp lệnh

    printf "[%lu] SCHEDULE_FORCED_SVC_CHECK;$hostname;serial_number;$NOW\n" $NOW > $COMMANDFILE

0
2017-07-22 12:02