ステークプール構築でつまづいたこと
こんにちは。奇抜倶楽部管理人のYOWZAです。
今回は、私がカルダノステークプールを構築する際に、疑問だった点や、つまずいた点を記します。
私はかねてから暗号通貨には興味があり、いくつかの草コインでマイニングやステーキングをした経験があります。マイニングといえば、CPUマイニングやGPUマイニングが流行りました。
CPUとGPUの違いを簡単に説明すると、CPUは司令官で、GPUは兵隊のことでしょうか。CPUはパソコンやスマートフォンに搭載される半導体チップで、いわば頭脳に相当します。GPUは、3Dモデリングの描写といった定型的な計算処理をすることに優れています。ただ、GPUは頭脳にはなれません。
したがって、CPUで可能な処理であっても、GPUが得意とする処理は、GPUにやらせる。といった、司令官と兵隊みたいな関係になります。
マイニングの話に戻りまして、CPUマイニングであれば、githubからCPUマイニング用のソースコードを拾ってきて、コンピュータが実行可能な形式に変換(コンパイル)して、自分のアドレスを埋め込んで起動するだけでマイニングができます。
GPUマイニングは、リアルタイム画像処理に特化した演算装置であるGPU(Graphics Processing Unit)を使ってマイニングを行います。GPUマイニングが流行りだした当時は、GPUが搭載されているパソコン用のグラフィックボードを複数枚使ったマイニングマシーンなるものを販売している会社もありました。今ではさらに加熱して、ASICマシーンというマイニング専用の箱型のシステムまで登場しています。私自身は、この過熱ぶりにはついていけず、GPUマイニングは未経験です。
マスターノードでブロック生成も一時期流行りましたが、1台のサーバーにマスターノードを起動すれば、報酬としてコインが貰えます。
カルダノ以外のステーキングについては似たようなもので、自分で購入したコインを、自分が構築した一台のサーバーに委任をして、”ステーキングしますよ!”宣言をすることで報酬が受け取れます。
マイニングプールも、1台のサーバーに必要なソースを持ってきてコンパイルや適切な場所にファイルを置いて起動かのうです。自力ではブロックを生成できないマイナーたちが協力を求めてマイニングプールに集まり、複数のマイナーが協力しマイニングをすることで報酬を受け取ることができます。
カルダノのステークプールは、インターネット上で常時稼働させておくサーバーが最低でも2台必要になります。ブロックチェーンのブロック生成を担う”ブロックプロデューサーノード”と他のステークプールに配備されたサーバーと通信をおこなう”リレーノード”の2台です。
エイダコイン以外のコインで報酬を受けるには、大概サーバー1台で済むのですが、カルダノでは異なる役割のサーバーがそれぞれ1台必要で、最低でも2台のサーバーが必要になります。
わたしは初期のインストールでは、さほどつまずかなかったのですが、本番運用するに当たりコストパフォーマンスの良いサーバーへの引っ越しを行い、その際につまずきました。
この2つのノードですが、動いているソフトウェアは一緒でして、
- 起動するときに引数としてキーを指定するorしない
- リレーノードは、自分がリレーノードですよ。と宣言する
の違いぐらいしかありません。
なので、インストールしたソフトウェアは一緒で、起動前後の作業で役割が変わるので、リレーノードで立ち上げたサーバーを後からブロックプロデューサーサーバーに変更したりもできるのですが、それで混乱しました。
何が言いたいかといいますと、ステークプールを運営していくに当たり、サーバー設置先のSLAの変更(利用可能なネットワーク帯域の変更)やサーバートラブルなどで、引っ越しをする機会があるかもしれません。そういった場合には今回のようなサーバー引っ越しの際につまずいた経験は、のちのち役に立つのかなと思いました。(次回の作業でトラブらないように、手順として書き起こしてあります。)
ほかにもネットワークの設定であったり、障害時のアラート送信の設定など、いくつかつまいずいた点があるので、今後紹介していきたいと思います。
それでは今回は、このへんで失礼します。