Chapter 8. Reconfiguring LUNs

This chapter explains


Note: For information on changing caching parameters, see Chapter 7, “Caching.”


Changing LUN Configuration

When you change a LUN configuration, you change the bound configuration of a LUN; that is, you add or subtract a disk module, or physically move one or more disk modules to different slots in the chassis.

For information on

For the new configuration, follow the guidelines given in “Planning the Bind” in Chapter 4.

Transferring Control of a LUN

This section explains how to transfer control of a LUN from a primary to a secondary route. It applies only to Challenge RAID storage systems with two SPs. Note that transferring control is also known as changing SP ownership of a LUN.

Use the procedure in this section when the system operator or service person installed a second SP and you want to assign some of the LUNs to the new SP, or when you want to balance your LUNs between two SPs.


Note: Transferring control of a LUN from one SP to the other can affect how the operating system accesses the LUNs. However, any change you make in ownership does not take effect until the Challenge RAID storage system is power-cycled.

Depending on the type of server, you may want to use the procedure if any of the following failure situations occurs:

  • A failed SP has been replaced, and you want to restore control to the SP you have replaced.

  • One of the two SCSI–2 adapters or the SCSI bus cable connected to the Challenge RAID storage system fails; you want the working SCSI–2 adapter to access the failed SCSI–2 adapter's LUNs. If a SCSI adapter fails, you see an error message from the operating system specifying a disk storage-system controller (SCSI adapter):

    device does not respond to selection 
    timeout resetting scsi bus 
    ..... 
    

  • A LUN becomes unavailable to the operating system, indicating a SCSI–2 adapter or cable failure.

  • One host in a dual-host configuration has failed, auto-assign is not enabled, and you want the working host to access the failed host's LUNs. To enable auto-assign, see “Creating LUNs” in Chapter 4.


    Note: The Silicon Graphics IRIS FailSafe product includes special failover software that automatically handles storage reassignment in failure situations.


This section explains

  • using the command-line interface to change LUN ownership

  • using RAID5GUI to change LUN ownership

Using the Command-Line Interface to Change LUN Ownership

To change LUN ownership, follow these steps:

  1. If necessary, use raidcli getagent to determine the target device.

  2. Use raidcli getlun to determine the LUN whose ownership you want to change.

  3. Become root.

  4. To transfer control of a LUN to the other SP, use raidcli chglun:

    raidcli -d device chglun -l lunnumber -d 1
    

    The -d1 parameter changes ownership of the LUN specified with -l.

  5. Take precautions for system users, and then power-cycle the Challenge RAID storage system to put the ownership change into effect.

For the complete syntax of raidcli chglun, see “chglun” in Appendix B.

The LUN number is required, along with at least one other switch. For complete information on this command, see “chglun” in Appendix B.

The following example changes the ownership of LUN 3:

raidcli -d sc4d2l0 chglun -l 3 -d 1 

Using RAID5GUI to Change LUN Ownership

To transfer control manually of a LUN to the other SP when auto-assign is disabled (the recommended setting), follow these steps:


Note: Changing LUN ownership requires some time.


  1. In the Summary View window, click the button of the LUN whose ownership you want to change.

    All the modules in the LUN are outlined in black, and the LUN Information window appears.

  2. In the LUN Information window, click Change. The Change LUN Parameters window appears, as shown in Figure 8-1.

    Figure 8-1. Example Change LUN Parameters Window


  3. In the Parent SP field, click the button for the SP that you want as the owner of the LUN.

  4. Use the fields and buttons in this window to change other parameters as desired. When all parameters are as you want them, click Set.

  5. Verification dialog boxes appear; answer them appropriately to set the ownership change.

  6. Take precautions for system users, and then power-cycle the Challenge RAID storage system to put the ownership change into effect.

Changing LUN Parameters

You can change certain LUN parameters for any LUN except a hot spare, provided the LUN is available to the operating system. You can

  • change LUN ownership (see “Transferring Control of a LUN” earlier in this chapter)

  • reset the rebuild time for RAID-0, -1, -1_0, -3, or -5 LUNs

  • enable or disable auto-assign for a LUN

  • enable or disable read/write caching for a LUN

  • set read-ahead (prefetch) parameters for any LUN

When you plan changes to LUN parameters, note the following points:

  • You cannot change the rebuild time while a LUN is binding or rebuilding.

  • You cannot change the write caching enable parameter for a LUN unless storage-system write caching is disabled.

  • You cannot change the read caching enable or the prefetch parameters for a LUN unless the read cache for the SP that owns the LUN is disabled.

  • You cannot change the amount of memory that you assign to a RAID–3 LUN without unbinding and rebinding the LUN.

This section explains how to use the command-line interface and RAID5GUI to change auto-assign, caching parameters, and rebuild time.


Note: For information on changing caching parameters, see Chapter 7, “Caching.”


Changing LUN Parameters Using the Command-Line Interface

