UpdateXpress firmware update scripts for BladeCenter Version 1.00 BuildID: BMOW12AUS File Name: readme.txt ****************************************************************** | | | IBM(R) UpdateXpress Firmware Update Scripts for BladeCenter, | | Version 1.0 | | | | (C) Copyright International Business Machines Corporation, | | 2004. All rights reserved. | | | | US Government Users Restricted Rights -- Use, duplication | | or disclosure restricted by GSA ADP Schedule Contract with | | IBM Corp. | | | | Note: Before using this information and the product it | | supports, read the general information under "NOTICES | | AND TRADEMARKS" | | in this document. | | | | Updated 05 October 2004 | | | ****************************************************************** Contents --------- 1.0 About this README file 1.1 Abbreviations and terminology 1.2 Overview 1.3 Minimum requirements 1.4 Supporting operating system 2.0 Change History 3.0 Getting Started 3.1 Obtaining the product 3.2 Obtaining the firmware updates 3.3 Manually creating the BladeCenterupdate.rsp file 3.4 Set the PYTHONPATH environment variable 4.0 Starting the update process 4.1 Specifying a default response file 4.2 Displaying the version 4.3 Viewing help 4.4 Viewing verbose information 5.0 Return Codes 6.0 Limitations 6.1 Management modules 6.2 IBM ESM configuration 6.3 General 7.0 Web Sites and Support 8.0 Notices and Trademarks 9.0 Disclaimer 1.0 About this Readme file ----------------------------- This readme file provides information about IBM UpdateXpress Firmware Update Scripts for BladeCenter Version 1.00 which is the initial release of this product. 1.1 Abbreviations and terminology ----------------------------------- The following abbreviations are used in this readme file: ESM Ethernet Switch Module FTP File Transfer Protocol GUI Graphical user interface IP Internet protocol LAN local area network TCP/IP Transmission Control Protocol/Internet Protocol (The standard communications protocol of the Internet) TFTP Trivial File Transfer Protocol UXBC UpdateXpress firmware update scripts for BladeCenter An "administrative system" is the system where the UpdateXpress Firmware Update Scripts for BladeCenter process runs. A "target" is the BladeCenter chassis and all of its components, including the management module, I/O Modules, and blades. 1.2 Overview ----------------- UpdateXpress Firmware Update Scripts for BladeCenter (UXBC) is a process that enables firmware updates for the components listed below to be run in a remote, unattended fashion on a single BladeCenter chassis: o Management modules (one or two) o 4-Port Ethernet Switch Module o Nortel L2-7 Gb Ethernet Switch Module The scripts update all the supported components in the chassis to the specified firmware. You cannot select components within the chassis to update. Command line parameters needed to launch the update process will be required before starting. The solution consists of a top level script (ChassisUpdate.py) written in the Python scripting language, which drives other subscripts to run. 1.3 Minimum Requirements: -------------------------- The following hardware is required: o 1 GHZ or faster processor o 512 MB memory o 1 Gigabit Ethernet network card o 2 MB available disk space UpdateXpress firmware update scripts for BladeCenter is controlled and run through Python scripts. The Python interpreter (Version 2.3 or later) must be installed only on the administrative system. You can download the Python interpreter for your operating system from the Web: www.python.org A TFTP server is required for you to obtain the firmware updates of the modules, such as switches. The TFTP server can be installed anywhere on the network that is accessible to the switches that need to be updated. It is recommended that the UXBC scripts be run on a LAN behind a firewall. All media and transmission types that reliably support TCP/IP and FTP in a LAN environment are supported. 1.4 Supporting operating systems -------------------------------- The UXBC scripts can be run from the following operating systems installed on the administrative system: o Windows 2000 (all versions) o Windows XP o Windows 2003 (all versions) o Red Hat Linux ES 2.1 o Red Hat Linux ES 3.0 o SLES 8.0 2.0 CHANGE HISTORY ------------------- This is the initial release of UpdateXpress Firmware Update Scripts for BladeCenter. 2.1 Version 1.00 BUILDID: BMOW12AUS - Initial Release 3.0 GETTING STARTED ---------------------- There is no installation of the scripts. In a Windows environment, no additional registry entries or shared DLLs are required. Make sure that all the minimum requirements are met (see 1.3 Minimum requirements). 3.1 Obtaining the product ------------------------- Download the UXBC zipped file from the IBM support Web site: www.ibm.com/pc/support/ . Extract the contents of the zipped file and make sure that the unzip process preserves the case and file permissions. All files with .py extensions must be executable. When the UXBC file is unzipped, the following directories are created: (example unzips package to c: drive) c:BladeCenterUpdates (root of the package) c:BladeCenterUpdates\Common - Common functions/definitions c:BladeCenterUpdates\IOModules - Scripts for I/O Modules such as switches c:BladeCenterUpdates\MM - Scripts pertaining to the Management module(s) Tip: Print the sample response file located in c:BladeCenterUpdates\BladeCenterUpdates.rsp Keep handy for reference to create your custom response file in the instructions to follow. 3.2 Obtaining the firmware updates for use with the UXBC tool --------------------------------------------------------------- Note: As you become familiar with this tool and how to use the BladeCenterUpdates.rsp file, you may want to use the printed copy of the sample file to update it with the custom information (or edit a copy of the file with notepad). Complete the following steps to obtain the firmware updates for use with the UpdateXpress Firmware Update Scripts for BladeCenter: 1. Download the latest firmware update for the management modules from the IBM Support Web site. This update file is a zipped file. Do not unzip this update file in the \BladeCenterUpdates directory or you will end up replacing the UXBC readme file with the management module package readme file. 2. Unzip the package and place all files with file extension .PKT in any location that the administrative system can access. You may then move all the .PKT files to the default directory of the UXBC package (\BladeCenterUpdates). If you place the .PKT files in an alternative location, make a note of the path; you will need this information to fill in the response file later on. 3. Download the latest firmware updates for the I/O modules. See 1.2 Overview for the I/O modules that UXBC supports. You can obtain the firmware for the I/O modules from the IBM Support Web site. 4. Unzip the firmware updates to the TFTP server. Record the following information: o The path to the unzipped firmware files. o The names of the I/O module firmware files 3.3 Manually creating the BladeCenterUpdates.rsp file ------------------------------------------------------ A significant amount of information is required to perform the firmware updates of a BladeCenter chassis. The UXBC software obtains the parameters that are needed to perform the updates by using the information from a previously created response file. The default name of this response file is BladeCenterUpdates.rsp. A sample response file is in the \BladeCenterUpdates directory of the UXBC package. Review this sample file and modify it for your environment. The sample file has detailed information for each of the fields. If you want to use another name and path for the response file, specify that name and path on the command line when starting the UXBC process. When the response file is completed, you can run the main script (ChassisUpdate.py). The update process uses the information in the response file as input to the script. Note that after the initial response file is created for any BladeCenter chassis, future firmware update processes using the same response file might require modifications if information such as IP addresses or firmware file names has changed. 3.4 Setting the PYTHONPATH environment variable ------------------------------------------------- For the UXBC to run, the PYTHONPATH environment variable must be set to the directory above the BladeCenterUpdates directory. Examples: Microsoft Windows DOS environment c:\uxbcu\BladeCenterUpdates>set PYTHONPATH=c:\uxbcu\ Linux BASH environment [root@localhost /root/uxbcu/BladeCenterUpdates]# export PYTHONPATH=/root/uxbcu 4.0 Starting the update process --------------------------------- When you have completed all the steps described in "3.0 Getting started," you can start the UXBC firmware update process. To start the UXBC process, start the main script, ChassisUpdate.py. Important: Do not run ChassisUpdate.py from a blade that is in the BladeCenter chassis that you are updating. Because firmware updates are performed on components that are part of the support structure of the BladeCenter system, the firmware update process must be run from a completely independent system. To run the ChassisUpdate script, call the main script directly or call the main script through the Python interpreter. From the command prompt, type one of the following commands and press Enter. These commands are case-sensitive. To call the main script, type ChassisUpdate.py [options] To call the main script through the Python interpreter, type python ChassisUpdate.py [options] The following sections describe the options of the ChassisUpdate commands. 4.1 Specifying a default response file --------------------------------------------- If you do not specify a response file, the default response file name and path is used automatically. To specify a response file, use one of the following options: --responseFile -r Where specifies the path and name of the response file. 4.2 Displaying the version ---------------------------- To display the version number of the script, use one of the following options: -V --version 4.3 Viewing help ---------------- To display help, use one of the following options: -h --help -? 4.4 Viewing verbose information ------------------------------- To display information about the update process as it runs, use one of the following options: -v --verbose 5.0 Return codes ----------------- All information about the firmware update process is logged to the BladeCenterUpdates.log file. The log file is opened when the first error or message occurs and is closed when the update process is completed. Log file entries are in the format - . The time and date of the first entry indicates when the log file was opened, and the time and date of the last entry indicates when the update process was completed. The update process has the following return codes: 0 - The update was successfully completed. 1 - An invalid IP address was given for the specified Telnet connection. 2 - There was a socket error when attempting to start a Telnet session. 3 - An invalid response was received from the Telnet session. 4 - An invalid login name or password was specified for the Telnet session. 5 - An invalid IP address was given for the management module. 6 - There was a socket error when attempting to connect to the management module. 7 - There was an unknown error when attempting to connect to the management module. 8 - The encryption keys returned from the management module are invalid. 9 - An invalid login name or password was specified for the management module. 10 - An invalid response was received from the management module. 11 - The limit of three retries was exceeded when sending a command to the management module. 12 - An unknown command type for the management module was specified. 13 - The length of the management module command and the response do not match. 14 - The command sent and the command received from the management module do not match. 15 - There was an error sending data to the management module. 16 - An invalid slot number for the BladeCenter chassis was specified. 17 - An invalid code level to query was specified. 18 - The specified management module packet file was not found. 19 - An invalid packet file was specified. 20 - The packet file contains an invalid header. 21 - The TFTP download timed out. 22 - The TFTP server was not found. 23 - The connection with the TFTP server was lost. 24 - TFTP server IP address is invalid. 25 - Connection to the I/O module failed. 26 - An update image file was not found. 27 - The image file is invalid. -1 - General update failure. 6.0 LIMITATIONS --------------- 6.1 Management modules ---------------------- If there are redundant management modules and the IP addresses are obtained through DHCP, it will not be possible to update the management modules if the existing firmware level is earlier than 57K. Depending on the code levels detected you could have multiple management module restarts during the update process. It will not be possible to downlevel the firmware of the management modules via the UXBC tool. The management module password in the response file (--mmpass) must be greater than 5 but less than 16 alphanumeric characters. 6.2 IBM ESM configuration ------------------------- ESM switch configuration settings can be reset when updating from a firmware level earlier than .081 (version 1.04) to a firmware level at or later than .081. Link aggregation settings are lost during this firmware update and are reset back to the default values. If link aggregation settings or port trunking are configured to be different from the default settings, do not use UXBC, unless you can manually reconfigure the switch afterward. In a small percentage of cases the UXBC tool may not be able to confirm that the firmware update for the ESM switch completed. In this case the BladeCenterUpdates.log file will have a warning stating that "Update completion could not be verified". In every test that was conducted where the UXBC tool was not able to verify that the flashing completed, the ESM switch had successfully been updated. However, you should manually verify that the ESM switch is at the correct level. 6.3 General Running multiple instances of the ChassisUpdate script to more than one BladeCenter chassis at a time from an administrative system can produce undesireable results and is not supported. 7.0 Web Sites and Support -------------------------- 7.1 IBM Support Web Site: http://www.pc.ibm.com/support 7.2 IBM Support Web Site with link to downloads and drivers: http://www-307.ibm.com/pc/support/site.wss/ 8.0 NOTICES AND TRADEMARKS ---------------------------- INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some jurisdictions do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you. This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. The following terms are trademarks of the IBM Corporation in the United States, other countries, or both: the e-business logo BladeCenter eServer IBM ServerProven xSeries Linux is a trademark of Linus Torvalds in the United States, other countries, or both. Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both. Red Hat, the Red Hat "Shadow Man" logo, and all Red Hat-based trademarks and logos are trademarks or registered trademarks of Red Hat, Inc., in the United States and other countries. Other company, product, or service names may be trademarks or service marks of others. 9.0 Disclaimer ---------------- THIS DOCUMENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IBM DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE AND MERCHANTABILITY WITH RESPECT TO THE INFORMATION IN THIS DOCUMENT. BY FURNISHING THIS DOCUMENT, IBM GRANTS NO LICENSES TO ANY PATENTS OR COPYRIGHTS.