SASAステークプールのスペックと監視体制について
こんにちは。ながまるです。
僕は現在、CanadaADAのステークプールオペレーターをしています。
ティッカー : SASA プール名 : SASA Stake Pool
まだ小さいプールですがヨロイウォレットやダイダロスウォレットから委任ボタンをポチっと押してもらえると嬉しいです!!
今回はSASAステークプールのスペックと監視体制について紹介します。最後までお楽しみください。
1.サーバーのスペック
サーバーのスペックと言われても分からない方のために軽く説明します。
サーバーのスペックで大切なのは主に「メモリ、コア数、ストレージ」の三つです。
メモリ : 指定した場所を覚えその場所に対し読み書きできる記憶装置です。脳で言う短期記憶のようなものです。
ストレージ : データを保管しておく場所です。脳で言う長期記憶のようなものです。
コア : コンピュータの制御、演算、情報転送などを行う中枢部分です。
基準として、BTBFさんが作ってくださった「カルダノステークプール構築手順」最低限のサーバーのスペックを簡単に挙げます。
・メモリ 8GB以上
・ストレージ 24GB以上
・コア数 2つ以上
https://dev.xstakepool.com/guide-how-to-build-a-haskell-stakepool-node
これを踏まえて、SASAステークプールは
・メモリ 16GB
・ストレージ 100GB
・コア数 4つ
にしました。ブロックプロデューサーノード、リレーノード共にこのスペックです。
今後、委任が集まり安定してサーバー台が払えるようになったら、リレーノードをもう1台増設し、スペックも上げようと思います。
「カルダノステークプール構築手順」に書かれている通り、推奨されているスペックは現在僕が利用しているものよりもう少し上のものなので、早く追い付けるように頑張ります!!(推奨スペック: メモリ16GB ストレージ256GB コア数 4つ)
2.日頃の監視
日頃はグラファナ(grafana)というツールを用いて監視を行っています。「Japan SPO's Guild」に参加している方なら、ほとんどはこのツールを使用していると思います。
グラファナでは主に「kesキーの残り日数」「メモリ使用率」を監視しています。
kesキーとは93日ごとに更新する必要のあるファイルのことを言います。
((なんで93日なの?!と思った方に専門的な話を共有しておくと、「1KES=129600秒=36時間、有効なKES期間は62KES」で表されます。よって 36×62÷24=93となります。))
メモリ使用率とは上でも紹介した、メモリの使用率のことを表しています。現在は、ノードメモリ使用率は2~3GB、システムメモリ使用率は7~8GBで収まっています。
「システムとノードの違いは何?」と思った方のために図を使って説明します。イメージはシステムの中にノードがあるという感じです。よってシステムメモリ使用率はノードを含めたGBを表示しています。
↑「ノード⊂システム」のようなイメージです。↑
次に、こちらのツイートを見てください。
こちらのツイートで述べた通り、システムを再起動したり、停止したりするとツイートの画像ようにノードメモリ使用率、システムメモリ使用率ともに記録が途切れます。
途切れて記録がまた復活するなら良いですが、何らかの問題があってノードが停止したままだったり、サーバの停電などでノードが動いていなかったりすると、記録が追えなくなります。((下の画像のような感じです))
もし、ブロック生成の際にノードが停止したままだったり、動いてなかったりするとブロック生成のチャンスを逃す恐れがあります。
一度、この画像ようにノードが落ちてしまったことがあります。その日を境に、毎朝グラファナでノードを監視する習慣がつきました…笑(ノードが落ちた原因はしっかり対処したのでご安心下さい。)
普段このグラファナの画面はSPOの方しか見れません。しかし、ノードが動いていることを皆様に共有したいので、ほぼ毎日ノードが動いているかどうかのツイートをしています。委任してくれる方もその方が安心ですよね。
3.スマホでの監視
続いてはスマホでの監視です。グラファナでの監視は基本スマホを使用しています。外出時にもチェックできるのが個人的には便利だと感じています。
また、スマホにはターミナルを入れています。
スマホのターミナルもPCと同じで、ブロックプロデューサーノード、リレーノードともに接続可能です。
さらに、ブロックプロデューサーノードが落ちた時にLINEで通知が来るように設定しました。
これで、外出時やパソコンが使えなくなった場合でも素早く対処することができます。
これらを踏まえると、SASAステークプールはノードが落ちても、寝ている時以外はほぼ確実に対処できます。
このような日頃のSPOの業務が、スロットリーダーで割り当てられたブロックをきちんと生成できるかどうかに影響してきます。そして、その数がブロックを生成できた数に影響してきます。
スロットリーダーで割り当てられた数より少ない場合は、SPOの何かしらのミスで生成できていない可能性があります。
SASAステークプールでは、現時点でのエポックで最後のブロック生成が終わった時に
・「スロットリーダーが何個あったか?」
・「ミスは何個したか?」
・「もしミスをしてしまった場合その原因はなにか?」
・「ブロックを何個生成できたか?」
などについてTwitterでお知らせする予定です。
より透明性があり、信頼できるプール運用をしたいのでこの辺も開示しようと思っています。
お知らせを受け取りたい方はTwitterのフォローをよろしくお願いします。
https://twitter.com/nagamaru_panda?s=09
3.最後に
いかがでしたか?以上、SASAステークプールのスペックと監視体制についてでした。
委任される方も「どのようなプールに委任しているのか」ということを知っておいた方が安心できるのでは?と思い、今回この記事を書きました!!
Cardanoを一緒に応援したい!という方はぜひTwitterのフォローをしていただけると嬉しいです。
https://twitter.com/nagamaru_panda?s=06
SASAステークプールはまだまだ小さいプールです。小さいプールへの委任が分散化に繋がり、カルダノの大きな成長に繋がります。私たちと一緒にCardanoを手助けするサポーターになりませんか?
まだまだ小さいプールですが、精一杯頑張るのでSASAステークプールへの委託をご検討していただけると嬉しいです。
ティッカー : SASA プール名 : SASA Stake Pool