PowerFlex: Troubleshooting bei Ressourcenknappheit

요약: Probleme mit Ressourcenknappheit bei PowerFlex und Troubleshooting

이 문서는 다음에 적용됩니다. 이 문서는 다음에 적용되지 않습니다. 이 문서는 특정 제품과 관련이 없습니다. 모든 제품 버전이 이 문서에 나와 있는 것은 아닙니다.

증상

Ein ungewöhnliches Verhalten der PowerFlex-Prozesse führt dazu, dass bei PowerFlex-Prozessen Ressourcenkonflikte mit anderen Software- oder Hardwarekomponenten auftreten.

Die Symptome können hier vielfältig sein. Dies ist eine unvollständige Liste der Symptome und Ergebnisse

 

MDM-Probleme:

 - Ein MDM-Ownership-Failover tritt auf, wenn MDM-Prozesse hängen bleiben und die Kommunikation mit den anderen MDMs verlieren.

From exp.0:
Panic in file /emc/svc_flashbld/workspace/ScaleIO-RHEL7/src/mos/umt/mos_umt_sched_thrd.c, line 1798, function mosUmtSchedThrd_SuspendCK, PID 36721.Panic Expression ALWAYS_ASSERT Scheduler guard seems to be dead.
 
From trc.*
24/02 15:54:16.087919 0:schedThrdGuard_SampleLivnes:01463: WARNING: pThread 0x106d9360(0) in scheduler 0x7fff580c4880, running UMT 0x7f39ad00ceb8, found to be stuck.
24/02 15:54:16.088226 ad417eb8:actorLoop_IsSchedThredStuck:10932: Stuck scheduler thread identified
24/02 15:54:16.088253 ad417eb8:actor_Loop:11257: Lost quorum. ourVoters: 0 votersOwnedByOther: [0,0]
24/02 15:54:16.088299 ---Planned crash, reason: Lost quorum, going down to let another MDM become master ---

 

 - Der MDM-Prozess wird über einen längeren Zeitraum ständig getrennt und wieder verbunden

2017-02-23 14:00:43.241 MDM_CLUSTER_LOST_CONNECTION 	WARNING  	The MDM, ID 089012db4d536880, lost connection 
2017-02-23 14:00:43.422 MDM_CLUSTER_CONNECTED     	INFO     	The MDM, ID 089012db4d536880, connected 
2017-02-23 23:05:25.852 MDM_CLUSTER_LOST_CONNECTION 	WARNING  	The MDM, ID 089012db4d536880, lost connection 
2017-02-23 23:05:26.422 MDM_CLUSTER_CONNECTED     	INFO     	The MDM, ID 089012db4d536880, connected 
2017-02-24 15:54:16.141 MDM_CLUSTER_LOST_CONNECTION 	WARNING  	The MDM, ID 089012db4d536880, lost connection 
2017-02-24 15:54:16.238 MDM_CLUSTER_CONNECTED    	INFO     	The MDM, ID 089012db4d536880, connected 

 

 

SDS-Probleme:

 - SDS wird über einen längeren Zeitraum ständig getrennt und wieder verbunden

2017-02-15 13:18:16.881 SDS_RECONNECTED           INFO     	 SDS: siosds2 (ID 1eb052fe00000001) reconnected
2017-02-16 03:37:37.327 SDS_DECOUPLED             ERROR    	 SDS: siosds2 (id: 1eb052fe00000001) decoupled.
2017-02-16 03:39:54.300 SDS_RECONNECTED           INFO     	 SDS: siosds2 (ID 1eb052fe00000001) reconnected
2017-02-17 04:03:41.757 SDS_DECOUPLED             ERROR    	 SDS: siosds2 (id: 1eb052fe00000001) decoupled.
2017-02-17 04:09:13.604 SDS_RECONNECTED           INFO     	 SDS: siosds2 (ID 1eb052fe00000001) reconnected

 

 - SDS zeigt möglicherweise oszillierende Fehler in TRC-Dateien in Bezug auf den Verbindungsverlust zu anderen SDS-Nodes an:

