なるべくお金をかけずにMinecraftサーバ運営とDDoS対策をするお話(2020年1月現在)
新年あけましておめでとうございます。unchamaです。
Twitterで↓のようなことを呟きつつ、表題の件について最近考えていましたので、自分の頭の整理がてら書いてみようと思いました。
整地鯖の運営を始めて3年と約半年、皆さんから頂いた寄付金が初めて底を尽きました。そもそも、これだけの規模のサーバーをこれまで費用負担無しで運営出来たのは皆さんのお陰であり、感謝しかありません。幸い給与のある社会人になれましたので、当分はポケットマネーで存続できそう。 #整地鯖
— unchama うんちゃま (@tsukkkkkun) 2020年1月18日
マイクラサーバ運営で絶対にお金がかかるところはインフラ基盤
マイクラサーバ始める上で、必要なものってなんでしょう?
Minecraftが動くPC、Minecraftのライセンス、ゲームデザインの知識、プログラミング知識、インフラにまつわる知識、ホームページを作る知識、治安マネジメントの知識…必須なもの・必須ではないものも含めて、いろいろあるかと思いますが、絶対に避けて通れない壁があります。それがインフラ基盤への投資です。
インフラ基盤のお金のかかり方は悪い言い方をすると陰湿です。なぜなら一般的な社会人にとっても決して安いものではなく、かつ継続的な投資が必要で、かつ外部的要因によって『必要に応じて』ではなく『必要に迫られて』投資額が変動し、かつ作り方次第で無駄に金を浪費させることが可能であるからです。
この陰湿なお金のかかり方はやがて『経済的にサーバーを維持できない』または『やることのわりにお金がかかりすぎる』という理由を作り出し、サーバ運営をやめてしまった方をたくさん生み出してきたような気がします。
これは非常にもったいない!!!
この話は、私がOwnerとして運営している整地鯖も例外ではありません。どれだけminecraftに対するモチベーションが高くても、現実的に継続可能なお金のかかり方でないと最終的には自分の生活を苦しめることになります。これでは本末転倒です。
そんなわけで、私が3年間費用面の試行錯誤をしてきて思ったことを書いていこうかなと思います。
整地鯖の現在の月額維持費用
現在の整地鯖の月額維持費用はこんな感じです。
- さくらのVPS(1台):990円
- さくらのクラウド(GSLB):550円
- NURO光(固定回線代):5300円
- Vultr(VPS2台):1200円
- GCP(VPS1台):0円 ※理由は後述
- 自宅サーバの電気代:約4000円
- 合計費用:12040円 / 月
以下の記事も参考になるかと。(整地鯖公式ブログにお金の話を書いたときの記事)
クラウドリソースはまだ高い
整地鯖では、だいたい以下の構成をオンプレミス(要は自宅サーバ)で抱えています。
- CPU:12コア 24スレッド
- MEM:128GB
- ストレージ:SSD1.5TB,HDD5TB
3年でメモリやCPUあたりは増設やアップデートをしていますので、総額費用としては40万円前後です。あくまで総額であり、初期構築時点では10万かかっていなかったと思います。
これをクラウドで継続的に持とうとおもうと結構しんどい金額がかかります。
たとえば、そこそこ安いvultrでも16 vCPU,64GB MEM,1280GB SSD,10TB通信/monthlyで月320ドルかかります。年間約40万円程ですね。
クラウドが一概に悪いわけではありません。インフラ側の障害があった場合は基本的に全て事業者が対応してくれますし、何よりいつ家が燃えるかわからないという恐怖()に怯える必要がありません。そこまで含めての料金ってことですね。
ただし、Minecraftサーバーはぶっちゃけ『リソース食い虫』です。
(生活鯖であれば特に)プレイヤーあたりに必要とするメモリ容量が多く、マップデータの保存にそこそこディスク容量も必要とします。また、通信量もピーク時100人規模ですと、チューニング後でも片道2TB/月程度は必要とします。
チューニング次第で必要スペック上限を下げることはある程度可能ですが、世間一般に漂っている『Minecraftサーバはリソースがかかる』と言う認識は大体合っています。ので、minecraftサーバを建てるなら、いろいろと諦めて物理で持つ…と言う結論に私は達しています。
DDoS対策の都合上、若干必要なクラウドリソースの持ち方を考える
Minecraftサーバ運営やめたくなるランキング(個人主観調べ)第2位。それはDDoSからサーバを守ることです。去年に書いた屍戦法の記事に書いていますが、対策方法の都合上、自宅サーバでも若干のクラウドリソースを持つ必要があります。
このクラウドリソースの持ち方なのですが、最近の私の主流は『固定課金の安価なクラウド』+『従量課金のDDoS対策ちゃんとやってるクラウド』の併せ持ちです。
実際に整地鯖は以下のような構成でもっています。
攻撃を受けた際はVultr側が落ちるので、自動的にGCPに切り替わりサービス継続する仕組みを構築しています。
GCPの基盤はあのGoogle様が独自に持っている基盤なのでサイツヨなのですが、費用がやばいです。ホットスタンバイで動かしているだけでも良い感じにお金が飛んでいきます。
そこで、GCPをコールドスタンバイ方式に変えてみました。これはつまりどういうことかというと、Vultrがダウンした時だけGCP側のインスタンスを自動で起動させ、サービスを提供させるというものです。
GCPは2020年1月現在ですと、停止されているインスタンスに対して課金を要求してこないので、攻撃を全く受けない月であればDDoS対策としてかかる費用は、vultrとさくらのGSLB(1200円+550円)以外不要となり、良い感じになりました。
この辺りの仕組みを実装するには、『停止状態に対して課金されるかどうか』『スクリプトなどからインスタンスの停止起動を行えるAPIやコマンドラインが提供されているか』あたりが大事になって来るかと思います。
個人で従量課金クラウドは高すぎて使えないわ〜とずっと思っていたんですが、結局どうやって上手に使うかなんだなとしみじみ思ってしまいました。
えっ。わたしのサーバ、高すぎ・・・?
以上、Minecraftのインフラのコストのお話でしたが、いかがでしたでしょうか。
『こうすればもっと安くなるわよ!』という鬼嫁もびっくりコストカッターな方がいらっしゃいましたら是非教えてください。喜んで斬られに行きます。今現在世の中にある他のサービス、または将来リリースされるサービスを使えば、さらにコストカットができるかもしれません。クラウド競争激化?で単純に今より費用が下がるかもしれないし。その辺りの動向は今後も追って行きたいですね。
これからサーバ運営を考えている方、または現在サーバ運営されている方は、是非無理のない投資計画を立ててみてください。そうすれば長続きするはずです。くれぐれも、将来の自分の首を絞めないように…お財布ご自愛くださいませ。