Los comandos powermt fallan con el mensaje "ERROR: Error en la reclamación de LAM del dispositivo"
Summary: Los comandos powermt fallan con el mensaje "ERROR: Error en la reclamación de LAM del dispositivo"
Symptoms
Este problema en particular solo puede ocurrir cuando el servidor está conectado a arreglos administrados y no administrados de PowerPath y después de los cambios de configuración en ambos arreglos. En nuestro ejemplo, se habían eliminado algunos dispositivos Clariion, pero no se había limpiado el pseudodispositivo correspondiente. Luego se agregó el almacenamiento de IBM y los discos duros, inicialmente utilizados como una ruta a estos dispositivos Clariion eliminados, se reutilizaron para describir los nuevos discos de IBM. Esto dio lugar a estas entradas incorrectas en el ODM
Entorno:
SO: AIX (cualquier sabor)
SW de DELL: PowerPath para AIX (cualquier versión)
hardware que no es de Dell: discos de un arreglo que PowerPath no puede administrar.
En un entorno AIX, los comandos powermt fallan con el mensaje "ERROR: La afirmación de Device Lam falló". Este error no se documenta en la CLI de la familia Dell PowerPath ni en la Referencia de mensajes del sistema.
Cause
PowerPath informa este mensaje cuando no puede determinar a qué módulo de arreglo cargable (LAM) pertenece un dispositivo. Debido a que los comandos de PowerPath no funcionan, la solución de problemas solo se puede realizar mirando el ODM. Si PowerPath está buscando una LAM y no puede encontrar la LAM adecuada, esto significa que hay un pseudodispositivo, con entradas en el ODM, que apuntan a un tipo de dispositivo no esperado por PowerPath.
En el caso que provocó la creación de este artículo, teníamos lo siguiente en el ODM:
CuAt: name = "hdiskpower29" attribute = "vpd_map" value = "MF0808C,TM1010C,RL2004C,Z00008X,Z1040780C,SN081083X" type = "V" generic = "" rep = "sl" nls_index = 0
Revisando el PdAt para este tipo de dispositivo, encontramos:
PdAt: uniquetype = "disk/fcp/2145" attribute = "vpd_map" deflt = "MF0808C,TM1010C,RL2004C,Z00008X,Z1040780C,SN081083X" values = "" width = "" type = "V" generic = "" rep = "sl" nls_index = 0
Este no es un tipo de disco DELL ni nada administrado por PowerPath: es un disco IBM.
El atributo unique_id del pseudodispositivo proporciona evidencia más fácil de la naturaleza del dispositivo. En nuestro caso, teníamos (se cambió el valor real para preservar la confidencialidad):
CuAt:
name = "hdiskpower29"
attribute = "unique_id"
value = "33213600507680C80017D3800000000000XXXXXXX4503IBMfcp"
type = "R"
generic = ""
rep = "s"
nls_index = 0
Cuando dichas entradas existen en el ODM y cuando se hace referencia al pseudodispositivo (en este caso, hdiskpower29) en "powermt_custom.xml", "powermt config" no puede asociar una LAM al dispositivo y falla, y el otro comando "powermt" falla con el mismo error.
Resolution
Debido a que todos los comandos "powermt" fallan, no es posible actualizar el archivo "powermt_custom.xml" con un "powermt save". Eliminar el archivo "powermt_custom.xml" sería una mala idea debido al riesgo de perder la relación entre los pseudodispositivos correctos y los dispositivos del arreglo administrado de PowerPath.
La única manera de solucionar el problema es eliminar del ODM todos los pseudodispositivos en los que el atributo "unique_id" es XXXXIBMfcp. Y en lugar de usar comandos "odmdelete" peligrosos, se recomienda simplemente usar un comando "rmdev -dl <pseudo_device>".
Este es un ejemplo de los comandos que se ejecutaron para eliminar las entradas incorrectas en nuestro ejemplo (cada caso es único y la siguiente lista es un ejemplo):
for i in 29 30 31 32 33 34 39 40 41 42 43 44 45 46 47 48 125 136 137 138 167 168 169 170 171 172 173 216 217 267 522 523 524 525 526 527 do rmdev -dl hdiskpower$i done
Después de esta limpieza, ejecute "powermt config" seguido de "powermt save". En esta etapa, es posible que también descubra algunas rutas "inactivas" (para pseudodispositivos que también se quitaron de la configuración, pero en las que los discos duros correspondientes no se han reutilizado para señalar discos administrados que no son de PowerPath y que no se detectaron en el ODM cuando se comprobó el atributo "unique_id") en "powermt display". Estas entradas se limpian con un comando "powermt check". En tal caso, no olvide volver a ejecutar "powermt save" después de esta limpieza final.