14/02 19:13:24.096983 1be7eb8:contNet_OscillationNotif:01675: Con 1eb052fe00000005 - Oscillation of type 5 (RPC_LINGERED_1SEC) reported
14/02 19:13:24.196814 1be7eb8:contNet_OscillationNotif:01675: Con 1eb053000000000b - Oscillation of type 5 (RPC_LINGERED_1SEC) reported
14/02 19:13:24.296713 1be7eb8:contNet_OscillationNotif:01675: Con 1eb0530000000007 - Oscillation of type 5 (RPC_LINGERED_1SEC) reported
14/02 21:48:43.917218 afb28eb8:contNet_OscillationNotif:01675: Con 1eb052fe00000007 - Oscillation of type 1 (SOCKET_DOWN) reported
14/02 21:48:43.917296 afb28eb8:contNet_OscillationNotif:01675: Con 1eb052fe00000005 - Oscillation of type 1 (SOCKET_DOWN) reported

 

 - SDS kann blockierte oder festgefahrene Threads in TRC-Dateien anzeigen: 

 
14/02 19:13:24.147938 9aa4eeb8:netPath_IsKaNeeded:01789: DEBUG ASSERT, Reason:Socket deadlocked. Crashing.
14/02 19:13:24.148113 9aa4eeb8:netPath_IsKaNeeded:01789: DEBUG ASSERT, Reason:Socket deadlocked. Crashing.
14/02 19:13:24.148121 9aa4eeb8:netPath_IsKaNeeded:01789: DEBUG ASSERT, Reason:Socket deadlocked. Crashing.
 
14/02 20:52:54.097765 242f0eb8:kalive_StartIntr:00346: KA aborted due to stuck sched thread
14/02 21:48:43.510602 7fa30eb8:kalive_StartIntr:00346: KA aborted due to stuck sched thread
14/02 21:48:44.776713 1b67ceb8:kalive_StartIntr:00346: KA aborted due to stuck sched thread
 
14/02 02:44:41.532007 e2239eb8:contNet_OscillationNotif:01675: Con 1eb052fd00000001 - Oscillation of type 3 (RCV_KA_DISCONNECT) reported
14/02 02:44:43.799135 0:schedThrdGuard_SampleLivnes:01463: WARNING: pThread 0x1a0de10(0) in scheduler 0x7fff01bec400, running UMT 0x7f94e221eeb8, found to be stuck.
14/02 02:44:43.799155 0:schedThrdGuard_SampleLivnes:01463: WARNING: pThread 0x1a0e050(1) in scheduler 0x7fff01bec400, running UMT 0x7f94e2227eb8, found to be stuck.
14/02 02:44:43.799257 e0e38eb8:cont_IsSchedThredStuck:01678: Stuck scheduler thread identified
14/02 02:44:43.799267 e0e38eb8:kalive_StartIntr:00346: KA aborted due to stuck sched thread
 

 

 - SDS zeigt möglicherweise "Error Forking" in TRC-Dateien an:

01/09 00:37:51.329020 0x7f1001c58eb0:mosDbg_BackTraceAllOsThreads:00673: Error forking.

 

 – SDS kann nicht gestartet werden, weil der erforderliche Arbeitsspeicher nicht zugewiesen werden konnte.
Folgendes wird in exp-Protokolldateien gemeldet:

07/09 00:41:52.713502 Panic in file /data/build/workspace/ScaleIO-SLES12-2/src/mos/usr/mos_utils.c, line 235, function mos_AllocPageAlignedOrPanic, PID 25342.Panic Expression pMem != ((void *)0) .

 

 - Das Betriebssystem kann auch einige Symptome in /var/log/messages oder Systemereignisprotokollen aufweisen:

/var/log/messages:
Feb  14 13:25:08 ScaleIO-192-168-1-2 kernel: [7461116.683555] TCP: Possible SYN flooding on port 7072. Sending cookies.
Feb  14 13:25:08 ScaleIO-192-168-1-2 kernel: [7461116.683561] TCP: Possible SYN flooding on port 7072. Sending cookies.
Feb  14 13:25:08 ScaleIO-192-168-1-2 kernel: [7461116.683566] TCP: Possible SYN flooding on port 7072. Sending cookies.
Feb  14 13:25:08 ScaleIO-192-168-1-2 kernel: [7461116.683570] TCP: Possible SYN flooding on port 7072. Sending cookies.
Feb  14 13:27:39 ScaleIO-192-168-1-2 kernel: [7461266.566145] sched: RT throttling activated

 

