From 42f56b9f8651d97d53683370eeda0b43efa1e4b7 Mon Sep 17 00:00:00 2001 From: Tyera Eulberg Date: Mon, 2 Dec 2019 11:49:54 -0700 Subject: [PATCH] Further validator doc cleanup (#7187) --- book/src/running-validator/validator-reqs.md | 28 ++++------ book/src/running-validator/validator-stake.md | 52 +++++-------------- .../validator-troubleshoot.md | 12 ++--- 3 files changed, 27 insertions(+), 65 deletions(-) diff --git a/book/src/running-validator/validator-reqs.md b/book/src/running-validator/validator-reqs.md index ea312bf06b..a07a639dc3 100644 --- a/book/src/running-validator/validator-reqs.md +++ b/book/src/running-validator/validator-reqs.md @@ -3,27 +3,20 @@ ## Hardware * CPU Recommendations - * We recommend a CPU with the highest number of cores as possible. AMD - Threadripper or Intel Server \(Xeon\) CPUs are fine. - * We recommend AMD Threadripper as you get a larger number of cores for - parallelization compared to Intel. - * Threadripper also has a cost-per-core advantage and a greater number of PCIe - lanes compared to the equivalent Intel part. PoH \(Proof of History\) is based - on sha256 and Threadripper also supports sha256 hardware instructions. + * We recommend a CPU with the highest number of cores as possible. AMD Threadripper or Intel Server \(Xeon\) CPUs are fine. + * We recommend AMD Threadripper as you get a larger number of cores for parallelization compared to Intel. + * Threadripper also has a cost-per-core advantage and a greater number of PCIe lanes compared to the equivalent Intel part. PoH \(Proof of History\) is based on sha256 and Threadripper also supports sha256 hardware instructions. * SSD size and I/O style \(SATA vs NVMe/M.2\) for a validator * Minimum example - Samsung 860 Evo 2TB * Mid-range example - Samsung 860 Evo 4TB * High-end example - Samsung 860 Evo 4TB * GPUs - * While a CPU-only node may be able to keep up with the initial idling network, - once transaction throughput increases, GPUs will be necessary + * While a CPU-only node may be able to keep up with the initial idling network, once transaction throughput increases, GPUs will be necessary * What kind of GPU? * We recommend Nvidia 2080Ti or 1080Ti series consumer GPU or Tesla series server GPUs. - * We do not currently support OpenCL and therefore do not support AMD GPUs. - We have a bounty out for someone to port us to OpenCL. Interested? [Check out our GitHub.](https://github.com/solana-labs/solana) + * We do not currently support OpenCL and therefore do not support AMD GPUs. We have a bounty out for someone to port us to OpenCL. Interested? [Check out our GitHub.](https://github.com/solana-labs/solana) * Power Consumption - * Approximate power consumption for a validator node running an AMD Threadripper - 2950W and 2x 2080Ti GPUs is 800-1000W. + * Approximate power consumption for a validator node running an AMD Threadripper 2950W and 2x 2080Ti GPUs is 800-1000W. ### Preconfigured Setups @@ -43,11 +36,9 @@ Here are our recommendations for low, medium, and high end machine specification * See [Validator Software](validator-software.md) for the current Solana software release. Be sure to ensure that the machine used is not behind a residential NAT to avoid -NAT traversal issues. A cloud-hosted machine works best. **Ensure that IP ports -8000 through 10000 are not blocked for Internet inbound and outbound traffic.** +NAT traversal issues. A cloud-hosted machine works best. **Ensure that IP ports 8000 through 10000 are not blocked for Internet inbound and outbound traffic.** For more information on port forwarding with regards to residential networks, -see [this -document](http://www.mcs.sdsmt.edu/lpyeatt/courses/314/PortForwardingSetup.pdf). +see [this document](http://www.mcs.sdsmt.edu/lpyeatt/courses/314/PortForwardingSetup.pdf). Prebuilt binaries are available for Linux x86\_64 \(Ubuntu 18.04 recommended\). MacOS or WSL users may build from source. @@ -55,6 +46,5 @@ MacOS or WSL users may build from source. ## GPU Requirements CUDA is required to make use of the GPU on your system. The provided Solana -release binaries are built on Ubuntu 18.04 with [CUDA Toolkit 10.1 update -1](https://developer.nvidia.com/cuda-toolkit-archive). If your machine is using +release binaries are built on Ubuntu 18.04 with [CUDA Toolkit 10.1 update 1](https://developer.nvidia.com/cuda-toolkit-archive). If your machine is using a different CUDA version then you will need to rebuild from source. diff --git a/book/src/running-validator/validator-stake.md b/book/src/running-validator/validator-stake.md index 461c18a5a2..2d3f469c87 100644 --- a/book/src/running-validator/validator-stake.md +++ b/book/src/running-validator/validator-stake.md @@ -85,36 +85,20 @@ so it can take an hour or more for stake to come fully online. To monitor your validator during its warmup period: -* View your vote account:`solana show-vote-account ~/validator-vote-keypair.json` -This displays the current state of all the votes the validator has submitted to -the network. -* View your stake account, the delegation preference and details of your -stake:`solana show-stake-account ~/validator-stake-keypair.json` -* `solana uptime ~/validator-vote-keypair.json` will display the voting history -\(aka, uptime\) of your validator over recent Epochs -* `solana show-validators` displays the current active stake of all validators, -including yours -* `solana show-show-stake-history ` shows the history of stake warming up and -cooling down over recent epochs -* Look for log messages on your validator indicating your next leader slot: -`[2019-09-27T20:16:00.319721164Z INFO solana_core::replay_stage] - voted and reset PoH at tick height ####. My next -leader slot is ####` -* Once your stake is warmed up, you will see a stake balance listed for your -validator on the [Solana Network -Explorer](http://explorer.solana.com/validators) +* View your vote account:`solana show-vote-account ~/validator-vote-keypair.json` This displays the current state of all the votes the validator has submitted to the network. +* View your stake account, the delegation preference and details of your stake:`solana show-stake-account ~/validator-stake-keypair.json` +* `solana uptime ~/validator-vote-keypair.json` will display the voting history \(aka, uptime\) of your validator over recent Epochs +* `solana show-validators` displays the current active stake of all validators, including yours +* `solana show-show-stake-history ` shows the history of stake warming up and cooling down over recent epochs +* Look for log messages on your validator indicating your next leader slot: `[2019-09-27T20:16:00.319721164Z INFO solana_core::replay_stage] voted and reset PoH at tick height ####. My next leader slot is ####` +* Once your stake is warmed up, you will see a stake balance listed for your validator on the [Solana Network Explorer](http://explorer.solana.com/validators) ## Monitor Your Staked Validator Confirm your validator becomes a [leader](../terminology.md#leader) -* After your validator is caught up, use the `$ solana balance` command to monitor -the earnings as your validator is selected as leader and collects transaction -fees -* Solana nodes offer a number of useful JSON-RPC methods to return information -about the network and your validator's participation. Make a request by using -curl \(or another http client of your choosing\), specifying the desired method -in JSON-RPC-formatted data. For example: +* After your validator is caught up, use the `solana balance` command to monitor the earnings as your validator is selected as leader and collects transaction fees +* Solana nodes offer a number of useful JSON-RPC methods to return information about the network and your validator's participation. Make a request by using curl \(or another http client of your choosing\), specifying the desired method in JSON-RPC-formatted data. For example: ```bash // Request @@ -126,21 +110,9 @@ in JSON-RPC-formatted data. For example: Helpful JSON-RPC methods: -* `getEpochInfo`[An epoch](../terminology.md#epoch) is the time, i.e. number of -[slots](../terminology.md#slot), for which a [leader schedule](../terminology.md#leader-schedule) -is valid. This will tell you what -the current epoch is and how far into it the cluster is. -* `getVoteAccounts` This will tell you how much active stake your validator -currently has. A % of the validator's stake is activated on an epoch boundary. -You can learn more about staking on Solana -[here](../cluster/stake-delegation-and-rewards.md). -* `getLeaderSchedule` At any given moment, the network expects only one validator -to produce ledger entries. The [validator currently selected to produce ledger -entries](../cluster/leader-rotation.md#leader-rotation) is called the “leader”. -This will return the complete leader schedule \(on a slot-by-slot basis\) for -the current epoch. If you validator is scheduled to be leader based on its -currently activated stake, the identity pubkey will show up 1 or more times -here. +* `getEpochInfo`[An epoch](../terminology.md#epoch) is the time, i.e. number of [slots](../terminology.md#slot), for which a [leader schedule](../terminology.md#leader-schedule) is valid. This will tell you what the current epoch is and how far into it the cluster is. +* `getVoteAccounts` This will tell you how much active stake your validator currently has. A % of the validator's stake is activated on an epoch boundary. You can learn more about staking on Solana [here](../cluster/stake-delegation-and-rewards.md). +* `getLeaderSchedule` At any given moment, the network expects only one validator to produce ledger entries. The [validator currently selected to produce ledger entries](../cluster/leader-rotation.md#leader-rotation) is called the “leader”. This will return the complete leader schedule \(on a slot-by-slot basis\) for currently activated stake, the identity pubkey will show up 1 or more times here. ## Deactivating Stake diff --git a/book/src/running-validator/validator-troubleshoot.md b/book/src/running-validator/validator-troubleshoot.md index 2dcabe0d89..1a5e612991 100644 --- a/book/src/running-validator/validator-troubleshoot.md +++ b/book/src/running-validator/validator-troubleshoot.md @@ -4,16 +4,16 @@ There is a **\#validator-support** Discord channel available to reach other testnet participants, [https://discord.gg/pquxPsq](https://discord.gg/pquxPsq). ## Useful Links & Discussion -* [Tour de SOL Docs](https://docs.solana.com/tour-de-sol) * [Network Explorer](http://explorer.solana.com/) -* [TdS metrics dashboard](https://metrics.solana.com:3000/d/testnet-edge/testnet-monitor-edge?refresh=1m&from=now-15m&to=now&var-testnet=tds&orgId=2&var-datasource=TdS%20Metrics%20%28read-only%29) +* [Testnet Metrics Dashboard](https://metrics.solana.com:3000/d/testnet-edge/testnet-monitor-edge?refresh=60s&orgId=2) * Validator chat channels - * [\#validator-support](https://discord.gg/rZsenD) General support channel for any Validator related queries that don’t fall under Tour de SOL. - * [\#tourdesol](https://discord.gg/BdujK2) Discussion and support channel for Tour de SOL participants. + * [\#validator-support](https://discord.gg/rZsenD) General support channel for any Validator related queries. + * [\#tourdesol](https://discord.gg/BdujK2) Discussion and support channel for Tour de SOL participants ([What is Tour de SOL?](https://solana.com/tds/)). * [\#tourdesol-announcements](https://discord.gg/Q5TxEC) The single source of truth for critical information relating to Tour de SOL * [\#tourdesol-stage0](https://discord.gg/Xf8tES) Discussion for events within Tour de SOL Stage 0. Stage 0 includes all the dry-run * [Core software repo](https://github.com/solana-labs/solana) -* [Current Testnet/TdS repo](https://github.com/solana-labs/tour-de-sol) -* [Submit bugs and feedback in this repo](https://github.com/solana-labs/tour-de-sol/issues) +* [Tour de SOL Docs](https://docs.solana.com/tour-de-sol) +* [TdS repo](https://github.com/solana-labs/tour-de-sol) +* [TdS metrics dashboard](https://metrics.solana.com:3000/d/testnet-edge/testnet-monitor-edge?refresh=1m&from=now-15m&to=now&var-testnet=tds&orgId=2&var-datasource=TdS%20Metrics%20%28read-only%29) Can't find what you're looking for? Send an email to ryan@solana.com or reach out to @rshea\#2622 on Discord.