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

Resumo: kernel.cpu.utilization.cpuutil está > 90 por 15 minutos.

Este artigo aplica-se a Este artigo não se aplica a Este artigo não está vinculado a nenhum produto específico. Nem todas as versões do produto estão identificadas neste artigo.

Sintomas

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

 

Causa

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

 

Resolução

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

 

Produtos afetados

VNX2 Series

Produtos

VNX2 Series
Propriedades do artigo
Número do artigo: 000056854
Tipo de artigo: Solution
Último modificado: 20 out. 2025
Versão:  5
Encontre as respostas de outros usuários da Dell para suas perguntas.
Serviços de suporte
Verifique se o dispositivo está coberto pelos serviços de suporte.