System requirements
This section outlines the essential requirements necessary for optimal performance, stability, and functionality of IDE Services.
IDE Services Server
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.
High availability
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 without any additional setup, 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.
HTTP setups
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 needed 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.
Toolbox App
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