PowerScale: los nodos entran en estado de alarma con la pila: Kernel de falla de aserción: pdm_update_membership+0x10b2
Summary: Varios nodos entran en estado de alarma con la pila: Kernel de falla de aserción: pdm_update_membership+0x10b2
Symptoms
Varios nodos entran en estado de alarma con la pila:
2022-03-03T14:40:11.340255-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: panic @ time 1646335137.652, thread 0xfffffe8ffa3b8080: Assertion Failure
2022-03-03T14:40:11.340297-05:00 <5.3> (id12) syslogd: sendto: Network is unreachable
2022-03-03T14:40:11.340317-05:00 <5.3> syslogd: last message repeated 1 times
2022-03-03T14:40:11.340322-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: time = 1646335137
2022-03-03T14:40:11.340334-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: cpuid = 15, TSC = 0xc868113bb278f
2022-03-03T14:40:11.340340-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: Panic occurred in module kernel loaded at 0xffffffff80200000:
2022-03-03T14:40:11.340347-05:00 <0.7> (id12) /boot/kernel.amd64/kernel:
2022-03-03T14:40:11.340353-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: Stack: --------------------------------------------------
2022-03-03T14:40:11.340359-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:isi_assert_halt+0x2e
2022-03-03T14:40:11.340365-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_update_membership+0x10b2
2022-03-03T14:40:11.340371-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_get_painted_domids+0x568
2022-03-03T14:40:11.340377-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_member_generate_entry+0xda
2022-03-03T14:40:11.340383-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_member_get_membership_entry+0x1b7
2022-03-03T14:40:11.340390-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:pdm_member_init_operation+0x16d
2022-03-03T14:40:11.340396-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:ifm_init_operation+0xb7
2022-03-03T14:40:11.340402-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:txn_i_include_vnode_to_list+0xc0
--
2022-03-03T14:40:11.340440-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:VOP_RENAME_APV+0x9b
2022-03-03T14:40:11.340446-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:isi_kern_renameat+0x37e
2022-03-03T14:40:11.340452-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:sys_enc_renameat+0x27
2022-03-03T14:40:11.340458-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: kernel:amd64_syscall+0x380
2022-03-03T14:40:11.340464-05:00 <0.7> (id12) /boot/kernel.amd64/kernel: --------------------------------------------------
2022-03-03T14:40:11.340471-05:00 <0.3> (id12) /boot/kernel.amd64/kernel: *** FAILED ASSERTION !domid_vec_empty(new_domids) && !pdm_is_non_ifs_vec(new_domids) ==> new_domids->domids[0] == PDM_ROOT_DOMID @ /b/mnt/src/sys/ifs/pdm/pdm_core.c:660: Invalid membership: [ 1.000000074fc.0001 ]
Cause
Causado por el siguiente defecto: PSCALE-118595
Este problema está relacionado con el flujo de trabajo de ADS (flujos de datos alternativos). Los flujos de datos alternativos son una estructura de datos que se usa en Windows y que almacena tipos de metadatos de información sobre un archivo, como comentarios sobre un archivo. No existe en FreeBSD (que es el sistema de archivos subyacente de OneFS en Isilon), pero OneFS lo admite y se trata como un archivo dentro de OneFS.
¿Cómo determinar si un clúster está en riesgo de sufrir este problema?
La ocurrencia de este defecto en el campo es rara.
Para que se active esta condición de carrera, deben cumplirse TODAS las siguientes condiciones:
El clúster ejecuta una versión de OneFS anterior a 9.4.0.0.
El archivo tiene más de un elemento primario (archivo con enlace físico).
El archivo debe tener ADS adjunto.
Los datos del archivo residen en el almacenamiento de nube (no hay datos locales en el disco).
Cambie el nombre de uno de los vínculos primarios a otro dominio (por ejemplo, a una ubicación de instantánea diferente).
Resolution
Solución permanente:
Actualice a una de estas versiones de OneFS o posterior, lo que incluye la corrección:OneFS 9.4.0.0PATCH: [9.3.0.5_GA-RUP_2022-03] PSP-1956PATCH: [9.2.1.10_GA-RUP_2022-03] PSP-2075PATCH: [9.1.0.14_GA-RUP_2021-12] PSP-1722
Una solución alternativa sería complicada para este escenario. Tendríamos que eliminar los archivos afectados de CloudPools y hacer que estén disponibles solo localmente. Es mejor actualizar y solucionar el problema directamente.