Installation
A complete guide to running an Arkhadian Blockchain Mainnet node and validator.
💢 Quick Installation (Automated)
💢 One-Command Installation
wget -qO install.sh https://raw.githubusercontent.com/Edsny1/Arkhadian-Mainnet-Setup/Edsny/install.sh && chmod +x install.sh && ./install.shThis script automatically handles:
- ✅ System update
- ✅ Required packages installation
- ✅ Go installation (if missing)
- ✅ Cosmovisor installation
- ✅ Binary compilation and installation
- ✅ Node configuration
- ✅ Genesis and addrbook setup
- ✅ State Sync configuration
- ✅ Systemd service creation
Information required during setup:
- Moniker (Your node name)
- Wallet name (default: wallet)
- Port configuration (default or custom)
- State Sync usage (recommended: yes)
💻 System Requirements
💢 Minimum Requirements
| Component | Minimum |
|---|---|
| CPU | 4 Cores |
| RAM | 8 GB |
| Disk | 200 GB SSD |
| Bandwidth | 100 Mbps |
| OS | Ubuntu 20.04+ |
💢 Recommended Requirements
| Component | Recommended |
|---|---|
| CPU | 8 Cores |
| RAM | 16 GB |
| Disk | 500 GB NVMe SSD |
| Bandwidth | 1 Gbps |
| OS | Ubuntu 22.04 LTS |
💢 Post-Installation Operations
💢 1. Start the Node
sudo systemctl start arkhd💢 2. Monitor Logs
sudo journalctl -fu arkhd -o cat💢 3. Check Sync Status
arkhd status 2>&1 | jq .SyncInfoWait until catching_up: false.
💢 4. Create a Wallet
New Wallet:
arkhd keys add walletRecover Existing Wallet:
arkhd keys add wallet --recover⚠️ Important: Keep your mnemonic words in a safe place!
💢 5. Create a Validator
After the node is fully synced:
arkhd tx staking create-validator \
--amount=1000000arkh \
--pubkey=$(arkhd tendermint show-validator) \
--moniker="YOUR_MONIKER" \
--chain-id=arkh \
--commission-rate="0.10" \
--commission-max-rate="0.20" \
--commission-max-change-rate="0.01" \
--min-self-delegation="1" \
--gas="auto" \
--gas-adjustment="1.5" \
--gas-prices="0.0arkh" \
--from=wallet \
--fees=5000arkh \
--gas=200000💢 Useful Commands
💢 Node Management
# Node status
sudo systemctl status arkhd
# Start node
sudo systemctl start arkhd
# Stop node
sudo systemctl stop arkhd
# Restart node
sudo systemctl restart arkhd
# Monitor logs
sudo journalctl -fu arkhd -o cat💢 Sync Checking
# Sync status
arkhd status 2>&1 | jq .SyncInfo
# Catching up check
arkhd status 2>&1 | jq .SyncInfo.catching_up
# Latest block height
arkhd status 2>&1 | jq .SyncInfo.latest_block_height
# Peer count
curl -s localhost:26657/net_info | jq -r .result.n_peers💢 Wallet Operations
# Wallet list
arkhd keys list
# Balance check
arkhd query bank balances $(arkhd keys show wallet -a)
# Send tokens
arkhd tx bank send wallet <RECEIVER_ADDRESS> 1000000arkh \
--chain-id=arkh \
--gas=auto \
--gas-adjustment=1.5 \
--gas-prices=0.0arkh💢 Validator Operations
# Validator information
arkhd query staking validator $(arkhd keys show wallet --bech val -a)
# Validator status
arkhd status 2>&1 | jq .ValidatorInfo
# Withdraw rewards
arkhd tx distribution withdraw-all-rewards \
--from=wallet \
--chain-id=arkh \
--gas=auto \
--gas-adjustment=1.5 \
--gas-prices=0.0arkh
# Unjail a jailed validator
arkhd tx slashing unjail \
--from=wallet \
--chain-id=arkh \
--gas=auto \
--gas-adjustment=1.5 \
--gas-prices=0.0arkh💢 Troubleshooting
💢 Node Does Not Start
# Check logs
sudo journalctl -u arkhd -n 100 --no-pager
# Check binary
which arkhd
arkhd version
# Check permissions
ls -la ~/.arkh/💢 No Peers Found
# Update Addrbook
rm ~/.arkh/config/addrbook.json
wget -O ~/.arkh/config/addrbook.json https://raw.githubusercontent.com/Edsny1/Arkhadian-Mainnet-Setup/refs/heads/Edsny/addrbook.json
# Restart node
sudo systemctl restart arkhd💢 Slow Synchronization
Use State Sync or restore from a snapshot. See the manual installation guide for detailed info.
💢 Disk Full
# Tighten pruning settings
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \"100\"/" ~/.arkh/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \"10\"/" ~/.arkh/config/app.toml
# Restart node
sudo systemctl restart arkhd💢 Port Configuration
💢 Default Ports (26xxx)
| Service | Port |
|---|---|
| P2P | 26656 |
| RPC | 26657 |
| gRPC | 26090 |
| API | 26317 |
| Prometheus | 26660 |
💢 Custom Port Usage
If you select a custom port during installation (e.g., 27), all ports will be automatically adjusted (27656, 27657, etc.).
💢 Security Recommendations
-
Firewall Configuration
sudo ufw allow ssh sudo ufw allow 26656/tcp sudo ufw enable -
SSH Security
- Use Key-based authentication
- Disable root login
- Change the default SSH port
-
Backup
- Backup the
~/.arkh/config/priv_validator_key.jsonfile - Store your mnemonic words in a secure place
- Backup the
-
Monitoring
- Regularly check node status
- Install Prometheus and Grafana
- Set up an alert system
-
Updates
- Keep your system updated
- Track new node versions
💢 Files and Directories
~/.arkh/
├── config/
│ ├── app.toml # Application configuration
│ ├── config.toml # Node configuration
│ ├── genesis.json # Genesis file
│ ├── addrbook.json # Peer addresses
│ └── priv_validator_key.json # Validator key (IMPORTANT!)
├── data/ # Blockchain data
└── cosmovisor/
├── genesis/
│ └── bin/
│ └── arkhd # Genesis binary
└── upgrades/ # Upgrade binaries💢 Cosmovisor Upgrade
Cosmovisor automatically handles chain upgrades.
💢 Preparation for New Version
# Compile new version
cd ~/arkh-blockchain
git fetch
git checkout <NEW_VERSION>
go build -o arkhd ./cmd/arkhd
# Create upgrade directory
mkdir -p ~/.arkh/cosmovisor/upgrades/<UPGRADE_NAME>/bin
# Copy binary
cp arkhd ~/.arkh/cosmovisor/upgrades/<UPGRADE_NAME>/bin/When the upgrade proposal passes, Cosmovisor will automatically transition to the new version.
💢 Useful Links
💢 Official Resources
- GitHub: https://github.com/vincadian/arkh-blockchain
- Website: [Arkhadian Website]
- Documentation: [Documentation Link]
💢 Community
- Discord: [Discord Invite]
- Telegram: [Telegram Group]
- Twitter: [Twitter Profile]
💢 Explorer & Tools
- Explorer: [Block Explorer]
- API: [API Endpoint]
- RPC: https://arkh.rpc.m.anode.team:443
💢 Contributing
This repository is open for community contributions. Feel free to submit a pull request!
💢 Contribution Process
- Fork this repo
- Create a new branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to your branch (
git push origin feature/amazing-feature) - Open a Pull Request
💢 Support
If you experience issues:
-
Check Documentation
- MANUAL_INSTALLATION.md - Detailed installation guide
- Troubleshooting - Common issues and solutions
-
Community Support
- Get help on Discord
- Ask in the Telegram group
-
Open an Issue
- You can open an issue on GitHub
- Explain your problem in detail
💢 Version History
💢 v2.0.0 (Current)
- First mainnet version
- Cosmovisor integration
- State Sync support
- Automated setup script
💢 License
MIT License - See the LICENSE file for details.
💢 Acknowledgements
- Arkhadian Core Team
- Cosmos SDK Team
- All community contributors
