ESXi ipmitool(works on any Linux system as well)
So I have my lab up and fairly stable and decided I needed to configure IPMI on my ESXi nodes. Being lazy, I decided I did not want to shut my hosts down for any reason. Given that ESXi does not have a package manager, or repo to my knowledge I knew I had to get ipmitool binaries on the machines. I found a post here that pointed me in the right direction.
Files Needed
- ipmitool sources
- Linux ( I used Ubuntu 12.04.3)
- build-essentials
- 32 bit build libraries (gcc-multilib libc6-i386 libc6-dev-i386) Process I used
tar zxvf ipmitool-1.8.11.tar.gz
cd ipmitool-1.8.11/
./configure CFLAGS=-m32 LDFLAGS=-static
make
Moving the files
scp ./src/ipmitool user@ip.of.esxi:/scratch/
Configuring IPMI
./ipmitool lan set 1 ipsrc static
./ipmitool lan set 1 ipaddr IP.FOR.ESXi.IPMI
./ipmitool lan set 1 defgw ipaddr DEF.GW
./ipmitool lan set 1 netmask 255.255.255.0
./ipmitool user set name 2 root
./ipmitool user set password 2 Pa$$w0rD
./ipmitool user enable 2
./ipmitool lan print 1
Once that is done, you can just wire it in and have fun.
TL;DR
Written by Mitchell Turner
Related protips
4 Responses
I had been following the same post you referenced by Ryan Chapman trying to compile an ESXi compatible build of ipmitool. I've been tearing my hair out as I'm not a Linux person nor a developer. Your pre-compiled binary of ipmitool seemed to be a godsend but it doesn't work for me. When I run it I get the following:
./ipmitool: /lib/libc.so.6: version `GLIBC_2.7' not found (required by ./ipmitool)
This is on ESXi 5.1 build 799733 as well as update 2 build 2000251. Any suggestions?
It looks like it would need to be recompiled to target an older GLib. I may try to get it running on that version of ESXi.
On ESX 5.1, I couldn't eliminate the shared libraries from being used until I added the configure option '--disable-ipmishell' which was causing 'libreadline.so', etc. to be pulled in. Also, 'libc' was still a shared library, even after adding '-static-libgcc' to 'LDFLAGS'. So I had to build 'ipmitool' on a system that had a compatible 'libc.so.6', where executing /lib/libc.so.6 gave the same version as the ESX host.
It finally did build and work though. Thanks!
Thanks Jeff!!!!