Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

System Requirements #218

Open
faddat opened this issue Jul 12, 2020 · 6 comments
Open

System Requirements #218

faddat opened this issue Jul 12, 2020 · 6 comments

Comments

@faddat
Copy link
Contributor

faddat commented Jul 12, 2020

For Supernodes:

https://github.com/virtualeconomy/v-systems/wiki/How-to-Deploy-Supernodes-in-V-Systems-Blockchain

In current stage, the system requirement is a minimum 16GB of RAM, direct access to SSD and 10 Gbps network.

The comparable Amazon Web Services (AWS) EC2 instance is i3 large.

It is strongly recommended each supernode maintains a standby node of similar spec (usually used as full node. If supernode is down, the standby node can switch to supernode immediately).

The cost of AWS i3 large is $200 ~ $400 per month for 2 servers (supernode and standby node).

Considering hard disk spend of smart contract and decentralized database in the feature, we estimate the server cost will be increased 10% every 2 years.

Are we going with that?

For Regular nodes

We should come up with a minimum spec that will be needed to run in the way that the Dockerfile describes, reliably.

@ncying
Copy link
Member

ncying commented Jul 12, 2020

For the first one, yes.

For regular nodes, we will not deliver Docker files to users, since it needs extra docker installation. And it is also similar to the .jar one.

@faddat
Copy link
Contributor Author

faddat commented Jul 13, 2020

For a full node, what is a reasonable hardware spec?

Same as supernode, or different?

@ncying
Copy link
Member

ncying commented Jul 14, 2020

We suggest AWS m5d.large, but it is not the lowest requirement.

@faddat
Copy link
Contributor Author

faddat commented Jul 14, 2020

We should come up with an official minimum known-good spec, and then provide to users the exact configuration that they should use to run in an performant, stable manner, and that configuration should be default for ease of use and stability.

Far as I know, the only difference between a supernode and a full node is that supernodes sign blocks. I don't think there's much computational overhead on signing blocks versus generating them.

Is that any reason to have a significantly higher and more expensive system configuration for supernodes than is needed?

The machine specs that exceed the actual needs of our software listed in our documentation limit the supply of full nodes and supernodes on the V Systems network, reducing overall resilience. Additionally, because the spec listed in our documentation is so far above what is required, it creates ambiguity as to what is actually required.

We have been discussing various command line and config file tweaks that would enhance performance and or stability. Those command line and config file tweaks should be made default, and we should define a machine spec that runs them very well. That way, we know how our users are running VSYS.

@ncying
Copy link
Member

ncying commented Jul 14, 2020

Supernode needs a more stable and fast calculation to avoid the missing. That's why it needs more resources than a simple full node. A simple full node can offline 2 hours but supernode can not.

@ncying
Copy link
Member

ncying commented Jul 14, 2020

The machine should always ready for some particular cases like higher TPS cases, you can not say that it is waste. For full node, based one what extra application user needed, it can be divided into different levels of usages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants