Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cosmos/mainnet
It's happening!
https://github.com/cosmos/mainnet
Last synced: about 1 month ago
JSON representation
It's happening!
- Host: GitHub
- URL: https://github.com/cosmos/mainnet
- Owner: cosmos
- Archived: true
- Created: 2019-03-09T21:44:46.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-12-14T17:17:49.000Z (12 months ago)
- Last Synced: 2024-08-01T13:28:17.220Z (4 months ago)
- Language: Go
- Homepage:
- Size: 22.2 MB
- Stars: 126
- Watchers: 33
- Forks: 247
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-ccamel - cosmos/mainnet - It's happening! (Go)
README
# Cosmos Hub Mainnet
## Overview
The current Gaia Version of the Cosmos Hub mainnet is [`v14.1.0`](https://github.com/cosmos/gaia/releases/tag/v14.1.0). To bootstrap a mainnet node, it is possible to sync from `v13.0.x` via Quicksync or via [State Sync](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html#state-sync).
For a full set of instructions on boostrapping a mainnet node, see the Hub's [**Join the Cosmos Hub Mainnet**](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html) documentation.
## 🗓️ Scheduled Upgrade
The `v14` upgrade was proposed through an [on-chain software upgrade proposal](https://www.mintscan.io/cosmos/proposals/854) and is open to voting between 2023-11-24 and 2023-12-08. The upgrade is proposed to take place at block height **18,262,000** which should occur approximately at **December 13th 2023.** The chain id will remain `cosmoshub-4`.
You can find `v14.1.0` tagged code and binaries in the [gaia repository](https://github.com/cosmos/gaia/releases/tag/v14.1.0).
Upgrades can be a memory intensive process. Please see the guide for the [current hardware recommendations](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html#hardware). We recommend that you are prepared to upgrade on a machine with sufficient physical memory. Some node operators also choose add 8-16 GB of swap to avoid out of memory issues.You can check out the Cosmos Hub documentation for a step-by-step tutorial on how to [upgrade your node](https://hub.cosmos.network/main/hub-tutorials/upgrade-node.html). Version specific upgrade notes using Cosmovisor are provided below.
### Upgrading using Cosmovisor
Cosmovisor instructions can be found in the [v14 upgrade instructions](https://github.com/cosmos/gaia/blob/main/docs/migration/cosmoshub-4-v14-upgrade.md).
## 🚀 Quickstart
### Prerequisites
You will need the following tools preinstalled:
- `make` & `gcc`
- `Go 1.20.x+`> **Note**: See the [installation docs](https://hub.cosmos.network/main/getting-started/installation.html) for clarification and a detailed set of instructions.
### Quicksync
Quicksync.io offers several daily snapshots of the Cosmos Hub with varying levels of pruning (archive 1.4TB, default 540GB, and pruned 265GB). For downloads and installation instructions, visit the [Cosmos Quicksync guide](https://quicksync.io/networks/cosmos.html).
### State Sync
To enable state sync, visit an [explorer](https://www.mintscan.io/cosmos/blocks) to get a recent block height and corresponding hash. A node operator can choose any height/hash in the current bonding period, but as the recommended snapshot period is 1000 blocks, it is advised to choose something close to current height - 1000. Set these parameters in the code snippet below `` and ``
For reference, the list of `rpc_servers` and `persistent` peers can be found in the [cosmos hub chain-registry repo](https://github.com/cosmos/chain-registry/blob/master/cosmoshub/chain.json).
```bash
# Clone Gaia with only the release branch that we are using
cd $HOME
git clone -b v14.1.0 https://github.com/cosmos/gaia# Build gaiad binary and initialize chain
cd gaiad
make install
gaiad init# Prepare genesis file for cosmoshub-4
wget https://github.com/cosmos/mainnet/raw/master/genesis.cosmoshub-4.json.gz
gzip -d genesis.cosmoshub-4.json.gz
mv genesis.cosmoshub-4.json $HOME/.gaia/config/genesis.json#Set minimum gas price & peers
sed -i 's/minimum-gas-prices = ""/minimum-gas-prices = "0.001uatom"/' app.toml
sed -i 's/persistent_peers = ""/persistent_peers = "[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656,[email protected]:26656"/' config.toml# Configure State sync
cd $HOME/.gaia/config
sed -i 's/enable = false/enable = true/' config.toml
sed -i 's/trust_height = 0/trust_height = /' config.toml
sed -i 's/trust_hash = ""/trust_hash = ""/' config.toml
sed -i 's/rpc_servers = ""/rpc_servers = "https:\/\/rpc.cosmos.network:443,https:\/\/rpc.cosmos.network:443"/' config.toml#Start Gaia
gaiad start --x-crisis-skip-assert-invariants
```> _NOTE_: If the node is unable to connect to any of the seeds listed here, find additional seeds and peers in [this document](https://hackmd.io/@KFEZk8oMTz6vBlwADz0M4A/BkKEUOsZu#) maintained by community members, which is automatically generated by crawling the network. Additionally, node operators can just copy [Quicksync's addressbook](https://quicksync.io/addrbook.cosmos.json) and move it to `$HOME/.gaia/config/addrbook.json`
## Upgrade to Validator Node
You now have an active full node. What's the next step? You can upgrade your full node to become a Cosmos Validator. The top 180 validators have the ability to propose new blocks to the Cosmos Hub. Continue onto [the Validator Setup](../validators/validator-setup.md).