On-Premise installation

On-Premise Requirements

Learn how to configure your On-Premise installation

Resources Requirements

Carbone is well-optimized to run on servers with limited resources. Here are the hardware resources we recommend for your needs.

The following scenarios consider a DOCX template used to generate a document of approximately ten pages with dynamic tables and images. Therefore, it is important to test the configuration with your target documents.

Scenario 1 : Single Carbone instance DOCX template without PDF conversion

Renders per Second vCPU RAM Persistent Storage
50 1 2 GB 10 GB
100 2 3 GB 10 GB
200 4 4 GB 10 GB

Scenario 2 : Single Carbone instance with PDF conversion

Renders per Second vCPU RAM Persistent Storage
5 1 2 GB 10 GB
10 2 3 GB 10 GB
20 4 4 GB 10 GB

Persistent storage is used to store templates. It can be set up via a Shared Volume or a S3 or Azure Storage bucket.

Scenario 3 : High Availabilty or High Performance setup

In this scenario, several Carbone instances are launched.

Renders per Second Number of Pods vCPU per Pods RAM per Pods Persistent Storage
10 2 1 2 GB 20 GB
50 5 2 3 GB 20 GB
100 10 2 3 GB 20 GB

A load balancer is then required.

Persistent storage is used to store templates and renders. It can be set up via a NFS shared volume or a S3 or Azure Storage bucket.

If a large number of renderings are requested, Carbone will put all the requests in its queue. They will then be processed by unstacking the FIFO stack.
Impact when using the APIs in synchronous mode, processing time will increase until the conversion timeout is reached.

Infrastructure Requirements

HTTPS

The Carbone webserver does not support HTTPS connectivity. To implement TLS termination on your Carbone instance, you need to set up a reverse proxy (Apache, Nginx, HAproxy, etc.).

Persistent Storage

To use Carbone in production, you need to configure a persistent storage space for templates and, in the case of multiple instances, renders. Storage can be set up by: