Guten Tag,
ich habe ein kleines PVE-Cluster am laufen mit zurzeit drei Nodes:
Node-1: Linux 5.15.107-2-pve #1 SMP PVE 5.15.107-2 | 3x 1Gbit/s Ethernet als LACP Bond, 1x Ethernet 1Gbit/s ohne IP für WoL | 32 x 13th Gen Intel(R) Core(TM) i9-3900K (NUC 13)
Node-2: Linux 5.15.102-1-pve #1 SMP PVE 5.15.102-1 | 2x 1Gbit/s Ethernet als LACP Bond, 1x Ethernet 1Gbit/s ohne IP für WoL | 4 x Intel(R) Pentium(R) Silver N6005 (Dell Optiplex)
Node-3: Linux 5.15.102-1-pve #1 SMP PVE 5.15.102-1 | 2x 1Gbit/s Ethernet als LACP Bond, 1x Ethernet 1Gbit/s ohne IP für WoL | 4 x Intel(R) Pentium(R) Silver N6005 (Dell Optiplex)
Als sharing Speicher nutze ich eine LUN die mittels iSCSI Multipath allen Nodes gleichwertig zur Verfügung steht. Alle Nodes hängen direkt am gleichen Switch, an dem wiederrum das Synology NAS hängt (3x 1Gbit/s als Bond für VLAN100, 1x 1Gbit/s für VLAN200). Das jeweilige BIOS der Nodes ist auf dem aktuellen Stand.
Die Netzwerk und Multipath Konfiguration ist auch bei allen Nodes identisch.
Nun habe ich das Problem, dass ausschließlich die Leserate auf dem Node-1 deutlich langsamer ist, als auf den anderen beiden Nodes, obwohl diese deutlich schwächer sind.
Testszenario HDD verschieben
Node-1: 32GByte HDD auf die ISCSI LUN verschieben => ~ 300 MByte/s; 32GByte HDD von der iSCSI LUN auf den lokalen PCIE4.0 NVME Speicher verschieben => 100 MByte/s
Node-2: 32GByte HDD auf die ISCSI LUN verschieben => ~ 300 MByte/s; 32GByte HDD von der iSCSI LUN auf den lokalen PCIE3.0 NVME Speicher verschieben => 300 MByte/s
Node-3: 32GByte HDD auf die ISCSI LUN verschieben => ~ 300 MByte/s; 32GByte HDD von der iSCSI LUN auf den lokalen PCIE3.0 NVME Speicher verschieben => 300 MByte/s
Testszenario FIO 3.25
Node-1 Read:
Node-1 Write:
Node-2 Read:
Node-3 Read:
An dem FIO Test wundert mich zwar, dass die Leserate bei Node-1 über 200 MByte/s liegt, welche ich mit dem Verschieben der HDD nicht erreichen kann, aber es verdeutlicht trotzdem den Performanceunterschied zu den anderen zwei Nodes.
Edit: Ich habe für den Problem-Node den Write Test hinzugefügt, welcher im Ergebnis mit den anderen beides Nodes identisch ist. Alle drei Tests wurden hintereinander gegen das gleiche System/LUN durchgeführt.
Ich habe bereits versucht das Problem einzugrenzen bzw. zu lokalisieren. Beim Node-1 komme ich selbst mit drei USB-1Gbit-Ethernetadaptern als Bond auf die gleichen Ergebnisse - bei Node-2 und Node-3 wieder volle Performance. An den LAN Ports selbst kann es meiner Meinung nach nicht liegen.
Ich bin etwas ratlos. Hat von euch jemand eine Idee an welcher Stelle es klemmen könnte bzw. weshalb nur von dem einem Node die Leserate so stark abweicht?
Gruß,
Crash1601
ich habe ein kleines PVE-Cluster am laufen mit zurzeit drei Nodes:
Node-1: Linux 5.15.107-2-pve #1 SMP PVE 5.15.107-2 | 3x 1Gbit/s Ethernet als LACP Bond, 1x Ethernet 1Gbit/s ohne IP für WoL | 32 x 13th Gen Intel(R) Core(TM) i9-3900K (NUC 13)
Node-2: Linux 5.15.102-1-pve #1 SMP PVE 5.15.102-1 | 2x 1Gbit/s Ethernet als LACP Bond, 1x Ethernet 1Gbit/s ohne IP für WoL | 4 x Intel(R) Pentium(R) Silver N6005 (Dell Optiplex)
Node-3: Linux 5.15.102-1-pve #1 SMP PVE 5.15.102-1 | 2x 1Gbit/s Ethernet als LACP Bond, 1x Ethernet 1Gbit/s ohne IP für WoL | 4 x Intel(R) Pentium(R) Silver N6005 (Dell Optiplex)
Als sharing Speicher nutze ich eine LUN die mittels iSCSI Multipath allen Nodes gleichwertig zur Verfügung steht. Alle Nodes hängen direkt am gleichen Switch, an dem wiederrum das Synology NAS hängt (3x 1Gbit/s als Bond für VLAN100, 1x 1Gbit/s für VLAN200). Das jeweilige BIOS der Nodes ist auf dem aktuellen Stand.
Die Netzwerk und Multipath Konfiguration ist auch bei allen Nodes identisch.
Nun habe ich das Problem, dass ausschließlich die Leserate auf dem Node-1 deutlich langsamer ist, als auf den anderen beiden Nodes, obwohl diese deutlich schwächer sind.
Testszenario HDD verschieben
Node-1: 32GByte HDD auf die ISCSI LUN verschieben => ~ 300 MByte/s; 32GByte HDD von der iSCSI LUN auf den lokalen PCIE4.0 NVME Speicher verschieben => 100 MByte/s
Node-2: 32GByte HDD auf die ISCSI LUN verschieben => ~ 300 MByte/s; 32GByte HDD von der iSCSI LUN auf den lokalen PCIE3.0 NVME Speicher verschieben => 300 MByte/s
Node-3: 32GByte HDD auf die ISCSI LUN verschieben => ~ 300 MByte/s; 32GByte HDD von der iSCSI LUN auf den lokalen PCIE3.0 NVME Speicher verschieben => 300 MByte/s
Testszenario FIO 3.25
Node-1 Read:
Code:
Starting 200 processes
Jobs: 29 (f=29): [_(7),R(1),_(20),R(1),_(1),R(1),_(16),R(1),_(18),R(1),_(8),R(1),_(16),R(1),_(1),R(1),_(1),R(1),_(3),R(1),_(1),R(1),_(21),R(1),_(13),R(1),_(1),R(1),_(2),R(2),_(10),R(2),_(1),R(1),_(2),R(1),_(2),R(1),_(1),R(2),_(11),R(1),_(3),R(1),_(6),R(2),_(2),R(1),_(4),R(1)][0.6%][r=205MiB/s][r=205 IOPS][eta 02h:50m:59s]
file1: (groupid=0, jobs=200): err= 0: pid=1929443: Thu Jun 22 11:00:38 2023
read: IOPS=209, BW=210MiB/s (220MB/s)(12.5GiB/61100msec)
clat (msec): min=62, max=2751, avg=943.56, stdev=318.30
lat (msec): min=62, max=2751, avg=943.56, stdev=318.30
clat percentiles (msec):
| 1.00th=[ 384], 5.00th=[ 592], 10.00th=[ 676], 20.00th=[ 751],
| 30.00th=[ 793], 40.00th=[ 827], 50.00th=[ 860], 60.00th=[ 902],
| 70.00th=[ 961], 80.00th=[ 1083], 90.00th=[ 1385], 95.00th=[ 1603],
| 99.00th=[ 2123], 99.50th=[ 2299], 99.90th=[ 2635], 99.95th=[ 2702],
| 99.99th=[ 2735]
bw ( KiB/s): min=409600, max=501848, per=100.00%, avg=411407.96, stdev=132.67, samples=12570
iops : min= 400, max= 490, avg=401.76, stdev= 0.13, samples=12570
lat (msec) : 100=0.04%, 250=0.18%, 500=2.21%, 750=17.10%, 1000=54.59%
lat (msec) : 2000=24.38%, >=2000=1.50%
cpu : usr=0.00%, sys=0.00%, ctx=13328, majf=26, minf=54660
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=12824,0,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1
Run status group 0 (all jobs):
READ: bw=210MiB/s (220MB/s), 210MiB/s-210MiB/s (220MB/s-220MB/s), io=12.5GiB (13.4GB), run=61100-61100msec
Node-1 Write:
Code:
fio-3.25
Starting 200 processes
Jobs: 200 (f=200): [W(200)][100.0%][w=333MiB/s][w=333 IOPS][eta 00m:00s]
file1: (groupid=0, jobs=200): err= 0: pid=2250712: Thu Jun 22 14:56:07 2023
write: IOPS=325, BW=325MiB/s (341MB/s)(19.2GiB/60564msec); 0 zone resets
clat (msec): min=236, max=922, avg=612.62, stdev=69.16
lat (msec): min=236, max=922, avg=612.65, stdev=69.16
clat percentiles (msec):
| 1.00th=[ 456], 5.00th=[ 550], 10.00th=[ 567], 20.00th=[ 575],
| 30.00th=[ 584], 40.00th=[ 592], 50.00th=[ 592], 60.00th=[ 600],
| 70.00th=[ 609], 80.00th=[ 634], 90.00th=[ 726], 95.00th=[ 776],
| 99.00th=[ 810], 99.50th=[ 818], 99.90th=[ 852], 99.95th=[ 860],
| 99.99th=[ 894]
bw ( KiB/s): min=409580, max=458868, per=100.00%, avg=410153.27, stdev=74.42, samples=19458
iops : min= 396, max= 448, avg=400.50, stdev= 0.07, samples=19458
lat (msec) : 250=0.08%, 500=1.40%, 750=90.93%, 1000=7.58%
cpu : usr=0.01%, sys=0.00%, ctx=20495, majf=0, minf=2486
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=0,19684,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1
Run status group 0 (all jobs):
WRITE: bw=325MiB/s (341MB/s), 325MiB/s-325MiB/s (341MB/s-341MB/s), io=19.2GiB (20.6GB), run=60564-60564msec
Node-2 Read:
Code:
Starting 200 processes
Jobs: 200 (f=200): [R(200)][100.0%][r=335MiB/s][r=335 IOPS][eta 00m:00s]
file1: (groupid=0, jobs=200): err= 0: pid=1649342: Thu Jun 22 11:01:46 2023
read: IOPS=329, BW=330MiB/s (346MB/s)(19.5GiB/60593msec)
clat (msec): min=14, max=1200, avg=603.86, stdev=59.31
lat (msec): min=14, max=1200, avg=603.86, stdev=59.31
clat percentiles (msec):
| 1.00th=[ 414], 5.00th=[ 575], 10.00th=[ 584], 20.00th=[ 592],
| 30.00th=[ 592], 40.00th=[ 600], 50.00th=[ 600], 60.00th=[ 600],
| 70.00th=[ 609], 80.00th=[ 609], 90.00th=[ 634], 95.00th=[ 693],
| 99.00th=[ 818], 99.50th=[ 818], 99.90th=[ 1062], 99.95th=[ 1133],
| 99.99th=[ 1183]
bw ( KiB/s): min=407090, max=473535, per=100.00%, avg=410157.85, stdev=84.56, samples=19733
iops : min= 200, max= 457, avg=372.06, stdev= 0.36, samples=19733
lat (msec) : 20=0.01%, 50=0.04%, 100=0.07%, 250=0.19%, 500=2.82%
lat (msec) : 750=94.55%, 1000=2.21%, 2000=0.13%
cpu : usr=0.00%, sys=0.01%, ctx=20607, majf=0, minf=53817
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=19967,0,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1
Run status group 0 (all jobs):
READ: bw=330MiB/s (346MB/s), 330MiB/s-330MiB/s (346MB/s-346MB/s), io=19.5GiB (20.9GB), run=60593-60593msec
Node-3 Read:
Code:
fio-3.25
Starting 200 processes
Jobs: 200 (f=200): [R(200)][100.0%][r=322MiB/s][r=322 IOPS][eta 00m:00s]
file1: (groupid=0, jobs=200): err= 0: pid=452998: Thu Jun 22 11:02:57 2023
read: IOPS=325, BW=325MiB/s (341MB/s)(19.3GiB/60601msec)
clat (msec): min=16, max=1648, avg=611.45, stdev=88.38
lat (msec): min=16, max=1648, avg=611.45, stdev=88.38
clat percentiles (msec):
| 1.00th=[ 430], 5.00th=[ 558], 10.00th=[ 567], 20.00th=[ 575],
| 30.00th=[ 592], 40.00th=[ 600], 50.00th=[ 600], 60.00th=[ 600],
| 70.00th=[ 609], 80.00th=[ 617], 90.00th=[ 676], 95.00th=[ 802],
| 99.00th=[ 1011], 99.50th=[ 1083], 99.90th=[ 1368], 99.95th=[ 1536],
| 99.99th=[ 1653]
bw ( KiB/s): min=404588, max=495834, per=100.00%, avg=410280.87, stdev=94.52, samples=19482
iops : min= 200, max= 462, avg=362.21, stdev= 0.40, samples=19482
lat (msec) : 20=0.01%, 50=0.05%, 100=0.06%, 250=0.18%, 500=2.43%
lat (msec) : 750=90.24%, 1000=5.97%, 2000=1.07%
cpu : usr=0.00%, sys=0.01%, ctx=20516, majf=0, minf=53933
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=19724,0,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1
Run status group 0 (all jobs):
READ: bw=325MiB/s (341MB/s), 325MiB/s-325MiB/s (341MB/s-341MB/s), io=19.3GiB (20.7GB), run=60601-60601msec
An dem FIO Test wundert mich zwar, dass die Leserate bei Node-1 über 200 MByte/s liegt, welche ich mit dem Verschieben der HDD nicht erreichen kann, aber es verdeutlicht trotzdem den Performanceunterschied zu den anderen zwei Nodes.
Edit: Ich habe für den Problem-Node den Write Test hinzugefügt, welcher im Ergebnis mit den anderen beides Nodes identisch ist. Alle drei Tests wurden hintereinander gegen das gleiche System/LUN durchgeführt.
Ich habe bereits versucht das Problem einzugrenzen bzw. zu lokalisieren. Beim Node-1 komme ich selbst mit drei USB-1Gbit-Ethernetadaptern als Bond auf die gleichen Ergebnisse - bei Node-2 und Node-3 wieder volle Performance. An den LAN Ports selbst kann es meiner Meinung nach nicht liegen.
Ich bin etwas ratlos. Hat von euch jemand eine Idee an welcher Stelle es klemmen könnte bzw. weshalb nur von dem einem Node die Leserate so stark abweicht?
Gruß,
Crash1601
Last edited: