You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Oasis Network is composed of multiple classes of nodes that participate in
4
+
different committees.
4
5
5
-
The hardware requirements listed on this page are the suggested **minimum requirements**. It might be possible to configure a system with less resources, but you run the risk of being underprovisioned and thereby prone to loss of stake.
6
+
This page describes the **minimum** and **recommended** system hardware
7
+
requirements for running different types of nodes on the Oasis Network.
6
8
7
-
:::
9
+
:::caution
8
10
9
-
The Oasis Network is composed of multiple classes of nodes that participate in different committees. The majority of committees have common system configurations for the participant nodes.
11
+
If you configure a system with less resources than the recommended values, you
12
+
run the risk of being underprovisioned and causing proposer node timeouts.
Ordinary node operation can work with 2 GB of RAM.
55
+
Ordinary node operation can work with less memory, e.g. 4 GB of RAM.
28
56
29
-
However, at certain time points, it absolutely requires at least 4 GB of RAM. Examples of such more resource intensive time points are the initial state sync, BadgerDB migration when upgrading a node to Oasis Core 21.2.x, ...
57
+
However, at certain time points, the node will absolutely require more memory.
58
+
Examples of such more resource intensive time points are the initial state sync,
59
+
BadgerDB migration when upgrading a node to Oasis Core 21.2.x, generating
60
+
storage checkpoints with BadgerDB, periodic BadgerDB compactions...
30
61
31
-
If you can dynamically change the amount of RAM a node is provisioned, then feel free to downscale/upscale it as you see fit.
62
+
If the system will not have enough memory, that will result in the Oasis node
63
+
process being killed forcefully by the OOM process.
64
+
Oasis node being killed forcefully could lead to BadgerDB state corruption
65
+
and/or losing stake.
32
66
33
67
:::
34
68
69
+
### Storage
70
+
71
+
* Minimum: 300+ GB of SSD or NVMe fast storage
72
+
* Recommended: 500+ GB of SSD or NVMe fast storage
35
73
74
+
:::caution
75
+
76
+
Consensus state is stored in an embedded [BadgerDB](https://dgraph.io/docs/badger/)
77
+
database which was [designed to run on SSDs](https://dgraph.io/docs/badger/design/).
36
78
37
-
* 100+ GB High Speed Storage
79
+
Hence, we **strongly discourage** trying to run a node that stores data
80
+
**on classical HDDs**.
81
+
82
+
:::
38
83
39
84
:::info
40
85
41
86
The network accumulates state over time. The speed at which the state grows depends on the network's usage.
42
87
43
-
For example, the Mainnet accumulated over 80 GB of state in 5+ months between [Mainnet launch](../../mainnet/previous-upgrades/mainnet-upgrade.md) (Nov 18, 2020) and [Cobalt upgrade](../../mainnet/cobalt-upgrade.md) (Apr 28, 2021).
88
+
For example, the Mainnet accumulated over 250 GB of state in ~11 months between
89
+
the [Cobalt upgrade](../../mainnet/cobalt-upgrade.md) (Apr 28, 2021) and Mar 15, 2022.
44
90
45
91
:::
46
92
@@ -60,22 +106,99 @@ To do that, set the **`consensus.tendermint.abci.prune.strategy`** and **`consen
60
106
61
107
## ParaTime Nodes
62
108
63
-
To run a ParaTime node, your system should meet the following minimum system requirements:
109
+
To run a ParaTime node, your system should meet the following requirements:
64
110
65
-
* 2.0 GHz x86-64 CPU
111
+
### CPU
112
+
113
+
* Minimum: 2.0 GHz x86-64 CPU with [AES instruction set] support
114
+
* Recommended: 2.0 GHz+ x86-64 CPU with 2 cores or 2 such virtual CPUs with
115
+
[AES instruction set] and [AVX2] support
66
116
67
117
:::caution
68
118
69
-
The CPU must have [AES-NI](https://en.wikipedia.org/wiki/AES_instruction_set) support.
119
+
The [AES instruction set] support is required by [Deoxys-II-256-128], a
120
+
Misuse-Resistant Authenticated Encryption (MRAE) algorithm, which is used for
121
+
encrypting ParaTime's state.
122
+
123
+
:::
124
+
125
+
:::info
126
+
127
+
The [Advanced Vector Extensions 2 (AVX2)][AVX2] support enables faster Ed25519
128
+
signature verification which in turn makes a node sync faster.
It is also possible to configure the Node to _not_ keep all the state from the genesis onward, reducing the amount of storage needed to keep the network's state.
81
201
202
+
To do that, set the **`consensus.tendermint.abci.prune.strategy`** and **`consensus.tendermint.abci.prune.num_kept`** parameters appropriately in your [Node's configuration](../set-up-your-node/run-validator.md#configuring-the-oasis-node).
0 commit comments