Die Meldungen "SYN flooding on port 7072" bedeuten, dass Netzwerkdatenpakete an den SDS auf diesem Host gesendet werden und der SDS die Pakete auf diesem Port nicht akzeptieren kann. Der SDS verwendet standardmäßig Port 7072.
Die Meldung "RT-Drosselung aktiviert" ist eine Meldung, dass der Betriebssystem-Scheduler einige Echtzeit-Threads identifiziert hat, die die CPU beanspruchen und andere Threads aushungern. Das Betriebssystem tut dies, um diese Echtzeitaufgaben zu drosseln und zu verhindern, dass das Betriebssystem hängen bleibt oder abstürzt.  

 
 
SDC-Probleme:

Auf dem SDC können auch IO-Fehler auftreten, wenn die SDSen häufig getrennt werden oder nicht schnell genug auf den SDC reagieren können und weiterhin versuchen, die I/O-Blöcke zu bedienen, die sie besitzen.

 

Auswirkungen

Die oben genannten Symptome können zu DATA_DEGRADED, DATA_FAILED Ereignissen sowie CLUSTER_DEGRADED führen.

원인

Wenn alle oben genannten Symptome zutreffen, handelt es sich höchstwahrscheinlich um ein Problem mit fehlenden CPU- oder Arbeitsspeicherressourcen. Suchen Sie nach Anwendungen oder Prozessen von Drittanbietern, die möglicherweise die CPU und den Arbeitsspeicher der MDM- oder SDS-Prozesse aushungern.

In einer virtuellen Umgebung zeigte die CPU mehrmals eine schlechte Leistung. Dies wird dadurch verursacht, dass die SVMs unter demselben Ressourcenpool definiert sind.

In solchen Fällen sollten wir empfehlen, die SVMs nicht in den Ressourcenpool aufzunehmen, sondern ihre dedizierten Ressourcen so zu verwenden, wie sie im SVM definiert sind.

해결

Stellen Sie sicher, dass die PowerFlex-Komponenten (MDM, SDS, SDC) für die Performanceeinstellungen optimiert wurden. Weitere Informationen finden Sie in den Leitfäden zur Feinabstimmung und zum Troubleshooting der Leistung, die Sie hier finden.

 

Überprüfung der Konfiguration:

  1. Vergewissern Sie sich zunächst, dass die CPU- und RAM-Einstellungen der Best Practice entsprechen: 
    1. SVM-CPU-Einstellungen: (Kann im laufenden Betrieb eingestellt werden)
      1. Cores per Socket: alles in einem Sockel, daher hat "Sockets" den Wert "1". (Die Gesamtzahl der Cores richtet sich nach den Anforderungen des SDS, den er hostet: All-Flash, FG, DASCache, Cloudlink, 3.5 usw. wirken sich alle auf die CPU-Anforderung aus (erhöhen) sie.)
      2. Reservierung: Wählen Sie den Wert "Maximum" aus der Dropdown-Liste aus
      3. Aktien: High
      4. Dies sollte wie folgt aussehen: 

SVM-CPU-Einstellungen

 

b. SVM-RAM-Einstellungen: (Kann im laufenden Betrieb eingestellt werden)

  1. Aktivieren Sie "Alle Gastspeicher reservieren (Alle gesperrt)"
  2. Aktien: High
  3. Dies sollte wie folgt aussehen:

SVM-RAM-Einstellungen

 

 

