0G DA — это бесконечно масштабируемое решение 0G для обеспечения доступности данных, которое решает множество проблем

Как работает Da Client

Рекомендуемые характеристики для запуска DA Client:

  • RAM: 8 GB

  • CPU: 2 cores

  • Bandwidth: 100 MBps for Download / Upload

Также для запуска необходима работающая у вас нода Валидатора

Подготовка сервера:

sudo apt updateapt install curl iptables build-essential git wget jq make gcc nano tmux htop nvme-cli pkg-config libssl-dev libleveldb-dev libgmp3-dev tar clang bsdmainutils ncdu unzip llvm libudev-dev make protobuf-compiler -ysudo apt-get install git cargo clang cmake build-essential pkg-config openssl libssl-dev protobuf-compiler

Устанавливаем GO:

cd $HOME && \
ver="1.22.0" && \
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" && \
sudo rm -rf /usr/local/go && \
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" && \
rm "go$ver.linux-amd64.tar.gz" && \
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile && \
source ~/.bash_profile && \
go version

3. Устанавливаем git:

cd
git clone https://github.com/0glabs/0g-da-client.git

4. Build

cd 0g-da-client
make build

5. Устанавливаем программу Screen:

sudo apt-get install screenscreen -S DAClient

6. Запускаем клиент

Меняем значения — chain.rpc http://:8545 \ где “your validator ip 0.0.0.0:8545, если нода установлена непосредственно на этом же сервере

-chain.private-key <вставляем ваш приватный ключ валидатора>

cd disperser
./bin/combined \
    --chain.rpc http://<your validator IP>:8545 \
    --chain.private-key <validator Private-key> \
    --chain.receipt-wait-rounds 180 \
    --chain.receipt-wait-interval 1s \
    --chain.gas-limit 2000000 \
    --combined-server.use-memory-db \
    --combined-server.storage.kv-db-path ./root/0g-storage-kv/run \
    --combined-server.storage.time-to-expire 300 \
    --disperser-server.grpc-port 51001 \
    --batcher.da-entrance-contract 0xDFC8B84e3C98e8b550c7FEF00BCB2d8742d80a69 \
    --batcher.da-signers-contract 0x0000000000000000000000000000000000001000 \
    --batcher.finalizer-interval 20s \
    --batcher.confirmer-num 3 \
    --batcher.max-num-retries-for-sign 3 \
    --batcher.finalized-block-count 50 \
    --batcher.batch-size-limit 500 \
    --batcher.encoding-interval 3s \
    --batcher.encoding-request-queue-size 1 \
    --batcher.pull-interval 10s \
    --batcher.signing-interval 3s \
    --batcher.signed-pull-interval 20s \
    --encoder-socket 0.0.0.0:34000 \
    --encoding-timeout 600s \
    --signing-timeout 600s \
    --chain-read-timeout 12s \
    --chain-write-timeout 13s \
    --combined-server.log.level-file trace \
    --combined-server.log.level-std  trace \

Просмотр логов:

screen -r DAClient

Устанавливаем DA NODE

Для установки данного узла необходима работающая нода валидатора и более чем 10 токенов делегированной на ней.

Рекомендуемые характеристики:

CPU8+ cores

RAM16+

GBStorage 1TB NVME SSD

Bandwidth100 MBps for Download / Upload

1 Обновляем библиотеки:

sudo apt update && sudo apt upgrade -y
sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc unzip -y
sudo apt install libssl-dev
sudo apt install pkg-config

2 Устанавливаем GO:

cd $HOME && \
ver="1.22.0" && \
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz" && \
sudo rm -rf /usr/local/go && \
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz" && \
rm "go$ver.linux-amd64.tar.gz" && \
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> ~/.bash_profile && \
source ~/.bash_profile && \
go version

3 Клонируем репозиторий:

git clone https://github.com/0glabs/0g-da-node.git

4 Build:

cd && cd 0g-da-nodecargo build --release

5 Загружаем amt:

cd dev_support./download_params.shsudo cp -R /root/0g-da-node/dev_support/params /root/0g-da-node/target/release

6 Генерируем ключ BLS:

и сохраняем его

cd

cd 0g-da-nodecargo run --bin key-gen

7 Редактируем Config:

mv /root/0g-da-node/config_example.toml /root/0g-da-node/config.toml
sudo nano /root/0g-da-node/config.toml

В открывшемся окне меняем значения-

grpc_listen_address = “0.0.0.0:34000” eth_rpc_endpoint = “http://Validator rpc ip:8545” socket_address = “your node ip:34000” da_entrance_address = “0xDFC8B84e3C98e8b550c7FEF00BCB2d8742d80a69” start_block_number = 802 signer_bls_private_key = “Bls key gen paste” signer_eth_private_key = “validator eth private key”

8 Создаем сервисный файл:

sudo tee /etc/systemd/system/da.service > /dev/null <<EOF
[Unit]
Description=DA Node
After=network.target

[Service]
User=root
WorkingDirectory=$HOME/0g-da-node/target/release
ExecStart=$HOME/0g-da-node/target/release/server --config $HOME/0g-da-node/config.toml
Restart=on-failure
RestartSec=10
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Запускаем ноду:

sudo systemctl daemon-reload && \
sudo systemctl enable da && \
sudo systemctl start da

Просмотр логов:

sudo journalctl -u da -f -o cat

Mirror文章信息

Mirror原文:查看原文

作者地址:0x4A395B0eFC9907A195c81564c10A985c7E9F6A15

内容类型:application/json

应用名称:MirrorXYZ

内容摘要:VCMSy6TqKgy0iW4c6WpMNQQKQ9r2KR9w9HM2gtLup6U

原始内容摘要:PfqeFDIbx09CPsIRNbKa1fEPuXGUz8NTgYxoOHGDum4

区块高度:1466896

发布时间:2024-07-17 11:56:38