WindowsまたはWSL2でのgo-quaiの実行は現在サポートされていません。
要件
Quai Networkノードを実行するには、以下の仕様が推奨されます:8コア以上の高速CPU
16GB以上のRAM
最低1TBの空き容量がある高速SSD
10+ MBit/秒のダウンロード速度のインターネット接続
依存関係のインストール
1
Go v1.23.0+
- Linux Snapインストール
- MacOSインストール
Snapはすべてのlinuxディストリビューションにデフォルトでインストールされているわけではありません
2
Git、Make、G++
- Linuxインストール
- MacOSインストール
git、make、g++を次のコマンドでインストールします:
ノードの設定
開始
メインネット(Colosseum)
メインネット(Colosseum)
メインネットテストネット(Orchard)
メインネットテストネット(Orchard)
Orchardテストネットにはgo-quaiの
orchard
ブランチを使用する必要があります。他のブランチやタグを使用すると、同期の問題やジェネシスの非互換性が発生します。ローカル開発者ネットワーク
ローカル開発者ネットワーク
上記のコインベース値はダミー値に設定されています。自分のアドレスに置き換えない場合、ブロック報酬を受け取ることができません。
node.slices
、node.quai-coinbases
、node.qi-coinbases
フラグの値を使用してノードが起動します。ログがターミナルに出力され始めるはずです。
停止
ノードの停止は、設定ファイルに変更を加えたときや、マシンをシャットダウンする前に行う必要があります。ノードインスタンスはCTRL+C
を使用して終了できます。
マイナーを実行している場合、
CTRL+C
が機能しない場合があります。ノードを停止する前にマイナープロセスを終了する必要があります。環境変数
Quaiノードを実行するために必要ないくつかの重要な変数があります。これらは開始コマンドの引数として渡されます。quai-coinbases
とqi-coinbases
:ブロック報酬とマイナーチップが支払われる各台帳のアドレス。miner-preference
:平均してQuaiまたはQiトークンで支払われるべきブロック報酬の割合。slices
:ノードが実行するネットワークのスライス。
この記事では扱わない、より高度なパラメータが引数として渡すことができます。
1
マイニングアドレスの設定
コインベースは、マイニングしようとするチェーンの自分のアドレスと共に、以下のように
start
コマンドに渡されます。Pelagus Walletを使用して、各シャードと台帳のアドレスを簡単に生成できます。ノードが実行している各シャードに対して固有のQuaiとQiアドレスを生成し、実行コマンドにコインベースフラグとして渡す必要があります。各台帳には固有のコインベースフラグがあります:quai-coinbases
:Quai台帳のコインベースqi-coinbases
:Qi台帳のコインベース
Qiマイニングアドレスは「0x00…」で始まります。これはQi支払いアドレスと混同しないでください。QiマイニングアドレスはPelagus Walletの設定で確認できます。
2
ブロック報酬の優先設定
Quaiプロトコルは、ブロック報酬とマイナーチップをQuaiまたはQiトークンのいずれかで支払うことができます。マイナーは、マイナーチップがどのトークンで支払われるかを決定する能力はありませんが、ブロック報酬の支払いトークンの優先設定をQuaiまたはQiに設定する能力があります。ブロック報酬トークンの優先設定は、
miner-preference
フラグを使用して設定できます。miner-preference
フラグは、QuaiまたはQiトークンで支払われるべきブロック報酬の割合を示す0から1の間の値に設定できるパーセンテージスケールです。いくつかの例:0
:100% Quai優先、すべてのブロック報酬がQuaiで支払われる0.25
:3/1 Quai優先0.5
:均等分割、平均してブロック報酬がQuaiとQiで均等に支払われる0.75
:3/1 Qi優先1
:100% Qi優先、すべてのブロック報酬がQiで支払われる
start
コマンドでminer-preference
フラグを0から1の間の値で以下のように渡します:3
報酬ロックアップ期間
Quaiプロトコルは、ブロックがマイニングされるとすぐにブロック報酬を支払いますが、ロックアップ期間の対象となります。
*基本成熟期間
- Quaiブロック報酬は、ロックアップ期間が経過した後にマイナーのコインベースに送信されます。
- Qiブロック報酬トークンは、マイナーのコインベースに送信され、残高として登録されますが、ロック解除されるまで「使用不可」と見なされます。
--node.coinbase-lockup
フラグを使用してマイナーが設定できます。プロトコルは、マイナーがブロック報酬をより長期間ロックアップするための追加のインセンティブを提供します。--node.coinbase-lockup
で利用可能な値と、対応する期間および報酬ブーストは次のとおりです:値 | 期間(ブロック) | 期間(日数) | 報酬ブースト |
---|---|---|---|
0* | 241,920 | 2週間 | +0% |
1 | 1,555,200 | 3ヶ月 | +3.5% |
2 | 3,110,400 | 6ヶ月 | +10% |
3 | 6,220,800 | 12ヶ月 | +25% |
start
コマンドで--node.coinbase-lockup
フラグを以下のように渡します:4
スライス
実行したいネットワークのスライスに応じて、実行コマンドで
node.slices
フラグを設定します。コードベースでは、スライスはリージョンとゾーンのインデックスで識別されます。リージョンとゾーンのインデックスは0インデックスで、0から2の範囲です。ColosseumメインネットとOrchardテストネットは
[0 0]
スライスのみをサポートしています。5
ネットワーク環境とジェネシスノンス
Quaiに接続するには、対象ネットワークの正しいジェネシスノンスが必要です。ノンスは、ノードがチェーンの最初の正規ブロックを正しく計算できるようにするパスワードとして機能します。起動時に
--node.genesis-nonce
フラグを使用してジェネシスノンスをノードに渡します。--node.environment
のオプション:"colosseum"
(メインネット)、"orchard"
(メインネットテストネット)、"garden"
(メインネットdevnet)、"local"
。環境 | 説明 | ジェネシスノンス |
---|---|---|
colosseum | メインネット | 23621466532946281564673705261963422 |
orchard | メインネットテストネット | 62242624366553750196964614682162313 |
local | ローカル開発 | N/A |
ログ出力の確認
ノードを開始すると、go-quaiのすべてのインスタンスがフォアグラウンドで実行され、ノードからのより具体的なログを保存するためにnodelogsという名前のディレクトリも作成されます。ノードからの出力は、nodelogsディレクトリ内のコンテキスト固有の.log
ファイルにパイプされます。特定の場所のログ出力を表示するには、次を使用します:
ノードが現在何をしているかによって、ログは上記とまったく同じように見えない場合があります。
同期の進行状況の確認
ノードが正しく開始された場合、ピアからチェーン状態の同期を開始します。同期の進行状況を確認する方法はいくつかあります。 コマンドラインから、次のコマンドを実行して、追加されたブロックのリストを出力できます。location-to-print-here.log
を出力したいログのファイル名に置き換えてください。
同期中にノードが一時的に追加を停止しても、停止しないでください。実行を続けさせ、1時間以上ブロックが追加されない場合のみサポートを求めてください。
ノードの更新
ノードまたはマネージャーが現在実行中の場合、ノードの更新プロセスを開始すると問題が発生する可能性があります。更新する前にすべてのプロセスを停止してください。
リセットとクリア
ノードをリセットしてデータベースをクリアすると、同期したすべての状態が削除されます。これは元に戻せないアクションであり、以下に記載されているコマンドは慎重に使用する必要があります。
- Linux
- MacOS
Linuxマシンの場合、
nodelogs
ディレクトリと、すべての同期状態を含むベースの~/.local/share/go-quai
ディレクトリを削除します。これを行うには、次のコマンドを実行します:バックアップ/スナップショットの作成
次の目的で独自のバックアップまたはスナップショットを作成できます:- 後で保存する
- 別のマシンに移動する
-
ノードをクリーンにシャットダウンします。
ctrl+c
を使用できます。 -
ピアDBを削除します。ジェネシスハッシュフォルダに保存されています。
- メインネット
- Orchard
-
より小さいストレージとより速い転送のためにデータベースを圧縮します。
- Linux
- MacOS
スナップショットからのダウンロードと同期
スナップショットから同期する一般的な理由:- 同期時間の短縮
- 新しいマシン/ドライブでのノードの再起動
スナップショットから同期する場合、スナップショットの内容を信頼していることに注意してください。ノードがネットワークを完全に検証するには、ジェネシスから同期する必要があります。
- メインネット
- Orchardテストネット
- Linux
- MacOS
スナップショットからデータベースを復元するには、次を使用します: