PowerPath: El comando "pprootdev on" falla porque el volumen lógico de HD5 es demasiado pequeño
Summary: Con AIX 7.2, el tamaño del registro de arranque, cuando PowerPath no está habilitado en rootvg, es cercano a 32 MB. Cuando PowerPath está habilitado en rootvg, el registro de arranque puede superar los 32 MB y, si hd5 tiene solo una partición física (PP) de tamaño y si el tamaño de PP es de 32 MB, el registro de arranque no se puede escribir. En esta base de conocimientos, se propone un método para aumentar el tamaño de hd5, de modo que pueda contener el registro de arranque cuando se habilita PowerPath en rootvg (pprootdev activado). ...
Symptoms
pprootdev on El comando falla con los siguientes errores:
dd: 0511-053 The write failed. : There is a request to a device or address that does not exist. 35509+1 records in. 554+1 records out. 0301-161 bosboot: dd failed to copy bootimage. 0301-165 bosboot: WARNING! bosboot failed - do not attempt to boot device. pprootdev: bosboot has failed. The configuration change has not been saved to the boot device.
Cause
El script de PowerPath pprootdev on llama a la función bosboot para crear una nueva imagen de arranque y almacenarla en el volumen lógico de arranque especificado. Con PowerPath habilitado, la imagen de arranque puede tener un tamaño >de 32 Mb. El volumen lógico tiene un tamaño de una partición física (PP), pero si el PPSIZE de rootvg es de 32 Mb, el tamaño del volumen será de 32 Mb, lo que es demasiado pequeño para almacenar la imagen de arranque.
El tamaño de un PP depende del tamaño del disco en sí. Cuanto más grande sea el disco, mayor será el tamaño de un PP.
Resolution
Existen tres métodos diferentes para aumentar el tamaño de un volumen lógico. El volumen hd5 se asume en los siguientes ejemplos:
Método 1 : agregar una partición física (PP) a hd5
Las particiones en las que se encuentra hd5 deben ser contiguas y estar en los primeros 4 GB del disco duro. Si desea saber si hay particiones libres disponibles junto a hd5, ejecute el siguiente comando:
# lspv -M hdisk0 (hdisk0 = rootvg disk) hdisk0:1 hd5:1 hdisk0:2-15 hdisk0:16 fslv00:1 hdisk0:17 fslv00:2
-
Uso
extendlvpara agregar una segunda partición a hd5. Para este ejemplo, crearíamos un archivo llamado "Map", por ejemplo, y en el archivo tendríamos solo una línea con hdisk0:2. Entonces correríamosextendlv -m Map hd5 1. Esto extendería hd5 en un PP a partir de hdisk0:2. Esto garantizaría que la extensión sea contigua. -
Ejecutar
pprootdev on(si se encuentra con el problema después de ejecutarpprootdev on, este segundo intento de ejecutarpprootdev onfallará porque el anterior se realizó correctamente parcialmente. Esto significa que probablemente tendrás que crear una nueva copia de tu disco de arranque para repetir todo el procedimiento de nuevo... y extender hd5 LV ANTES de ejecutarpprootdev on).
Método 2 : cambiar el diseño hd5 en rootvg con la utilidad alt_disk_copy
-
Ejecutar
mkszfilecomando. Este comando crea un archivo /image.data que es el diseño de rootvg. -
Edite el archivo image.data y ajuste los LP y LV_MIN_LPS para hd5 (necesitamos un PP más. Por lo tanto, si los LP y LV_MIB_LPS se establecen en 1, cambie estos valores a 2)
Ejemplo:
lv_data: VOLUME_GROUP= rootvg VOLUME_GROUP= rootvg LV_SOURCE_DISK_LIST= hdisk4 LV_SOURCE_DISK_LIST= hdisk4 LV_IDENTIFIER= 00f98edf00004c00000001860d2daee6.1 LV_IDENTIFIER= 00f98edf00004c00000001860d2daee6.1 LOGICAL_VOLUME= hd5 LOGICAL_VOLUME= hd5 VG_STAT= active/complete VG_STAT= active/complete TYPE= boot TYPE= boot MAX_LPS= 512 MAX_LPS= 512 COPIES= 1 COPIES= 1 LPs= 1 LPs= 2 STALE_PPs= 0 STALE_PPs= 0 INTER_POLICY= minimum INTER_POLICY= minimum INTRA_POLICY= edge INTRA_POLICY= edge MOUNT_POINT= MOUNT_POINT= MIRROR_WRITE_CONSISTENCY= on/ACTIVE MIRROR_WRITE_CONSISTENCY= on/ACTIVE LV_SEPARATE_PV= yes LV_SEPARATE_PV= yes PERMISSION= read/write ==> PERMISSION= read/write LV_STATE= closed/syncd LV_STATE= closed/syncd WRITE_VERIFY= off WRITE_VERIFY= off PP_SIZE= 128 PP_SIZE= 128 SCHED_POLICY= parallel SCHED_POLICY= parallel PP= 1 PP= 1 BB_POLICY= non-relocatable BB_POLICY= non-relocatable RELOCATABLE= no RELOCATABLE= no UPPER_BOUND= 32 UPPER_BOUND= 32 LABEL= primary_bootlv LABEL= primary_bootlv MAPFILE= MAPFILE= LV_MIN_LPS= 1 LV_MIN_LPS= 2 STRIPE_WIDTH= STRIPE_WIDTH= STRIPE_SIZE= STRIPE_SIZE= SERIALIZE_IO= no SERIALIZE_IO= no FS_TAG= FS_TAG= DEV_SUBTYP= DEV_SUBTYP=
-
Clone rootvg con el comando:
alt_disk_copy -i /image.data -d hdiskY(hdiskY es el disco de destino) -
Reinicie el servidor para activar el disco clonado (con el nuevo tamaño de PP)
-
Ejecutar
pprootdev oncommand
Método 3 : volver a crear hd5
Como se mencionó anteriormente, las particiones en las que se encuentra hd5 deben ser contiguas y estar en los primeros 4 GB del disco duro. Si desea saber si hay particiones libres disponibles junto a hd5, ejecute el siguiente comando:
# lspv -M hdisk0 (hdisk0 = rootvg disk) hdisk0:1 hd5:1 hdisk0:2 fslv00:1 hdisk0:3 fslv00:2
-
En el ejemplo anterior, no hay PP libre después del primero utilizado por hd5. Usando un
extendlvno funcionará, ya que el PP adicional no será contiguo. Dado que hd5 solo contiene el registro de arranque y este contenido se puede generar con unbosbootcomando, podemos recrear completamente HD5.# rmlv -f hd5 (hdisk0 = rootvg disk) # mklv -y hd5 -t boot -u2 rootvg 2 hdisk0
-
A continuación, podemos comprobar con un
lspv -M hdiskXXque el recién creado hd5 ahora tiene dos PP consecutivos.# lspv -M hdisk0 (hdisk0 = rootvg disk) hdisk0:1 hdisk0:2 fslv00:1 hdisk0:3 fslv00:2 .... hdisk0:13 hd5:1 hdisk0:14 hd5:2
La carpeta pprootdev on ahora debería realizarse correctamente, suponiendo que el LV hd5 se creó dentro de los primeros 4 GB (esto es lo que dice la documentación, pero esto depende de la versión de AIX y con AIX 7.2 TL5, el límite es mayor). Por lo tanto, y antes de ejecutar un pprootdev on, ejecute un bosboot! Si la solicitud en bosboot no se puede encontrar hd5, significa que está demasiado lejos del principio del disco y pprootdev on también fallará: El cambio se debe deshacer (rmlv -f hd5; mklv -y hd5 -t boot -u1 rootvg 1 hdiskX) y se debe utilizar el método 2.