蓋索林 Gasolin

人們總是高估一年可以完成的事,卻低估十年能完成的事

0%

沒時間了,快上車!遷移到 Ethereum 2.0 測試網 (Modalla)

在前篇發布後至今一個月,以太坊官方的 Modalla 測試網已經啟動,ETH 2 的驗證者啟動頁面(launchpad)也首次就緒。雖然尚未有新版的 EthereumOnARM ROM,但做完以下設定後,我也順利遷移到了新測試網。

Imgur

0. 準備

照著前一篇 的教學安裝好樹莓派,按照設定驗證者 (Validator) 資訊 一節做完後,跟著本篇做 Modalla 測試網的設定。

接著打開 https://medalla.launchpad.ethereum.org 網頁,我們將跟著一步步完成驗證者的設定 (使用 prysm 客戶端)。

Imgur

1. 存入 32 (test) ETH

Imgur

https://faucet.goerli.mudit.blog/ 取得 > 32 goerli (測試網) ETH

Imgur

請及早準備好 32 ETH,從存入到完成遷移 ETH 2 網路,預計需要花8小時以上。

2. 設定樹莓派

ssh 登入樹莓派,確認相關的軟體都升級到最新版本

$ sudo apt update && sudo apt upgrade

3. 產生驗證者所需檔案

下載並執行 eth2.0-deposit-cli 命令,以產生驗證者所需檔案3

cd ~
sudo apt-get install python3-pip
git clone https://github.com/ethereum/eth2.0-deposit-cli.git
cd eth2.0-deposit-cli
sudo ./deposit.sh install
./deposit.sh --num_validators 1 --chain medalla

將產生的檔案(/eth2.0-deposit-cli/validator_keys)從樹莓派複製到本機4

scp [email protected]://home/ethereum/eth2.0-deposit-cli/validator_keys/deposit_data-1596511852.json deposit_data-1596511852.json

將檔案上傳到 Launchpad https://medalla.launchpad.ethereum.org/upload-validator

Imgur

4. 設定 validator

在樹莓派上,將產生的驗證者檔案匯入 prysm

$ /usr/bin/validator accounts-v2 import --keys-dir=$HOME//eth2.0-deposit-cli/validator_keys
Enter a wallet directory (default: /home/ethereum/.eth2validators/prysm-wallet-v2):

Directory where passwords will be stored (default: /home/ethereum/.eth2validators/prysm-wallet-v2-passwords):

[2020-08-04 12:14:33] INFO accounts-v2: Successfully created new wallet wallet-path=/home/ethereum/.eth2validators/prysm-wallet-v2
New wallet password:
Confirm password:
Enter the password for your imported accounts:
Importing accounts, this may take a while...
Importing accounts... 100% [===========================================================================================================================================] [36s:0s]
Successfully imported 1 accounts, view all of them by running accounts-v2 list

可以使用 $ /usr/bin/validator accounts-v2 list 命令查看是否成功匯入。

5. 啟動 beacon 服務

如果你和我一樣有跑之前的測試網,需要先清空之前測試網的資料庫紀錄,才能順利啟動 beacon 服務。

/usr/bin/beacon-chain --force-clear-db

接著啟動 beacon 服務 (用的是 EthereumOnARM ROM 提供的 service)

sudo systemctl start prysm-beacon

運行順暢後,再啟動 validator 服務。

啟動 validator 服務

先建立 password.txt 檔案,並將密碼寫入其中

touch ~/.eth2validators/prysm-wallet-v2/password.txt
vi ~/.eth2validators/prysm-wallet-v2/password.txt

編輯 /etc/ethereum/prysm-validator.conf 檔案,將內容改為

ARGS="--wallet-dir /home/ethereum/.eth2validators/prysm-wallet-v2 --wallet-password-file /home/ethereum/.eth2validators/prysm-wallet-v2/password.txt"
sudo systemctl start prysm-validator

要查看各服務的狀態,可以用以下命令

sudo systemctl status prysm-beacon
sudo systemctl status prysm-validator
sudo systemctl status geth.service

參考資料