Last warning for Mono - Bytesized Hosting

Last warning for Mono

Hey guys,

Usually these announcements are full of fun announcements but sadly today is a change of pace. Today I want to talk about Mono and why I'm very close to kicking it off all our servers.

So what is Mono? Mono is a cross platform open-source .NET framework. It allows you to run certain applications written for Windows on Linux. We use this at Bytesized to run Sonarr and Jackett.

Sadly Mono has been misbehaving ever since we added Sonarr as a supported app. It crashes randomly, but worse, it crashes in such a fashion that it ends-up maxing out all CPU cores if left unchecked. This has a very negative impact on transcoding performance, the one thing we want to always guarantee on our servers.

Partly because of the way Mono behaves we have been adding more isolation systems in place over the last few months to ensure that one crashing Mono process didn't take the whole server down. Sadly this was not enough. Even when CPU usage is isolated per member it sometimes happens that all Mono processes crash at the same time, again exhausting all CPUs.

We now have the following systems in place:

  1. All Mono processes are now locked to two CPU cores, ensuring that even if all Mono processes fail they only slow down each other.
  2. All Sonarr processes are being restarted every morning at 07:00 GMT+1
  3. Mono has been upgraded to last version available today 4.8.0
  4. All new installations of Sonarr will have auto-updates enabled by default so that we are always running on the newest version.

You can also help be ensuring you are on the latest Sonarr version and enabling auto-updates by going to "Settings-General" enabling the "Advanced settings" and setting "Automatic" to "On". You can also checkout Sickrage and Cardigann as alternatives. They don't share the exact same feature set but they do achieve the same thing.

If after all these measures we still can't get Mono to behave we will have no other option to sacrifice Mono and thus Sonarr and Jackett to ensure the stability of our servers. Stability should always come first.




Please sign-up for an account to join the discussion.