Hi there,
I recently replaced our linked irc servers hosted in AWS EC2 that were running UnrealIRC version 6.0.5 with new like-for-like instances that were running UnrealIRC version 6.1.1.1. The instance type for both old and new instances is t3.small.
We have noticed that the CPU utilization on these instances for the unrealircd process is running very high (99% load averages ~1) This is occurring on both new instances. This is very different from the old instances that were the same EC2 type but where the CPU utilization was marginal.
Might you have any suggestions as to why the CPU utlization is so high on these instances running 6.1.1.1?
CPU utilization increase since upgrading from 6.0.5 to 6.1.1.1
Moderator: Supporters
-
- Posts: 3
- Joined: Mon Jul 10, 2023 9:40 am
Re: CPU utilization increase since upgrading from 6.0.5 to 6.1.1.1
hi there.
does really unrealircd generated the cpu usage?
could you please provide a top output, sorted for the cpu usage?
have you tried to restart it? does it start with high cpu usage or it goes up slowly?
does really unrealircd generated the cpu usage?
could you please provide a top output, sorted for the cpu usage?
have you tried to restart it? does it start with high cpu usage or it goes up slowly?
-
- Posts: 3
- Joined: Mon Jul 10, 2023 9:40 am
Re: CPU utilization increase since upgrading from 6.0.5 to 6.1.1.1
Code: Select all
1 [||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 82.8%] Tasks: 45, 74 thr; 2 running
2 [||||||||||||||||||||||||||||||||| 19.2%] Load average: 1.11 1.04 1.01
Mem[||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| 396M/1.89G] Uptime: 19 days, 14:57:42
Swp[ 0K/0K]
PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command
2110 irc 20 0 113M 104M 6572 R 99.3 5.4 325h /etc/unrealircd/bin/unrealircd
-
- Posts: 3
- Joined: Wed Jan 05, 2022 4:05 pm
Re: CPU utilization increase since upgrading from 6.0.5 to 6.1.1.1
I have further information re this issue. The servers in question are hosted as AWS EC2 instances, running Ubuntu 20.04.6. They are fronted by an Elastic Load Balancer which collects SSL IRC traffic, terminates the SSL aspect and routes plaintext (non-SSL) IRC traffic into unrealIRCd.
The issue observed is that unrealIRCd runs peacefully for a short period anywhere between 30s and 4m. Then unrealIRCd's CPU usage maxs 1 core for approx 60s-80s before returning to normal peaceful level. This cycle repeats over and over.
Additionally the use of Elastic Load Balancer with a health check is significant. The ELB health check is configured as a TCP check of UnrealIRCd's open plaintext (non-SSL) IRC port.
The issue only occurs with unrealIRCd versions 6.1.1 and 6.1.1.1 and only when the health check is directed at UnrealIRCd's open plaintext (non-SSL) IRC port.
It does not occur with 6.0.5, 6.0.6, 6.0.7, nor 6.1.0. If the health check is directed to a different port (i.e. one opened by a different process, not unrealIRCd) on the same EC2 instance the issue is not observed with any of the unrealIRCd versions.
Hope this helps to narrow down the issue
The issue observed is that unrealIRCd runs peacefully for a short period anywhere between 30s and 4m. Then unrealIRCd's CPU usage maxs 1 core for approx 60s-80s before returning to normal peaceful level. This cycle repeats over and over.
Additionally the use of Elastic Load Balancer with a health check is significant. The ELB health check is configured as a TCP check of UnrealIRCd's open plaintext (non-SSL) IRC port.
The issue only occurs with unrealIRCd versions 6.1.1 and 6.1.1.1 and only when the health check is directed at UnrealIRCd's open plaintext (non-SSL) IRC port.
It does not occur with 6.0.5, 6.0.6, 6.0.7, nor 6.1.0. If the health check is directed to a different port (i.e. one opened by a different process, not unrealIRCd) on the same EC2 instance the issue is not observed with any of the unrealIRCd versions.
Hope this helps to narrow down the issue