Node operations

This page describes how to set up, configure, deploy, and operate a Kite mainnet node.

System Requirements

Minimum Hardware Specifications

  • CPU: 8 AWS vCPU or equivalent

  • RAM: 16GB

  • Storage: 1TB SSD

Network Requirements

Open inbound ports:

  • TCP/9650: HTTP API

  • TCP/9651: P2P Staking

Prepare Node Config

You need to prepare the node config content for AVAGO_CHAIN_CONFIG_CONTENT env var. Content must be base64 encoded.

The node config options can be found in C-Chain Configs.

The node config structure is as below, the root key is KiteAI mainnet's blockchain ID, Config key is the base64 encoded chain config, Upgrade key is the base64 encoded upgrade config.

Example

First, encode the chain config:

This will output something like ey**********************************. Then create the full node config JSON and encode it:

It will output ey***************************************************************X0=, put this value as AVAGO_CHAIN_CONFIG_CONTENT env var when running docker.

Deployment

Standard RPC Node

Recommended Chain config:

Archive Node

Node config:

<base64_node_config>:

Run an archive node using v0.1.3 tag in the gokite-chain's Github Container Registry with:

API Endpoints

The node need to track P-Chain before it can be used to query API endpoints, it will take some time to sync. Once bootstrapped, the following API endpoints will be available:

  • HTTP RPC: http://localhost:9650/ext/bc/21uUaTxVdR3Sp6SJhpcSrdH1g66aFoE8mPQDvwKJCjXNexo5y6/rpc

  • WebSocket: ws://localhost:9650/ext/bc/21uUaTxVdR3Sp6SJhpcSrdH1g66aFoE8mPQDvwKJCjXNexo5y6/ws

Health Check

Monitor node health status: curl http://localhost:9650/ext/health The node is ready when the response shows "healthy": true.

Monitor

Metrics are available at:

  • HTTP: http://localhost:9650/ext/metrics

Data and Keys

The data directory is located at $(pwd)/data. If you want to use a different directory, you can change the -v "$(pwd)/data:/data" option in the deployment command. The keys are randomly generated and stored in the directory under the data/staking directory. If you are running the node for validator, you may want to backup the keys.

Run the Node Manually

All the configurations and commands to build the docker image are in the this repository. If you want to run the node manually without using docker, feel free to check github actions to see how to build and run the node.

Last updated