ElasticSearch(2023から opensearch)-Fess連関
【2023】2023.09 の段階で
「ご利用のシステムはサポートが終了しています。製品サポート期限のページを参照して、アップグレードしてください」と言われている。
また、最初から、
「開発モードで起動しています。本運用環境ではElasticsearch
を別途インストールしてください」と言われていた。
ので、、、
2023.09 別VMに再インストールすることにした.suWin10ono3 上の VM
suFESS.su.local LocalLogin は administrator/abcdef
ダウンロードはここからたどった
↓
で,これらをゲットした
httpd-2.4.46-win64-VS16.zip (Apache)
openjdk-15.0.1_windows-x64_bin.zip
(OpenJDK)
elasticsearch-7.9.3-windows-x86_64.zip
fess-13.9.3.zip
【2024】
suFESS2 を Windows11-23h2 → 24h2 に update したら
opensearch が起動できなくなった.手動で起動できないし,サービスに登録もできない
サービスの permission
をマイクロソフトアカウントにしてみたが NG
プライバシーとセキュリティー > ウィルスの脅威の防止 > ウィルスの脅威の防止の設定 > 除外 で opensearch を除外してみたが NG
各pluginを remove して再度 install してみたが NG
suFESS3 を 新規に install
した.suWin3上 に作った.Login は microsoft アカウント にした
【2023】
httpd-2.4.57-win64-VS17.zip
......httpd
は実際には使わないが、環境の確認のため一時導入した。最終的には[8080]を FESS に譲って、サービスを止めた
jdk-17_windows-x64_bin.msi
opensearch-2.9.0-windows-x64.zip
......Elasticsearch は OSS として終わっていて、Opensearch に移行していたので、これにした
fess-14.10.0.zip
また、VC_redist.x64.exe が入り用だった
【2024】
httpd は使わないので download しない
jdk-17_windows-x64_bin.msi は新たにdownloadしないでそのまま使用
opensearch-2.9.0-windows-x64.zip を download
opensearch-2.9.0-windows-x64.zip
を download
PC名は campWeb.camp.local
administrator の pwdは camppass に
local logon に
IP 192.168.1.11/24
C++runtime installed (VC_redist.x64)
【2023】PC名は suFESS.su.local (suWinOno3 上のVM) Windows logon
する.
IP は,192.168.10.156
【2024】
IP は 192.168.10.157
RDP の port は 3393
にした
httpの port は 8081 (suFESS2 が 8080)
と思ったが, fess サービスのリスナーを8081 にできないので
FESS2 引退して FESS3 が 8080 を使うことにして設定していく
RDPのport の設定は以下(↓)
...この変更は
設定やコンパネからたどれず,RegEdit した.で,FireWall に 3393 の穴を作った
===<CoPilot
に聞いた>===============
1. レジストリエディタを開く:
· 「スタートメニュー」から「regedit」を検索して起動します。
2. レジストリキーを見つける:
次のキーに移動します:
HKEY_LOCAL_MACHINE\System\CurrentControlSetControlTerminal
Server\WinStationsRDP-Tcp
3. ポート番号を変更: PortNumber -
表示されるウィンドウで、「10進」を選択し、新しいポート番号を入力します。
4. レジストリエディタを閉じる:
変更を保存してレジストリエディタを閉じます。
5. ファイアウォールの設定を更新:
·
新しいポート番号に対応するようにファイアウォールルールを更新します。
6. コンピュータを再起動:
• コンピュータを再起動して変更を反映させます。
======================================
apache配置 (httpd-2.4.46-win64-VS16)
Apache24 を c:\Apache24 に配置
http.conf 書き換え
C:\Apache24\conf\httpd.conf 修正
#ServerName
www.example.com:80
↓
ServerName campFess.camp.local:80
WorldWideWeb発行サービスを止めて無効にする(でないとConflictする)
c:\apache24\bin>httpd -k install
として Serviceにして apache2.4を開始して自動起動を確認
.....http://localhost で作動を確認 ... 他からも
【2023】
8080で install したけど,8080 は FESS が使うので,apache は止めた
【2024】
httpd のインストールはなし
jdk-15.0.1 を c:\jdk-15.0.1 に配置
JAVA_HOME, path 設定
【2023】
jdk-17_windows-x64_bin.msi で install した(?)
JAVA_HOME, path 設定
【2024】
jdk-17_windows-x64_bin.msi で install
JAVA_HOME 設定
path には installer が入れてくれた?
■ElasticSearchを配置
https://fess.codelibs.org/ja/13.9/install/install.html を参照
https://qiita.com/RoG/items/10563df2fc40999d2367 を参考
ダウンロードした
elasticsearch-<version>.zip 、fess-<version>.zip は任意の場所に展開します。
C:\elasticsearch-7.9.3
Plusinsをinstallした
> c:\elasticsearch-7.9.3\bin\elasticsearch-plugin install
org.codelibs:elasticsearch-analysis-fess:7.9.0
>
c:\elasticsearch-7.9.3\bin\elasticsearch-plugin install
oyyrg.codelibs:elasticsearch-analysis-extension:7.9.1
>
c:\elasticsearch-7.9.3\bin\elasticsearch-plugin install
org.codelibs:elasticsearch-configsync:7.9.0
>
c:\elasticsearch-7.9.3\bin\elasticsearch-plugin install
org.codelibs:elasticsearch-dataformat:7.9.0
>
c:\elasticsearch-7.9.3\bin\elasticsearch-plugin install
org.codelibs:elasticsearch-minhash:7.9.1
「これらのプラグインは Elasticsearch のバージョンに依存するので注意してください。」とのことだが,これくらいの差異は許されるようだ.
Fess にアクセスするために、 c:\elasticsearch-7.9.3\config\elasticsearch.ymlに下記の設定を加えます。
[PATHES]にでも
configsync.config_path: c:\elasticsearch-7.9.3/config/
を加える
configsync.config_path:
c:\elasticsearch-7.9.3/data/config/
という記載をしているサイトもあるが,このディレクトリは無いので,
configsync.config_path:
c:/<elasticsearch-<version>/config/
とした.ようは,fess.in.bat の記載とあっていれば良いようだ
【2023】
https://fess.codelibs.org/ja/14.10/install/install.html
を参照
opensearch-2.9.0-windows-x64 を root 下に置いた
Plugin を install した(管理者として)
C:/opensearch-2.9.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-analysis-fess:2.9.0
C:/opensearch-2.9.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-analysis-extension:2.9.0
C:/opensearch-2.9.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-minhash:2.9.0
C:/opensearch-2.9.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-configsync:2.9.0
C:/opensearch-2.9.0/config/opensearch.yml
の
---path 辺りに以下を追加するる上の行は [http] を OK にする
plugins.security.disabled: true
configsync.config_path: C:/opensearch-2.9.0/config/
【2024】
opensearch-2.17.1-windows-x64 を root 下に置く
以前と同様にしようとしたが,opensearch-windows-install.bat なるものがある.
とりあえず,これをたたいておく---これはしない
=========<以下不要>=====================-
"OpenSearch
2.12.0 onwards, the OpenSearch Security Plugin a change that requires an initial
password for 'admin' user.
"Please define an environment variable
'OPENSEARCH_INITIAL_ADMIN_PASSWORD' with a strong password string.
"If a
password is not provided, the setup will quit."
といわれるので
bbbb@yasushi
とした--strong にと叱られた
Szkyss0!とした -- NG
Szkyss@131
これが終わらない?---常駐して待っているモードかも.でも
===================================================
2.9.0
にもあって,こんなものは使わなかった.使わないでやってる
しかし,もろもろ 2.17.0 用しかなく,openserach も .17.0 を
Download しなおす
sha512 がないから sha1 を使うと言ってくるので ok とする
Plugin を install
した(管理者として)
C:/opensearch-2.17.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-analysis-fess:2.17.0
C:/opensearch-2.17.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-analysis-extension:2.17.0
C:/opensearch-2.17.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-minhash:2.17.0
C:/opensearch-2.17.0/bin/opensearch-plugin install
org.codelibs.opensearch:opensearch-configsync:2.17.0
C:/opensearch-2.17.0/config/opensearch.yml
の ---path 辺りに以下を追加するる上の行は [http] を
OK にする
plugins.security.disabled: true
configsync.config_path:
C:/opensearch-2.17.0/config/
[WARN] が(とくにsecurity関係)チラチラ出ているが、動いているようだ
■Fessを配置
...ここではルートにした
C:\fess-13.9.3
Fess で Elasticsearch へ接続するためにfess-13.9.3\bin\fess.in.batを変更します。
fess.dictionary.pathにはelasticsearch.ymlに設定したconfigsync.config_pathの値を設定してください。
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.es.http_address=http://localhost:9200
REM set
FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.dictionary.path=%ES_HOME%/config/
set
FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.dictionary.path=C:/elasticsearch-7.9.3/config/
にしてみた★これが良かったようだ.
.....fess.in.bat を解読して設定をちゃんとする必要があるようだ
https://qiita.com/RoG/items/10563df2fc40999d2367 によれば,ここは REM のままにしないと作動しないとかいてあるが???
【2023】ほぼ同様
ルートに配置
C:\fess-14.10.0
fess.in.bat を下記のように変更
REM External opensearch cluster
REM ### remove
REM from this line ###
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.search_engine.http_address=http://localhost:9200
REM set
FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.dictionary.path=%SEARCH_ENGINE_HOME%/config/
REM ### modify this line
###
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.dictionary.path=c:/opensearch-2.9.0/config/
【2024】
fess のバージョンは
これも バージョンNo 以外は同じ バージョンは
14.17.0 にした
fess.in.bat を下記のように変更
REM External opensearch cluster
REM ### remove REM from this line ###
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.search_engine.http_address=http://localhost:9200
REM set
FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.dictionary.path=%SEARCH_ENGINE_HOME%/config/
REM ### modify this line
###
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS%
-Dfess.dictionary.path=c:/opensearch-2.17.0/config/
■elasticsearch を起動
C:/elasticsearch-7.4.2/binにあるelasticsearch.bat で起動
http://localhost:9200
http://localhost:9200/_cat/plugins?
で確認
■opensearch を起動
【2023】ほぼ同様
[ERROR] や [WARN]
が(とくにsecurity関係)チラチラ出ているが、動いているようだ
【2024】ほぼ同様
[ERROR] がチラチラ出ているが、動いているようだ
C:/opensearch-2.17.0/binにあるopensearch.bat で起動
http://localhost:9200
http://localhost:9200/_cat/plugins?
で確認
■Fess を起動
fess.bat で起動
http://localhost:8080
で確認
【2023】ほぼ同様
admin/admin で管理画面
2023.09.13 pwd を abcdef に変更
【2024】ほぼ同様
fess.bat で起動
admin/admin で管理画面
pwd を abcdef に変更
■elasticsearch をサービスに登録
C:\elasticsearch-7.9.3\bin\elasticsearch-service.bat install を管理者で実行
その後自動起動に
■opensearch をサービスに登録
【2023】ほぼ同様
>opensearch-service.bat install
その後(コンピュータの管理-サービスで)自動起動にした
>opensearch-service.bat manager でやっても良さそうだが
23H2 に update したら,もう一度やる必要があった
【2024】ほぼ同様
>opensearch-2.17.0/bin/opensearch-service.bat install
その後(コンピュータの管理-サービスで)自動起動にした
■Fess をサービスに登録
これでサービス登録されるのですがここで注意!service.bat
startへ進む前にやるべきことがあります。(下記)
C:\fess-13.9.3\bin\service.bat install (管理者で?)
サービスを手動で起動する場合は Elasticsearch サービスを先に起動し、その後 Fess サービスを起動します。
自動起動する場合は依存関係を追加します。
サービスの全般設定でスタートアップの種類を「自動(遅延開始)」とします。
サービスの依存関係はレジストリで設定します。
レジストリエディタ(regedit)で下記のキーと値を追加します。
キー
コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
\fess-service-x64\DependOnService
値 elasticsearch-service-x64
追加すると、 Fess
サービスのプロパティの依存関係に elasticsearch-service-x64 が表示されます。
こういう記載もある---無視してみたが大丈夫みたい
https://qiita.com/n-i-e/items/4dd6fb7232cb1403a33b
これでサービス登録されるのですがここで注意!service.bat
start(開始)へ進む前にやるべきことがあります。
サービス管理ツールを開き(手順としては スタートボタン→Windows管理ツール→サービス)、Fess
(fess-service-x64) を選択し、プロパティを開きます。ここで ログオン タブを選択すると、ローカル システム
アカウントが選択されていますので、これを アカウント に変更し、Fessを動かすアカウントとパスワードを入力します。ここがローカル システム
アカウントのままだと、環境変数JAVA_HOMEが設定されていないためFessが動きません。何らかの理由で動いたとしても、セキュリティ上お勧めできません。
ここまできたら、プロパティシートの 全般 タブから 開始
ボタンを押してスタートです。または、コマンドラインからservice.bat startでもOKです。この状態でブラウザから
http://localhost:8080/ にアクセスするとFessが動いています。
さらに、常時起動したい場合は、 スタートアップの種類 を
自動 にします。
【2023】ほぼ同様
C:\fess-14.10.0\bin>service.bat install
サービスの全般設定でスタートアップの種類を「自動(遅延開始)」とします。まだ開始しないで
サービスの依存関係はレジストリで設定します。
レジストリエディタ(regedit)で下記のキーと値を追加します。
キー
コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\fess-service-x64\DependOnService
値 elasticsearch-service-x64
追加すると、 Fess
サービスのプロパティの依存関係に elasticsearch-service-x64 が表示されます。
...実は
元祖suFESSにはこの設定がなかったが動いていた。たまたま遅延がうまくいっていた?
↓これも忘れないで
これでサービス登録されるのですがここで注意!service.bat
start(開始)へ進む前にやるべきことがあります。
サービス管理ツールを開き(手順としては スタートボタン→Windows管理ツール→サービス)、Fess
(fess-service-x64) を選択し、プロパティを開きます。ここで ログオン タブを選択すると、ローカル システム
アカウントが選択されていますので、これを アカウント に変更し、Fessを動かすアカウントとパスワードを入力します。ここがローカル システム
アカウントのままだと、環境変数JAVA_HOMEが設定されていないためFessが動きません。何らかの理由で動いたとしても、セキュリティ上お勧めできません。
administrator/abcdef ではログオン出来ず、hotmail アカウントにしたら出来た
ここまできたら、プロパティシートの 全般 タブから 開始
ボタンを押してスタートです。または、コマンドラインからservice.bat startでもOKです。この状態でブラウザから
http://localhost:8080/ にアクセスするとFessが動いています。
さらに、常時起動したい場合は、 スタートアップの種類 を
自動 にします。
【2024】ほぼ同様
C:\fess-14.17.0\bin>service.bat
install
サービスの全般設定でスタートアップの種類を「自動(遅延開始)」とします。まだ開始しないで
サービスの依存関係はレジストリで設定します。
レジストリエディタ(regedit)で下記のキーと値を追加します。
キー
コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\fess-service-x64\DependOnService
値 elasticsearch-service-x64
追加すると、 Fess サービスのプロパティの依存関係に
elasticsearch-service-x64 が表示されます。
...実は
元祖suFESSにはこの設定がなかったが動いていた。たまたま遅延がうまくいっていた?
↓これも忘れないで
これでサービス登録されるのですがここで注意!service.bat
start(開始)へ進む前にやるべきことがあります。
サービス管理ツールを開き(手順としては スタートボタン→Windows管理ツール→サービス)、Fess (fess-service-x64)
を選択し、プロパティを開きます。ここで ログオン タブを選択すると、ローカル システム アカウントが選択されていますので、これを アカウント
に変更し、Fessを動かすアカウントとパスワードを入力します。ここがローカル システム
アカウントのままだと、環境変数JAVA_HOMEが設定されていないためFessが動きません。何らかの理由で動いたとしても、セキュリティ上お勧めできません。
administrator/abcdef ではログオン出来ず、hotmail アカウントにしたら出来た
ここまできたら、プロパティシートの 全般 タブから
開始 ボタンを押してスタートです。または、コマンドラインからservice.bat startでもOKです。この状態でブラウザから
http://localhost:8080/ にアクセスするとFessが動いています。
【2023】↓これも同様
で,クロールしてみたら PDFのファイル名が,ときに文字化けする.
呼び出し元の HTML の文字コードの設定による???
C:\fess-13.9.3\app\WEB-INF\classes\fess_config.properties
で
crawler.document.file.name.encoding=UTF-8
に設定
これから
PDF は 10M までだから注意
https://fess.codelibs.org/ja/11.3/config/crawler.html
port 変更は
https://fess.codelibs.org/ja/10.1/config/server-port.html
【参考】
opensearch と elastic search の関係 ↓