はじめに
躊躇していたのですが Harvester設定方法を解説します。固定IPアドレスは設定するし、config.yamlは編集するしで、あまり初心者向けではありません。この点、留意して読んでください。
当初、菜園の柱環境ではPlotルックアップに5秒以上かかるWARNINGとネットワーク・ディスコネクトが発生しましたが、下記のように解決しています。
- ルックアップ5秒以上WARNING:Harvester PCが貧弱すぎたのが原因で、Note PC:Intel Celeron CPU 3855U(2core) 1.6GHz + DDR3 16GBから、Desktop PC:Intel Core i7 3770 @ 3.40GHz + DDR3 32GBに変更する事で、同じUSB HDDでもWARNINGが出なくなりました。
- ネットワークディスコネクト:デバイスマネージャーからイーサネットアダプタの省電力機能をoffにし、リモートデスクトップ接続(かなりのネットワーク帯域をとるようです)禁止にすることで出なくなりました。
複数PCでFarmingするには
現在、同一ネットワーク内に複数Full-node同期のFarming PCがあると、UPnP問題やWallet同期問題などが生じるようです。そのためHavesterを使う必要があります。Harvester構成を図示すると下記のようになります。1台のFull-node同期PCに複数のHarvester専用PCをローカルネットワーク接続します。Harvester PCは比較的低性能なPCで良いと言われていますが、Note PC:Intel Celeron CPU 3855U(2core)+DDR 16GBでは性能が低すぎてルックアップが5秒以内に間に合わなくなるようです。気をつけましょう。
ネットワーク環境の確認
まずネットワーク環境の確認が必要です。
- ローカルネットワークのアドレスは? たいてい 192.168.x.x でしょう。
- ルーターのDHCPアドレス範囲は?
- 使用するPCの固定アドレスは何にしますか?
- 可能な限り wifi ではなく有線イーサネットを使用した方がいいでしょう
今回の説明において下記ネットワーク環境を仮定します。Full-node PC, Harvester PCともWindows版Chia-1.2.5がインストールされているものとします。
固定IPアドレス設定
下記を参照して、Full-node PCに192.168.1.20を、Harvester PCに192.168.1.30を設定します。
設定できたら共有フォルダを作って、テスト接続としてアクセスしてみましょう。
Full-node, Havester の認証同期
Full-node PCの認証caファイルを、共有フォルダをつかってHarvester PCにおくり、認証を同期させます。
1 2 |
> .\chia stop -d all > .\chia init -c C:\tmp\ca |
外付けUSB HDDの移動
Full-node PCにある6TB HDD(55plot分)をHarvester PCに移動します。外付けUSB HDDなので簡単です。
Full-node PCの耕作地が55 plot減っているのを確認しておいてください。
config.yaml 編集
インストールしてすぐ、はじめてChiaを起動する場合、Config.yamlに1行おきに空行が入っている場合があります。その場合は、Chia GUIアプリを立ち上げて一度24語のパスワードいれるところまで実行してください。その後終了すると通常のConfig.yamlになっています。
Harvester PCのconfig.yamlにあるharvester:パート探して下記のように編集します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
harvester: chia_ssl_ca: crt: config/ssl/ca/chia_ca.crt key: config/ssl/ca/chia_ca.key farmer_peer: host: 192.168.1.20 port: 8447 logging: log_filename: log/debug_harvester.log log_level: INFO log_maxfilesrotation: 7 log_stdout: false network_overrides: *id002 num_threads: 30 plot_directories: - E:\nft-bc-m-CFD |
ログファイル設定は重要です。Harvester動作はログで確認しましょう。
「C:\Users\<ユーザー名>\AppData\local\chia-blockchain\app-1.2.5\resources\app.asar.unpacked\daemon」に cd で移動して
1 |
> chia start harvester |
harvester を再起動する場合には
1 |
> chia start -r harvester |
です。これで Harvester が動作しているはずです。
plot directoriesをもっと記述する場合には下記のように並べてください。
1 2 3 4 |
plot_directories: - E:\nft-bc-m-CFD - F:\nft-bc-m-CFD - G:\nft-bc-m-CFD |
Harvester動作確認
まずFull-node PCの「農家」の「詳細設定を表示」から「あなたの収穫機ネットワーク」を確認しましょう。今回作成したHarvester固定IPアドレス 192.168.1.30 が表示されていれば成功です。
次にHarvester側のログを見てみましょう。ログは「C:\Users\<ユーザー名>\.chia\mainnet\log」にある debug_harvester.log(config.yamlで設定したファイル名)です。VScode見るのがおすすめです。Linuxの「tail -f」と同じようにリアルタイムでログが進んでいくのを見れます。さらに見やすいように色もつけてくれて、横すロールバーで見たい横位置も調整することができます。さらにVScode拡張機能でauto scrollをいれれば、まさに「tail -f」代替として完璧です。
おまけとして、Windows PowerShellで「tail -f」と同じように動作するコマンドも紹介しておきます。覚えきれないのであんまりやらないですが、VScodeがないとき、役に立つかもしれません。
1 |
PS> PowerShell -command Get-Content -Path C:\tmp\debug_harvester.log -Wait -Encoding UTF8 -Tail 20 |
あれ?エラーが・・・
残念ながら菜園の柱で用意した環境ではplotファイルのルックアップに5秒以上かかるWARNINGとネットワークが頻繁に切断される現象がありました。ネットワーク切断の方はデバイスマネージャーからイーサネットコントローラーの電源管理タブにある低消費電力機能をoffにすることで少なくなりました。しかしまだネット切断あります。5秒以上かかるWARNINGも1時間に1度くらいのペースででます。
Harvester PCへのリモートデスクトップ接続をなくすと、ネットワーク切断はなくなりました。
debug_harvester.logは\tmpなど共有フォルダ設定したところにおくと、他のPCからログを見やすいです。リモートデスクトップの必要がなくなります。
ルックアップに5秒以上かかるWARNINGは、Harvester PCをDesktop PC:Intel Core i7 3770 @ 3.40GHz + DDR3 32GB に変更する事で、同じUSB HDDでもWARNINGが出なくなりました。
結局、Core i5 6500T(Skylake)のHarvester用ミニPCを購入することで全面解決しました。