[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Need help to setup Hardware Watchdog in Debian Jessie



I have been searching google and trying everything I can think of to get hardware watchdog setup but the server keeps rebooting after 5 minutes. What am I doing wrong, and what do I need to do to get hardware watchdog working in Debian Jessie. Please help.

Motherboard: X9DRH-7TF


***

List of IPMI BMC Info:

# dmidecode --type 38

# dmidecode 2.12
# SMBIOS entry point at 0x000f04c0
SMBIOS 2.7 present.

Handle 0x003f, DMI type 38, 18 bytes
IPMI Device Information
	Interface Type: KCS (Keyboard Control Style)
	Specification Version: 2.0
	I2C Slave Address: 0x00
	NV Storage Device: Not Present
	Base Address: 0x0000000000000CA2 (I/O)
	Register Spacing: Successive Byte Boundaries


***

Install procedure:

# apt-get install openipmi
# apt-get install ipmitool

While installing ipmitools there was an error message "Job for ipmievd.service failed...." because /dev/ipmi0 was not created yet. I rebooted and reinstalled ipmitool.

# apt-get install --reinstall ipmitool


# lsmod | grep ipmi

ipmi_wathdog
ipmi_si
ipmi_poweroff
ipmi_devintf
ipmi_msghandler


# dmesg | grep ipmi

ipmi message handler version 39.2
ipmi device interface
ipmi_si: probing via ACPI
ipmi_si: 00:07: [io 0x0ca2] regsize 1 spacing 1 irq 0
ipmi_si: Adding ACPI-specified kcs state machine
ipmi_si: probing via SMBIOS
ipmi_si: SMBIOS: io 0xca2 regsize 1 spacing 1 irq 0
ipmi_si: Adding SMBIOS-specified kcs state machine duplicate interface
ipmi_si: probing via SPMI
ipmi_si: SPMI: io 0xca2 regsize 1 spacing 1 irq 0
ipmi_si: Adding SPMI-specified kcs state machine duplicate interface
ipmi_si: Trying ACPI-specified kcs state machine at i/o address 0xca2, slave address 0x0, irq0 ipmi_si: 00:07: Found new BMC (man_id: 0x002a7c, prod_id: 0x0664, dev_id: 0x20)
ipmi_si: 00:07: IPMI kcs interface initialized

Is there a conflict with there being duplicate interfaces, and should one be used in place of the other and if so how?

***

The boot time startup screen listed

watchdog: iTCO_wdt: cannot register miscdev on minor=130 (err=-16).
watchdog: iTCO_wdt: a legacy watchdog module is probably present.


To solve this issue I blacklisted the following modules so they would not load into the kernel.

iTCO-wdt
iTCO_vendor_support

Also setting the following option in '/etc/default/grub' before running 'update-grub'

GRUB_CMDLINE_LINUX_DEFAULT="quiet nmi_watchdog=0"


While I was trouble shooting, I also blacklisted

mei
mei_me

And I used 'lsmod' to verified that none of the blacklisted modules were loaded into the kernel.


***

Then I install the watchdog service:

# apt-get install watchdog


I edited the watchdog daemon config file:

# nano /etc/watchdog.conf

watchdog-device=/dev/watchdog
watchdog-timeout=240
interval=20
logtick=30
realtime=yes
priority=1
admin=root
file=/var/log/messages
log-dir=/var/log/watchdog


# ipmitool mc watchdog get

Watchdog Time Use: SMS/OS (0x44)
Watchdog Time is: Started/Running
Watchdog Timer Action: Hard Reset (0x01)
Pre-timeout interval: 0 seconds
Timer Expiration Flags: 0x00
Initial Countdown: 240 sec
Present Countdown: 233 sec


# cat /var/log/syslog | grep watchdog

... watchdog[1087] :  starting daemon (5.14):
... watchdog[1087] :  int=20s realtime=yes sync=no soft=no mla=0 mem=0
... watchdog[1087] :  ping: no machine to check
... watchdog[1087] :  file: /var/log/messages:0
... watchdog[1087] :  pidfile: no server process to check
... watchdog[1087] :  interface: no interface to check
... watchdog[1087] :  temperature: no sensors to check
... watchdog[1087] : test=none(0) repair=none(0) alive=/dev/watchdog heartbeat=none to=root no_act=no force=no
... watchdog[1087] :  watchdog now set to 240 seconds
... watchdog[1087] :  hardware watchdog identity: IPMI


# nano /etc/default/watchdog

# Start watchdog at boot time? 0 or 1
run_watchdog=1
# Start wd_keepalive after stopping watchdog? 0 or 1
run_wd_keepalive=1
# Load module before starting watchdog
watchdog_module="none"


# nano /etc/default/ipmievd

# This is a shell script fraction
#
# To enable ipmievd set ENABLED="true" for sysvinit (ignored by systemd)
ENABLED="false"
#
#
# Options to the daemon ipmievd(8).
#
IPMIEVD_OPTIONS=open daemon"
ENABLE=true


In addition:

While I can manually start the 'watchdog.service' and 'ipmievd.service', these serviced do not start automatically at boot time.

'systemctl enable <service name>' does not enable either service with the following output listed:

Synchronizing state for watchdog.service with sysvinit using update-rc.d...
Executing /usr/sbin/update-rc.d watchdog defaults
Executing /usr/sbin/update-rc.d watchdog enable
The unit files have no [Install] section. they are not ment to be enabled using systemctl.
...

How should I start the services automatically at boot time?


***

The motherboard has a jumper (JI2C1) for the 'I2C Bus to PCI-Exp. Slots'. The jumper is currenly disabled. Does this jumper need to be enabled as the output for 'dmidecode --type 38' lists an 'I2C Slave Address: 0x00' ?


***

I read about setting the following parameters, but there was no /etc/default/openipmi file.

IPMI_SI=yes
DEV_IPMI=yes
IPMI_WATCHDOG=yes
IPMI_WATCHDOG_OPTIONS="timeout=300"
IPMI_POWEROFF=no
IPMI_POWERCYCLE=no
IPMI_IMB=no

Am I supposed to set these parameters and if so where?


***

Is there supposed to be an ipmi.service? If so how does it get installed?


Thanks

Azeem


Reply to: