Factorio Clusterio サーバー 構築完全ガイド
master & agent構成、NodeJS環境、領収電力表示機能まで詳しく解説
読了時間: 約15分
Clusterioとは
ClusterioはFactorioサーバーをクラスター化して管理するためのツールです。複数のサーバー間でのアイテム転送、リサーチ共有、チャット連携など、サーバー横断的な機能を提供します。
主な特徴
- 複数サーバーの統合管理
- サーバー間アイテム転送
- リサーチ進捗の同期
- グローバルチャット機能
- 統計情報の集約
重要な注意点
Clusterio 2.0はまだアルファ版ですが、旧バージョンのサポートは終了しています。新しいクラスターを構築する場合は、2.0アルファ版の使用を強く推奨します。
Master & Agent アーキテクチャ
Controller (Master)
クラスター全体を管理するマスターサーバー。Webインターフェースとコマンドラインから操作可能。
Host (Agent)
実際のFactorioサーバーを動作させるエージェント。複数のHostが1つのControllerに接続。
Ctl (Client)
コマンドライン管理ツール。リモートからクラスターを管理するためのクライアント。
通信フロー
NodeJS環境の構築
システム要件
ClusterioはNode.js LTS版(v18以上)で動作します。Ubuntu/Debianのパッケージ版は古いため、NodeSourceのPPAを使用してください。
Ubuntu/Debian環境
# NodeSourceのPPAを追加
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
# Node.jsのインストール
sudo apt-get install -y nodejs
# バージョン確認
node --version
npm --version
Windows環境
# 公式サイトからLTS版をダウンロード
# https://nodejs.org/
# PowerShellで確認
node --version
npm --version
# Chocolatey使用の場合
choco install nodejs
Clusterioインストール
# 新しいディレクトリを作成
mkdir clusterio
cd clusterio
# Clusterioインストーラーを実行
npm init "@clusterio"
# 管理者認証トークンを記録(重要)
# インストール完了時に表示されるトークンを必ず保存してください
インストール成功の確認
インストール完了後、管理者認証トークンが表示されます。このトークンはWebインターフェースへのログインに必要なので、必ず安全な場所に保存してください。
領収電力表示機能
Statistics Exporterプラグイン
Clusterioには統計情報を収集・表示するプラグインが標準で含まれています。電力消費量、生産量、リソース使用量などをリアルタイムで監視できます。
# Statistics Exporterプラグインを有効化
npx clusteriocontroller plugin add statistics_exporter
# Prometheusエンドポイントの設定
npx clusteriocontroller config set statistics_exporter.prometheus_port 8081
電力統計の取得
メトリクス | 説明 | 単位 |
---|---|---|
power_production | 発電量 | MW |
power_consumption | 消費電力 | MW |
power_satisfaction | 電力供給率 | % |
accumulator_charge | 蓄電池残量 | MJ |
リアルタイム監視設定
// config/statistics_exporter.json
{
"enabled": true,
"prometheus_port": 8081,
"collect_interval": 60,
"metrics": {
"power_production": true,
"power_consumption": true,
"power_satisfaction": true,
"accumulator_charge": true,
"circuit_network": true
}
}
監視ツールとの連携
PrometheusとGrafanaを組み合わせることで、美しいダッシュボードを作成できます。電力使用量のトレンドやアラート設定も可能です。
詳細設定と構成
Controller設定
# HTTPポートの変更
npx clusteriocontroller config set controller.http_port 8080
# 公開URLの設定
npx clusteriocontroller config set controller.public_url http://your-domain.com:8080/
# TLS設定(本番環境推奨)
npx clusteriocontroller config set controller.tls.enabled true
npx clusteriocontroller config set controller.tls.cert_path /path/to/cert.pem
npx clusteriocontroller config set controller.tls.key_path /path/to/key.pem
Host設定
# ControllerのURL設定
npx clusteriohost config set host.controller_url http://localhost:8080/
# 認証トークンの設定
npx clusteriohost config set host.controller_token your_host_token
# Factorioのパス設定
npx clusteriohost config set host.factorio_directory /path/to/factorio
プラグイン管理
標準プラグイン
- Global Chat
- Research Sync
- Statistics Exporter
- Player Auth
- Inventory Sync
コミュニティプラグイン
- Discord Bridge
- Server Select
- Subspace Storage
おすすめVPSサービス比較
XServer VPS
推奨プラン
- 4GBプラン: 月額1,700円~(36ヶ月契約)
- 8GBプラン: 月額3,201円~(36ヶ月契約)
- 16GBプラン: 月額6,401円~(36ヶ月契約)
特徴
- 高速NVMe SSD
- 充実した日本語サポート
- 自動バックアップ機能
- 99.99%の高稼働率
ConoHa VPS
推奨プラン
- 4GBプラン: 月額1,433円~(36ヶ月契約)
- 8GBプラン: 月額2,873円~(36ヶ月契約)
- 16GBプラン: 月額5,747円~(36ヶ月契約)
特徴
- 時間課金対応
- 柔軟なスケーリング
- 直感的な管理画面
- 高速SSD
KAGOYA CLOUD VPS
推奨プラン
- 4GBプラン: 月額1,617円~(年額プラン)
- 8GBプラン: 月額3,135円~(年額プラン)
- 16GBプラン: 月額6,270円~(年額プラン)
特徴
- 超高速NVMe SSD
- 24時間365日監視
- 高い I/O性能
- 企業レベルの信頼性
推奨スペック
クラスター規模 | 推奨メモリ | 推奨CPU | ディスク容量 | 月額費用目安 |
---|---|---|---|---|
小規模(2-4サーバー) | 4GB | 2コア | 50GB | 1,400円~ |
中規模(5-10サーバー) | 8GB | 4コア | 100GB | 2,800円~ |
大規模(10+サーバー) | 16GB | 6コア | 200GB | 5,700円~ |
トラブルシューティング
よくある問題と解決方法
問題1: ポート443/80でEACCESSエラー
多くのシステムでは、非rootプロセスが1000番未満のポートをリッスンできません。
# Node.jsにポート権限を付与
sudo setcap 'cap_net_bind_service=+ep' $(readlink -f $(which node))
# または高いポート番号を使用
npx clusteriocontroller config set controller.http_port 8080
問題2: Hostが接続できない
認証トークンの問題または設定URLの間違いが原因です。
# 新しいHostトークンを生成
npx clusteriocontroller bootstrap generate-host-token
# Host設定を確認
npx clusteriohost config list
問題3: インスタンスが起動しない
Factorioのパスや設定ファイルに問題がある可能性があります。
# ログを確認
npx clusteriohost logs instance-name
# Factorioのパスを確認
npx clusteriohost config get host.factorio_directory
よくある質問(FAQ)