Moving from ICLE to ICE-Linux

6
Serial console access and logging. The HP Proprietary Console Management Facility (CMF)
captures serial console messages into per-system log files, which reside on the CMS, and enables
direct access to a managed system's console through an interactive terminal session.
Remote power control. This enables you to reboot, power on, and power off a managed
system through its management processor.
Boot to a Linux rescue mode. This enables you to boot a managed system to a rescue Linux-
based environment containing basic management and configuration tools.
Migration Ideas and Tools
While there is no direct upgrade path available between ICLE and ICE-Linux, there are a number of
pieces that can be transitioned between them, depending on your requirements.
Preserving IP Addresses
Using ICLE, after a managed server is registered, its IP address is registered such that it will not
change on subsequent DHCP requests. If you use these addresses in a routed environment, it may be
useful to be able to extract those addresses, and convert them into the format required by the ICE-
Linux DHCP server. The following script extracts the IP addresses from ICLE and writes them to
standard output that can be pasted into an appropriate subnet section of an ISC DHCPd configuration
file so that the new product will provide the same IP addresses used.
#!/bin/bash
#
# convert_icle_leases.sh
#
# Obtain the list of discovered servers and attributes from ICLE, and
# generate static IP address registrations for ISC DHCPd. The output
# section can be modified to generate configurations for other DHCP
# daemons as required. This is an example of using database data
# from ICLE to assist in the migration to ICE-Linux.
#
# This script is provided as-is.
#
# Copyright (C) 2008, Hewlett-Packard Development Company, L.P.
#
lease_cmd="select mac, ip, hostname from dnsmasq_lease order by ip"
leases=$(psql -A -t -q --field-separator=, -c "$lease_cmd" rlx_ct postgres)
hostname_prefix="cthost"
hostname_index=1;
for i in $leases; do
# Loop through each record obtained from the database, assigning
# values to variables for use below.
#
mac=$(echo $i|cut -d, -f1)
ip=$(echo $i|cut -d, -f2)
hostname=$(echo $i|cut -d, -f3)
if [ "$hostname" == "*" ]; then
hostname="$hostname_prefix-$hostname_index"
let "hostname_index=$hostname_index + 1";
fi
# Output new DHCP configuration information for hosts found
# in the ICLE database. Modify this section if you wish the
# output to be different for another DHCP server configuration.
#
echo "host $hostname {"
echo " hardware ethernet $mac;"