setting_up_ipmi
This is an old revision of the document!
In general, the BMC must be set up from within the OS unless you feel like going through the console on quite a few servers. Each manufacturer is of course different.
Dell
Dell is pretty good about using IPMItool for everything. The iDRAC 6 Express tends to flake out though. Script to set it up is below:
- setup_ipmi_dell.sh
#!/bin/sh IPSRC_DEVICE=eth0 IPMITOOL_LAN="ipmitool lan set 1" IPMITOOL_USER="ipmitool user" PASSWORD="somepasshere" /sbin/service ipmi start bmcip=`/sbin/ifconfig $IPSRC_DEVICE | awk '/inet addr/ {print $2}' | sed s/addr:// | awk -F. '{print $1 "." $2 "." $3+16 "." $4}'` $IPMITOOL_LAN ipsrc static $IPMITOOL_LAN ipaddr $bmcip $IPMITOOL_LAN netmask 255.255.240.0 $IPMITOOL_LAN defgw ipaddr 10.128.16.100 $IPMITOOL_LAN access on $IPMITOOL_USER set password 2 $PASSWORD /sbin/service ipmi stop
HP
HP's ILO is somewhat non-standard. You have to set parts of it up with hponcfg from their SmartStart scripting toolkit. Hponcfg script:
- setup_ilo3_initial.sh
#!/bin/bash export PATH=/sbin:/usr/sbin:$PATH export LD_LIBRARY_PATH=/home/mfenn/hp-psp/psp-8.70.rhel5.x86_64.en/hp-health-8.7.0.22-11.rhel5.x86_64/usr/lib:$LD_LIBRARY_PATH cd /home/mfenn/hp-sstools/ss-scripting-toolkit-linux-8.70/utilities ./hponcfg -f hponcfg-setshared.xml ./hponcfg -f hponcfg-setuser.xml
- hponcfg-setshared.xml
<!-- HPONCFG VERSION = "3.0" --> <!-- Device: iLO3 Firmware Version : 1.16 --> <RIBCL VERSION="2.0"> <LOGIN USER_LOGIN="admin" PASSWORD="password"> <RIB_INFO mode="write"><MOD_NETWORK_SETTINGS> <SHARED_NETWORK_PORT VALUE="Y"/> </MOD_NETWORK_SETTINGS></RIB_INFO> </LOGIN> </RIBCL>
- hponcfg-setshared.xml
<!-- HPONCFG VERSION = "3.0" --> <!-- Device: iLO3 Firmware Version : 1.16 --> <RIBCL VERSION="2.0"> <LOGIN USER_LOGIN="admin" PASSWORD="password"> <USER_INFO mode="write"> <DELETE_USER USER_LOGIN="Administrator"/> <ADD_USER USER_NAME="root" USER_LOGIN="root" PASSWORD="somepasshere"> <ADMIN_PRIV value="Y"/><REMOTE_CONS_PRIV value="Y"/> <RESET_SERVER_PRIV value="Y"/> <VIRTUAL_MEDIA_PRIV value="Y"/> <CONFIG_ILO_PRIV value="Y"/> </ADD_USER> </USER_INFO> </LOGIN> </RIBCL>
The rest is ipmitool as normal. The ILO seems to not like issuing command too quickly, hence the sleeps:
- setup_ipmi_ilo3.sh
#!/bin/sh IPMITOOL_LAN="ipmitool lan set 2" /sbin/service ipmi start bmcip=`/sbin/ifconfig eth0 | awk '/inet addr/ {print $2}' | sed s/addr:// | awk -F. '{print $1 "." $2 "." $3+16 "." $4}'` $IPMITOOL_LAN ipsrc static sleep 60 $IPMITOOL_LAN ipaddr $bmcip sleep 60 $IPMITOOL_LAN netmask 255.255.240.0 sleep 60 $IPMITOOL_LAN defgw ipaddr 10.128.16.100 sleep 60
IBM
IBM can be standard or nonstandard depending on the server.
System x3755
Easy, standard IPMItool:
- setup_ipmi_x3755.sh
#!/bin/sh IPMITOOL_LAN="ipmitool lan set 1" IPMITOOL_USER="ipmitool user" PASSWORD="somepasshere" /sbin/service ipmi start bmcip=`/sbin/ifconfig eth0 | awk '/inet addr/ {print $2}' | sed s/addr:// | awk -F. '{print $1 "." $2 "." $3+16 "." $4}'` $IPMITOOL_LAN ipsrc static $IPMITOOL_LAN ipaddr $bmcip $IPMITOOL_LAN netmask 255.255.240.0 $IPMITOOL_LAN defgw ipaddr 10.128.16.100 $IPMITOOL_LAN access on $IPMITOOL_USER set name 2 root $IPMITOOL_USER set password 2 $PASSWORD /sbin/service ipmi stop
System x3450 794852X
Uses IPMItool, but requires some magic.
- setup_ipmi_x3450.sh
#!/bin/sh # based on http://www-947.ibm.com/support/entry/portal/docdisplay?brand=5000008&lndocid=MIGR-5078398 IPMITOOL_LAN="ipmitool lan set 1" IPMITOOL_USER="ipmitool user" IPMITOOL_RAW="ipmitool raw" IPMITOOL_CHANNEL="ipmitool channel" PASSWORD="somepasshere" /sbin/service ipmi start $IPMITOOL_RAW 0x30 0x13 0xff 0x0 0x0 0x0 $IPMITOOL_LAN ipsrc static $IPMITOOL_USER disable 1 $IPMITOOL_USER disable 3 $IPMITOOL_USER disable 4 $IPMITOOL_USER enable 2 $IPMITOOL_USER priv 2 4 1 $IPMITOOL_CHANNEL setaccess 1 2 callin=on ipmi=on link=off privilege=4 $IPMITOOL_USER set name 2 root $IPMITOOL_USER set password 2 $PASSWORD $IPMITOOL_USER list 1 $IPMITOOL_RAW 0x6 0x40 0x1 0x42 0x44 $IPMITOOL_RAW 0x6 0x40 0x1 0x82 0x84 $IPMITOOL_LAN arp respond on $IPMITOOL_LAN auth admin md5 $IPMITOOL_LAN cipher_privs uaaaXXXXXXXXXXX bmcip=`/sbin/ifconfig eth0 | awk '/inet addr/ {print $2}' | sed s/addr:// | awk -F. '{print $1 "." $2 "." $3+16 "." $4}'` $IPMITOOL_LAN ipaddr $bmcip $IPMITOOL_LAN netmask 255.255.240.0 $IPMITOOL_LAN defgw ipaddr 10.128.16.100 /sbin/service ipmi stop
setting_up_ipmi.1331644145.txt.gz · Last modified: 2012/03/13 09:09 by Michael Fenn