VNX: kernel.cpu.utilization.cpuutil está > 90 durante 15 minutos

Summary: kernel.cpu.utilization.cpuutil está > 90 durante 15 minutos.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

CIFS degradado, rendimiento de NFS y uso excesivamente alto de CPU en los administradores de transferencia de fechas durante períodos prolongados

Los archivos /nas/log/sys_log se inundan con las siguientes alertas:

Oct 20 10:19:21 2016:CS_PLATFORM:PERFSTATS:NOTICE:3:::::nas_alerterd: Clearing event for policy: default:server_2:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes due to value = 88
Oct 20 10:20:26 2016:CS_PLATFORM:PERFSTATS:NOTICE:3:::::nas_alerterd: Clearing event for policy: default:server_3:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes due to value = 89
Oct 20 10:35:21 2016:CS_PLATFORM:PERFSTATS:WARNING:2:::::nas_alerterd: Raising event for policy: default:server_2:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes. The last sample value was 94
Oct 20 10:48:26 2016:CS_PLATFORM:PERFSTATS:WARNING:2:::::nas_alerterd: Raising event for policy: default:server_3:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes. The last sample value was 95
Oct 20 11:01:26 2016:CS_PLATFORM:PERFSTATS:NOTICE:3:::::nas_alerterd: Clearing event for policy: default:server_3:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes due to value = 87
Oct 20 11:17:21 2016:CS_PLATFORM:PERFSTATS:NOTICE:3:::::nas_alerterd: Clearing event for policy: default:server_2:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes due to value = 89
Oct 20 11:21:26 2016:CS_PLATFORM:PERFSTATS:WARNING:2:::::nas_alerterd: Raising event for policy: default:server_3:kernel.cpu.utilization.cpuutil is > 90 for 15 minutes. The last sample value was 96
[nasadmin@storage ~]$ server_sysstat server_2
server_2 :
threads runnable = 216
threads blocked = 6859
threads I/J/Z = 1
memory free(kB) = 6925375
cpu idle_% = 2 < ------- 98% utilized

[nasadmin@storage ~]$ server_sysstat server_3
server_3 :
threads runnable = 61
threads blocked = 6940
threads I/J/Z = 1
memory free(kB) = 6683987
cpu idle_% = 1 < ------- 99% utilized

 

Cause

Se completó un análisis general de la configuración y la capacidad del sistema para determinar qué tipos de demandas (cantidad de replicación, desduplicación, programaciones de puntos de control, etc.) se aplican a cada administrador de transferencia de datos. Se determinó que se estaba utilizando una aplicación de VMware llamada Mirage para la administración de imágenes. Este software respaldaba miles de estaciones de trabajo en el entorno de los clientes en los recursos compartidos CIFS y NFS mediante la creación de varios archivos CVD pequeños.

En este ejemplo, se configuraron 200 sesiones de VMware Mirage que toman instantáneas por hora de 4000 máquinas. Una máquina requiere un archivo CVD que, a su vez, necesita 1,5 IOPS para que se complete la instantánea. Cuando se ejecutaban los respaldos, el rendimiento era lento y se experimentó una gran latencia en la región de 626,78 KB por ms en el lado de Mirage.

Se capturó un perfil de administrador de transferencia de datos de server_2 cuando la utilización de CPU era excesivamente alta y la aplicación VMware Mirage estaba en ejecución. El perfil se configuró para ejecutarse durante 60 segundos:
Ejemplo:

[nasadmin@storage ~]$ /nas/tools/profile_slot -slot 2 -method function -seconds 60 -output /root_vdm_3/FS_Backup_01/profile_slot2.out
Starting profile on slot 2 with the following params...
Slot = 2
Method = function
Seconds = 60
Ignorebounds = no
Frequency = 256
Outfile = /root_vdm_3/FS_Backup_01/profile_slot2.out
Profile started. Waiting for 60 seconds...
Profile stopped.
Profile output has been written to /root_vdm_3/FS_Backup_01/profile_slot2.out on server in slot 2.

Se completó un análisis del perfil del administrador de transferencia de datos y se descubrió que el cuello de botella principal que consumía la mayor parte de la CPU era un proceso de cifrado de seguridad de SMB denominado "AES_encrypt". Este proceso de SMB se utiliza para proporcionar cifrado integral de los datos de SMB y proteger los datos de ocurrencias de espionaje en redes no confiables.

[nasadmin@storage ~]$ more profile_slot2.out | grep -i aes
0.0% (          1 ) EVP_aes_128_cbc
0.0% (          2 ) aes_init_key
1.0% (        631 ) aes_cbc_cipher
0.0% (         16 ) private_AES_set_encrypt_key
44.8% (      27454 ) AES_encrypt < ---------------------
0.9% (        581 ) AES_cbc_encrypt
0.0% (          1 ) EVP_aes_128_cbc
0.8% (        123 ) aes_cbc_cipher
0.0% (          1 ) private_AES_set_encrypt_key
37.0% (       5676 ) AES_encrypt < ---------------------
0.8% (        128 ) AES_cbc_encrypt
0.0% (          1 ) aes_init_key
0.9% (        140 ) aes_cbc_cipher
0.0% (          3 ) private_AES_set_encrypt_key
47.1% (       7219 ) AES_encrypt < ---------------------
0.9% (        146 ) AES_cbc_encrypt
0.0% (          1 ) aes_init_key
1.3% (        204 ) aes_cbc_cipher
0.0% (          7 ) private_AES_set_encrypt_key
48.2% (       7388 ) AES_encrypt < ---------------------
0.9% (        151 ) AES_cbc_encrypt
1.0% (        164 ) aes_cbc_cipher
0.0% (          5 ) private_AES_set_encrypt_key
46.8% (       7171 ) AES_encrypt < ---------------------
1.0% (        156 ) AES_cbc_encrypt

 

Resolution

Hay dos opciones disponibles:

Opción 1:
No realice cambios, permita que el protocolo máximo para la comunicación SMB permanezca en SMB3, tolere la CPU alta y el rendimiento deficiente.

Opción 2:
Implemente una solución alternativa para descartar el protocolo máximo para la comunicación SMB de SMB3 a SMB2. La principal diferencia entre SMB3 y SMB2 es "AES_Encrypt". Con la eliminación del protocolo máximo en SMB2, se interrumpe el proceso de cifrado, disminuye el uso de CPU y el rendimiento debería mejorar.

Para habilitar el protocolo SMB2 en el administrador de transferencia de datos:

  1. Inicie sesión en la Control Station primaria como usuario "root" en putty/SSH

  2. Solicite permiso al cliente para detener temporalmente el servicio CIFS en el administrador de transferencia de datos. Esto provoca una pequeña interrupción del acceso a CIFS mientras el servicio CIFS se detiene, por lo que se debe programar de acuerdo con el cliente.

    server_setup server_x -P cifs -o stop
  3. Cambie el protocolo máximo para la comunicación SMB de SMB3 a SMB2:

    server_cifs server_x -add security=NT,dialect=SMB2
  4. Reinicie el servicio CIFS:

    server_setup server_x -P cifs -o start
  5. Asegúrese de que el servicio CIFS se haya reiniciado correctamente y de que el protocolo máximo esté configurado en SMB2:

    server_cifs server_x

    Ejemplo:

    [root@Bstorage]# server_cifs server_2
    server_2 :
    384 Cifs threads started
    Security mode = NT
    Max protocol = SMB2.1 < -----

 

Affected Products

VNX2 Series

Products

VNX2 Series
Article Properties
Article Number: 000056854
Article Type: Solution
Last Modified: 20 Oct 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.