Ahoj,

už cca dva měsíce řešíme problém se 100% CPU na x86 mašině. Jedná se o desku X10SRW-F.

Dle tool/profile to žere v tu danou chvíli firewall. Samozřejmě klesne traffic, odezvy vyletí do nebe.

<--- ia2 -->cpu.png<--- ia2 -->

<--- ia1 -->cpu1.png<--- ia1 -->

v inkriminovanou dobu nezaznamenáváme žádnej extrémní dat. tok, útok, ani nic jinýho

<--- ia0 -->wan.png<--- ia0 -->

uptime: 5w5d4h21m29s

version: 6.36 (stable)

build-time: Jul/20/2016 14:09:10

free-memory: 1644.8MiB

total-memory: 1893.5MiB

cpu: Intel(R)

cpu-count: 8

cpu-frequency: 3500MHz

cpu-load: 4%

free-hdd-space: 14.7GiB

total-hdd-space: 14.8GiB

write-sect-since-reboot: 1177560

write-sect-total: 1177560

architecture-name: x86

board-name: x86

platform: MikroTik

nemá někdo nějakej tip? FW má asi 1600 pravidel (jumpy do chainů a v nich IP/MAC filtr a return zpět), 1000 manglů, 800 QT. NAT se nepoužívá.

Pokud se tam něco "motá", jak přijít na to co by to mohlo být?

Díky za názory/rady.

Jirka

nejsou důležité megabity, ale megapakety ... případně megakonexe.

o 6 dní později
o 7 dní později

Resim uplne stejnou vec, avsak zatim to neni kriticke. Z bezneho vytizeni 3-10% z niceho nic naroste vytizeni na 30% a pritom megabity ani kilopakety nenarostou. (x86, i3-3250 - 3,5GHz, 2-core + HT, 2-port i350 - AOC-SGP-i2)

Nicmene mam dulezity poznatek, ze se toto zacalo dit az po upgrade sitovych karet na i350 a procesoru na i3-3250. Pred tim tam byly nejake "hloupe" sitovky a procesor Pentium G2020 (2,9GHz, 2-core bez HT, Ivy Bridge). Prumerne vytizeni bylo pochopitelne vyssi, cca 2x, ale zadne nepochopitelne spicky, ktere by neodpovidaly zatizeni se nekonaly.

Nic jineho nez CPU a sitovky se nezmenilo. Tedy az budu moci udelat vypadek, zkusim v biosu vypnout HT a pokud to nepomuze, musi to byt kartou AOC-SGP-i2, hloupe sitovky to nedelaly.

chlapi kolko vam zerie v zatazi ten supermicro?

Před 4 dny jsem provedl reboot a do dneška byl klid. Dnes jsem byl svědkem, jak rostlo postupně zatížení až na cca 60%, tak jsem zkusil zákázat jedno nějaký pravidlo ve FW a ihned to kleslo na 3%. Podotýkám, že to bylo pravidlo na povolení PPTP.

cca 3 hodiny byl klid, teď zase postupnej nárůst CPU, zakázal jsem a povolil jiný pravidlo - povolení NTP.

Tohle mě hlava nebere.. pokud v době takového vytížení udělám jakoukoli změnu ve FW, zatížení okamžitě klesne..

Někdo nějakej nápad? Karta je 4 portovka od Supermicra, verze RoS 6.36

Před 4 dny jsem provedl reboot a do dneška byl klid. Dnes jsem byl svědkem, jak rostlo postupně zatížení až na cca 60%, tak jsem zkusil zákázat jedno nějaký pravidlo ve FW a ihned to kleslo na 3%. Podotýkám, že to bylo pravidlo na povolení PPTP.

cca 3 hodiny byl klid, teď zase postupnej nárůst CPU, zakázal jsem a povolil jiný pravidlo - povolení NTP.

Tohle mě hlava nebere.. pokud v době takového vytížení udělám jakoukoli změnu ve FW, zatížení okamžitě klesne..

