VNX: kernel.cpu.utilization.cpuutil é > 90 por 15 minutos

Summary: kernel.cpu.utilization.cpuutil está > 90 por 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, desempenho do NFS e utilização excessivamente alta da CPU nos data movers por períodos prolongados

Os arquivos /nas/log/sys_log são inundados com os seguintes 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

Uma configuração geral do sistema e uma análise de capacidade foram concluídas para determinar quais tipos de demandas (número de replicação, desduplicação, agendamentos de checkpoint e assim por diante) estão sendo colocadas em cada Data Mover. Foi determinado que um aplicativo da VMware chamado Mirage estava sendo usado para gerenciamento de imagens. Esse software fazia backup de milhares de estações de trabalho no ambiente dos clientes para compartilhamentos CIFS e NFS, criando vários arquivos CVD pequenos.

Neste exemplo, 200 sessões do VMware Mirage foram configuradas tirando snapshots por hora de 4.000 máquinas. Uma máquina requer um arquivo CVD que, por sua vez, precisa de 1,5 IOPS para que o snapshot seja concluído. Quando os backups estavam em execução, o desempenho era lento e havia uma enorme latência de 626,78 KB por ms no Mirage.

Um perfil de Data Mover de server_2 foi capturado quando a utilização da CPU era excessivamente alta e o aplicativo VMware Mirage estava em execução. O perfil foi configurado para ser executado por 60 segundos:
Exemplo:

[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.

Uma análise do perfil do Data Mover foi concluída e descobriu-se que o principal gargalo consumindo a maior parte da CPU era um processo de criptografia de segurança de SMB chamado "AES_encrypt". Esse processo SMB é usado para fornecer criptografia completa de dados SMB e protege os dados contra ocorrências de espionagem em redes não confiáveis.

[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

Duas opções estão disponíveis:

Opção 1:
Não faça alterações, permita que o protocolo máximo para comunicação SMB permaneça no SMB3, suporte a CPU alta e o baixo desempenho.

Opção 2:
Implemente uma solução temporária para descartar o protocolo máximo para comunicação SMB de SMB3 para SMB2. A principal diferença entre SMB3 e SMB2 é "AES_Encrypt". Ao descartar o protocolo máximo para SMB2, isso reduz o processo de criptografia, a utilização da CPU diminui e o desempenho deve melhorar.

Para ativar o protocolo SMB2 no Data Mover:

  1. Faça login na Control Station primária como usuário "root" no putty/SSH

  2. Solicite permissão do cliente para interromper temporariamente o serviço CIFS no Data Mover. Isso causa uma pequena interrupção no acesso ao CIFS enquanto o serviço CIFS está parado, portanto, ela deve ser agendada de acordo com o cliente.

    server_setup server_x -P cifs -o stop
  3. Altere o protocolo máximo para comunicação do SMB de SMB3 para SMB2:

    server_cifs server_x -add security=NT,dialect=SMB2
  4. Reinicie o serviço CIFS:

    server_setup server_x -P cifs -o start
  5. Verifique se o serviço CIFS foi reiniciado com sucesso e se o protocolo máximo está definido como SMB2:

    server_cifs server_x

    Exemplo:

    [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.