Fess 14.17から、新たにマルチインスタンス環境がサポートされました。この機能により、1つのOpenSearchクラスター上で複数のFessインスタンスを同時に起動し、それぞれが独立したインデックスや設定を持つことが可能になりました。これにより、異なるクライアントやプロジェクトごとに完全に分離された検索環境を提供することができ、運用の柔軟性が飛躍的に向上します。
Fessには従来から仮想ホスト機能があり、1つのFessインスタンス内で複数のドメインやプロジェクトを効率的に管理することができました。仮想ホスト機能は、リクエストヘッダーなどを基に処理を切り替えられるため、1つのFess環境で複数のサービスを提供するケースに適しています。ただし、インデックスの設定情報などが共有されているので、仮想ホストごとに個別な設定ができないなど、設定面での制約も存在します。
一方、マルチインスタンス環境では、各Fessインスタンスが独自のインデックスや設定を持ち、完全に独立して動作するため、仮想ホストよりも高度なカスタマイズ性と柔軟性が求められる場面に適しています。特に、異なるクライアントやプロジェクトに対して完全に分離された検索環境を提供したい場合、このマルチインスタンス機能が非常に有効です。
今回の記事では、Docker Composeを使用して、複数のFessインスタンスをセットアップする具体的な手順を紹介します。それぞれのインスタンスが独自の設定で管理され、どのように検索できるかを確認していきます。これにより、Fessのマルチインスタンス環境の強みを実際に体験していただければと思います。
マルチインスタンス環境の準備
Fess 14.17からサポートされたマルチインスタンス環境を構築するために、まずは必要なDocker Composeファイルを準備します。事前に、Docker Desktopをインストールするなどで、Docker Composeを利用できるようにしてください。