🛡️Run Node

Running testnet

If the build succeed you should now have the cosmware cli in your path (of the cosmware user). Try invoking with cosmwared and you should see output like

Stargate CosmosHub App

Usage:
  newared [command]

Available Commands:
  add-genesis-account Add a genesis account to genesis.json
  collect-gentxs      Collect genesis txs and output a genesis.json file
  config              Create or query an application CLI configuration file
  debug               Tool for helping with debugging your application
  export              Export state to JSON
  gentx               Generate a genesis tx carrying a self delegation
  help                Help about any command
....

Join Testnet

Now we can initialize and join the network

  1. Initialize

export CHAIN_ID=arnhemia-01
export MONIKER_NAME="<moniker name>"
newared init "${MONIKER_NAME}" --chain-id ${CHAIN_ID}

Testnet Incentivized Channel

Name Chain IDStatus

Arnhemia

arnhemia-01

Testnet Incentivized

Batavia

batavia-02

Testnet Incentivized

Cartenz

cartenz-03

Testnet Incentivized

NameChain IDStatus

Neware Chain

neware-01

Mainnet

Replacing <moniker name> with your desired name.

  1. Fetch the genesis genesis.json & addrbook.json file

wget https://raw.githubusercontent.com/gitshock-labs/testnet-list/master/testnet/arnhemia -O $HOME/.arnhemia/config/genesis.json
wget https://raw.githubusercontent.com/gitshock-labs/testnet-list/master/testnet/arnhemia -O $HOME/.arnhemia/config/addrbook.json 

Now try to start the network

$ newared start

edgeware@gitshock-testnet-L1:~$ newared start
10:22PM INF starting node with ABCI Tendermint in-process
10:22PM INF Starting multiAppConn service impl=multiAppConn module=proxy
10:22PM INF Starting localClient service connection=query impl=localClient module=abci-client
10:22PM INF Starting localClient service connection=snapshot impl=localClient module=abci-client
10:22PM INF Starting localClient service connection=mempool impl=localClient module=abci-client
10:22PM INF Starting localClient service connection=consensus impl=localClient module=abci-client

And then a whole bunch of log messages while your node is catching up. If this is now verified working it's time to install it as a system level service so it always starts with the machine

Registering service

Drop out of the cosmwared user if you're still in that terminal session. Write exit or type ctrl+d on your keyboard.

(E) Create a service definition file in /etc/systemd/system/cosmwared.service. Example file that fits with our cosmwared install and cosmware runtime user :

[Unit]
Description=Neware Chain Daemon
After=network.target

[Service]
Type=simple
User=neware
ExecStart=/home/cosmware/go/bin/newared start --log_level error 
Restart=on-abort

[Install]
WantedBy=multi-user.target

[Service]
LimitNOFILE=65535  
  1. Reload your systemctl sudo systemctl daemon-reload and enable the service sudo systemctl enable newared

  2. And finally start the service with sudo systemctl start newared

  3. Check the status of the service with systemctl status newared.service - it should return something like

cosmware.service - Neware Chain Daemon
     Loaded: loaded (/etc/systemd/system/newared.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2022-05-24 12:34:26 UTC; 5s ago
   Main PID: 18490 (cosmware)
      Tasks: 55 (limit: 4541)
     Memory: 25.4M
        CPU: 4.430s
     CGroup: /system.slice/newared.service
             └─18490 /home/newared/go/bin/newared start
...

Once your node is synced. it is time to make it a validator. this can be done on a seperate machine if preferred.

create a key that will be the validators key. I have chosen the creative name of 'validator'

newared keys add validator

copy the seed phrase and put it somewhere safe. you will need to also make note of the address "gtfx1..." and use that in the faucet to get some coins. you can check your balance via

newared query bank balances neware....

The next part is associating your node with your account, creating the validator

export PUBKEY=$( newared tendermint show-validator)
export CHAIN_ID=arnhemia-01
export MONIKER_NAME="<your moniker>"
cosmwared tx staking create-validator --moniker="${MONIKER_NAME}" \
--amount=1000000ugtfx \
        --gas-prices=1ugtfx \
        --pubkey=$PUBKEY \
        --from=validator \
        --yes \
        --node=tcp://localhost:26657 \
        --chain-id=${CHAIN_ID} \
        --commission-max-change-rate=0.01 \
        --commission-max-rate=0.20 \
        --commission-rate=0.10 \
        --min-self-delegation=1

now your node should be present.

newared query staking validators | grep details

please remember to also back up $HOME/.cosmware/config/priv_validator_key.json if you lose this, you are toast.

Adding more peers.

you should modify /etc/security/limits.conf and add

*                soft    nofile          65535
*                hard    nofile          65535

you can then modify the config.toml to increase connections. This may cost you more in ingress/egress charges.

max_open_connections = 1900
max_num_inbound_peers = 50
max_num_outbound_peers = 50

Last updated