自宅マインクラフトサーバーを監視してみた_docswell

183 Views

September 30, 26

スライド概要

profile-image

アニメ、ラノベ、きららが好きです 競技プログラミング、電子工作、Web系のなにかに興味があります。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

(ダウンロード不可)

関連スライド

各ページのテキスト
1.

自宅マインクラフトサーバー を監視してみた

2.

前回までのあらずじ Raspberry Piを使用してマインクラフトサーバーを建てた docker compose(サーバー) minecraft playit agent © playit クライアント

3.

監視 • サーバーの稼働状況を確認し、正常に動いているか確認 • メトリクスやログを取得して状態を把握 • 障害が起こった時の原因を認識するのに必要

4.

監視 • サーバーの稼働状況を確認し、正常に動いているか確認 • メトリクスやログを取得して状態を把握 • 障害が起こった時の原因を認識するのに必要

5.

構成図 その1 docker compose(Raspberry Piサーバー) Grafana(ノートPC) minecraft playit agent mc backup mc router Loki promtail Victoriametrics mc monitor node exporter © playit クライアント

6.

コア機能

7.

itzg/minecraft-server • めっちゃ管理されているマイクラサーバのdockerイメージ • docker-compose.ymlの環境変数を設定するだけでいい感じに • メモリ上限 • 最大プレイヤー • ワールド難易度 docker-compose.yml

8.

playit • アクセスキーを取得してエージェントとトンネルを作成 仕組み クライアント © playit サーバー

9.

監視スタック

10.

Node Exporter • ハードのメトリクスを取得 • CPU使用率 • メモリ使用率など

11.

mc monitor • プレイヤー数やレスポンスを可視化するdocker image • マインクラフトサーバー用イメージと作者が同じ

12.

VictoriaMetrics • 時系列監視データベース • ここにメトリクス情報を保存しておき、 検索をかける

13.

Promtail • ログを集約してLokiへ送信するエージェント • 2026/3に開発終了なのであとで切り替え

14.

Loki • ログ保存、クエリできる

15.

Grafana • メトリクスやログを可視化するダッシュボード • データソースは選択可能 • OSSだけでなくCloudもあり

16.

GrafanaCloudを使う

17.

構成図 その1 docker compose(Raspberry Piサーバー) Grafana(ノートPC) minecraft playit agent mc backup mc router Loki promtail Victoriametrics mc monitor node exporter © playit クライアント

18.

構成図 その2 docker compose(Raspberry Piサーバー) GrafanaCloud minecraft playit agent mc backup mc router Alloy mc monitor node exporter © playit クライアント

19.

Alloy • メトリクス、ログ、トレース、プロ ファイルを取得できるよう一元的に 使用できる • GrafanaCloudへこれを使用して送 信

20.

GrafanaCloud • Grafanaのクラウドサービス • 無料枠 • 50GBまで使用可能 • データは14日まで保持 • 公式ページの日本語対応がしっかりしている

21.

Pyroscope • Alloyでプロファイルも取得できるので追加した • GrafanaCloudで確認

22.

VPNなしでスマホから家のPCを確認

23.

その他 • Clouflare R2でバックアップ先を確保 • 10GBまで無料

24.

今後やりたいこと • 監視サーバーとマインクラフトサーバーを分ける • 通知 • Discordのwebhookとかよさそう • VictoriaLogsの検討

25.

次回予告 (※書いてある内容はフィクションです)

26.

やめて!Dos攻撃で、計算リソースを焼き払われたら、仮想環境 でサーバーと繋がっているマインクラフトの資源まで燃え尽き ちゃう! お願い、死なないでRaspberry Pi!あんたが今ここで倒れたら、 ユーザとの可用率の約束はどうなっちゃうの? メモリはまだ 残ってる。ここを耐えれば、mc routerで制限できるんだから!

27.

やめて!Dos攻撃で、計算リソースを焼き払われたら、仮想環境 でサーバーと繋がっているマインクラフトの資源まで燃え尽き ちゃう! 次回 お願い、死なないでRaspberry Pi!あんたが今ここで倒れたら、 ユーザとの可用率の約束はどうなっちゃうの? メモリはまだ 残ってる。ここを耐えれば、mc routerで制限できるんだから!

28.

やめて!Dos攻撃で、計算リソースを焼き払われたら、仮想環境 でサーバーと繋がっているマインクラフトの資源まで燃え尽き ちゃう! 次回 自宅内サーバー死す お願い、死なないでRaspberry Pi!あんたが今ここで倒れたら、 ユーザとの可用率の約束はどうなっちゃうの? メモリはまだ 残ってる。ここを耐えれば、mc routerで制限できるんだから!

29.

やめて!Dos攻撃で、計算リソースを焼き払われたら、仮想環境 でサーバーと繋がっているマインクラフトの資源まで燃え尽き ちゃう! 次回 自宅内サーバー死す お願い、死なないでRaspberry Pi!あんたが今ここで倒れたら、 ユーザとの可用率の約束はどうなっちゃうの? メモリはまだ 残ってる。ここを耐えれば、mc routerで制限できるんだから! コールドスタンバイ!

30.

とするときの...

31.

OCI移植編(するかも...)

32.

• OCI • ネットワークルール • セキュリティ • バックアップ • IaC • ロギング • モニタリング • 可視化 • 通知 • 公開方法 • 運用保守 • 監視 • 荒らし対策 • ドキュメント整備 • 通知 つらそう

33.

実際にコールドスタンバイするなら • Playitggのキーにトンネルが紐づいている • トンネルのアドレスは短期間なら変化しないのでコンテナ起動 して終わり(?)

34.

まとめ • 自宅マインクラフトサーバーのメトリクス、ログ、プロファイ ルを一元的に取得して、クラウドに送ることにより遠隔地から 状態を確認できるようになった