クラスターモード

NocoBase クラスターEnterprise Edition+

はじめに

NocoBaseはv1.6.0以降、アプリケーションをクラスターモードで実行できるようになりました。アプリケーションをクラスターモードで実行すると、複数のインスタンスとマルチコアモードを活用することで、同時アクセス処理のパフォーマンスを向上させることができます。

クラスターモードを基盤として、アプリケーションレベルの高可用性を実現できます。ロードバランサーが同一クラスター内の複数のNocoBaseインスタンスにトラフィックを分散することで、単一インスタンスが障害・再起動・リリース中であっても、他のインスタンスが継続してサービスを提供できます。実運用では、同一クラスターは通常、同じ低遅延のネットワーク環境内に配置する必要があります。

なお、NocoBaseのクラスターモードが扱うのは、アプリケーション層におけるインスタンスの水平拡張と高可用性です。可用性ゾーンやリージョンをまたぐウォームスタンバイや災害復旧が必要な場合は、通常は複数の独立したクラスターを配置し、データベース、共有ストレージ、その他インフラのデータ複製および切り替え戦略は運用チームが設計・実装する必要があります。

システムアーキテクチャ

20251031221530

  • アプリケーションクラスター:NocoBaseアプリケーションの複数のインスタンスで構成されるクラスターです。複数のサーバーにデプロイすることも、1台のサーバー上でマルチコアモードで複数のプロセスとして実行することもできます。
  • データベース:アプリケーションのデータを保存します。シングルノードデータベースまたは分散データベースのいずれかを使用できます。
  • 共有ストレージ:アプリケーションのファイルやデータを保存するために使用されます。複数のインスタンスからの読み書きアクセスをサポートします。
  • ミドルウェア:キャッシュ、同期シグナル、メッセージキュー、分散ロックなどのコンポーネントが含まれており、アプリケーションクラスター内の通信と連携をサポートします。
  • ロードバランサー:クライアントからのリクエストをアプリケーションクラスター内の異なるインスタンスに分散する役割を担います。ヘルスチェックやフェイルオーバーも実行します。

さらに詳しく

このドキュメントでは、NocoBaseのクラスターモードの基本的な概念と構成要素のみをご紹介しました。具体的なデプロイ方法やその他の設定項目については、以下のドキュメントをご参照ください。