Cosmovisor guide - Odyssey
Prerequisites
Create a user to run Story
Install go:
A validator node requires both Geth and Cosmos to run.
Setup Story - Geth
Ports for geth
Make sure your firewall (not part of this guide) is configured correctly
30303 (TCP + API) - Used for p2p communication (MANDATORY)
8545 - Required if you want your node to interface via JSON-RPC API over HTTP (Default closed, optional)
8546 - Required for WebSocket interaction (Default closed, optional)
8547 - Required for RPC with authentication (Default closed, optional)
Step 1: Give direct commands to copy for setting these variables; below example for temporary (until restart)
Step 2: Create folders
Execution Client Setup
Step 3: Download the latest geth client release for your operating system
Step 4: Move your geth client to your local go library
Example with Go binary location at $HOME/go/bin and AMD64 architecture:
Step 5: Set the geth binary to be allowed to execute
Example:
Step 6: (run to test)
Example:
You can continue with the next step if you see output like below.
Step 7: Create a systemd service for Geth
Example:
Step 8: Start Story Geth with your systemd service
Setup Story - Cosmos
Ports for Cosmos
Make sure your firewall (not part of this guide) is configured correctly
26656 - Used for peer-to-peer communication between nodes in the network (MANDATORY).
26657 - Used for RPC. It allows querying the state, broadcasting transactions, and interacting with the node programmatically (Default closed, optional).
26660 - Used for exposing Prometheus metrics for monitoring the Tendermint process (Default closed, optional).
Step 1: Download the newest story Cosmos binary for your architecture
Step 2: move the story cosmos binary to your binary location and make it executable
Example:
Step 3: Initialise Story
moniker - The name of your validator
Example:
Cosmovisor setup
Step 4: Install Cosmovisor
Minimum version 1.6
Follow the guide from the official documentation here:
Step 5: Set environment variables to initialise the chain using Cosmovisor
This sets the variables temporarily for one-time use
Default settings for Story with Cosmovisor are as follows:
Step 6: Create the backup folder location:
Step 7: Initialise Cosmovisor
moniker - The name of your validator
network - The network you want to initialise the node on (in this case, odyssey)
Example:
Step 8: Add story binary to the path to use story commands
Step 9: Download the Genesis file and Addressbook
Step 10: (Optional)
Configure Story by editing the following file with your required changes:
Step 11: Download the chain data
Follow the steps under Snapshot (pruned) OR find an alternative provider.
Step 12: Set version upgrade manually
Step 13: Create a systemd service
Example:
Step 14: Start Story with your systemd service
Step 15: Create your validator
Complete this step only when your node is fully synced; compare node height with chain height on an explorer.
stake - The amount of $IP you want to self-delegate (1000000000000000000 for 1 IP)
private-key - The private key of your validator, get it using:
moniker - The name of your validator
max-commission-change-rate - The maximum commission amount (in %) you can at a time
max-commission-rate - The maximum commission amount (in %) you can EVER set
commission-rate - The actual commission rate you will start with
Last updated