สุนัขเฝ้าบ้าน: ตัวเลือกการกำหนดค่าพื้นฐานไม่ทำงานตามที่คาดไว้


0

ฉันใช้ Ubuntu 14.04 LTS และสุนัขเฝ้าบ้าน 5.13 เป้าหมายของฉันคือการบรรลุดังต่อไปนี้:

  • เรียกใช้สคริปต์ตรวจสอบภายนอกทุก ๆ 30 วินาที
  • รีบูตหากสคริปต์ล้มเหลวในช่วง 300 วินาที (เช่น 10 ครั้งในแถวที่ไม่สำเร็จ)

ฉันมีปัญหากับการกำหนดค่าจ้องจับผิดพื้นฐานที่สุด:

$ cat /etc/watchdog.conf
watchdog-device = /dev/watchdog
watchdog-timeout = 300
interval = 30
test-binary = /usr/local/sbin/watchdog_check.sh
realtime = yes
priority = 1

$ cat /etc/default/watchdog
run_watchdog=1
run_wd_keepalive=1
watchdog_module="none"
watchdog_options="-c /etc/watchdog.conf --verbose"

อ้างอิงจาก syslog

  1. watchdog-timeoutกำลังถูกตั้งค่าเป็น 254 วินาที (อธิบายไว้ที่นี่ )
  2. test-binaryระบบเรียบหลังจากความล้มเหลวครั้งแรกของ

มันเป็นพฤติกรรมที่คาดหวังหรือฉันขาดอะไรบางอย่าง?

ป.ล. ในขณะนี้ฉันได้ใช้ตรรกะ 'รอจนกระทั่ง 10 ข้อผิดพลาด' ในสคริปต์ของฉันเอง

คำตอบ:


0

ฉันไม่สามารถพูดถึงสิ่งที่watchdog-timeoutถูกจับได้ถึง 254 วินาที แต่สิ่งที่คุณเชื่อมโยงเพื่ออธิบายอย่างแน่นอน

ตัวนับ Watchdog มักจะไม่ทำงานในโหมด "N ความล้มเหลวในแถว" ในการบ่งชี้ข้อผิดพลาดแรกพวกเขาจะรีบูตเครื่องดังนั้นพฤติกรรมที่คุณเห็นคือวิธีที่ฉันคาดหวังให้ทำงานได้ โดยปกติแล้วพวกเขาจะใช้งานในฮาร์ดแวร์ที่ต้อง "กระตุ้น" ภายในระยะเวลาที่กำหนดไว้มิฉะนั้นจะเป็นการใช้พลังงานอย่างหนักรอบเครื่องโดยไม่มีการเตือนใด ๆ นี่คือการลองและช่วยเหลือจากความตื่นตระหนกของเคอร์เนล ฯลฯ


ใช่ช่วงเวลาไม่เกี่ยวกับเวลาระหว่างการตรวจสอบ interval = <interval> ตั้งช่วงเวลาระหว่างการเขียนสองครั้งไปยังอุปกรณ์เฝ้าดู เคอร์เนลไดรเวอร์คาดว่าคำสั่งเขียนทุกนาที มิฉะนั้นระบบจะทำการรีบูท ค่าเริ่มต้นคือ 1 วินาที ช่วงเวลาที่มากกว่าหนึ่งนาทีสามารถใช้ได้กับตัวเลือกบรรทัดคำสั่ง -f เท่านั้น
Volodymyr Linevych
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.