Appendix F. Migration from a Cluster with IRIX® Server-Capable Administration Nodes

The information in this appendix will help you migrate from a cluster with IRIX server-capable administration nodes to a cluster with Linux server-capable administration nodes. It discusses the following:

You must ensure that you have the correct network configuration for the new Linux server-capable administration nodes; see Chapter 6, “Preinstallation Steps”. For assistance, contact SGI Installation Services.

Differences Between IRIX and Linux System Administration

If you are migrating from a cluster with IRIX metadata servers to a cluster with Linux metadata servers, you should understand the differences between IRIX and Linux system administration. The details of these differences are beyond the scope of this guide, but a brief overview includes:

  • Installation tools

  • Mount options

  • Paths

  • Location of kernel system tunable parameters

For more information, see the operating system documentation.

See also:

Caveats for Migrating from IRIX

This section discusses the following:

Changing SGIRDAC Mode to SGIAVT Mode for SGI RAID

CXFS does not support SGIRDAC mode. To convert from SGIRDAC to SGIAVT, do the following:

  1. Install the latest supported firmware on the RAID.

  2. Determine the IP address for one of the controllers on each RAID box.

  3. Make a script settype.scr that contains the following line:

    set storageArray defaultHostType="modename";


    Note: The capitalization and punctuation in the above line are required.

    To switch to SGIAVT mode, use the following line:

    set storageArray defaultHostType="SGIAVT";

    For the InfiniteStorage 220, use the CLI client to set the host type to SGIAVT:

    smicli -w SA_WWID -c 'set storageArray defaultHostType="SGIAVT";'

    To determine the value for SA_WWID, invoke the following:

    smicli -d -w

    For example:

    # smicli -d -w
    unit1  600a0b80002459d40000000045003fbc        localhost
              |---> SA_WWID

  4. Run the following for one of the controllers per RAID box:

    /opt/tpssm/client/tpssmcli RAID_IPaddress -f settype.scr
    

    For example:

    # /opt/tpssm/client/tpssmcli 192.168.0.1 -f settype.scr
    Performing syntax check...
    
    Syntax check complete.
    
    Executing script...
    
    Script execution complete.
    
    tpssmcli completed successfully.

Recreating Filesystems with the Appropriate Naming Version

Linux does not support version-1 naming on filesystems. You must examine the parameters for each filesystem by using the following command on the active metadata server for each filesystem:

xfs_growfs -n mountpoint

For example, the following shows that the /stripe1 filesystem has version-2 naming:

irixMDS# xfs_growfs -n /stripe1
meta-data=/stripe1               isize=256    agcount=16, agsize=1663360 blks
         =                       sectsz=512   attr=0, parent=0
data     =                       bsize=4096   blocks=26611968, imaxpct=25
         =                       sunit=128    swidth=768 blks, unwritten=1
         =                       mmr=0
naming   =version 2              bsize=4096   mixed-case=Y
log      =internal               bsize=4096   blocks=13056 version=1
         =                       sectsz=512   sunit=0 blks lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0

If you have a filesystem that displays version-1 naming, you must recreate it on a Linux server-capable administration node so that it will have version-2 naming. Do the following:

  1. Dump the filesystem data to backup media by using the xfsdump(1M) command.


    Warning: If this step is not performed, all data currently on the filesystems will become inaccessible and will be permanently lost.


  2. Unmount the CXFS filesystems clusterwide by using the cxfs_admin command.

  3. Recreate the filesystem by using the mkfs.xfs(8) command on a Linux server-capable administration node. Preserve any nondefault filesystem parameters by specifying the applicable options to the mkfs.xfs command.

  4. Restore the filesystem data from backup media by using the xfsrestore(8) command.

For more information, see the man pages for the above commands and the following:

  • IRIX Admin: Disks and Filesystems

  • XFS Administrator Guide

Recreating Filesystems with Large Block Sizes

On SGI x86_64 server-capable administration nodes, the maximum block size is 4K. If you have filesystems with larger block sizes, you must recreate them by performing a dump and a restore, changing the block size so that it does not exceed the maximum for the architecture of your systems.


Note: SGI recommends a block size of 4K for CXFS filesystems in a multiOS cluster because this is the only block size that is supported on all CXFS hardware platforms.


Using Project Quotas

Under Linux, project quotas are applied to the files below a given directory. You can view the project quotas only from the active CXFS metadata server, not from CXFS client-only nodes. See “Quotas Differences” in Chapter 1.

Migration Procedure


Note: The following procedure assumes that the filesystems in the cluster you want to migrate do not have block sizes greater than the system page size and that they are not real-time filesystems. These types of filesystems are supported on IRIX but not on Linux.

Following is a procedure for using cxfs_admin to migrate from a cluster with IRIX server-capable administration nodes to a cluster with Linux server-capable administration nodes. For details about using cxfs_admin, see Chapter 11, “cxfs_admin Command”.


Note: The cluster cannot be used for production work during this process.


For information about using the GUI to perform similar tasks, see Chapter 10, “CXFS GUI”.

  1. As a precaution, save the current cluster database contents by using the build_cmgr_script command.

  2. Ensure you have CXFS 7.0 licenses installed on the Linux server-capable administration nodes. See:

  3. From an IRIX server-capable administration node:

    1. Unmount the CXFS filesystems clusterwide by using the cxfs_admin command. For example, to unmount the CXFS V9500 filesystem clusterwide:

      cxfs_admin:mycluster> unmount V9500

    2. Use the IRIX mount and umount commands to mount and unmount the filesystems locally, which will ensure that the XFS log plays back cleanly. For example, mount and unmount the V9500 filesystem locally:

      irixadmin# mount /dev/cxvm/V9500 /mnt
      irixadmin# umount /mnt

    3. Disable each IRIX server-capable administration node by using the cxfs_admin command. For example, to disable the node named irixnode1:

      cxfs_admin:mycluster> disable irixnode1

      Repeat the disable command for each IRIX server-capable administration node.

    4. Create a Linux server-capable administration node in the cluster. This will allow the cluster database information to be transferred to the Linux nodes.


      Note: This migration situation is the only time that mixed OS server-capable administration nodes are allowed in the same cluster.

      For example (line breaks here for readability):

      cxfs_admin:mycluster> create node name=linuxnode1 type=server_admin os=linux private_net=10.0.10.1 
      enabled=true hostname=linuxnode1.domain.com

  4. From the Linux server-capable administration node created in step d above, do the following:

    1. Delete each IRIX server-capable administration node by using the cxfs_admin command. For example, to delete the node named irixnode1:

      cxfs_admin:mycluster> delete irixnode1

      Repeat the delete command for each IRIX server-capable administration node.

    2. Create any additional Linux server-capable administration nodes in the cluster. For example, to create a node named linuxnode2:

      cxfs_admin:mycluster> create node name=linuxnode2 type=server_admin os=linux private_net=10.0.10.2

      Repeat the create command for each Linux server-capable administration node.

    3. Modify the CXFS filesystems to assign the new Linux server-capable administration nodes as potential metadata servers. For example:

      cxfs_admin:mycluster> modify filesystem name=V9500 servers=linuxnode1,linuxnode2

    4. Mount the CXFS filesystems by using the cxfs_admin command. For example, to mount the V9500 filesystem:

      cxfs_admin:mycluster> mount V9500

    5. Check cluster configuration:

      cxfs_admin:mycluster> status

      You could also use the cxfs-config command to verify the status.

  5. Dispose of the former IRIX server-capable administration nodes properly:

    1. Stop CXFS processes on each IRIX server-capable administration node:

      irixadmin# /etc/init.d/grio2 stop (if running GRIOv2)
      irixadmin# /etc/init.d/cxfs stop 
      irixadmin# /etc/init.d/cluster stop 

      Repeat these commands on each IRIX server-capable administration node.

    2. Do one of the following:

For more information about using the GUI, see the following:

Migration Troubleshooting

The following sections discuss possible problems you may encounter after migrating from an IRIX cluster to a Linux cluster:

Filesystems Will Not Mount

Messages such as the following indicate that the filesystem was not cleanly unmounted from the IRIX metadata server:

Jan 29 22:06:07 4A:cxfs2 kernel: XFS: nil uuid in log - IRIX style log
Jan 29 22:06:07 5A:cxfs2 kernel: Starting XFS recovery on filesystem:
xvm-0 (dev: xvm-0)
Jan 29 22:06:07 4A:cxfs2 kernel: XFS: dirty log written in incompatible
format - can't recover

To resolve this problem, you must return to the IRIX node and then mount and umount the filesystem locally on the IRIX node in order to replay the dirty log messages (as in step 3b in “Migration Procedure”).


Caution: Do not steal the XVM volumes to the local host. Mounting /dev/cxvm/volname locally on /mnt is sufficient.


DMF Filesystems Will Not Mount

If you have DMF filesystems and have dmi as a mount option,you must edit the/etc/sysconfig/sysctlfile to turn on DMAPI probing in order to mount CXFS filesystems. Change the bottom line from:

DMAPI_PROBE="no"

to:

DMAPI_PROBE="yes"

Do Not Use extlog or rtfs Filesystems

If you have Linux server-capable administration nodes, you cannot use extlog or rtfs filesystems.