VNX: kernel.cpu.utilization.cpuutil ist 15 Minuten lang > 90

Summary: kernel.cpu.utilization.cpuutil ist 15 Minuten lang > 90.

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

Heruntergestufte CIFS- und NFS-Performance und übermäßig hohe CPU-Auslastung auf den Datumsverschiebern über längere Zeiträume

Die Dateien /nas/log/sys_log werden mit den folgenden Warnmeldungen überflutet:

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

Eine allgemeine Systemkonfigurations- und Kapazitätsanalyse wurde durchgeführt, um zu bestimmen, welche Arten von Anforderungen (Anzahl der Replikationen, Deduplizierung, Prüfpunktzeitpläne usw.) für jeden Data Mover gestellt werden. Es wurde festgestellt, dass eine VMware-Anwendung namens Mirage für das Image-Management verwendet wird. Diese Software sicherte Tausende von Workstations in der Kundenumgebung auf CIFS- und NFS-Freigaben, indem mehrere kleine CVD-Dateien erstellt wurden.

In diesem Beispiel wurden 200 VMware Mirage-Sitzungen konfiguriert, die stündlich Snapshots von 4.000 Maschinen erstellen. Für einen Rechner ist eine CVD-Datei erforderlich, die wiederum 1,5 IOPS benötigt, damit der Snapshot abgeschlossen werden kann. Als die Backups ausgeführt wurden, war die Performance langsam und es kam zu einer enormen Latenz im Bereich von 626,78 KB pro ms auf der Mirage-Seite.

Ein Data Mover-Profil von server_2 wurde erfasst, wenn die CPU-Auslastung übermäßig hoch war und die VMware Mirage-Anwendung ausgeführt wurde. Das Profil wurde so konfiguriert, dass es 60 Sekunden lang ausgeführt wird:
Beispiel:

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

Eine Analyse des Data Mover-Profils wurde abgeschlossen und es wurde festgestellt, dass der primäre Engpass, der den Großteil der CPU beanspruchte, ein SMB-Sicherheitsverschlüsselungsprozess namens "AES_encrypt" war. Dieser SMB-Prozess wird verwendet, um eine Ende-zu-Ende-Verschlüsselung für SMB-Daten bereitzustellen und Daten vor Lauschangriffen in nicht vertrauenswürdigen Netzwerken zu schützen.

[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

Es stehen zwei Optionen zur Verfügung:

Möglichkeit 1:
Nehmen Sie keine Änderungen vor, lassen Sie das maximale Protokoll für die SMB-Kommunikation bei SMB3 bleiben, ertragen Sie die hohe CPU und schlechte Leistung.

Möglichkeit 2:
Implementieren Sie einen Workaround, um das maximale Protokoll für die SMB-Kommunikation von SMB3 auf SMB2 zu übertragen. Der Hauptunterschied zwischen SMB3 und SMB2 ist "AES_Encrypt". Durch das Löschen des max. Protokolls auf SMB2 wird der Verschlüsselungsprozess und die CPU-Auslastung sinken und die Performance sollte sich verbessern.

So aktivieren Sie das SMB2-Protokoll auf dem Data Mover:

  1. Melden Sie sich bei der primären Control Station als "root"-Nutzer in PuTTY/SSH an.

  2. Fordern Sie vom Kunden die Erlaubnis an, den CIFS-Service auf dem Data Mover vorübergehend zu beenden. Dies führt zu einem kleinen Ausfall des CIFS-Zugriffs, während der CIFS-Service beendet wird. Daher muss er entsprechend mit dem Kunden geplant werden.

    server_setup server_x -P cifs -o stop
  3. Ändern Sie das max. Protokoll für die SMB-Kommunikation von SMB3 in SMB2:

    server_cifs server_x -add security=NT,dialect=SMB2
  4. Starten Sie den CIFS-Service neu:

    server_setup server_x -P cifs -o start
  5. Stellen Sie sicher, dass der CIFS-Service erfolgreich neu gestartet wurde und das max. Protokoll auf SMB2 eingestellt ist:

    server_cifs server_x

    Beispiel:

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