Setting up shared storage: SCSI disks

When SCSI devices are used for shared storage, the SCSI address or SCSI initiator ID of each node must be unique. Since each node typically has the default SCSI address of "7," the addresses of one or more nodes must be changed to avoid a conflict. In the following example, two nodes share SCSI devices. The SCSI address of one node is changed to "5" by using nvedit commands to edit the nvramrc script.

If you have more than two systems that share the SCSI bus, do the following:

To set up shared storage

  1. Install the required SCSI host adapters on each node that connects to the storage, and make cable connections to the storage.

    Refer to the documentation that is shipped with the host adapters, the storage, and the systems.

  2. With both nodes powered off, power on the storage devices.
  3. Power on one system, but do not allow it to boot. If necessary, halt the system so that you can use the ok prompt.

    Note that only one system must run at a time to avoid address conflicts.

  4. Find the paths to the host adapters:
    {0} ok show-disks
    ...b) /sbus@6,0/QLGC,isp@2,10000/sd

    The example output shows the path to one host adapter. You must include the path information without the "/sd" directory, in the nvramrc script. The path information varies from system to system.

  5. Edit the nvramrc script on to change the scsi-initiator-id to 5. (The Solaris OpenBoot 3.x Command Reference Manual contains a full list of nvedit commands and keystrokes.) For example:
    {0} ok nvedit
    

    As you edit the script, note the following points:

    • Each line is numbered, 0:, 1:, 2:, and so on, as you enter the nvedit commands.

    • On the line where the scsi-initiator-id is set, insert exactly one space after the first quotation mark and before scsi-initiator-id.

    In this example, edit the nvramrc script as follows:

    0: probe-all
    1: cd /sbus@6,0/QLGC,isp@2,10000
    2: 5 " scsi-initiator-id" integer-property
    3: device-end
    4: install-console
    5: banner
    6: <CTRL-C>
  6. Store the changes you make to the nvramrc script. The changes you make are temporary until you store them.
    {0} ok nvstore
    

    If you are not sure of the changes you made, you can re-edit the script without risk before you store it. You can display the contents of the nvramrc script by entering:

    {0} ok printenv nvramrc
    

    You can re-edit the file to make corrections:

    {0} ok nvedit
    

    Or, discard the changes if necessary by entering:

    {0} ok nvquit
    
  7. Instruct the OpenBoot PROM Monitor to use the nvramrc script on the node.
    {0} ok setenv use-nvramrc? true
    
  8. Reboot the node. If necessary, halt the system so that you can use the ok prompt.
  9. Verify that the scsi-initiator-id has changed. Go to the ok prompt. Use the output of the show-disks command to find the paths for the host adapters. Then, display the properties for the paths. For example:
    {0} ok show-disks
    ...b) /sbus@6,0/QLGC,isp@2,10000/sd
    {0} ok cd /sbus@6,0/QLGC,isp@2,10000
    {0} ok .properties
    scsi-initiator-id     00000005

    Permit the system to continue booting.

  10. Boot the second node. If necessary, halt the system to use the ok prompt. Verify that the scsi-initiator-id is 7. Use the output of the show-disks command to find the paths for the host adapters. Then, display the properties for that paths. For example:
    {0} ok show-disks
    ...b) /sbus@6,0/QLGC,isp@2,10000/sd 
    {0} ok cd /sbus@6,0/QLGC,isp@2,10000
    {0} ok .properties
    scsi-initiator-id      00000007

    Permit the system to continue booting.