Zeebe studying - various questions

Hello Zeebe team,
With my team, I am studying for my company the possibility to use Zeebe to orchestrate our microservices and I have some points to clarify.

First our requirements are:

  • an average of 100k workflows per hour
  • support burst of 1k workflows created within 1second
  • our workflow will have ~10 activities
  • support long running workflow (asynchronous activity may require manual interraction), I don’t know how it will impact whole performance
  • cluster replication (for disaster recovery)

Here my questions:

  • Is there a commercial support available for on-premise installation (for security issue fix, cluster setup help, temporal production issues investigation)? If yes where can I find information?
  • I haven’t found in documentation how to configure TLS between gateway and brokers, can you indicate me how I can find the information if it is possible?
  • As Zeebe use rocksdb, I guess there is no database replication available, I wonder how data can be replicated to a different data center? Do we have to create our zeebe cluster to have broker on both data center?
  • I’m a bit affraid about the fact we can’t resize zeebe cluster, what would be the process if we really need to increase cluster size due to new load to support? Setup a different cluster in paralelle then process all new incomming workflow to the new cluster and wait until there are no more running workflow on the old cluster? I understand the difficulty to support such a feature but it is a big point for us.

Hi @nmeylan,

  • Is there a commercial support available for on-premise installation (for security issue fix, cluster setup help, temporal production issues investigation)? If yes where can I find information?

Yes, coming in Q2. Full details will be released later this quarter.

  • I haven’t found in documentation how to configure TLS between gateway and brokers, can you indicate me how I can find the information if it is possible?

The design is that the cluster runs behind a DMZ, such as an nginx proxy. Within the cluster is a trusted network, and external clients are secured via the proxy. Operate needs to talk to the Gateway to perform operations, and cannot connect to a TLS-secured gateway, so you can’t use TLS on the gateway with it.

  • As Zeebe use rocksdb, I guess there is no database replication available, I wonder how data can be replicated to a different data center? Do we have to create our zeebe cluster to have broker on both data center?

Data is replicated within the cluster automatically by using partition replicas.

Some people are doing cross-DC replication using Zeebe’s Raft replication, but it severely reduces performance and we don’t recommend it. If you want to do distribution like that, effectively sharding is the way to go - understanding that if you lose a DC from an asteroid strike, you lose the running state in that region.

  • I’m a bit afraid about the fact we can’t resize zeebe cluster, what would be the process if we really need to increase cluster size due to new load to support? Setup a different cluster in paralell then process all new incoming workflow to the new cluster and wait until there are no more running workflow on the old cluster? I understand the difficulty to support such a feature but it is a big point for us.

Yes, you cannot dynamically resize the cluster. If you have to scale up, then you need to start a new cluster and cut over. Building your system to support this is a good idea anyway, because you’ll probably want to canary new Zeebe versions before committing your entire production workload to an upgrade.

1 Like