Production operations
What an exchange, custodian, pool or infrastructure provider should have in place before depending on core-geth. Each item points to the page that covers it.
Before you depend on a node¶
| Area | What to have in place | Where |
|---|---|---|
| Sizing | Disk, memory and sync time for your network and sync mode | Hardware requirements |
| Service | The node runs under a service manager and restarts on failure | Run it as a service |
| Data retention | The sync mode and history your queries need | Sync modes, Archive node |
| Exposure | Only the p2p port is public, and RPC stays private or behind a gateway | Security and network exposure, Public RPC endpoint |
| Clock | NTP keeps the clock synchronized | Clock |
| Chain selection | Every node you run has the same MESS setting | MESS |
| Monitoring | Alerts on peer count, head age and disk space | Monitoring |
| Backups | Account keys and the node key backed up, and a restore tested | What to back up |
| Upgrades | A tested way to upgrade and to roll back | Upgrading within v1.13.x |
Redundancy¶
Run at least two nodes on separate hosts, and put your application behind both: Several nodes behind one entry point. Upgrade them one at a time, and keep them on the same release and MESS setting.
Crediting deposits¶
- Read confirmations only from a node that is in sync:
eth_syncingreturnsfalseand the head is recent. - Choose the number of confirmations with the MESS confirmation calculator, and check that MESS is in force with
admin.ecbp1100Status()over IPC. - A node with few peers can be shown a chain the rest of the network does not follow. Alert when the peer count drops, and hold credits while it is low.
When something goes wrong¶
- Troubleshooting maps log lines to causes and fixes.
- After an unclean stop covers a node that was killed.
Reorg disallowedin the log means MESS refused a reorganization. Check that your nodes agree on the head before you resume crediting.
Security updates¶
Follow the ethereumclassic/core-geth releases, and report vulnerabilities privately as SECURITY.md describes. Exchanges, pools and service providers can reach the core developers at security@ethereumclassic.com.