SuperMicro IPMI/SOL and ipmitool troubles

Paul Mather paul at gromit.dlib.vt.edu
Tue Nov 11 18:40:33 UTC 2014


On Nov 11, 2014, at 12:30 PM, Dmitry Morozovsky <marck at rinet.ru> wrote:

> Dear colleagues,
> 
> I'm trying to set up sol console for supermicro servers, reading some documents

Aye, and there's the rub: I've found that the COM port that SOL uses 
varies across different Supermicro server models, and the BIOS support 
for assigning or determining the COM port differs (or is sometimes 
nonexistent) between those servers. :-(

I recently spent quite a bit of time trying to figure out why SOL was 
not working on a particular Supermicro server and it turned out to be 
that the COM port differed to those I'd used in previous setups.

>  
> including TestClusterOne, mainly:
> 
>> For serial redirection to work, in the BIOS you need to redirect to com port 
>> B and in /boot/device.hints you need hint.uart.1.flags="0x10" and enable getty on 
>> cuau1 
> 
> I can see BIOS screen ok; boot1/2 and boot/loader work fine also.  However, I 
> could not see kernel console output via SOL, neither getty on ttyu1 works.
> I tried different speeds, std vs 3wire, explicitely set console=comconsole 
> vidconsole -- no luck.
> 
> I even trued to use `ipmitool sol activate' on one side and `tip -115200 com2' 
> on the other -- stiil no data between.
> 
> Any hints?

In my trial and error, I've found that assigning the correct COM port 
is usually the thing that gets it working.  That comes down to the 
correct "comconsole_port" setting in /boot/loader.conf.

Here is what I put into /boot/loader.conf for serial/VGA console 
support on my servers:

=====

#
# System console support: uncomment only one "console=..." line below
#
# Speed and port for serial console
comconsole_speed=115200
comconsole_port=0x2F8
# Uncomment below to enable only serial console
#console="comconsole"
# Uncomment below to enable only VGA console
#console="vidconsole"
# Uncomment below to enable VGA and serial consoles (preference to VGA)
#console="vidconsole,comconsole"
# Uncomment below to enable serial and VGA consoles (preference to serial)
console="comconsole,vidconsole"
boot_multicons="YES"

=====

On the above particular system, SOL is on COM2, i.e., 
"comconsole_port=0x2F8".  On two other servers, though, SOL is on COM3, 
i.e., "comconsole_port=0x3E8".

Here are the settings for different COM ports:

COM1 (ttyu0): comconsole_port=0x3F8
COM2 (ttyu1): comconsole_port=0x2F8
COM3 (ttyu2): comconsole_port=0x3E8
COM4 (ttyu3): comconsole_port=0x2E8

Note that the /boot/loader.conf settings are all you need; there's no 
need for entries in /boot/device.hints and the likes.  It can all be 
set in /boot/loader.conf, at least on FreeBSD 9.3 and FreeBSD 10, which 
I'm using.

Once you've set up /boot/loader.conf, and assuming you have at least 
comconsole output enabled, you'll see BIOS and boot messages.  To get a 
login, you also need to enable the corresponding ttyuX in /etc/ttys.  
I've found that onifconsole works in 9.3; I'm not sure about 10.0, so 
you might need to use "on" there.  (Onifconsole appears to work in the 
10.1 release candidates.)

Note, that kernel console output appears to go both to the comconsole 
and vidconsole in a boot_multicons="YES" setup, but other console 
output (like system startup messages, etc.), goes only to the first one 
specified.  E.g., if you have console="comconsole,vidconsole" in 
/boot/loader.conf then you'll see some, but not all, console output on 
the vidconsole.  (You'll see all of it on the comconsole.)

I hope this helps, because I wasted almost a whole afternoon trying to 
figure out how to get SOL working on one Supermicro server last month. 
:-(

Cheers,

Paul.


More information about the freebsd-stable mailing list