Někdo nějakej nápad? Karta je 4 portovka od Supermicra, verze RoS 6.36

Dik za info, skusil som to aj u seba. a ejhla... robi mi to tiez, namatkovo som vypol par najviac aktualne vytazenych filter pravidiel pre input/output, forward a slo to z 50% na 15-20%. Ma picne z toho MK.

ver 6.34.6 x86

hehe, idem pozapinat vsetky NAty, pojde mi cpu servera na 60-70% a skusim potom, ci popripade taku koninu, ako vytvorit bezvyznamne pravidlo vo filtri a kazdych 10s ho schedulerom zap/vyp. OMG : : :

Před 4 dny jsem provedl reboot a do dneška byl klid. Dnes jsem byl svědkem, jak rostlo postupně zatížení až na cca 60%, tak jsem zkusil zákázat jedno nějaký pravidlo ve FW a ihned to kleslo na 3%. Podotýkám, že to bylo pravidlo na povolení PPTP.

cca 3 hodiny byl klid, teď zase postupnej nárůst CPU, zakázal jsem a povolil jiný pravidlo - povolení NTP.

Tohle mě hlava nebere.. pokud v době takového vytížení udělám jakoukoli změnu ve FW, zatížení okamžitě klesne..

Někdo nějakej nápad? Karta je 4 portovka od Supermicra, verze RoS 6.36

Dik za info, skusil som to aj u seba. a ejhla... robi mi to tiez, namatkovo som vypol par najviac aktualne vytazenych filter pravidiel pre input/output, forward a slo to z 50% na 15-20%. Ma picne z toho MK.

ver 6.34.6 x86

hehe, idem pozapinat vsetky NAty, pojde mi cpu servera na 60-70% a skusim potom, ci popripade taku koninu, ako vytvorit bezvyznamne pravidlo vo filtri a kazdych 10s ho schedulerom zap/vyp. OMG : : :

tak jsem to udelal ja... scriptem+shedulerem co 5sec

# Average CPU Load Notification.

# This will email you once when average CPU Load reaches the set CPU Threshold value.

# When average CPU Load drops back below CPU Threshold the email notification is reset.

# Set up the scheduler to run this at 1-5 second intervals (Sample Rate).

# Original credit goes to rgraham - modified by hartz.

# Threshold is the value that will activate the alert when reached by average CPU Load (1-100)

:local cputhreshold 30;

# Arraysize is the number of CPU Load samples to keep.

# Experiment with this value to incease or decrease the number of samples.

# The greater the value the longer the time that the cpu-load average is calculated for.

:local arraysize 10;

# Misc variables for stuff and things.

:local cpuload 0;

:local arraylen 0;

:local arraypos 0;

:local arraytot 0;

:global avgcpuload 0;

:global cpuarray;

:global highavgcpuload;

:global cpualertemail;

# Get CPU Load samples, limit cpuarray to array size.

:set cpuload [/system resource get cpu-load];

:set cpuarray ( [:toarray $cpuload] + $cpuarray );

:set cpuarray [:pick $cpuarray 0 $arraysize];

# Add up all values in array.

:set arraypos 0;

:set arraylen [:len $cpuarray];

:while ($arraypos < $arraylen) do={

:set arraytot ($arraytot + [:pick $cpuarray $arraypos] );

:set arraypos ($arraypos +1)}

# Divide sum of array values by the number of values in cpuarray.

:set avgcpuload ($arraytot / [:len $cpuarray]);

:if ([:len $highavgcpuload] = 0) do={:set highavgcpuload $avgcpuload}

:if ([$highavgcpuload] < [$avgcpuload]) do={:set highavgcpuload $avgcpuload}

# Display results in Terminal window.

:log info ("CPU Load Captures:");

:log info $cpuarray;

:log info ("Array Total: $arraytot");

:log info ("Array size: $arraysize");

