I use cobbler to provision our new Dell servers, which is great but it needs the MAC addresses of the servers to identify each machine.
Previously, I have been doing this manually:
- log in to the DRAC web interface
- launch the java console
- rebooting the server
- go into the BIOS
- navigate to Embedded Devices
- manually record the MAC addresses
This takes quite a while, and is prone to error.
I recently had another 42 servers to deploy to I looked for a way to automate this process. I found one! Continue reading
Having got racadm working on my workstation (see my previous post), the next step is to perform initial DRAC configuration, ie. change the root password, set the SSL cert values, etc.
First I checked that all DRACs were pingable:
for h in $(seq -w 1 34); do
if ping -q -c 1 $hn >& /dev/null ; then
Next, I created a drac config file (named drac.cfg) containing the settings that are common to all devices:
I then ran a script to apply the common configuration to all devices. I also set the device-specific settings in the same script:
for n in $(seq -w 1 34); do
racadm -r $fullname -u root -p calvin config -g cfgLanNetworking -o cfgDNSRacName $host
racadm -r $fullname -u root -p calvin config -g cfgRacSecurity -o cfgRacSecCsrCommonName $fullname
racadm -r $fullname -u root -p calvin config -f drac.cfg
Notice that I don't change the default password until last.
Now, I just need to work out how to generate the CSR, sign it, and upload the new cert…
I wanted to install racadm on my local (non-Dell) workstation running Fedora 11. I tried installing via the repos as per the instructions, but without success. I eventually managed by downloading manually:
yum localinstall mgmtst-racadm-6.1.0-648.i386.rpm
The next problem was that racadm wouldn't run – it failed with the error:
ERROR: Failed to initialize transport
Running under strace showed that it seemed to be having problems finding a suitable ssl library – probably because racadm is i686 and I'm running it on x86_64. Using yum provides I determined that a suitable ssl lib was shipped with Adobe Reader, installed in /opt/Adobe/ on my workstation.
The following couple of symlinks fixed it:
ln -s ../../opt/Adobe/Reader9/Reader/intellinux/lib/libssl.so.0.9.8 /lib/i686/
ln -s ../../opt/Adobe/Reader9/Reader/intellinux/lib/libcrypto.so.0.9.8 /lib/i686/