System requirements of a multi-node deployment
View the system requirements of Self-Hosted Standard Edition on a multi-node cluster.
Required number of hosts
For multi-node environments, you need three hosts with the same operating system.
Supported platforms and operating systems
Make sure you have a host on which you can run the Self-Hosted Standard Edition installer.
- The host can be a virtual machine or a dedicated physical machine.
- The host must be new with a freshly installed operating system. If you want to use a host that was previously used for something else, you must reinstall the operating system.
- Self-Hosted Standard Edition must not co-exist with a Self-Hosted Classic Edition (Docker).
Instana supports the following platforms and operating systems for the host:
Platform | Operating system |
---|---|
Linux® x86_64 | Red Hat® Enterprise Linux® (RHEL) 9 and 8 |
Ubuntu 24.04, 22.04, 20.04, and 18.04 | |
Debian 12, 11, and 10 | |
CentOS Stream 9 | |
Amazon Linux 2023 | |
Oracle Linux 9 | |
SUSE Linux Enterprise Server (SLES) 15 SP5 | |
Linux® arm64 | Supported on AWS Graviton |
Hardware requirements
In multi-node clusters, only the production
installation type is supported.
The three nodes in a multi-node cluster have specific uses:
-
The first node (instana-0), which is labeled as
node-role.instana.io: "backend"
during installation, is used for running backend workloads that require persistent volumes. The node also runs the gateway, acceptors, and the UI backend. -
The second node (instana-1), which is labeled as
node-role.instana.io: "datastore"
during installation, is used for running data stores. -
The third node (instana-2), which is labeled as
node-role.instana.io: "other"
during installation, is used for running the rest of Instana workloads.
CPU and memory requirements
Each node requires CPU and memory as specified in the following table.
Installation type | Number of CPU cores | Memory (GB) |
---|---|---|
production |
12 | 48 |
For each optional feature that you want to use, you need extra resources. The following table outlines the CPU and memory requirements of the optional features for the production installation type:
Installation type | Number of CPU cores | Memory (GB) |
---|---|---|
Automation framework | 1.5 | 6 |
Analyze logs | 3 | 12 |
Business monitoring | 1.5 | 6 |
End-user monitoring | 2 | 4.5 |
Self monitoring | 1 | 2 |
Synthetic monitoring | 2 | 8 |
You can provision the extra resources on node0 (instana0
) and node2 (instana-2
). Do not provision the resources on node1 (instana-1
) as node1 is primarily used for the data stores.
Storage requirements
The storage requirement of each node is based on the use of the node.
The disk storage speed requirements measured as input/output operations per second (IOPS) of production installation type are shown in the following table:
Installation type | Required | Preferred |
---|---|---|
production |
6000 | 9000 |
The four data storage directories are required on the following nodes. You must add additional disks on these nodes.
- Objects directory on node0 (
instana-0
). - Data, metrics, and analytics directories on node1 (
instana-1
).
No additional disk is needed on node2 (instana-2
).
The following table provides the storage volume requirements of each node:
Description | Default directory | Min size (GB) | Comments |
---|---|---|---|
Object directory | /mnt/instana/stanctl/objects | 1000 | Override path with --volume-objects |
Root directory | / | 100 | |
$HOME directory (air-gapped) | /root or the home directory of users | 60 | Override with $HOME environment variable. 40 for $HOME directory (air-gapped) and 20 GB for separate disk space. |
$HOME directory (non-air-gapped) | /root or the home directory of users | 10 | Override with $HOME environment variable |
Cluster data directory | /var/lib | 100 | Override with --cluster-data-dir |
Total storage volume | 1100 |
Description | Default directory | Min size (GB) | Comments |
---|---|---|---|
Data directory | /mnt/instana/stanctl/data | 500 | Override path with --volume-data |
Metrics directory | /mnt/instana/stanctl/metrics | 1000 | |
Analytics directory | /mnt/instana/stanctl/analytics | 1200 | |
Root directory | / | 100 | |
$HOME directory (air-gapped) | /root or the home directory of users | 60 | Override with $HOME environment variable. 40 for $HOME directory (air-gapped) and 20 GB for separate disk space. |
$HOME directory (non-air-gapped) | /root or the home directory of users | 10 | Override with $HOME environment |
Cluster data directory | /var/lib | 100 | Override with --cluster-data-dir |
Total storage volume | 2800 |
Description | Default directory | Min size (GB) | Comments |
---|---|---|---|
Root directory | / | 100 | |
$HOME directory (air-gapped) | /root or the home directory of users | 60 | Override with $HOME environment variable. 40 for $HOME directory (air-gapped) and 20 GB for separate disk space. |
$HOME directory (non-air-gapped) | /root or the home directory of users | 10 | Override with $HOME environment |
Cluster data directory | /var/lib | 100 | Override with -—cluster-data-dir |
Total storage volume | 100 |
Networking requirements
Make sure that you meet the following ports and IP addresses requirements. For more information about opening these ports, see Firewall rules.
Make sure that you have a high-speed, low-latency, and stable connection on the backend server to pull the necessary packages.
Required ports
The following ports on all nodes must be open and accessible.
Port number | Direction | Protocol | Source | Description |
---|---|---|---|---|
22 | Inbound | TCP | External | Port required for Secure Shell (SSH) connection (required only if you want to log in SSH) |
22 | Inbound | TCP | Internal | SSH port required for access between backend nodes |
80 | Inbound | TCP | External | HTTP protocol for Instana console UI |
443 | Inbound | TCP | External | HTTPS protocol for Instana console UI, Instana console API, Instana EUM, OpenTelemetry, and Instana agent acceptor port |
443 | Outbound | TCP | External | Required only in online environments. For more information, see Outbound network access requirements for self-hosted Instana deployments. |
53 | Inbound | TCP/UDP | Internal (all nodes) | DNS port required for resolving domain names |
6443 | Inbound | TCP | Internal (all nodes) | Internal service port |
8443 | Inbound | TCP | External | Instana agent acceptor port. This port is optional. |
10250 | Inbound | TCP | Internal (all nodes) | Internal service port |
2379 | Inbound | TCP | Internal (all nodes) | Internal service port |
2380 | Inbound | TCP | Internal (all nodes) | Internal service port |
5001 | Inbound | TCP | Internal (all nodes) | Internal service port |
8472 | Inbound | UDP | Internal (all nodes) | Internal service port |
9443 | Inbound | TCP | Internal (all nodes) | Internal service port |
all | Inbound | TCP/UDP | 10.42.0.0/16 and 10.43.0.0/16 |
Subnets of the self-hosted Instana components |
all | Inbound | TCP/UDP | Loopback | Open the ports to allow a VM to send and receive its own data packets. |
See the following notes:
- External source means that the port must be accessible from outside of the Instana self-hosted enterprise (private) network.
- Internal source means that the port on one node must be accessible by the other two nodes of the multi-node cluster.
- IP addresses
10.42.0.0/16
and10.43.0.0/16
must be able to access all ports (1 - 65535) internally. - The firewall must trust all traffic from the loopback address.
- Port 443 outbound is needed for accessing certain repositories. For more information, see Outbound network access requirements.
IP addresses
The three nodes of your multi-node cluster must meet the following IP address requirements:
- All the three nodes need a private IP address on the same private VLAN to be able to communicate with each other.
- node0 (
instana-0
) must also have a public IP address for external communication. The public IP address is also used to reach the hosts from outside the cluster.
What's next
Proceed with preparing your environment.