Installation of a waves testnet node
waves·@marc.jansen·
0.000 HBDInstallation of a waves testnet node
<h1>Installation of a waves testnet node</h1> <p>I was asked to provide a video tutorial for the installation of a testnet node</p> <p>for the waves network. I'm currently running a couple of nodes in different</p> <p>environments and helped a couple of people installing nodes. Therefore, some</p> <p>experience in how to set up nodes for the waves network exists. :)</p> <p><br /></p> <p>Basically, I'll follow the steps for the installation of a node on the</p> <p>wavesplatform github page:</p> <p><br /></p> <p>https://github.com/wavesplatform/Waves</p> <p><br /></p> <p>and the page for the configuration of a node:</p> <p><br /></p> <p>https://github.com/wavesplatform/Waves/wiki/How-to-configure-Waves-node</p> <h2>Installation of the Oracle Java8 JDK</h2> <p>First of all, we have to install the Oracle Java8 JDK. The following commands</p> <p>will take care of this:</p> <p><br /></p> <p>echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list</p> <p>echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main" | tee -a /etc/apt/sources.list</p> <p>apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886</p> <p>apt-get update</p> <p>apt-get install -y oracle-java8-installer</p> <p><br /></p> <p>In contrast to the original steps provided by the waves team, I've added -y to</p> <p>the last command in order to avoid apt asking if we really want to install</p> <p>the package. At this step, some users (including me) had some trouble answering</p> <p>the question and this pitfall could be avoided by just adding the -y. Finally,</p> <p>these steps ensure that we have the latest JDK version (originally from Oracle)</p> <p>installed on our server.</p> <h2>Installation of the Waves node software</h2> <p>After the successful installation of the Oracle Java8 JDK, we can start the installation of the nodes software. Therefore, we will download the latest release from:</p> <p><br /></p> <p>https://github.com/wavesplatform/Waves/releases</p> <p><br /></p> <p>At the current state, the latest version is 0.2.1, so we download the release</p> <p>via:</p> <p><br /></p> <p>wget https://github.com/wavesplatform/Waves/releases/download/v0.2.1/waves-v0.2.1-testnet.zip</p> <p><br /></p> <p>Of course, this link will change with upcoming releases...</p> <p><br /></p> <p>After downloading it, we will need to unzip it. If you have not yet install</p> <p>unzip on your server you can do so with the following command:</p> <p><br /></p> <p>apt-get install unzip</p> <p><br /></p> <p>After unzipping the formerly downloaded waves-v0.2.1-testnet.zip file with:</p> <p><br /></p> <p>unzip waves-v0.2.1-testnet.zip</p> <p><br /></p> <p>we have two new files in our filesystem:</p> <p><br /></p> <p>waves_0.2.1_testnet.deb</p> <p>waves-testnet.json</p> <p><br /></p> <p>Fianlly, we can now install the waves software by:</p> <p><br /></p> <p>dpkg -i waves_0.2.1_testnet.deb</p> <p><br /></p> <p>Remember, all the steps so far should be done in a root account. If you are not</p> <p>logged in as root (or with an account that has root privilegous), you should add</p> <p>"sudo" in front of the commands.</p> <h2>Configuration of the waves node</h2> <p>After the successful installation of the waves node software, we can now start</p> <p>configuring it according to the steps explained in subsection "Configuration"</p> <p>here:</p> <p><br /></p> <p>https://github.com/wavesplatform/Waves/wiki/How-to-configure-Waves-node</p> <p><br /></p> <p>After the successful configuration, you can start your node in the background</p> <p>with the following command:</p> <p><br /></p> <p>waves waves-testnet.json &</p> <p><br /></p> <p>Those steps are shown in the following video:</p> <p> <iframe src="https://www.youtube.com/embed/nPf0p351lK8" width="640" height="360" allowFullScreen="on" frameBorder="0"></iframe> </p> <h2>Check installation</h2> <p>Since you have now a clean installation, your node needs to sync first. Here,</p> <p>syncing means that your node has to download the history of blocks / transaction</p> <p>that occured in the network so far. In order to check if your node is syncing,</p> <p>you can connect to the Swagger UI of your node by pointing your web browser to</p> <p>the following URL.</p> <p><br /></p> <p>http://<ip address of your server>:6869</p> <p><br /></p> <p>Since one of my server is running on ip 138.68.56.182, the URL would be:</p> <p><br /></p> <p>http://138.68.56.182:6869</p> <p><br /></p> <p>On the loaded page, you'll find an endpoint called "debug". If you click on it,</p> <p>you'll find another endpoint called "/debug/info". Again, click on it and hit</p> <p>"Try it out". The result you'll get should look something like the following</p> <p>image. </p> <p><img src="https://dl.dropboxusercontent.com/u/70697078/debug_info.png" /></p> <p>Here, you can see that the stateHeight of my node is currently at 7150.</p> <p>We can compare this to synced nodes, e.g., the ones you find unter "knownPeers"</p> <p>in your waves-testnet.json file on your server, in order to check how far your</p> <p>nodes is in the syncing process.</p> <p><br /></p> <p>On you server, you can also check the "scorex.log" file. If you find entries</p> <p>like:</p> <p><br /></p> <p>08/08 11:34:19 DEBUG[t-dispatcher-11] s.n.HistorySynchronizer Got blockIds: Vector(1111111111111111111111111111111111111111111111111111111111111111, EoeZ7RSQVZ7QXvrpfXgrDeBS61z</p> <p>ByRsdz4fmHSxRLv3LHWcAWzM22fZYsd8gMbemQBn83BvkFpURiHy6u9zgNJQ, 3xSfryez3w2cCTj7vq2QSoWgYxZmSZXttRyii2y6QCqE2cTv9vfG1BfMGyWpK3fyvushjCrfNFqrMwnifZJ58wU, 4diJ2cx7RW9WAysitNdkX5R9b</p> <p>RLULThNkmhkMRyYFRLgGqWt8zJ1HTCnW4SgWqSfsgggUQEV3ZWwB9GGUjvCDpjq, 65gTSJ5Ha1xWrdKDXU3voQ57mFNL4qnUMA7mFiVPTL53RwJTt9SfjktR911BN2sN6JMQjvzVLmL2xREqP9k5LDdT, 2oFphHrGMMTQeKhZJwzvD</p> <p>DiPnsc3V3HKjsVjasX5bgRJTUNNJza3j26wyuKVU5eJ18u7PKS8LZ31GnyD1A6TafvE, TygmcnAPTynrKavZfpVEbxhPziLaedxq1XJd296TPbrrxB3QRrSjQ7kGFxg3bNHvWUAgcrr2pjisKD8PwzcM1t7, 2Ko4eGmmnKkdwbbYUv</p> <p>Ct75mjhyUUuuLFRtkndsnbrygnbKXs3jriLmynDdNcmVDoKCeseqx74d2FSBXXW28gxGkB, 21d6iFPmAELHynfQyoGB74ibRSYCMNmvgyYgRX93E2mFhNogfTZKWf6ncrETY9zu1Yp6tmvQ1JPg8bG1zLYmtsMe, GmB1PaRnbdDDoz</p> <p>TNrPxZXMFL97PDS5etadLanmAVZx93EVqAib5HsJAg3D5WmubW78KFr45PYmHy6HiYS3oeGrm, 36BDtsEXoLxsvjCyWXCDUzr9yJGDuEEWWSj2HqLRjAx1dVAdFReLTe8LTY9B8oAuf9EScAdVC42zZqT72uKE7FCG, 5VsVZQXuuoL</p> <p>CXPhCtTm8bFapst3CN6jRvM653ZUMn2YJXguqGg5mUesgCQZb3jYG3ha74jxAArN7kRMpdFwtmCCh, 3QXWR8kmA1HK7SGjEpaiqoWpULXWHtwfiSuJ7a1Xd9kfWCxuPH1pZubtpqGdGGnRyHrnEfC1dydLsX4jH8BeVUY1, 5PjFUiX</p> <p>zvCuQfcQ7aA6HgCYn3aXc8jSJ7Zdg9MqDtPsLBN6DjQewq6KH7Er5x5n1EAv7z7sEHp8VEkiTStm7Pa96, 4sokUJSzh2gh7PnxvZXyNpp66nvUYWvRWAgx92ECZBzNi8q4z4XEehaRYtDDaQjKff4Hd3WwJJNwex5WqcuiodE9, 4iS</p> <p>AgU5wdKJaQuRJ2v5gT3WPwUZsaSYu63SuqP5AEbkj9GWfVFfyrdpT67LvTV24q2aPKHZzmvHJaSgfyWpD83DH, 4Eqp7vcojfiupUjiCiDFMr87pwLkXWrkW41JDmAEa9gFwaT9Yno27mbigD8xRBTq1Re4jmFJwPHaeMHbBpYFhxVx,</p> <p> 2v1UGCHgtFwaFNX91shpLQyS2dYaTURXfXqeSREvdjCUfPdUey31TmZvUNdsufx2nyqGDAGAmZeC14iueZxtUxEE, 5kTEjA8tauSUoF7Z2NqBDqHCH6wnkXkfxLzmA87PHocL7GDfcDmyGpdUiBHVCw4ajuyUvmVKnzMCftYMiyEdL</p> <p>stN, Ycd2JVVdA2UNR3WcQEBQvwgJhVsaGnmKqwNoteTNMvriqdhmHRyU4ytbnN1kENXLAiwEBv2raADrdKU9ESpJ9R6, 3dke6cEq6a5Zg2gjeVzw6qzUUEVAYXCzdgeExdof4vdyZj3Xq5pe4FZcypfNh7GSM6w4DjNm1UTQimQ219N4Q9qZ)</p> <p><br /></p> <p>this shows that your node is adding new blocks.</p> <p><br /></p> <p>Remember, the syncing process might take some (serious) time to finish. The</p> <p>bigger the blockchain of the waves testnet network will get, the more time it</p> <p>will take.</p> <p><br /></p> <p>I hope that you enjoyed the tutorial. Please feel free to contact me (@hawky) on</p> <p>slack in #testnet-maintainers or #fullnode if you have any questions, or just</p> <p>leave a comment with your questions here. </p> <p><br /></p>
👍 marc.jansen, globalwork365, xsentus, cdubendo, fernan, rickystef, erizan, dongle, btcbtcbtc20155, btotherest, apes, renohq, mixrys, sasha-noxon, charlysicardo, a48, wavesplatform, mstang83, tosch, tekshabor, yassinnxt, plasmak, firenze, aleco, iotaardor, cryptohead, oneyesoneno, lexus083, bledarus, bitheyho, raff-delfin,