:log info ("CPU Load - Avg: $avgcpuload High: $highavgcpuload");

# Send alert email.

:if ($avgcpuload >= $cputhreshold) do={

:if ($cpualertemail != "true") do={

ip firewall filter set disabled=yes numbers=43

ip firewall filter set disabled=no numbers=43

# Build message body.

:local body "";

:set body ($body."Uptime: ".[/system resource get value-name="uptime"]."\r\n");

:set body ($body."Memory Total / Free: ".[/system resource get value-name="total-memory"] / "1024" / "1024"."MB / ".[/system resource get value-name="free-memory"] / "1024" / "1024"."MB\r\n");

:set body ($body."CPU Load: ".[/system resource get value-name="cpu-load"]."%\r\n");

:set body ($body."CPU Average: ".$avgcpuload."%\r\n");

:set body ($body."CPU High: ".$highavgcpuload."%\r\n");

:set body ($body."CPU Alert Threshold: ".$cputhreshold."%\r\n");

:set body ($body."Connections: ".[/ip firewall connection print count-only]."\r\n");

:set highavgcpuload;

# Send email and set variable so no further alerts are sent until average goes below threshold.

/tool e-mail send to="tvuj@email" subject=([/system identity get name]." CPU alert triggered at ".[/system clock get date]) body=$body;

:set cpualertemail "true";

}

} else={

# Reset alert if average is less than threshold.

:set cpualertemail "false";

}

Hej hej, dal som tiez po chvili skusania 5s interval. Na prasky. A vyzera to, ze si nemastime brucha len grafom mensieho vytazenia CPU, ale aj ralne odozva do internetu a na server sla dole. Sice logicky... ale... MK neverim uz ani nos medzi ocami,. ako sa hovoriii :

Pošli mi sem prosim jakej tam mas motherboard, cpu a karty.

Díky.

Pošli mi sem prosim jakej tam mas motherboard, cpu a karty.

Díky.

https://www.atcomp.sk/zbozi/hp-proliant ... p=z

Takže... po vygenerování sup files, popsání problému a poslání do Lotyšska mi pánové napsali tohle:

Hello,

Please upgrade device to 6.38rc version. Most likely problem is caused by connection-limit matcher in firewall. We have improved it a a lot few days ago:

http://www.mikrotik.com/download

*) firewall - new faster "connection-limit" option implementation;

Best regards,

Martins S.

tak jsem provedl dle instukcí s tímto výsledkem:

-průměrný zatížení CPU ve špičce při toku cca 350Mbps kleslo z 10% na 3%

-počet max. spojení v conntrack tabulce se zvedlo z 87604 na 1048576

-počet aktivním spojení v conntrack tabulce kleslo z cca 45tis na cca 18tis

s verzí 6.37.1

Uptime: 4d20:58:44

Memory Total / Free: 1893MB / 1673MB

CPU Load: 10%

CPU Average: 13%

CPU High: 20%

CPU Alert Threshold: 20%

Connections: 48985

s verzí 6.38rc25

Uptime: 00:47:54

Memory Total / Free: 1893MB / 1739MB

CPU Load: 5%

CPU Average: 4%

CPU High: 4%

CPU Alert Threshold: 10%

Connections: 18985

tak uvidíme, zda to pomůže. Dle changelogu došlo k nějakým zásahům do fw:

*) firewall - added creation-time to address list entries;

*) firewall - do not allow to increase/decrease ttl and hop-limit by 0;

*) firewall - fixed "connection-state" value disappearance in rules that were created before v6.22;

*) firewall - fixed compact export (introduced in 6.37rc14);

*) firewall - improved "time" option (ranges like 22h-10h now are acceptable);

*) firewall - increased max size of connection tracking table to 1048576;

*) firewall - new faster "connection-limit" option implementation;

Super. Se divím, že se s tebou vůbec bavili.

Latvia je Lotyšsko.

📡 Telekomunikace.cz