System minimum requirements

Dan Shapir: What are the minimum system requirements for zeebe? Couldn’t find any documentation…
For development and for production (meaning with and without replica)

Peter Ihme: Not aware of any official minimum system requirements. For development I would recommend 2 CPUs and 2 GB of RAM, 100 GB of storage.

If you want to know the bare minimum, I have a 0.26.0 broker idling in a Docker container and it needs 750 MB of RAM. CPU has no hard minimum. It will just slow down. If it slows down too much you might run into timeout, but timeouts can be configured.

For production it is really hard to tell. You can take the recommendation and multiply it by nodes as a first starting point for modest throughput. But in production the resources depend heavily on your use cases and your throughput.

Dan Shapir: @Peter Ihme thanks! 2 cpus and 2gb of ram with how many replications? Partitions and cluster size?

Peter Ihme: Single node, no replicas, one partition

Dan Shapir: Ok, that’s a start! Do you have any idea how much each replica or partition affect this? Another node is of course just doubling. But than it seems that for production where I see 3 nodes, 3 partitions and 3 replicas is recommended it would be a minimum of 6 cpus and 6gm of ram, without considering the replicas and partitions and elastic of course. So trying to get a sense of with a non stressed system, far from an operaion per second or even minute, what would be the required cpu and ram for a 3 nodes, 3 reps and 3 partitions

Peter Ihme: For a non-stressed system 3 nodes, 3 replicas 3 partitions I would be in the ballpark of 4 CPU 8 GB RAM that is for all three nodes on one machine, not for each node. The key here is non-stressed system.

Replicas cost storage and a little CPU for the IO, Partitions cost memory, storage and under load also CPU.

So the memory might be most constrained in my estimate. But I have run a 3 node, 3, partitions, 3 replica cluster on my dev machine and 8 GB was the ballpark for memory

Peter Ihme: There is a docker compose file for that config, btw:

Dan Shapir: Awsome! Thank you man!

Note: This post was generated by Slack Archivist from a conversation in the Zeebe Slack, a source of valuable discussions on Zeebe (get an invite). Someone in the Slack thought this was worth sharing!

If this post answered a question for you, hit the Like button - we use that to assess which posts to put into docs.