Fess 15.9に向けたOpenSearchと既存インデックスの移行準備

Fess 15.9の開発版で、利用するOpenSearchが3.9.0へ更新されました。移行時には、OpenSearch本体とプラグインのバージョンを揃えることに加え、プラグインの取得先と既存の文書インデックスの扱いを確認する必要があります。

この記事は2026年10月4日時点でmainブランチへマージされた変更をもとにした移行準備のメモです。確認したFessの最新リリースは15.8.0で、15.9をリリース済みとして案内するものではありません。対応する開発版を検証する場合、または変更を含むリリースへの移行時に参照してください。

OpenSearchとプラグインを揃える

今回の開発版では、fess-setupの初期値が次のようになっています。

component.opensearch.version=3.9.0
component.opensearch.plugin.version=3.9.0
component.opensearch.plugin.repository=https://maven.codelibs.org/release

対応版のFessに同梱されたセットアップツールでは、次のコマンドでOpenSearchを導入します。

bin/fess-setup install opensearch

既存のOpenSearchへプラグインだけを導入する場合は、インストール先を指定します。

bin/fess-setup install opensearch-plugins --opensearch-home /path/to/opensearch-3.9.0

対象はanalysis-fess、analysis-extension、minhash、configsyncの4プラグインです。3.8.1以降のこれらの配布先はmaven.codelibs.orgです。手動でopensearch-pluginを使う場合、Maven座標形式はMaven Centralだけを参照するため、3.9.0のZIPのURLを指定します。例えばanalysis-fessは次のように導入します。

bin/opensearch-plugin install https://maven.codelibs.org/release/org/codelibs/opensearch/opensearch-analysis-fess/3.9.0/opensearch-analysis-fess-3.9.0.zip

残りの3プラグインも同じ配布先の3.9.0を使い、OpenSearch本体とバージョンを一致させます。公式OpenSearchバンドルにはk-NNが含まれています。独自に構成する場合も、15.9で必要となるk-NNを確認してください。Docker版は15.9.0-SNAPSHOTとOpenSearch 3.9.0の組み合わせへ更新されています。15.8.0の組み合わせはOpenSearch 3.8.0なので、既存の15.8環境へ新しいCompose定義をそのまま適用する前に対応関係を確認します。

既存インデックスへ新しい定義を反映する

15.9は起動時に設定・ログ・ユーザーのインデックスへ不足するフィールドを追加します。一方、文書インデックスのマッピングと解析設定は自動変更しません。15.8以前の文書インデックスでは、所有者・最終更新者の検索や、かなと長音記号の表記揺れの正規化を使うために再インデクシングが必要です。

管理画面の「システム情報」→「メンテナンス」で「エイリアスの更新」と「辞書の初期化」を有効にして、「再インデクシング」を実行します。既存文書を新しいインデックスへコピーする処理なので、マッピングと解析設定の反映だけなら再クロールは不要です。これらのチェックを初期状態のままにせず、実行前に確認してください。

「辞書の初期化」はOpenSearch側の辞書を同梱ファイルで上書きします。同義語などを独自に編集している場合は、事前にダウンロードし、再インデクシング後に必要な変更を反映し直します。

所有者の値を取得するには再クロールも必要

再インデクシングで定義を揃えても、以前に索引したファイルへ所有者の値が追加されるわけではありません。ファイルシステム・SMB・FTPの対象ファイルから値を取得するにはクロールが必要です。

差分クロールでは変更のないファイルを取得し直さないため、「システム」→「全般」の「最終更新日時の確認」を一時的に無効にしてクロールします。対象ファイルの取得が終わったら通常の差分クロール設定へ戻します。文書のコピーと、元ファイルから不足する値の取得を分けて考えると移行作業を整理できます。

切り戻し用のバックアップを残す

OpenSearch 3.9.0で取得したスナップショットは、3.8.0以前へ復元できません。切り戻しに使うアップグレード前のスナップショットと設定・辞書のバックアップを残しておきます。また、辞書はOpenSearchの設定ディレクトリ配下へ配置します。この制限は3.8.0からのものです。

新機能の設定だけでなく、プラグインの配布先、文書インデックスの再構築、必要に応じた再クロールまで含めて検証しておくと、15.9への移行を準備できます。

関連PR

コメントを残す

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です