Celestia 호스트 설치 가이드
Ubuntu 22.04 기준 celestia-node / celestia-app 소스 빌드 및 실행 개요입니다.
- 공식 문서: https://docs.celestia.org/nodes/overview
- 소스:
시스템 요구사항
| 유형 | CPU | RAM | Disk | Network |
|---|---|---|---|---|
| Light | 2+ vCPU | 4 GB+ | 50 GB SSD | 100 Mbps |
| Bridge | 6+ vCPU | 16 GB+ | 1 TB NVMe | 100 Mbps+ |
| Full Storage | 8+ vCPU | 32 GB+ | 수 TB NVMe | 1 Gbps |
| Validator | 8+ vCPU | 32 GB+ | 1 TB+ NVMe | 1 Gbps |
빌드 (celestia-node)
# Go 1.22+
git clone https://github.com/celestiaorg/celestia-node.git
cd celestia-node
git checkout v0.19.1-mocha
make build
sudo mv build/celestia /usr/local/bin/
celestia version
Light Node 실행 (Mainnet)
celestia light init --p2p.network celestia
celestia light start --p2p.network celestia \
--core.ip consensus-full.celestia.org \
--rpc.addr 0.0.0.0
celestia-app (Consensus/Validator)
git clone https://github.com/celestiaorg/celestia-app.git
cd celestia-app
git checkout v3.3.2
make install
celestia-appd version
초기화
MONIKER="my-celestia-node"
celestia-appd init "$MONIKER" --chain-id celestia
# genesis 다운로드
curl -sSL https://raw.githubusercontent.com/celestiaorg/networks/master/celestia/genesis.json \
> ~/.celestia-app/config/genesis.json
# 시드/피어
SEEDS="$(curl -sSL https://raw.githubusercontent.com/celestiaorg/networks/master/celestia/seeds.txt | tr '\n' ',' | sed 's/,$//')"
sed -i.bak "s|^seeds *=.*|seeds = \"$SEEDS\"|" ~/.celestia-app/config/config.toml
State Sync (권장)
# ~/.celestia-app/config/config.toml
[statesync]
enable = true
rpc_servers = "https://celestia-rpc.polkachu.com:443,https://rpc-celestia.mzonder.com:443"
trust_height = 2100000
trust_hash = "<위 높이의 해시>"
trust_period = "168h0m0s"
trust height/hash는 Polkachu state sync에서 최신값 확인.
실행
celestia-appd start
systemd 서비스 (Light Node 예시)
# /etc/systemd/system/celestia-light.service
[Unit]
Description=Celestia Light Node
After=network-online.target
[Service]
User=celestia
ExecStart=/usr/local/bin/celestia light start \
--p2p.network celestia \
--core.ip consensus-full.celestia.org \
--rpc.addr 0.0.0.0
Restart=on-failure
LimitNOFILE=65535
[Install]
WantedBy=multi-user.target
상태 조회
# celestia-app (Tendermint RPC)
curl -s http://localhost:26657/status | jq '.result.sync_info'
# celestia-node (Light/Bridge)
AUTH=$(celestia light auth admin --p2p.network celestia)
curl -s -X POST http://localhost:26658 \
-H "Authorization: Bearer $AUTH" \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"header.LocalHead","params":[]}' | jq