Professional Documents
Culture Documents
Migrating An Integrity HP-UX 11iv3 PDF
Migrating An Integrity HP-UX 11iv3 PDF
August 2011
Contents
Introduction ......................................................................................................................................... 2
Overview of the DRD method ................................................................................................................ 3
Assumptions for the DRD method ........................................................................................................... 3
Related Information .............................................................................................................................. 3
Summary of Steps for the DRD method ................................................................................................... 3
Use the DRD clone to migrate to new hardware....................................................................................... 4
Step 1: Create a DRD clone of the source system ................................................................................. 4
Step 2: Modify file system sizes on the clone if needed......................................................................... 4
Step 3: Identify and install additional target software on the clone ......................................................... 4
Step 4: Determine additional kernel content that is needed on the target ................................................ 5
Step 5: Build a kernel on the clone suitable for the target ...................................................................... 5
Step 6 (Optional): Adjust target kernel tunables if needed ..................................................................... 6
Step 7: Set the system identity on the clone for boot on the target .......................................................... 7
Step 8: Mark the clone LUN for identification from the target EFI ........................................................... 7
Step 9: Move scenario: Disable the source system ............................................................................... 7
Step 10: Move storage ..................................................................................................................... 8
Step 11: Boot the clone on the target system ....................................................................................... 8
Step 12: Test the target system........................................................................................................... 8
Step 13: If not successful, revise and repeat. ....................................................................................... 9
Overview of the Ignite-UX Recovery Method ............................................................................................ 9
Assumptions for the Ignite-UX Recovery Method ....................................................................................... 9
Related Information ............................................................................................................................ 10
Detailed Migration Steps for the Ignite-UX Recovery Method ................................................................... 10
Step 1: Install the latest IGNITE bundle on the Ignite-UX server ............................................................. 10
Step 2: Make a recovery archive of the source system ........................................................................ 10
Step3: Copy source client config to the target config .......................................................................... 11
Step4: Clone scenario: Give the target read access to source recovery archive ..................................... 12
See the manpages dfstab(4) and share_nfs(1M) for more information. ....................................... 12
Step 5: Remove or modify the network information for the target ......................................................... 12
Step 6: Change a recovery-related variable in control_cfg ............................................................ 13
Step 7: Create depots with additional software for the target .............................................................. 14
Step 8: Ensure iux_postload scripts from the recovery archive run correctly ........................................... 14
Step 9: Create config files for the new depots ................................................................................... 16
Step 10: Add the new config files to the target CINDEX ..................................................................... 17
Step 11: Modify file system sizes if needed ....................................................................................... 18
Step 12: Check configuration syntax ................................................................................................ 18
Step 13: Move scenario- Disable the source system ............................................................................ 18
Step 14: Deploy the configuration to the target system ....................................................................... 18
Step 15: Boot and test the target system. .......................................................................................... 19
Step 16: Return to the source, if the target is not as desired................................................................. 19
Call to action .................................................................................................................................... 20
1
Introduction
Customers often find that they want to move an existing instance of an HP-UX installation to new
hardware. The change may be to a new computer model or to a system of the same model with
additional I/O or networking capacity. The move may provide greater compute capacity, more
expansion for the future, lower power and cooling costs, and better use of data center real estate.
In such cases, the prospect of “setting the new system up from scratch” can be daunting, since it may
involve identifying and restoring all customizations made to the system. It is often preferable to move
the previous system boot disk, either literally, or through a mechanism such as moving a DRD clone of
the system, or deploying an Ignite-UX recovery image of the system, to the new hardware.
This paper provides complete descriptions of two techniques which can be used to migrate the pre-
existing HP-UX 11i v3 systems to new computers. This raises the question of which technique is
preferable given your circumstances. The following table is a list of some common migration
situations along with a recommendation for the method to use for migration:
2
If this is your situation Consider using this method:
If you are moving from PA to IPF Install the new system from depots.
Note:
A system administrator may choose to move the actual boot
disk from the source system to the target. To do this, the
changes that follow should be applied to the boot disk
rather than to the DRD clone. However, this makes it
somewhat more difficult to revert to the original hardware if
issues are encountered. For this reason, the procedure
below is described for a DRD clone.
Related Information
Additional information regarding Dynamic Root Disk can be obtained from the DRD documentation
web site located at: http://www.hp.com/go/drd-docs. The documents located on this site include the
following:
3
1. Create a DRD clone of the source system on storage that can be moved to the target.
2. Modify the file system sizes on the clone, if needed.
3. Identify and install additional target software on the clone.
4. Determine additional kernel content that is needed on the target.
5. Build a kernel on the clone suitable for the target.
6. Optional: Adjust target kernel tunables, if needed.
7. Set the system identify on the clone for boot on the target.
8. Mark the clone LUN for identification from the target EFI.
9. Move scenario: Disable the source system.
10. Move storage.
11. Boot the clone on the target system.
12. Test the target system.
13. If the target does not satisfy expectations, repeat the process.
To ensure that the latest technology and enhancements are used for creating the DRD clone,
download the most recent release of DRD from http://www.hp.com/go/drd.
Create one or more depots containing all needed software. It is probably more convenient to create
the depots so that any single depot does not contain multiple versions of the same software.
For example, if the target system is a BL860C i2 system, the Errata document available in May, 2010
indicates that HP-UX 11iv3 OE Update Release for March 2010 and additional software listed in the
document are required. For migration to a BL860C i2 system, it is probably most convenient to
create or use an existing depot containing the Operating Environment (Data Center, Virtual Server,
High Availability, or Base) from March 2010 that you intend to install, and create one or more
additional depots with the remaining software documented in the Errata and applicable to your
environment. Note that software that implements firmware changes cannot be installed on the clone.
Firmware-modifying software must be installed on the target system after the drd rehosting procedure
is complete.
If desired, you can use the swcopy command to copy software from various source depots to one or
more directory depots. Note that if you are copying a serial (tar format) depot, you need to issue the
4
swcopy command from the system containing the serial depot. See swcopy (1M) for more
information.
Once the target software has been included in accessible depots, install it to the clone. If one of the
depots contains an entire new Operating Environment, the first installation should be run using “drd
runcmd update-ux” with the Operating Environment depot as a source:
Other depots can be installed after the update using drd runcmd swinstallas follows:
(Note that the command drd runcmd does not support serial depots.)
1. Login to the console of the target system with an X-windows interface that supports cut and paste.
2. Initiate an install of HP-UX from media by booting from an installation DVD. Alternatively, initiate
the installation from an Ignite-UX server that can be accessed across the network from the target
system. In either case, the version of Ignite-UX used must support the target hardware. The
simplest way to ensure that this is the case is to use the latest version of Ignite-UX, or use install
media supplied for the target hardware.
3. From the install menu on the target, select Run an Expert Recovery Shell.
4. If you are using install media, select n to the prompt to start networking; otherwise select y.
5. Select “l” to load a file.
6. Enter the list by issuing the command:
/usr/bin/sort /usr/bin/rm /sbin/date /usr/lbin/sysadm/create_sysfile
7. Confirm the list, then press enter <return> to continue, and chose x to exit to a shell.
8. Issue the command:
# /usr/lbin/sysadm/create_sysfile /RAMFS1/system_new_hw
# cat /RAMFS1/system_new_hw
9. Cut and paste the contents of /RAMFS1/system_new_hw to a convenient location on the
source system (or its clone), such as /stand/system_new_hw.
5
#!/usr/bin/sh
#
# merge_system_files - Merges system file from new hardware
# into system file on source clone
# $1 - system file from new hardware to be merged into
# system file on DRD clone.
#
typeset -i module_found
system_new_hw=$1
system_merged=/var/opt/drd/mnts/sysimage_001/stand/system
cp -p ${system_merged} ${system_merged}.save
cat ${system_new_hw} |
while read module_keyword module_name module_state
do
module_found=0
# ignore obsolete drivers
case $module_name in
"fcd_fcp" | "fcd_vbus" | "usb_ms_scsi" | "sasd_vbus" )
break
;;
*)
if [[ ${module_keyword} = "module" ]]
then
grep ${module_name} ${system_merged} |
while read mod_keyword mod_name rest
do
if [[ ${mod_keyword} = "module" ]]
then
if [[ ${module_name} = ${mod_name} ]]
then
module_found=1
fi
fi
done
if [[ ${module_found} -eq 0 ]]
then
echo "Adding module ${module_name} ..."
echo "${module_keyword} ${module_name} ${module_state}" >> \
${system_merged}
fi
fi
;;
esac
done
Figure 1 /usr/local/bin/merge_system_files
2. To change tunable settings which are known to be different for the target, issue the command:
drd runcmd kctune <tunable_name>=<tunable_value>
6
Step 7: Set the system identity on the clone for boot on the target
This step is ordinarily needed for both the “move” and “clone” scenarios, since the MAC address(es)
on the target will differ from those on the source. (The exception to this is the case where your MAC
addresses have been virtualized through Virtual Connect, and you are moving the VC profile to the
new system.)
To set the identity of the target (hostname, mapping of IP addresses to network interfaces, language,
time zone, etc.) perform the following while logged onto the source system as root:
Additional information regarding the content and syntax of the sysinfo file is available in the
sysinfo(4) manpage, packaged in PHCO_39064 or any superseding patch.
A sample sysinfo file, including the required parameter SYSINFO_HOSTNAME, appears below.
SYSINFO_HOSTNAME=myhost
SYSINFO_DHCP_ENABLE[0]=0
SYSINFO_MAC_ADDRESS[0]=0x0017A451E718
SYSINFO_IP_ADDRESS[0]=192.2.3.4
SYSINFO_SUBNET_MASK[0]=255.255.255.0
SYSINFO_ROUTE_GATEWAY=192.2.3.75
SYSINFO_ROUTE_DESTINATION[0]=default
SYSINFO_ROUTE_COUNT[0]=1
SYSINFO_DNS_DOMAIN=ours
SYSINFO_DNS_SERVER=192.2.3.50
For additional information about the drd rehost command, see the chapter “Rehosting and
unrehosting systems” in the Dynamic Root Disk Administrator’s Guide, available at
http://www.hp.com/go/drd-docs, and in the drd-rehost(1M) manpage.
Step 8: Mark the clone LUN for identification from the target EFI
It can be challenging to identify the clone LUN after it is moved to the target system. Since the LUN is
partitioned, it is displayed with “fs” entries. However, if multiple partitioned disks are visible from
the EFI menus of the target, an extra “marker” can help to identify the LUN.
# touch /tmp/move_to_new_hw
# efi_mkdir -d <dsf of EFI partition of clone> EFI/HPUX/DRD
# efi_cp -d <dsf of EFI partition of clone> /tmp/move_to_new_hw \
EFI/HPUX/DRD/move_to_new_hw
7
Step 10: Move storage
Use the interface to the SAN storage management (or move a hot-pluggable disk) to move the clone
from the source system to the target. Depending on your system setup and whether you are executing
a “move” or “clone” scenario, you may also want to move additional non-boot storage to the clone.
After the SAN scan is enabled, identify the boot disk, using the marker created earlier if needed.
To find the marker, perform the following additional steps:
If the marker is not found on fs0, choose fs1: and continue until the marker is found.
You can then run EFI\HPUX\EFI\hpux.efi on the disk containing the marker to boot the system.
8
You may also want to run /usr/sbin/setboot to set the primary bootpath to the current boot disk
as determined by vgdisplay. On the next reboot, you can speed up subsequent boots by using the
steps above to reset EFIFCScanLevel back to 0.
In some cases the goal is to move a pre-existing HP-UX instance to new hardware; in other cases, the
goal is to deploy a very similar system - same HP-UX release, same patches, etc. - with a different
network identify - hostname, MAC and IP addresses, etc. The difference between the steps needed
for these two scenarios is small, so both scenarios are covered here. To distinguish between these
similar scenarios, the first is called the move scenario, and the second is called the clone scenario.
The following migration steps are described in more detail in the remainder of this whitepaper:
• The HP-UX major release installed on the source system is 11iv3 or above. The use of the
“match” specification when installing an Operating Environment requires 11iv3.
• The target system will run on the same major release running on the source system. The
potential installation of the Operating Environment depot after the restore of the recovery
image requires that the recovery image and Operating Environment depot be the same major
release of HP-UX.
9
For example, if the source is running 11iv3, the target must support 11iv3 as well. The target may
need a newer revision of 11iv3, such as the March 2010 release, but not a new major release of HP-
UX.
Related Information
Additional information regarding Ignite-UX can be obtained from the Ignite-UX documentation web
site, http://www.hp.com/go/ignite-ux-docs. This includes the following
The white paper “Using Ignite-UX with Integrity Virtual Machines” provides additional information
regarding the use of Ignite-UX to setup Integrity Virtual Machine. It is available at the following:
http://www.hp.com/go/hpux-hpvm-docs
This step is particularly important if the target system includes recently released hardware, such as a
new system model or new I/O or networking interfaces. In these cases, you need the latest Ignite-UX
install kernel to boot the system.
The most recent IGNITE bundle can be obtained from the Operating Environment media that provides
support for the new hardware, or it can be downloaded from http://www.hp.com/go/ignite-ux
To create the recovery archive using the ignite user interface on the Ignite-UX server,
1. Run ignite.
2. Click the source system to highlight it. (If the source system is not displayed, choose Actions-
>Add New Client for Recovery).
3. Choose Actions->Create Network Recovery Archive and follow the prompts in the
wizard, specifying that the entire root volume group is to be included in the archive.
4. The Actions->Client Status choice will show the progress of the archive creation.
Alternatively, you can initiate a recovery from the source system with the following command:
10
For example, if the Ignite-UX server hostname is ignsvr, the command would be:
/opt/ignite/bin/make_net_recovery -s ignsvr -A
For more information about creating recovery archives, see the “Recovery” chapter of the Ignite-UX
Administration Guide for HP-UX 11i, available at http://www.hp.com/go/Ignite-ux-docs.
1. Determine the MAC address for the target system that will be used to connect to the Ignite-UX
server.
2. Create the MAC address directory in /var/opt/ignite/clients:
# cd /var/opt/ignite/clients
# su bin
$ umask u=rwx,g=rx,o=rx
$ mkdir <target MAC address>
3. If you are moving the system (as opposed to cloning), remove the symlink from target hostname to
its “old” MAC address:
# rm <target hostname>
4. Create a symlink from the target hostname to the directory just created:
$ ln -s <target MAC address> <target hostname>
5. Copy the CINDEX file and recovery directory from the source client directory:
$ cd <source hostname>
$ find CINDEX recovery | cpio -pdvma ../<target hostname>
6. Identify the “cfg” clause that is set to TRUE in the /var/opt/ignite/clients/<target
hostname>/CINDEX file. The subdirectory of the recovery directory containing
system_cfg, control_cfg, and archive_cfg has a <recovery-date-time> name in
the format “yyyy-mm-dd,hh:mm”. Ordinarily, the directory
/var/opt/ignite/clients/<target hostname>/recovery/latest is a symlink to the
directory /var/opt/ignite/clients/<target hostname>/recovery/<recovery-
date-time>. If this is not the case on your Ignite-UX server, you need to replace references to
the directory /var/opt/ignite/clients/<target hostname>/recovery/latest in
the directions that follow with the directory /var/opt/ignite/clients/<target
hostname>/recovery/<recovery-date-time>.
For example, if the source system is srcsys, the target system is tgtsys, and the MAC address for the
target system 0x001560042B1, the sequence of commands would be as follows:
# cd /var/opt/ignite/clients
# su bin
$ umask u=rwx,g=rx,o=rx
$ mkdir 0x001560042B1
$ ln -s tgtsys 0x001560042B1
$ cd srcsys
$ find CINDEX recovery | cpio -pdvma ../tgtsys
11
Step4: Clone scenario: Give the target read access to source
recovery archive
In the move scenario, the source and target systems have the same hostname, so the target system
already has network access to the recovery archive.
If the Ignite-UX server is running 11i v3 or later, edit the /etc/dfs/dfstab file to allow access to
both the source and target clients as follows:
For example, if the source hostname is srcsys, and the target hostname tgtsys, change the line
3. #shareall -F nfs
If the Ignite-UX server is running a release prior to 11i v3, edit the /etc/exports file to allow
access to both the source and target clients:
For example, if the source hostname is srcsys, and the target hostname tgtsys, change the line
/var/opt/ignite/recovery/archives/srcsys -anon=2,access=srcsys
to
/var/opt/ignite/recovery/archives/srcsys -anon=2,access=srcsys:tgtsys
3. #exportfs –av
A simple approach to setting up the networking on the target system is to remove or comment out the
network configuration information stored with the recovery archive, and supply the network identity
12
when the target system is deployed, either by specifying it directly on Ignite-UX menus, or by choosing
on the menus to supply the information when the system is first booted.
#
# System/Networking Parameters
#
#_hp_custom_sys+={"HP-UX save_config custom sys"}
#init _hp_custom_sys="HP-UX save_config custom sys"
#_h p_custom_sys visible_if false
#(_hp_custom_sys=="HP-UX save_config custom sys") {
# final system_name="<source hostname>"
# final ip_addr["<source NIC hw path"]="<source address>"
# final netmask["<source NIC hw path"]="<source mask in hex>"
# final broadcast_addr["<source NIC hw path"]="<broadcast>"
# init _hp_default_final_lan_dev="<source NIC hw path>"
# final route_destination[0]="default"
# final route_gateway[0]="<source gateway>"
# final route_count[0]=1
# final nis_domain="udl"
# final wait_for_nis_server=TRUE
# final dns_domain="<DNS domain>"
# final dns_nameserver[0]="<IP address of DNS server>"
# is_net_info_temporary=FALSE
#} # end "HP-UX save_config custom sys"
Prior to deploying the target system, determine the network configuration information needed for it.
This is the same information that is needed to cold install the target system from a depot, including
whether DHCP is used to manage the interfaces, IP addresses (if DHCP is not used), subnet masks,
gateways, and optional NIS and DNS servers.
If you prefer to modify the information in the system_cfg file itself, and have multiple network
interfaces on the target system, you may need to identify the hardware path for each NIC prior to
editing system_cfg. See instl_adm(4) for further information about the syntax of the
networking parameters in the system_cfg file.
If the target system is a different model from the source system, then the setting of _HP_CLONING
does not need to be changed. However, if the target system is the same model but is configured with
different peripheral devices, you may want to ensure that the kernel is re-built on the target system by
modifying the setting of _HP_CLONING. To do this, edit the file
/var/opt/ignite/clients/<target hostname>/recovery/latest/control_cfg on the
Ignite-UX server and make the following change:
Change:
13
else
{ init _HP_CLONING = "TRUE" }
To:
Create one or more depots containing all needed software. It is probably most convenient to create
the depots so that any single depot does not contain multiple versions of the same software.
For example, if the target system is a BL860C i2 system, the Errata document available in May, 2010
indicates that HP-UX 11iv3 OE Update Release for March 2010 and additional software listed in the
document are required. For migration to a BL860C i2 system, it is probably most convenient to
create or use an existing depot containing the Operating Environment (Data Center, Virtual Server,
High Availability, or Base) from March 2010 that you intend to install, and create one or more
additional depots with the remaining software documented in the Errata and applicable to your
environment. Often, software that implements firmware changes is packaged so that it excludes itself
during an Ignite-UX recovery. Delay installing firmware changes until after you have deployed the
recovery image and other Errata software.
If desired, you can use the swcopy command to copy software from various source depots to one or
more directory depots. Note that if you are copying a serial (tar format) depot, you need to issue the
swcopy command from the system containing the serial depot. See swcopy(1M) for more
information.
To ensure that the iux_postload scripts are run at the right time, and that Ignite-UX executes a
harmless script later – at the “wrong time” - create the following two scripts, with owner bin:bin and
permission 755, named /var/opt/ignite/scripts/run_iux_postloads, as shown in Figure
2 and /var/opt/ignite/scripts/restore_iux_postloads, as shown in Figure 3.
14
#!/bin/sh
IPD_DIR=/var/adm/sw/products
IUX_SCRIPT_NAME=iux_postload
Figure 2/var/opt/ignite/scripts/run_iux_postloads
#!/bin/sh
IPD_DIR=/var/adm/sw/products
IUX_SCRIPT_NAME=iux_postload
Figure 3 var/opt/ignite/scripts/restore_iux_postloads
15
Create a config file, /var/opt/ignite/clients/<target
hostname>/run_iux_postloads_cfg, as shown in Figure 4 that runs the scripts listed in Figures
2 and 3.
sw_source "KernelFixup" {
source_format = CMD
load_order = 1
}
init sw_sel "Run KernelFixup" {
description = "Run iux_postloads from archive"
sw_source="KernelFixup"
sw_category="KernelFixupCategory"
post_load_script = "/var/opt/ignite/scripts/run_iux_postloads"
post_config_script =
"/var/opt/ignite/scripts/restore_iux_postloads"
}=TRUE
Here <OE name> is the name of the OE which you plan to use on the target system. The OE name is
a bundle name that begins with HPUX11i and ends with OE.
As of March, 2010, the OE names are “HPUX11i-BOE, HPUX11i-DC-OE, HPUX11i-HA-OE, HPUX11i-
VSE-OE”
sw_source "core" {
description = "HP-UX Core Software"
source_format = SD
sd_server = “<IP address of depot server>”
sd_depot_dir = “<absolute directory path of SD depot dir>”
source_type = "NET"
load_order = 2
}
16
The specification of “%match” installs software and patches in the OE that match software that was
included in the recovery archive.
The specification of “load_order=2” ensures that the depot is processed after the recovery archive
and the execution of the iux_postload scripts.
You can use any value for category_tag other than “HPUXEnvironments”, which has special meaning
and is already used for the recovery archive.
sw_source "Errata" {
description = "HP-UX Errata Software"
source_format = SD
sd_server = “<IP address of depot server>”
sd_depot_dir = “<absolute directory path of SD depot dir>”
source_type = "NET"
load_order = 3
}
For the sd_software_list, list the actual bundles, products, or patches that have been included in
the errata documentation. If you want to install all the software in the depot, you can specify a
selection of “*”.
The specification “load_order=3” ensures that the depot is processed after the OE depot.
Step 10: Add the new config files to the target CINDEX
1. If multiple cfg clauses appear in /var/opt/ignite/clients/<target
hostname>/CINDEX, choose the one set equal to TRUE to be <cfg_name> in the commands
below.
2. Use manage_index to add the new config files to cfg:
# /opt/ignite/bin/manage_index -a \
-f /var/opt/ignite/clients/<target hostname>/run_iux_postloads_cfg \
-c "<cfg name>" -v -i /var/opt/ignite/clients/<target hostname>/CINDEX
# /opt/ignite/bin/manage_index -a \
-f /var/opt/ignite/clients/<target hostname>/updateOE_cfg \
-c "<cfg name>" -v -i /var/opt/ignite/clients/<target hostname>/CINDEX
# /opt/ignite/bin/manage_index -a \
-f /var/opt/ignite/<target hostname>/errata_cfg<n> \
-c "<cfg name>" -v -i /var/opt/ignite/clients/<target hostname>/CINDEX
If additional depots are used, use manage_index to add the config file corresponding to each
depot.
17
Step 11: Modify file system sizes if needed
Ordinarily, the update using the errata depot will not substantially increase the required file system
sizes. Rather than try to predict exactly the file system sizes needed, it is more convenient to ensure
that all file systems have some “growing space”.
Use /usr/bin/bdf on the source system to check for file systems are close to full and need
additional space. You may also want to compare the sizes on the source system to the minimum sizes
recommended by HP for a given release. These can be found in
/opt/ignite/data/Rel*/config.
/opt/ignite/bin/instl_adm -T -i CINDEX
1. Boot the target system to the EFI boot menus and quit to the EFI shell.
2. Use the following command to create a dbprofile called “newserver”:
See Direct Boot Profiles for Itanium-Based Systems in the chapter, “Booting and Installing HP-UX
From the Server Using the Client Console” in the Ignite-UX Administration Guide for HP-UX11i,
available at http://www.hp.com/go/ignite-ux-docs for more information on the dbprofile
command.
A list of LAN devices is displayed. Choose the device that has network connectivity to the Ignite-
UX server. Since a Direct Boot Profile is being used, the Ignite-UX server does not need to be on
the same subnet as the target.
18
From the Ignite-UX installation screens, choose the configuration that was created in the previous
steps. If the system is being cloned, specify the correct configuration (hostname, IP address, etc.)
that is used for the target system.
19
Call to action
HP welcomes your input. Please give us comments about this white paper, or suggestions for related
documentation, through our technical documentation feedback website:
http://www.hp.com/bizsupport/feedback/ww/webfeedback.html
© 2011 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. The
only warranties for HP products and services are set forth in the express warranty statements accompanying such products and
services. Nothing herein should be construed as constituting an additional warranty. HP shall not be liable for technical or
editorial errors or omissions contained herein.
20