Topic
7 replies Latest Post - ‏2009-07-14T19:57:23Z by SystemAdmin
SystemAdmin
SystemAdmin
4779 Posts
ACCEPTED ANSWER

Pinned topic Multipath for Solaris with DS4800

‏2009-06-23T09:09:25Z |
Hello Team
I have one DS4800 connected to a host with solaris 10
i m trying to install Multipathing using Solaris Native multipath, but i am stuck with IBM ds4800 vendorID.
DS4800 Type: 1815-82H
would anyone advice what is the vendor id for ds4800 to be used in multipathing in Solaris 10?
Is there any official document for that id?
Moreover, what about RDAC driver?I read that RDAC is not supported in Solaris 10?
In summary, any advice about creating multipath for ds4800 in solaris 10 ?

Thank you
Updated on 2009-07-14T19:57:23Z at 2009-07-14T19:57:23Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    4779 Posts
    ACCEPTED ANSWER

    Re: Multipath for Solaris with DS4800

    ‏2009-06-24T21:15:25Z  in response to SystemAdmin
    I don't think there's any easy way to get proper multipath failover for that "1815-82H" vendor ID.

    If you don't have any DS4800s that match "1815......FAStT." (replace each "." character with a space), you can try hex editing your scsi_vhci module to something like "1815-82H........" (once again, replace each "." character with a space). That should work. Or you could edit any one of the other IBM FAStT entries based on dual LSI controllers.

    If you try the follow the instructions in the man page for "scsi_vhci", I don't think you'll be able to successfully use your array under Solaris 10. Under Solaris 10, The only failover option seemingly available for equiment added to the scsi_vhci.conf file is "symmetric", which means all paths are active. Assuming that the DS4800 is a dual-LSI-controller device, it's an active-passive array.

    Under Open Solaris (which may someday become Solaris 11...), you'd be able to add your DS4800 to scsi_vhci.conf and select the proper failover module for LSI-built arrays.

    As for an RDAC driver, I'm pretty sure that the native Solaris failover for LSI-built arrays is built around an RDAC failover mechanism. I do know that you can't find the code for the "scsi_vhci_f_asym_lsi" Open Solaris kernel module
    • SystemAdmin
      SystemAdmin
      4779 Posts
      ACCEPTED ANSWER

      Re: Multipath for Solaris with DS4800

      ‏2009-06-27T07:32:08Z  in response to SystemAdmin
      I forget to mention that I m using SUN Solaris SPARC
      Therefore do you think Storage Manager Software package version 10.50.x5.19 will do the needful ( installting multipath failover) ?
      • SystemAdmin
        SystemAdmin
        4779 Posts
        ACCEPTED ANSWER

        Re: Multipath for Solaris with DS4800

        ‏2009-06-28T23:17:33Z  in response to SystemAdmin
        If you're referring to IBM's "Storage Manager" application used to control the arrays, unless things have changed I doubt that supplies any updates to Solaris multipathing.

        For what it's worth, I've noticed very little difference in Solaris SAN drivers between SPARC and x86, so I don't think that's going to make a difference.
        • SystemAdmin
          SystemAdmin
          4779 Posts
          ACCEPTED ANSWER

          Re: Multipath for Solaris with DS4800

          ‏2009-06-29T10:36:28Z  in response to SystemAdmin
          Let us suammarize the whole scenario

          I have solaris 10 sparc connected to a DS4800 how can i configure multipathing?

          I read "IBM DS4000 Storage Manager RDAC for Solaris 8 and 9 only" . Does this mean that RDAC is not supported in Solaris 10 ?
          • SystemAdmin
            SystemAdmin
            4779 Posts
            ACCEPTED ANSWER

            Re: Multipath for Solaris with DS4800

            ‏2009-07-13T01:22:39Z  in response to SystemAdmin
            A bit late, but better than never.
            Yes, that is the correct way to understand it. RDAC is unsupported on Solaris 10. Under Solaris 10 you must use the MPxIO built-in or Veritas. You cannot use both in conjunction, so MPxIO must be fully disabled if you intend to use Veritas MPD.

            Under MPxIO, you must be running Solaris 10 U2 or later (I personally would recommend U4 with only security patches.) To enable MPxIO, you need to edit /kernel/drv/fp.conf and change the line mpxio-disable="yes" to mpxio-disable="no. You shouldn't need to edit VHCI. Do not do an stmsboot - this still has a dangerously high tendency to put the system into a nearly unrecoverable reboot loop. Instead, do a reconfigure reboot. That should get you going; you can confirm with luxadm probe.
            • SystemAdmin
              SystemAdmin
              4779 Posts
              ACCEPTED ANSWER

              Re: Multipath for Solaris with DS4800

              ‏2009-07-13T12:42:57Z  in response to SystemAdmin
              Hello RotWyrm
              I had to modify the content of VHCI
              the Vendor id of DS 4800 is :"IBM 1815 FAStT" (respect Spaces)

              anyway my prob is solved
              guys , if anyone still have this same issue, msg me
              • SystemAdmin
                SystemAdmin
                4779 Posts
                ACCEPTED ANSWER

                Re: Multipath for Solaris with DS4800

                ‏2009-07-14T19:57:23Z  in response to SystemAdmin
                AFAIK, under Solaris 10 the only way you can extend multipath support is for symmetric arrays where all paths are active. But the DS4800 is an active/standby device. If you have AVT disabled on your DS4800, there's a good chance you're only using half your paths. If you do have AVT enabled, when you try to do IO, your LUNs will bounce back and forth between the two controllers on the 4800, which will kill performance. The AVT setting depends on your host type. If you've selected "Solaris", that should disable AVT.

                What does mpathadm show for your paths? You should see something similar to these results from a DS4100:

                
                -bash-3.00# mpathadm show lu /dev/rdsk/c4t600A0B8000166AEC000000964A517487d0s2 Logical Unit:  /dev/rdsk/c4t600A0B8000166AEC000000964A517487d0s2 mpath-support:  libmpscsi_vhci.so Vendor:  IBM Product:  1742-900 Revision:  0520 Name Type:  unknown type Name:  600a0b8000166aec000000964a517487 Asymmetric:  yes Current Load Balance:  round-robin Logical Unit Group ID:  NA Auto Failback:  on Auto Probing:  NA   Paths: Initiator Port Name:  210100e08b28db41 Target Port Name:  200600a0b8166aee Override Path:  NA Path State:  OK Disabled:  no   Initiator Port Name:  210100e08b28db41 Target Port Name:  200700a0b8166aee Override Path:  NA Path State:  OK Disabled:  no   Initiator Port Name:  210000e08b08db41 Target Port Name:  200600a0b8166aed Override Path:  NA Path State:  OK Disabled:  no   Initiator Port Name:  210000e08b08db41 Target Port Name:  200700a0b8166aed Override Path:  NA Path State:  OK Disabled:  no   Target Port Groups: ID:  1 Explicit Failover:  yes Access State:  standby Target Ports: Name:  200600a0b8166aee Relative ID:  0   Name:  200600a0b8166aed Relative ID:  0   ID:  3 Explicit Failover:  yes Access State:  active Target Ports: Name:  200700a0b8166aee Relative ID:  0   Name:  200700a0b8166aed Relative ID:  0 -bash-3.00#
                


                The easiest way to see all your paths is with the command

                
                -bash-3.00# rm /tmp/paths -bash-3.00# 
                
                for lun in /dev/dsk/c*s2; 
                
                do mpathadm show lu $lun >> /tmp/paths; done
                


                Just read what's in /tmp/paths after running that