
Chapter 4. Configuring the blade server
89
# Send the update command for the blade. #
# #
#############################################################################
proc flash_update_blade { blade_no firmware_image } {
global amm_id tftp_server g_normal_timeout_value
##
Get a big timeout value while we flash.
#
set timeout 1000
##
Make sure the AMM knows too.
#
send -i $amm_id "telnetcfg -t 0\r\n"
expect -i $amm_id -exact "OK"
##
Populate a list
#
##
Send the update command.
#
send -i $amm_id "update -i $tftp_server -l $firmware_image -T system:blade\[$blade_no\]:sp\r\n"
##
Process results.
#
set rv 1
expect {
-i $amm_id "successful" { set rv 0 }
-i $amm_id "meant" { set rv 1 }
-i $amm_id "failed" { set rv 1 }
-i $amm_id "*nable*" { set rv 1 }
}
##
Restore the timeout and return the rv.
#
set timeout $g_normal_timeout_value
return $rv
}
#############################################################################
# #
# This loop will flash all blades in a given chassis to a given level of #
# IMM or uEFI firmware via the AMM. #
# #
#############################################################################
proc flash_all_blades { firmware } {
global blade_presence_bits
for {set slot 1} {$slot < 15} {incr slot 1} {
if { ! [info exists blade_presence_bits($slot)]} {
continue
}
set present $blade_presence_bits($slot)
if {$present == 1} {
ft_log "Blade: $slot -- Updating to firmware: $firmware."
set rv [ flash_update_blade $slot $firmware ]
if {$rv == 0} {
ft_log "Blade: $slot -- Firmware update success."
} else {
ft_log "Blade: $slot -- Firmware update failed."
set rv [ collect_flash_failure_logs $slot ]
}
global amm_id
send -i $amm_id "\r"
set rv [ ft_delay 2 ]
}
}
}
#############################################################################
# #
# Script startup -- check usage and assign globals. #
# #
#############################################################################
if {$argc < 6} {
puts "USAGE: $argv0 <Chassis_Ip> <Userid> <Password> <TftpServer> <TftpFilename> <Blade_No>"
exit
}
set amm [lindex $argv 0]
set userid [lindex $argv 1]
set password [lindex $argv 2]
set tftp_server [lindex $argv 3]
set tftp_filename [lindex $argv 4]
set blade_no [lindex $argv 5]
Содержание Novascale Blade BL465
Страница 1: ...novascale Blade BL465 Installation and User s Guide novascale Blade REFERENCE 86 A1 68FE 03...
Страница 2: ......
Страница 9: ...Safety vii Safety...
Страница 10: ...viii novascale Blade BL465 Installation and User s Guide Safety statements...
Страница 11: ...Safety ix...
Страница 12: ...x novascale Blade BL465 Installation and User s Guide...
Страница 13: ...Safety xi...
Страница 14: ...xii novascale Blade BL465 Installation and User s Guide...
Страница 36: ...22 novascale Blade BL465 Installation and User s Guide...
Страница 110: ...96 novascale Blade BL465 Installation and User s Guide...
Страница 112: ...98 novascale Blade BL465 Installation and User s Guide...
Страница 126: ...112 novascale Blade BL465 Installation and User s Guide...
Страница 127: ......
Страница 128: ...BULL CEDOC 357 AVENUE PATTON B P 20845 49008 ANGERS CEDEX 01 FRANCE REFERENCE 86 A1 68FE 03...