c. Einstellungen für die Arbeitsspeicherüberbelegung des SVM-Betriebssystems unter Gast: (Neustart erforderlich)

    1. Führen Sie sysctl -a|grep overcommit aus, um zu bestätigen, dass die Einstellungen für die Überbelegung korrekt sind:
      # sysctl -a|grep overcommit
      vm.overcommit_memory = 2
      vm.overcommit_ratio = 100
    2. Wenn die oben genannten Werte nicht festgelegt sind, kann ein Teil des SVM-Arbeitsspeichers für den SDS-Prozess nicht verwendet werden. Korrigieren Sie dies, indem Sie /etc/sysctl.conf bearbeiten und die obigen Werte bearbeiten/hinzufügen

    3. Versetzen Sie den SDS in den Wartungsmodus und starten Sie die SVM neu, um die Einstellungen anzuwenden
    4. Bestätigen Sie, indem Sie nach dem Neustart "cat /etc/sysctl.conf|grep overcommit" ausführen.
    5. Beenden des Wartungsmodus
  1. So finden Sie diese in Protokollen:
    1. SVM-Konfiguration (vmsupport):
      1. Die .vmx-Datei einer ordnungsgemäß konfigurierten SVM enthält Folgendes:

sched.cpu.units = "mhz"
sched.cpu.affinity = "all"
sched.cpu.min = "25930"     (nonzero value that's equal to core speed * the # of cores allocated)
sched.cpu.shares = "high"
sched.mem.min = "24576"     (nonzero value that's a full allocation of configured memory)
sched.mem.minSize = "24576" (nonzero value that's a full allocation of configured memory)
sched.mem.shares = "high"
cpuid.coresPerSocket = "10" (value equal to total # of cores allocated, so they're all in one socket)
sched.mem.pin = "TRUE"

 

  1. Falsche (veraltete) SVMconfigs weisen Folgendes auf:
sched.cpu.min = "0"
sched.cpu.shares = "normal"
sched.mem.pin = "FALSE"
sched.mem.shares = "normal"
cpuid.coresPerSocket = "4" (value less than total # of cores allocated, usually 1/2 or 1/4)
 
Gastbetriebssystemkonfiguration (getinfo):
  1. Korrekt konfigurierte Arbeitsspeicherüberbelegung:

    Der Dateiserver/sysctl.txt enthält:

vm.overcommit_memory = 2
vm.overcommit_ratio = 100

 

  1. PowerFlex verwendet eine beträchtliche Menge RAM für jeden der Dienste, um im Arbeitsspeicher und mit hoher Geschwindigkeit ausgeführt zu werden. Aus diesem Grund wird die Verwendung von Swap zum Auslagern von PowerFlex-Services nicht unterstützt.

    Die Standardeinstellung, die für reine Storage und SVMs in einer HCI-Lösung erwartet wird, ist eine Überbelegung des Speichers von 2. Auf diese Weise wird der Speicher vom Kernel nicht überbelegt und ohne die Einstellung für "no swap" wird sichergestellt, dass kein commit_as Wert größer ist als der insgesamt freie/verfügbare Speicher.

    Das Verhältnis von 100 stellt sicher, dass auch kein Swap verwendet wird, um mehr Kontrolle über den Block-Swap zu erhalten.

  2. Falsch konfigurierte Speicherüberbelegung:
    Der Dateiserver/sysctl.txt enthält:

vm.overcommit_memory = 0  (value not 2)
vm.overcommit_ratio = 50  (value less than 95)

 

Andere mögliche Workarounds:

  1. Beenden Sie die Anwendungen, die den Mangel an CPU-/Arbeitsspeicherressourcen verursachen, oder wenden Sie sich an den Anwendungsanbieter, um Updates zur Verringerung des Ressourcenfresses zu erhalten. 
  2. Verwenden Sie CPU-/Arbeitsspeicher-Trending-Tools (Top-/SAR-/CRON-Jobs usw.), um herauszufinden, welche Anwendung die Ressourcen belegt. Es werden Intervalle von 1 Sekunde empfohlen, um die erforderliche Granularität zu erhalten und anzuzeigen, wann das Problem auftritt und wer dafür verantwortlich ist
  3. Upgrade der Host-CPU und/oder des Arbeitsspeichers, um ihm mehr Ressourcen zur Verfügung zu stellen
  4. Umgestaltung der Architektur auf ein zweischichtiges Setup anstelle eines konvergenten Systems (wenn sich SDS/SDC auf demselben Host befinden)

추가 정보

문서 속성
문서 번호: 000167765
문서 유형: Solution
마지막 수정 시간: 24 11월 2025
버전:  5
다른 Dell 사용자에게 질문에 대한 답변 찾기
지원 서비스
디바이스에 지원 서비스가 적용되는지 확인하십시오.