MPXIO para el nene y la nena. Segunda parte
Una vez comprendidas las generalidades, vamos a proceder a la implementación del asunto, que es lo más interesante.
MPXIO está implementado en Solaris desde la versión 8, pero su configuración ha sido cambiada en Solaris 10, de modo que un caveat antes de ponernos en harina: Imaginemos que el artículo ha sido escrito para las versiones 8 y 9 de Solaris. Haré las matizaciones necesarias para la última versión.
Retomando el ejemplo de la última entrada, vamos a examinar el total de discos que habría en la máquina:
root@madhatter $ format
Searching for disks...done
AVAILABLE DISK SELECTIONS: 0. c0t0d0 /pci@83,4000/FJSV,ulsa@2,1/sd@0,0 1. c0t1d0 /pci@83,4000/FJSV,ulsa@2,1/sd@1,0 2. c2t50060168082006E2d0 /pci@83,2000/pci@2/lpfc@4/fp@0,0/ssd@w50060168082006e2,0 3. c2t50060160082006E2d0 /pci@83,2000/pci@2/lpfc@4/fp@0,0/ssd@w50060160082006e2,0 4. c2t50060168082006E2d1 /pci@83,2000/pci@2/lpfc@4/fp@0,0/ssd@w50060168082006e2,1 5. c2t50060160082006E2d1 /pci@83,2000/pci@2/lpfc@4/fp@0,0/ssd@w50060160082006e2,1 6. c3t50060169082006E2d0 /pci@83,2000/pci@2/lpfc@5/fp@0,0/ssd@w50060169082006e2,0 7. c3t50060161082006E2d0 /pci@83,2000/pci@2/lpfc@5/fp@0,0/ssd@w50060161082006e2,0 8. c3t50060161082006E2d1 /pci@83,2000/pci@2/lpfc@5/fp@0,0/ssd@w50060161082006e2,1 9. c3t50060169082006E2d1 /pci@83,2000/pci@2/lpfc@5/fp@0,0/ssd@w50060169082006e2,1 Specify disk (enter its number): ^D
Antes de nada, será necesario instalar el software de SAN más los parches correspondientes. Diríjanse a Sunsolve a golpe de atambores para recoger el SAN Foundation Kit, así como los drivers y parches para HBA Emulex, que será las que utilicemos en este ejemplo. En caso de Solaris 10, no será necesario, ya que está incluído con el sistema operativo.
Una vez instalado todo, editaremos el fichero /kernel/drv/scsi_vhci.conf
Vamos a buscar la entrada mpxio-disable=”yes”;
Y la cambiaremos para que diga mpxio-disable=”no”;
Nota: En Solaris 10 el fichero a editar es /kernel/drv/fp.conf
Por último, y en caso de que estemos utilizando un dispositivo de almacenamiento externo, habrá que rellenar la parte correspondiente del final del fichero. El ejemplo que pongo a continuación está hecho usando una cabina IBM.
# For enabling MPxIO support for 3rd party symmetric device need an # entry similar to following in this file. Just replace the "SUN SENA" # part with the Vendor ID/Product ID for the device, exactly as reported by # Inquiry cmd. # # This functionality requires patch 113039-02 (or higher). # # device-type-scsi-options-list = # "SUN SENA", "symmetric-option"; # # symmetric-option = 0x1000000; # device-type-scsi-options-list = "IBM 2105800", "symmetric-option"; symmetric-option = 0x1000000;
Eso es todo, ahora será necesario realizar un reboot con reconfiguración. Una vez terminado, podremos ver que los discos en el sistema han cambiado:
AVAILABLE DISK SELECTIONS: 0. c0t0d0 /pci@83,4000/FJSV,ulsa@2,1/sd@0,0 1. c0t1d0 /pci@83,4000/FJSV,ulsa@2,1/sd@1,0 2. c4t6006016061B71000AD0810C9979CD911d0 /scsi_vhci/ssd@g6006016061b71000ad0810c9979cd911 3. c4t6006016061B7100055B12704989CD911d0 /scsi_vhci/ssd@g6006016061b7100055b12704989cd911 Specify disk (enter its number): ^D
De hecho, la correcta composición del dispositivo nuevo se puede ver en el arranque:
Dec 18 11:42:24 madhatter mpxio: [ID 669396 kern.info] /scsi_vhci/ssd@g600c0ff000000000086ab238b2af0600 (ssd11) multipath status: optimal, path /pci@9,600000/SUNW,qlc@1/fp@0,0 (fp1) to target address: 216000c0ff886ab2,0 is online. Load balancing: round-robin
En caso de que haya algún problema con los caminos, sería reportado en el messages:
Aug 24 07:09:01 madhatter mpxio: [ID 669396 kern.info] /scsi_vhci/ssd@g600c0ff000000000086ab238b2af0600 (ssd11) multipath status: degraded, path /pci@9,600000/SUNW,qlc@1/fp@0,0 (fp1) to target address: 216000c0ff886ab2,0 is online. Load balancing: round-robin
Y asimismo, podemos ver lo que hay por debajo, así como los caminos independientes, haciendo un luxadm de los discos. De la misma forma, podemos ver si hay problemas con los caminos de las tarjetas hacia las LUN.
root@madhatter# luxadm display /dev/rdsk/c4t6006016061B71000AD0810C9979CD911d0s2 DEVICE PROPERTIES for disk: /dev/rdsk/c4t6006016061B71000AD0810C9979CD911d0s2 Vendor: SUN Product ID: StorEdge 3510 Revision: 413C Serial Num: 086AB238B2AF Unformatted capacity: 1397535.000 MBytes Write Cache: Enabled Read Cache: Enabled Minimum prefetch: 0x0 Maximum prefetch: 0xffff Device Type: Disk device Path(s):
/dev/rdsk/c4t6006016061B71000AD0810C9979CD911d0s2 /devices/scsi_vhci/ssd@g600c0ff000000000086ab238b2af0600:c,raw Controller /pci@83,2000/pci@2/lpfc@4/fp@0,0 Device Address 216000c0ff886ab2,0 Host controller port WWN 210000e08b14cc40 Class primary State ONLINE Controller /pci@83,2000/pci@2/lpfc@4/fp@0,0 Device Address 266000c0fff86ab2,0 Host controller port WWN 210000e08b144540 Class primary State ONLINE