Hi Barry,

I think that it is reasonable to expect some minimum requirements to be listed, 
but it is easier said than done, since Koha is a large multi-component system.

Personally, I tend to run many Koha instances on high powered servers with 
external database servers, so it's rare for me to be thinking about the 
requirements for just 1 Koha. 

Typically, I only run 1 Koha instance for development and testing, and I use 
the koha-testing-docker (https://gitlab.com/koha-community/koha-testing-docker) 
setup for that. Looking at that, I'm seeing probably around ~1.25GB of RAM used 
for an idle system, although that includes components like a Z3950 responder 
and SIP server that you won't need. Since it's a Dockerized environment, that's 
on top of whatever the OS and other installed software is needing. 

In my observations, I typically notice that a Starman "Plack" worker will take 
up about 200-500MB of RAM in its lifetime (mine right now are at 234 and 284 so 
I'd budget another 500MB). By default, you have 2 configured. If you wanted to 
shave off more memory, you could downgrade to just 1 Starman "Plack" worker. 

Looking at a server I do have with only 1 Koha instance... MySQL is using 
357MB, Koha's Starman/Plack workers are 246MB and 190MB. The indexing daemon is 
171MB. So that adds up to just under 1GB. Add in a bit more for Apache, 
Memcached, Zebra search engine, et cetera and you're probably up to 1-1.25GB. 

But that's just a snapshot around lunch time near Christmas holidays. 
Ultimately, your mileage may vary. If you add some swap space, which I know 
isn't included by default on AWS, you might have a smoother experience as well 
as that would help soak up some unexpected memory spikes. 

I don't have access to update the Downloads page to add some minimum 
requirements, but I think perhaps that someone should. 

Regarding CPU, I'd say minimum 4 CPU between all the various different Koha 
subcomponents for any serious usage, but you could get away with less. My 
koha-testing-docker uses 2 CPUs and it manages fine for me as a single user. 

David Cook
Software Engineer
Prosentient Systems
Suite 7.03
6a Glen St
Milsons Point NSW 2061
Australia

Office: 02 9212 0899
Online: 02 8005 0595

-----Original Message-----
Date: Wed, 16 Dec 2020 16:01:03 +0000
From: Barry Callahan <[email protected]>
To: [email protected] <[email protected]>
Subject: [Koha] Koha resource requirements
Message-ID:
        
<010001766c48916c-b5c8c8db-d977-4dd9-adb1-83a6c5f2ae77-000...@email.amazonses.com>
        
Content-Type: text/plain; charset=UTF-8

I recently started playing with Koha to see if it would help my wife and I 
manage our home library.

 
Before I began, I reviewed the requirements listed on the download page ( 
https://koha-community.org/download-koha/ ) and the instructions for installing 
using the official .deb packages. One thing I thought was very conspicuously 
lacking was any mention of resource requirements. Naively, I assumed that meant 
that the requirements for running Koha would only be minimally greater than 
those required for a LAMPP stack serving a similar amount of traffic.

 
Needless to say, an Amazon EC2 micro instance, which only has 1GB of RAM 
allocated to it is incapable of creating and enabling a single Koha library 
instance. Attempting to do so with no swap enabled immediately resulted in a 
crashed system.

 
I resized the instance to small, with 2GB of RAM, and was able to boot the 
system and log in, but top showed a peak memory usage of ~1.9GB. On seeing 
that, I resized the server again to a medium instance with 4GB of RAM. After 
populating the database and adding a couple users and a few dozen items to it, 
the server is sitting at 1.5GB of RAM in use (not including cache) at idle. 
Admittedly, that includes the 500MB allocated to the local MySQL server, but 
still. I think I could probably be safe scaling back to a small instance if I 
moved the database to a remote server, which is my plan.

 
I'd like to suggest updating the requirements section on the download page to 
include some information on the resources used by the koha-plack stack. At a 
minimum, some information about how much koha+plack would add to the memory 
footprint of an existing LAMP stack at idle would have saved me a fair bit of 
grief. Some information on how RAM usage and CPU load can be expected to scale 
with the number of active library instances and concurrent users would be nice, 
too, but less important than the base numbers, I think.



_______________________________________________

Koha mailing list  http://koha-community.org
[email protected]
Unsubscribe: https://lists.katipo.co.nz/mailman/listinfo/koha

Reply via email to