Openvpn hohe CPU Last seit Update
-
Hallo,
wir betreiben hier eine pfSense auf folgender Hardware
Darüber laufen u.a. 15 Site-to-Site OpenVPNs.Seit dem Update auf Version 2.5.2 drehen 3 OpenVPN Server kurz nach dem Start auf 100% CPU.
Es sind immer dieselben Server.
Wir haben die Prozesse mit
truss -p <PID> untersucht und im Vergleich zu anderen OpenVPN Prozessen gesehen, dass die mit hoher Last laufenden Prozesse jede Menge folgender Meldungen haben.poll({ 7/POLLIN|POLLPRI 6/POLLIN|POLLPRI 5/POLLIN|POLLPRI },3,2130) = 1 (0x1) readv(6,0x7fffffffdc90,2) ERR#35 'Resource temporarily unavailable' poll({ 7/POLLIN|POLLPRI 6/POLLIN|POLLPRI 5/POLLIN|POLLPRI },3,2130) = 1 (0x1) readv(6,0x7fffffffdc90,2) ERR#35 'Resource temporarily unavailable' poll({ 7/POLLIN|POLLPRI 6/POLLIN|POLLPRI 5/POLLIN|POLLPRI },3,2130) = 1 (0x1) readv(6,0x7fffffffdc90,2) ERR#35 'Resource temporarily unavailable' poll({ 7/POLLIN|POLLPRI 6/POLLIN|POLLPRI 5/POLLIN|POLLPRI },3,2130) = 1 (0x1) readv(6,0x7fffffffdc90,2) ERR#35 'Resource temporarily unavailable'
ein truss -c -p <PID> ergibt im Vergleich folgendes
Prozess mit hoher Last
syscall seconds calls errors getpid 0.007863269 1782 0 writev 0.008035481 658 0 sendto 0.008421956 889 0 recvfrom 0.003349100 658 0 readv 2.497325456 533615 532726 poll 2.607906477 535819 0 ------------- ------- ------- 5.132901739 1073421 532726
Prozess mit normaler Last
syscall seconds calls errors getpid 0.002623628 481 0 writev 0.007089793 259 0 __sysctl 0.000007849 1 0 sendto 0.002818697 240 0 recvfrom 0.001877279 259 0 readv 0.001544350 239 0 poll 10.220523103 996 0 ------------- ------- ------- 10.236484699 2475 0
Es scheinen also diese errors zu sein, die die CPU Last zur Folge haben.
Wir haben schon die Configs verglichen, die sind aber zu allen Endpunkten gleich.
Uns stellt sich die Frage, wie man herausbekommt welche Ressource da "temporarily unavailable" ist.
Vielen Dank für Input. :)
--
Grüße
/jk -
Der Grund für die Last ist gefunden. Auf den drei VPNs gab es einen Trafficshaper. Wenn man den deaktiviert geht die Last weg.
Da das vorher nicht war ist das aber nicht die Ursache.