Copyright (c) Intel Corporation 2003 December 2003 No Support is provided for or with the software described in this document. This readme.txt describes files that can be used for preparing Intel SCB2, SDS2, SHG2, SSH4 and SE7500WV2, SE7501WV2, SE7501BR2, SE7501HG2 server products to be automatically configured, out of the box, to work with Intel(R) Server Management Command Line Interface for Red Hat* Linux* v7.3 and v8.0. This readme.txt file is located on the server system in the /usr/local/cli/server directory after the installation of the software The sample source files described in the License and the Configuration File Sample Source Code (Section G) are a derivative of open source base code located at http://panicsel.sourceforge.net. A. BACKGROUND B. INSTALLATION: C. OPERATION: D. ENABLING CONFIGURATION ON REBOOT: E. DRIVER REQUIREMENT: F. DRIVER KERNEL RESTRICTIONS: G. CONFIGURATION FILE SAMPLE SOURCE CODE: ************************************************************************** This software program is available to you under the following license. * * Intel BSD + Patent License * * Recipient has requested a license and Intel Corporation ("Intel") is willing * to grant a license for the software entitled "bmcconfig" (the "Software") * being provided by Intel Corporation. The following definitions apply to * this License: "Licensed Patents" means patent claims licensable by Intel * Corporation which are necessarily infringed by the use or sale of the * Software alone or when combined with the operating system referred to below. * "Recipient" means the party to whom Intel delivers this Software. "Licensee" * means Recipient and those third parties that receive a license to any * operating system available under the GNU Public License version 2.0 or * later. * * Copyright (c) 1996-2003 Intel Corporation. All rights reserved. * * The license is provided to Recipient and Recipient's Licensees under the * following terms: * Redistribution and use in source and binary forms of the Software, with or * without modification, are permitted provided that the following conditions * are met: Redistributions of source code of the Software may retain the above * copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form of the Software may reproduce the above * copyright notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the distribution. * Neither the name of Intel Corporation nor the names of its contributors * shall be used to endorse or promote products derived from this Software with * out specific prior written permission. Intel hereby grants Recipient and * Licensees a non-exclusive, worldwide, royalty-free patent license under * Licensed Patents to make, use, sell, offer to sell, import and otherwise * transfer the Software, if any, in source code and object code form. This * license shall include changes to the Software that are error corrections or * other minor changes to the Software that do not add functionality or * features when the Software is incorporated in any version of a operating * system that has been distributed under the GNU General Public License 2.0 or * later. This patent license shall apply to the combination of the Software * and any operating system licensed under the GNU Public License version 2.0 * or later if, at the time Intel provides the Software to Recipient, such * addition of the Software to the then publicly available versions of such * operating system available under the GNU Public License version 2.0 or later * (whether in gold, beta or alpha form) causes such combination to be covered * by the Licensed Patents. The patent license shall not apply to any other * combinations that include the Software. No hardware per se is licensed * hereunder. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS CONTRIBUTORS BE LIABLE FOR * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. NO SUPPORT IS PROVIDED FOR OR WITH THIS SOFTWARE. *Other names and brands may be claimed as the property of others. ************************************************************************** A. BACKGROUND ************************************************************************** The Intel Command Line Interface (CLI) allows system administrators to manage multiple selected rack servers from a single Red Hat Linux console system shell prompt. The Command Line Interface software is distributed as a separate software package and is not part of software described in this readme. The Command Line Interface (CLI) software is supported on the Red Hat* Linux* v7.3 and v8.0, released for use on SCB2, SDS2, SHG2, SSH4 SE7500WV2, SE7501WV2, SE7501BR2, and SE7501HG2 server products. Some options configurable with this utility are not supported by all these platforms. In order for the CLI software on a console system to manage a remote system, the server firmware must be configured to permit such communication. All CLI connectivity and functionality is with the server firmware. The operating system is not involved or impacted by the command line interface connections. To configure the firmware for CLI connections, the user must run the System Setup Utility on the System Resource CD that accompanies each server board. This method requires the manual configuration of each new server. This process can be lengthy when multiple systems are to be configured and installed at one time. eg: rack cluster installations. In order to automate the server setup process, Intel has provided a configuration file that may be used. Also included are associated files that refresh the configuration on each system boot. The configuration file is; bmcconfig The bmcconfig and associated files are installed as part of the AUTOSERVERCFG-1.0-5.i386.rpm package file. See section D, "Enabling Configuration on Reboot" for more details. The driver packages are separate. See the section E, "Driver Requirements" below. The use and implementation depends on the user's environment. One possible method would be to include the files as part of a PXE boot image. When the server is powered on for the first time, it could automatically have its operating system downloaded. If the bmcconfig and associated script file are built into the operating system image, they will automatically configure the server for Command Line Interface access during the first boot and subsequent reboots. ************************************************************************** B. INSTALLATION: ************************************************************************** When downloaded from Support.Intel.Com this package is received as a gz (compressed) file. To expand the AUTOSERVERCFG.tar.gz file, execute the following commands gunzip AUTOSERVERCFG.tar.gz tar -xvf AUTOSERVERCFG.tar Once expanded, several package files (rpm) and this readme will be available. One of the rpm is for the bmcconfig application. The other rpm files contain IPMI drivers. See the "Driver Requirement" section for driver details. The script 'installme' can be used to install both the IPMI driver and the AUTOSERVERCFG rpm. Note that the 'installme' script will only work when using one of the kernel versions listed in the "Driver Requirement" section. To manually install the packages, first install the correct IPMI driver for the kernel version in use: rpm -i ipmidrvr-x.x.x.x-1.i386.rpm Then install the AUTOSERVERCFG package: rpm -i AUTOSERVERCFG-1.0-5.i386.rpm The bmcconfig executable is placed in the /usr/local/cli/server directory. A script file (bmcscript) is also installed to enable system setup on each operating system reboot. See "Enabling Configuration on Reboot" section for details. ************************************************************************** C. OPERATION: ************************************************************************** The supported server boards come from the factory with access for CLI over LAN disabled. (This has no impact to the normal network traffic used by the operating system.) The bmcconfig file may be used to automatically configures the following: - LAN Access set to "Always Available" - IP Address configuration set to "DHCP" or "Static" based on the operating system. - IP Address set to match the operating system address - Subnet Mask set to match the operating system - Network Gateway set to match the operating system. - Enable Serial Over LAN (SOL) redirection. (Not available on all platforms.) These firmware settings are the minimal set required to permit CLI access to the server. By default the server password is "null". Security may be increased by utilizing a command line argument of the bmcconfig to configure a password. This firmware password is not connected to the operating system and may be unique. The password may be up to 16 characters long. It may be any combination of alphabet or numeric characters. By default, no password is used by the server firmware. The command syntax: bmcconfig -P [password] eg: bmcconfig -P scb2cli In order to use this command line argument, the user must edit the script file that executes bmcconfig. The script is named bmcscript and is located in the /etc/rc.d/init.d/ directory. Below is a portion of the bmcscript file. The password argument has been added. case "$1" in "start") add_drv /usr/local/cli/server/bmcconfig -P scb2cli& ;; "stop") rem_drv ;; *) echo bmcscript:Unknown Argument $arg echo Usage:bmcscript [start/stop] exit 1 ;; esac The ampersand symbol (&) is used to make the execution of the bmcscript file "silent" during the boot process. Before the modification above, the script contained the following command; /usr/local/cli/server/bmcconfig& In the password addition sample above, the ampersand is moved to the last character on the line, after the password has been added. The password is "scb2cli" and then the ampersand is appended. The use of the ampersand is required for correct boot execution of the bmcscript file. Once the change has been made, the password argument will be executed during each system reboot. In order to reduce visibility of the information in the script file, the user should take appropriate measures with the access or viewing options of the file. ************************************************************************** D. ENABLING CONFIGURATION ON REBOOT ************************************************************************** In order for the bmcconfig file to automatically configure the server it must execute on every system reboot. This will keep the IP address assigned to the firmware in sync with the IP address of the operating system, even if the operating system address is modified. This automated process only happens on a system reboot so if you make an IP address change, the firmware will retain the old address information until the next reboot. The Command Line Interface software will be able to connect, but only to the old IP address that the firmware has stored. The operating system will be using the new address. As part of the software installation, a script file is installed. The script file is located in the /etc/rc.d/init.d directory. The script file handles the execution of bmcconfig. ************************************************************************** E. DRIVER REQUIREMENT ************************************************************************** In order for the bmcconfig command to successfully set the server firmware configuration, it must be able to communicate with the server firmware. A driver is required to complete the communication path. The driver used depends on whether the server board is using one or two processors and the Red Hat Linux kernel version installed on the server. The driver packages that ship with this software are: ipmidrvr-2.4.18.3-1.i386.rpm ipmidrvr-2.4.18.3smp-1.i386.rpm ipmidrvr-2.4.18.14-1.i386.rpm ipmidrvr-2.4.18.14bigmem-1.i386.rpm ipmidrvr-2.4.18.14smp-1.i386.rpm The driver will be installed to the /usr/local/ism/driver directory. IMPORTANT: The bmcscript script loads the IPMI driver from the /usr/local/ism/driver directory. You may need to edit this script to load the driver from the correct directory if you did not install the one of the driver packages listed above. The driver is loaded automatically at each server reboot. The driver is loaded by the same bmcscript file. This package also contains the file installme that demonstrates how to automate installation of the appropriate driver and the bmcconfig application. ************************************************************************** F. DRIVER KERNEL RESTRICTIONS ************************************************************************** The drivers included with the package are compiled specifically for the standard version of Red Hat Linux 7.3, (kernel 2.4.18.3), or Red Hat Linux 8.0 (kernel 2.4.18.14). Users may have previously needed to recompile their kernel when adding functionality to the operating system. If your current Red Hat Linux kernel is different from the versions listed above, the drivers included with this package will not work. Intel provides for downloading the components needed to recompile the driver for use on a different version of the Red Hat Linux kernel. Go to the following web location. http://support.intel.com/support/motherboards/server/isc/software.htm Release notes and a readme file are available at the web location for further details. The recompile instructions give details on how to build the driver for one or two processor systems. Once the driver has been recompiled with the Red Hat Linux kernel, the bmcconfig file should operate as expected. ************************************************************************** G. CONFIGURATION FILE SAMPLE SOURCE CODE ************************************************************************** The commands the bmcconfig file sends are to a microcontroller on the server baseboard called the Baseboard Management Controller (BMC). The commands sent to the BMC are based on an industry specification called the Intelligent Platform Management Interface (IPMI). For details on IPMI see http://www.intel.com/design/servers/ipmi/index.htm The IPMI specification provides access to more configuration than enabling LAN Access for CLI. Following the IPMI specification, users could modify the source file to enable other IPMI features of the server. eg: - Enable LAN Alerts and send them to a specific IP address. - Enable modem paging and enter the paging system phone number. - Control which system events generate modem or LAN alerts The sample source files are located in the /usr/local/cli/server/src directory of the console system. The files included are; bmcconfig.c makefile The source files included here are a derivative of open source base code located at http://panicsel.sourceforge.net. The base code files are panicsel-1.1.3-2.i386.rpm panicsel-1.1.3-2.src.rpm Information concerning the base code files should be directed to the http://panicsel.sourceforge.net web site. // End of File //