AgentX performance recommendations
This reference provides hardware and configuration recommendations for AgentX Server and AgentX Client based on comprehensive performance benchmarking.
Context
These recommendations ensure optimal performance, stability, and scalability in production environments. Recommendations are based on testing under various configurations and workloads.
Server-level recommendations
File Integrity Monitoring (FIM) Module
8-core, 16 GB RAM
5,000 EPS
~21%
~1.2 GB
Stable operation within capacity
8-core, 32 GB RAM
5,500 EPS
~19%
~1.6 GB
Improved performance with additional RAM
Performance characteristics:
The sys-check queue (16,384 entries) functions within capacity at 5,000 EPS
Queue capacity is the primary performance bottleneck
Exceeding 5,500 EPS results in queue overflow and event drops
At 10,000 EPS: ~11% event drops
At 15,000 EPS: >50% event drops
Recommendation: Limit FIM throughput to 5,000 EPS per server. For higher throughput, deploy AgentX Server in cluster mode.
Event Module
8-core, 16 GB RAM
10,000 EPS
~29.97%
~633 MB
Stable performance
8-core, 32 GB RAM
10,000 EPS
~27.30%
~458 MB
Lower memory usage with additional RAM
Performance characteristics:
The winevt_queue (16,384 entries) operates without saturation at 10,000 EPS
No event loss occurs under sustained load up to 10,000 EPS
CPU utilization remains under 30%
Memory consumption stays below 634 MB
Recommendation: Limit event collection to 10,000 EPS per server. Beyond 15,000 EPS, queue saturation becomes likely.
Scalability for higher throughput
For event throughput exceeding server-level limits, deploy AgentX Server in cluster mode. Cluster mode enables:
Horizontal scaling across multiple nodes
Load distribution across worker nodes
Processing beyond standalone system limits
High availability through redundancy
Client-level recommendations
File Integrity Monitoring (FIM) Module
4-core, 8 GB RAM
200 EPS
~7%
~1.5 GB
Stable operation
8-core, 16 GB RAM
200 EPS
~5.19%
~1.5 GB
Minimal performance improvement with additional resources
Performance characteristics:
Client-side FIM operations should be limited to 200 EPS per agent
Internal message queue (1,024 entries) reaches capacity beyond 200 EPS
Queue overflow causes "queue is full" errors, event drops, and failed differential alerts
At 250 EPS: Frequent queue saturation and event loss
At 300+ EPS: Significant system instability
Recommendation: Limit FIM operations to 200 EPS per client. Higher FIM throughput requires reducing monitored paths or scan frequency.
Event Module
4-core, 8 GB RAM
1,000 EPS
~31.2%
~199 MB
Standard configuration
8-core, 16 GB RAM
3,000 EPS
~21.34%
~166 MB
High-capacity configuration
Performance characteristics:
Standard configuration (4 CPU / 8 GB RAM):
Stable operation at or below 1,000 EPS
No fwrite() errors
CPU utilization: 25-31%
Memory usage: <200 MB
No event corruption or delayed writes
High-capacity configuration (8 CPU / 16 GB RAM):
Throughput can increase to 3,000 EPS
Occasional I/O bottleneck warnings may appear
Regular monitoring of ossec.log required for fwrite() errors
fwrite() errors indicate potential write limitations leading to event corruption
Recommendation:
Standard endpoints: Limit to 1,000 EPS per client
High-capacity endpoints: Limit to 3,000 EPS per client with monitoring
Configuration best practices
Balance monitoring scope with performance limits Configure templates to collect only necessary data sources. Overly broad collection configurations exceed performance limits and degrade endpoint performance.
Monitor queue utilization Regularly check queue utilization metrics on both servers and clients. Approaching queue capacity limits indicates the need to scale or reduce collection scope.
Adjust scan frequencies for FIM For large directories or high file change rates, increase FIM scan intervals (15-30 minutes) to stay within the 200 EPS client limit.
Distribute agents across cluster nodes In cluster deployments, distribute agents evenly across worker nodes to prevent any single node from exceeding throughput limits.
Test configurations under realistic loads Before production deployment, test AgentX configurations under realistic loads that match your environment's typical event rates.
Last updated
Was this helpful?