2015年9月11日金曜日

Minecraftサーバを模索するのも一段落ということで、一応書いておくのでした。

TEDxHimiの作業をしようぜというときに、wk2tさんが長男にマインクラフトをやらせたのがそもそもの始まり。なんだかんだでサーバを立てることになったわけですが、とりあえずなんとなくレシピができたので、構築の手順だけアップしておきます。
わからない呪文があっても、たいしたことしてないので、キーワードを拾って落ち着いてググれば大丈夫。
「スクリプトを書き」とあっても、コマンド書いて、.shというファイル名にして保存し、実行権限付けているものばかりです。パーリナーイ☆
  1. CentOSをミニマムでインストール。とりあえず、rootしか設定しない。
  2. ネットワークを設定しなおす。DHCP→STATIC
  3. SSHとMinecraft用のポートを解放。
  4. Javaをインストール
  5. /etc/fstabを編集して、homeディレクトリをRAMディスク上に作る様設定。とりあえず1G確保。
  6. minecraftユーザーを作成。そのまま、home下にできたディレクトリにMinecraftサーバを展開。wget面倒だったので、別のPCに落としたものをscpしました。
  7. Minecraftサーバ自体は、メモリを2G利用することにして、スタート用のシェルスクリプトを書く。
  8. /varディレクトリに、minecraftディレクトリを作成。rsyncで/home/minecraft下をコピーするシェルスクリプトを書き、cronで毎日午前3時に自動実行。
  9. システムを落とす際にも、バックアップのスクリプトが動く様に設定。
  10. システム起動時には/var/minecraft下の内容を/home/minecraft下にrsyncでコピーする様、スクリプトを書き、設定。
  11. Minecraft自体が簡単にぐずって落ちない様に、server.propertiesのmax-tick-timeの値を-1に変更。
  12. なんかもう、ダメ押しで、rootさんがnice -20でMinecraftサーバを起動することにした。もうちょっと性能の良いPCがどこかから転がってくるまで、多分このまま。
こんな感じで、Pen4の3.0Ghz、メモリ4Gのマシンだと、ゾンビトラップでゾンビ200体を生成し、生成中の稼働率をtopで見ていてもCPUは106%、メモリも46%程度を利用するのみ。
二人ログインの状態で200体を一気に殺してもCPU稼働率は一瞬150%を超えるだけで、あとはおちつく。さすがに、CPUの稼働率が100%を超えていると、穴掘りは多少ラグる。
むしろ面倒なのは、2~3人で全力で未知の領域に走ったり、同時に穴を掘りまくったりではないかと見ているが、やたら負荷をかけるプレイさえしなければ、この環境で普通にプレイできる。
とはいえ、なんだかんだでCPUのパワーが凄く大切だよと、最初に聞いていたことが改めて浮き彫りになっただけの、なんだか普通の展開でした。
このマザボも10年選手なので、そうこうしている間に先日いただいてきたDellのC521に差し替えて64bitパワーはいかがなものかも試したいところ。多分、ラグはマシになるものと期待しています。

今後はといえば、今はこのサーバがルーター下にあるのだけれど、メモリが8G以上乗るPCがあれば、システムごとRAMディスクに放り込みつつ、ルーターとMincraftを稼働させて運用ってところまでが、今見えている遠足であります。もっと遠くはあるのかしら。