Storage considerations
To set up data stores for Instana, you can choose any storage provider that meets the required configuration and performance levels.
Instana uses 7 data stores and one more storage for raw spans.
- Data stores
- Storage for raw spans
- Performance levels based on entities and applications
- Measuring storage performance
Data stores
The data stores require block storage persistent volume (PV) with the Read Write Once (RWO) access mode for mounting. The Instana data stores are listed in the following table:
Data store | Type of data stored |
---|---|
Kafka | Messaging data |
Clickhouse | Trace calls and beacons, log messages, and Synthetic test results |
Zookeeper | Quorum management by Clickhouse and Kafka |
Elastic | Events and snapshots |
PostgreSQL | Usage data and statistics |
Cassandra | Shared state data and metric queries |
BeeInstana | Infrastructure metrics |
For optimum performance, follow the storage considerations for Kafka and Strimzi. Kafka and Strimzi are compatible with the filesystem type on block storage, which can be either XFS or ext4.
Storage for raw spans
The storage for raw spans requires Read Write Many (RWX) access mode storage such as FS (CephFS or NFS) or S3-compatible storage from any provider.
Performance levels based on entities and applications
Instana can observe entities, spans, or both. The required IOPS and throughput levels vary depending on the number of entities and applications that Instana monitors. You can analyze storage performance metrics by checking input and output operations per second (IOPS) and throughput.
The requirements are defined in profiles for entities and applications.
Requirements for entities
The entities are monitored as part of monitoring infrastructure on Instana.
The requirements to monitor entities are listed in the following table.
Profile | Number of entities | Random Read IOPS | Random Write IOPS |
---|---|---|---|
Small | < 10000 | 20,000 to 30,000 | 2500 to 4000 |
Medium | 10,000 to 20,000 | 30,000 to 45,000 | 4000 to 6000 |
Large | 20,000 to 40,000 | 45,000 to 70,000 | 6000 to 9000 |
XLarge | 40,000 to 100,000 | 70,000 to 120,000 | 9000 to 15,000 |
XXLarge | >= 100,000 | > 120,000 | > 15,000 |
Requirements for applications
The applications are monitored as part of monitoring applications on Instana.
The requirements to monitor applications are listed in the following table.
Profile | Application spans per second | Random Read IOPS | Random Write IOPS |
---|---|---|---|
Small | < 5,000 | 20,000 to 30,000 | 2500 to 4000 |
Medium | 5,000 to 10,000 | 30,000 to 45,000 | 4000 to 6000 |
Large | 10,000 to 20,000 | 45,000 to 70,000 | 6000 to 9000 |
XLarge | 20,000 to 50,000 | 70,000 to 120,000 | 9000 to 15,000 |
XXLarge | > 50,000 | > 120,000 | > 15,000 |
Measuring storage performance
The storage providers declare the IOPS, latency, and throughput levels supported by their storage solution. If the levels are not known, to measure IOPS and latency, you can use the tools such as Iometer and Vdbench. The workload and environment might vary over time. You must evaluate the performance of your storage solution when the workload increases to ensure optimum performance for Instana.