12-05-2019 Workshop
Participants
@Medha Parlikar
@Ashok Ranadive (Unlicensed)
@Rita Allen (Unlicensed)
@Former user (Deleted)
@Former user (Deleted)
@Former user (Deleted)
Joowon
Pre-Requisites
Install Prerequisites described here: https://github.com/CasperLabs/CasperLabs/blob/dev/docs/BUILD.md#prerequisites
Pre-Compile Contract Examples:https://github.com/CasperLabs/CasperLabs/tree/master/execution-engine/contracts/examples
Connect to DevNet and sync your state on your node. Instructions are located below.
Goals
Help folks configure their nodes with Node 0.9.1
Connect to DevNet (Create the chainspec locally for DevNet)
Keep our old state and synch up.
Bootstrap Address
casperlabs://a605c8ddc4ed3dc9b881bfe006cc8175fb31e125@100.24.117.48?protocol=40400&discovery=40404
Software Version (GitHash)
Node 0.9.1 Githash: 3651e41e1c9194a662a69e2acfac9941b1e17862
Docker tag: latest
What you need to know:
Make sure you have a public / private key pair that you have generated via the explorer at https://clarity.casperlabs.io
Update your node to the latest version.
If you compile node locally, obtain the Mint and Proof-of-Stake contracts from the release repository tarballs and place them in the chainspec/genesis folder.
Download accounts.csv from the 0.9.1 release page located at: https://github.com/CasperLabs/CasperLabs/releases/tag/v0.9.1 and place it in the
$ yourdatadirectory/.casperlabs/chainspec/genesis
md5sum: 15c20435e7ef4928e6f844c1a749b32c
Delete the data directory if you have to upgrade the node software or restart your node.
global-state
blockstore
dagstore
sqlite.db
Run the Execution Engine first, before launching the node.
When generating Keys using Docker, use the wrapper script as documented in GitHub
Discussion topics
Title | Description | Notes |
---|---|---|
Perform a deploy using a Python client | We have a windows client available - deploy a contract to DevNet. Mac Brew installation is also available |
|
Attempt to run the node without deleting the state. |
| See how long it takes to sync state, and that synching state is fine.
|
Validate that their ports are open to look at node metrics | Add their nodes to Grafana and observe their metrics- Provide the public IP of the node to Tom to add to Prometheus. Watch the nodes synch up. |
|
Send transactions & blocks | Add transactions to the system |
|
Observe the metrics in Grafana | As transactions are processed, observe the metrics in Grafana. |
|
Perform a token transfer between accounts | Transfer tokens between accounts |
|
Outcome:
Need to run the node with Prometheus enabled.
Piotr S was able to connect, but he had to completely clean everything off of his system. We don’t know why he had an issue. He also removed the manifest.toml from chainspec/genesis as well.
Action items
Publish the chainspec → accounts.csv + compiled system contracts
Publish the configuration / documentation on how to enable metrics collection in the node for a variety of platforms.
Need to run the node with -m enabled
Need to run a node exporter script. We can provide an example