CPU-Auslastung OPNsense Gast

Dunuin

Distinguished Member
Jun 30, 2020
13,824
4,043
243
Germany
Moin,

Ich habe nun mal Intrusion Prevention im OPNsense Gast aktiviert und das sorgt ja wie erwartet für ordentlich mehr CPU-Auslastung.
Was mich aber wundert ist die Diskrepanz zwischen Gast und Host.

top im Gast:
Code:
50 processes:  1 running, 49 sleeping
CPU:  5.6% user,  0.0% nice,  8.5% system,  0.2% interrupt, 85.8% idle
Mem: 355M Active, 604M Inact, 671M Wired, 216M Buf, 2287M Free
Swap: 4094M Total, 4094M Free

  PID USERNAME    THR PRI NICE   SIZE    RES STATE    C   TIME    WCPU COMMAND
18440 root          7  20    0  2107M   741M nanslp   3 205:26  39.28% suricata
53399 root          1  22    0    56M    31M nanslp   2   0:03   4.84% php-cgi
34459 root          1  52    0  1037M  3340K wait     1   0:13   0.35% sh
40322 zabbix        1  20    0    24M    10M select   1   0:17   0.34% zabbix_agentd
97185 root          1  20    0  1044M  4128K CPU3     3   0:00   0.17% top
 4221 root          1  20    0    17M  7232K select   2   0:00   0.09% sshd
 8299 _dnscrypt-   12  52    0   724M    33M uwait    0   0:49   0.05% dnscrypt-proxy
29894 root          1  20    0    24M  7752K kqread   2   0:08   0.04% lighttpd
92335 unbound       4  20    0   103M    39M kqread   1   0:08   0.04% unbound
34649 root          1  20    0    21M    11M select   1   0:08   0.03% python3.8
79622 root          1  20    0    21M    11M select   3   0:08   0.02% python3.8
 4867 dhcpd         1  20    0    22M  9256K select   1   0:15   0.02% dhcpd
35510 zabbix        1  20    0    24M  9672K nanslp   1   0:08   0.02% zabbix_agentd
83625 zabbix        1  20    0    24M    10M nanslp   3   0:07   0.02% zabbix_agentd
17964 root          1  20    0    18M  6292K select   3   0:05   0.01% ntpd
60893 root          1  20    0    12M  2584K bpf      3   0:03   0.00% filterlog

htop auf dem Host:
htop.png

OPNsense selbst meldet mir ein Load average von "0.68, 0.66, 0.65".
PVE sagt mir die OPNsense VM nutzt im Schnitt 25% der virtuellen CPU Kerne.

Ist scheinbar auch egal wieviel da die IPS in OPNsense zutun hat. Sobald ich diese aktiviere ist der eine KVM Prozess pausenlos auf minimum 100%.

Weiß jemand woran das liegen könnte? Sonst waren virtuelle CPUs im Gast und die von PVE angezeigte CPU Auslastung immer ziemlich deckungsgleich, also nur wenig CPU Overhead.

Meine VM Config:
Code:
agent: 1
boot: order=ide2;scsi0
cores: 4
cpu: host,flags=+aes
ide2: none,media=cdrom
memory: 4096
name: OPNsense
net0: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr4
net1: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr2
net2: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr41
net3: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr42
net4: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr43
net5: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr44
net6: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr46
net7: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr47
net8: virtio=XX:XX:XX:XX:XX:XX,bridge=vmbr50
numa: 0
ostype: other
scsi0: VMpool_VLT_VM:vm-102-disk-0,discard=on,iothread=1,size=32G,ssd=1
scsi1: VMpool_VLT_VM:vm-102-disk-1,size=4G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=c2fdd57f-7ce2-47b7-8e33-b5aac9370858
sockets: 1
startup: order=1
vmgenid: 2cc69992-27b0-420a-8a1d-1f422cded22b
vmstatestorage: VMpool7_VMSS
 
Welche Version von OpnSense? mit der aktuellen habe ich seit dem Update Probleme mit Suricata.
Im Internationalen Forum beschreiben auch einige eine deutlich höhere CPU Last auf Proxmox.

Revert auf die 21.7.2 und alles war wieder gut.
 
  • Like
Reactions: Dunuin
Ah, ok. Danke. Bin in der Tat gerade auf "OPNsense 21.7.3_3-amd64". Dann versuche ich es später mal mit 21.7.2.
 
Suricata v6 switched from pthread to usleep and looks like KVM can't handle that well.

So problem is known for a year but nkt fixed yet...
 
  • Like
Reactions: ITT
Wenn ich nicht manuell ein virtio RNG hinzufüge, fügt dann PVE standardmäsig eines mit 1024 hinzu?
Oder falls nicht, macht es generell Sinn immer ein virtio RNG hinzuzufügen, falls das effizienter ist?

Bisher habe ich noch für keine meiner VMs ein virtio RNG eingestellt.
 
Last edited:
Ich habe bei meiner Sense den AES Chip vom CPU durchgeleitet, das scheint nicht zu reichen.
Muss es zwingend der virt random gen sein?
 
Habe mal ein Virtio RNG mit 2048 und 1000 Intervall hinzugefügt. CPU-Idle-Last ist aber weiterhin bei konstanten 25%. Also keine Änderung. Oder muss man da im Gast dann noch etwas tun, damit der VirtioRNG auch aktiv benutzt wird?
 
der Sense muss/kann man den RNG noch auswählen bzw. zuweisen.
Ich meine aber im Hinterkopf zu haben, dass meine den Virtuellen damals nicht erkannt / benutzt hat, weswegen ich den AES-NI Chip durchgereicht hab
 
der Sense muss/kann man den RNG noch auswählen bzw. zuweisen.
Ich meine aber im Hinterkopf zu haben, dass meine den Virtuellen damals nicht erkannt / benutzt hat, weswegen ich den AES-NI Chip durchgereicht hab
Also Google scheint zu "virtio RNG OPNsense" nichts zu finden. Weißt du wie man das einstellen muss?
 
Unter
System: Einstellungen: Verschiedenes
Stellst du den ein, aber wenn's nichts bringt...
 
Hm, ich seh da bei mir nichts unter "System: Einstellungen: Verschiedenes". Was dem am nähesten kommt wäre die Hardware-Beschleunigung aber da ist kein Virtio bei:
opnsense.png
 
Bei mir nichts neues. Wegen CPU-Auslastung hätte ich ja OPNsense downgraden müssen, damit OPNsense kein Suricata v6 mehr nutzt. Das find ich aber auch doof, weil ich dann so lange meine OPNsenses nicht mehr aktualisieren kann, bis da mal wer Suricata v6 für KVM optimiert. DAs haben die in einem Jahr nicht geschafft, also vermute ich wird das noch dauern oder kommt garnicht erst. Solange mag ich da dann auch nicht auf Security Updates auf meinen OPNsenses verzichten. Habe da also suricata erstmal wieder für meine OPNsenses deaktiviert.

Wegen Virtio RNG auch nichts neues.
 
Tested it now with latest PVE 7.1 and OPNsense 22.1 again and looks like it got fixed meanwhile. Suricata still doubles or tripples the CPU load when OPNsense is idleing but atleast now PVEs webUI reports the CPU load to be nearly the same as the CPU load shown inside the OPNsense webUI.
 
Last edited:
  • Like
Reactions: ITT

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!