To change parameters for a logical unit, use raidcli chglun (as root). To change caching parameters, use raidcli setcache. For complete information on both these commands, see Appendix B. Chapter 7, “Caching,” has complete information on caching.

The following example disables write caching for the Challenge RAID storage system and disables write caching for LUN 2:

raidcli -d sc4d2l0 setcache 0
raidcli -d sc4d2l0 chglun -l 2 -c read

The following example changes the rebuild time for LUN 2 to 3 hours:

raidcli -d sc4d2l0 chglun -l 2 -r 3


Note: You cannot change the amount of RAID-3 memory that you assign to a RAID–3 LUN without unbinding and rebinding the LUN. To determine how memory (RAID-3, cache, and so on) is assigned for the SP that owns the LUN, use raidcli getcache. To determine the amount of RAID-3 memory used by a LUN, use raidcli getlun. For sample output and explanations of these parameters, see Appendix B.


Changing LUN Parameters Using RAID5GUI

Follow these steps:

  1. In the Summary View, click the button of the LUN whose parameters you want to change.

  2. In the LUN Information window that appears, click Change. The Change LUN Parameters window appears; see Figure 8-1.

  3. To change the write caching or read caching, first disable caching by clicking the box at Cache Enabled so that it is made inactive. Click the boxes at Write Cache and Read Cache as desired and enable caching by clicking the box at Cache Enabled so that it is filled.

    For complete information on setting caching, see “Binding Disks Into RAID Units” in Chapter 4.


    Note: You cannot change the amount of memory that you assign to a RAID–3 LUN without unbinding and rebinding the LUN.


  4. If desired, change the rebuild time by selecting a different number in the scroll box. For complete information on rebuild time, see “Binding Disks Into RAID Units” in Chapter 4.


    Note: You cannot change the rebuild time while a LUN is binding or rebuilding.


  5. To change prefetch parameters, click Prefetch... in the Change LUN Parameters window. The LUN Prefetch Parameters window opens, as shown in Figure 8-2.

    Figure 8-2. LUN Prefetch Parameters Window


    Read-ahead caching (prefetching) lets the SP anticipate the data that an application will request so it can read the data into its read cache before the data is needed. The SP monitors I/O requests to each LUN for sequential reads; if it finds any, it prefetches data automatically from the LUN. Prefetching works best when the host issues many large sequential read requests to a physical unit.

    You can define a specific type of prefetch operation (None, Variable, or Constant) by specifying the values of the following prefetch parameters:

    • Prefetch type determines whether to prefetch data of a variable or constant length or to disable prefetching. The default is variable-length prefetching.

    • Retention determines whether or not prefetched data has equal or favored priority over host requested data when the read cache becomes full. The default is Favor prefetch, which is suitable for most applications.

    • Prefetch Size and Prefetch Multiplier determine the amount of data prefetched for one host read request. For constant-length prefetching, the prefetch size is the number of blocks to prefetch.

      For variable-length prefetching, the prefetch multiplier is the amount of data to prefetch relative to the amount of data requested. For example, if the prefetch size is 8, the amount of data to prefetch is 8 times the amount of data requested.

      The range for the prefetch size is 1-2048 blocks. The range for the prefetch multiplier is 1-32; the default is 4.

    • Segment Size and Segment Multiplier determine the size of the segments that make up a prefetch operation. An SP reads one segment at a time from the LUN because smaller prefetch requests interfere less with other host requests.

      The amount of data retrieved during a single read operation (segment size) equals the number of blocks of data requested multiplied by the segment multiplication factor. The amount of data prefetched for each read request equals the number of blocks of data requested multiplied by the prefetch multiplier.


      Note: The segment multiplier value cannot be larger than the prefetch multiplier.

      You can specify a segment multiplication factor that is equal to or less than the prefetch multiplier. If you specify a segment multiplication factor that is equal to the prefetch multiplier, prefetch operations are not divided into segments.

      For constant-length prefetching, the segment size is the number of blocks of data to prefetch in one read operation from the LUN. For variable-length prefetching, the segment multiplier determines the amount of data to prefetch in one read operation relative to the amount of requested data.

      For example, if the segment multiplier is 4 (the default), the segment size is 4 times the amount of data requested.

      The range for the segment size is 1 to 254 blocks. The range for the prefetch multiplier is 1 to 32; the default is 4.

    • Maximum Prefetch is the maximum number of blocks to prefetch for variable-length prefetching. The range is 1 to 2048; the default is 512 sectors.

  6. To use default values, click the Use Default Prefetch Values box if it is not highlighted.

    If you are sure that the applications that access this LUN benefit from different prefetch values, click the buttons and enter values in fields as desired.

  7. When you are finished, click Set and confirm your choice in the configuration popup that appears.


    Note: The LUN cannot use read caching with the prefetch parameters you specify unless read caching is enabled for the SP that owns it.