Skip to main content

Optimizing System Configuration

There are a virtually unlimited number of unique individual setups that cannot be covered in this document. As well, even similar builds and configurations can behave differently due to external factors, so your results may vary. Here are some general guidelines to use as a starting point. Be cautious, make incremental changes, testing and observing before moving forward. Always focus on only one specific area at a time - avoid making changes to memory, storage, and CPU configs all at once. Diagnosing potential problems becomes nearly impossible otherwise.

Memory Management

The following settings in /etc/sysctl.conf can optimize memory usage and disk I/O patterns:
Apply changes: sudo sysctl -p

Network Stack

The following settings in /etc/sysctl.conf may improve network performance:

Storage Configuration

For NVMe drives, optimize I/O scheduling: Storage Optimization Commands

Infrastructure Monitoring

Monitoring is one of the most critical components of network infrastructure. performance tuning, and alerting configuration for Cosmos-SDK/Tendermint nodes.

Prometheus Setup

First, install Prometheus:
Example Prometheus configuration:

Grafana Integration

Install and configure Grafana:

Alert Management

Install Alertmanager:

Log Management

Loki Setup

Using Loki for log aggregation:

Log Rotation

Configure logrotate to manage log files:

Security Configuration

Network Security

UFW firewall configuration:

Rate Limiting

Validator-Specific Monitoring

Status Query

Query validator status through SDK:
Query through REST API:

Critical Metrics

Monitor these validator-specific metrics:

Backup Management

Host System Monitoring

Resource Usage Tracking

Install and configure node_exporter:
Add to Prometheus configuration:

Performance Testing

For specific customizations or additional metrics, consult the Sei technical communities in Telegram or Discord.