System requirements
This section outlines the essential requirements necessary for optimal performance, stability, and functionality of IDE Services.
PostgreSQL database 13+
Object Storage (an S3-compatible bucket or Azure Blob Storage)
External authentication service (Google, Okta, or similar)
Minimal requirements | Medium installations up to 5000 users | Larger installations up to 15000 users | |
---|---|---|---|
CPU | Application server: 2 CPUs PostgreSQL database: 2 CPUs | Application server: 3 CPUs PostgreSQL database: 2 CPUs | Application server: 4 CPUs PostgreSQL database: 4 CPUs |
RAM | Application server: 4 GB PostgreSQL database: 4 GB | Application server: 3 GB PostgreSQL database: 2 GB | Application server: 4 GB PostgreSQL database: 16 GB |
Number of replicas | at least 2 replicas for better availability | at least 3 replicas | at least 4 replicas for load balancing |
If you plan an installation with more users, contact the IDE Services support team for assistance.
tip
The server should be configured behind the HTTPS. It is vital to store the server certificate in a safe place to avoid it from being stolen.
We recommend using an external reverse proxy to implement HTTPS in the best reliable way. Alternatively, you can refer to the Spring Boot configuration options for a Reactor-based HTTP server.
You can start multiple instances of IDE Services simultaneously behind the load balancer to reach a highly available and fault-tolerant setup.
In this scenario, it is required to use a highly available Postgres SQL and object storage.
You can set up as many replicas of the IDE Services Server as you want using the same database and object storage, as servers do not require node-to-node communication. Any load-balancing strategy is allowed, including simple round-robin, since IDE Services Server instances do not have states. PostgreSQL allows for achieving the consistent state of the system.
warning
Currently, all IDE Services instances ran simultaneously have to be of the same version. It is also required to have the same database version.
By default, IDE Services requires the HTTPS protocol to be enabled and used for communication. You may opt to bypass this requirement if it is necessary for a specific setup. To configure IDE Services to use HTTP, it is mandatory to:
Distribute the client configuration by placing it in the specified location on developer machines
Set the value of the
jetbrains.tbe.config.validation.disable
property totrue
and distribute this property. This can be done using the-Djetbrains.tbe.config.validation.disable=true
IDE VM option.
Windows: 64-bit Windows 10 or newer
macOS: macOS Mojave (version 10.14) or newer
Linux: 64-bit x86, glibc 2.29 (Ubuntu 20.04 or newer). JetBrains Toolbox App is packaged in AppImage and requires FUSE to run. Refer to AppImage Wiki for details.
The following packages have to be present:
libfuse2 libxi6 libxrender1 libxtst6 mesa-utils libfontconfig libgtk-3-bin tar dbus-user-session
Thanks for your feedback!