和6年能登半島地震により亡くなられた方々のご冥福をお祈りするとともに、被害に遭われた皆さまに対し、心よりお見舞い申し上げます。一日も早く被災地の安全が確保され、復旧が進む事を心よりお祈り申し上げます。

全文検索サーバー Fess構築メモ

検索エンジンとしてElasticsearch利用のFessを導入した。

参考URL:https://fess.codelibs.org/ja/index.html

KVM
ホストOS:Debian GNU/Linux 10.7
ゲストOS:Debian GNU/Linux 10.7

Apache導入済。Java環境必須(*^^*)

インストール後に、elasticsearch.service: Start operation timed out. Terminating.のエラーで起動できない現象発生!TimeoutStartSec=500に変更して起動できました(汗

vi /usr/lib/systemd/system/elasticsearch.service
TimeoutStartSec=500

systemctl daemon-reload

下記、ざっくりインストールメモ

OpenJDKインストール

# apt-get install openjdk-11-jdk
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
  adwaita-icon-theme at-spi2-core ca-certificates-java dbus-user-session dconf-gsettings-backend dconf-service
  fontconfig fonts-dejavu-extra glib-networking glib-networking-common glib-networking-services
  gsettings-desktop-schemas gtk-update-icon-cache hicolor-icon-theme java-common libasound2 libasound2-data
  libatk-bridge2.0-0 libatk-wrapper-java libatk-wrapper-java-jni libatk1.0-0 libatk1.0-data libatspi2.0-0
  libavahi-client3 libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcolord2 libcups2
  libdatrie1 libdconf1 libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2
  libepoxy0 libfribidi0 libgail-common libgail18 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common
  libgif7 libgl1 libgl1-mesa-dri libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgraphite2-3 libgtk-3-0
  libgtk-3-bin libgtk-3-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libharfbuzz0b libice-dev libice6
  libjbig0 libjpeg62-turbo libjson-glib-1.0-0 libjson-glib-1.0-common liblcms2-2 libllvm7 libnspr4 libnss3
  libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpciaccess0 libpcsclite1 libpixman-1-0 libproxy1v5
  libpthread-stubs0-dev librest-0.7-0 librsvg2-2 librsvg2-common libsensors-config libsensors5 libsm-dev libsm6
  libsoup-gnome2.4-1 libsoup2.4-1 libthai-data libthai0 libtiff5 libwayland-client0 libwayland-cursor0
  libwayland-egl1 libwebp6 libx11-dev libx11-xcb1 libxau-dev libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0
  libxcb-present0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb1-dev libxcomposite1 libxcursor1
  libxdamage1 libxdmcp-dev libxfixes3 libxft2 libxi6 libxinerama1 libxkbcommon0 libxmu6 libxpm4 libxrandr2
  libxrender1 libxshmfence1 libxt-dev libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm1 openjdk-11-jdk-headless
  openjdk-11-jre openjdk-11-jre-headless x11-utils x11proto-core-dev x11proto-dev xorg-sgml-doctools xtrans-dev
提案パッケージ:
  default-jre libasound2-plugins alsa-utils colord cups-common gvfs libice-doc liblcms2-utils pcscd librsvg2-bin
  lm-sensors libsm-doc libx11-doc libxcb-doc libxt-doc openjdk-11-demo openjdk-11-source visualvm libnss-mdns
  fonts-ipafont-gothic fonts-ipafont-mincho fonts-wqy-microhei | fonts-wqy-zenhei fonts-indic mesa-utils
以下のパッケージが新たにインストールされます:
  adwaita-icon-theme at-spi2-core ca-certificates-java dbus-user-session dconf-gsettings-backend dconf-service
  fontconfig fonts-dejavu-extra glib-networking glib-networking-common glib-networking-services
  gsettings-desktop-schemas gtk-update-icon-cache hicolor-icon-theme java-common libasound2 libasound2-data
  libatk-bridge2.0-0 libatk-wrapper-java libatk-wrapper-java-jni libatk1.0-0 libatk1.0-data libatspi2.0-0
  libavahi-client3 libavahi-common-data libavahi-common3 libcairo-gobject2 libcairo2 libcolord2 libcups2
  libdatrie1 libdconf1 libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2
  libepoxy0 libfribidi0 libgail-common libgail18 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common
  libgif7 libgl1 libgl1-mesa-dri libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgraphite2-3 libgtk-3-0
  libgtk-3-bin libgtk-3-common libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libharfbuzz0b libice-dev libice6
  libjbig0 libjpeg62-turbo libjson-glib-1.0-0 libjson-glib-1.0-common liblcms2-2 libllvm7 libnspr4 libnss3
  libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpciaccess0 libpcsclite1 libpixman-1-0 libproxy1v5
  libpthread-stubs0-dev librest-0.7-0 librsvg2-2 librsvg2-common libsensors-config libsensors5 libsm-dev libsm6
  libsoup-gnome2.4-1 libsoup2.4-1 libthai-data libthai0 libtiff5 libwayland-client0 libwayland-cursor0
  libwayland-egl1 libwebp6 libx11-dev libx11-xcb1 libxau-dev libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0
  libxcb-present0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb1-dev libxcomposite1 libxcursor1
  libxdamage1 libxdmcp-dev libxfixes3 libxft2 libxi6 libxinerama1 libxkbcommon0 libxmu6 libxpm4 libxrandr2
  libxrender1 libxshmfence1 libxt-dev libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm1 openjdk-11-jdk
  openjdk-11-jdk-headless openjdk-11-jre openjdk-11-jre-headless x11-utils x11proto-core-dev x11proto-dev
  xorg-sgml-doctools xtrans-dev
アップグレード: 0 個、新規インストール: 136 個、削除: 0 個、保留: 42 個。
328 MB 中 813 kB のアーカイブを取得する必要があります。
この操作後に追加で 771 MB のディスク容量が消費されます。

elasticsearchインストール

# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-amd64.deb
--2021-02-27 15:00:10--  https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-amd64.deb
artifacts.elastic.co (artifacts.elastic.co) をDNSに問いあわせています... 34.120.127.130, 2600:1901:0:1d7::
artifacts.elastic.co (artifacts.elastic.co)|34.120.127.130|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 318852724 (304M) [application/octet-stream]
`elasticsearch-7.10.2-amd64.deb' に保存中

elasticsearch-7.10.2-amd64.d 100%[=============================================>] 304.08M  2.80MB/s 時間 2m 10s

一応、ダウンロードしたファイルが正しいモノか信頼性を確認する。

# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-amd64.deb.sha512
--2021-02-27 15:03:07--  https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.2-amd64.deb.sha512
artifacts.elastic.co (artifacts.elastic.co) をDNSに問いあわせています... 34.120.127.130, 2600:1901:0:1d7::
artifacts.elastic.co (artifacts.elastic.co)|34.120.127.130|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 160 [application/octet-stream]
`elasticsearch-7.10.2-amd64.deb.sha512' に保存中

elasticsearch-7.10.2-amd64.d 100%[=============================================>]     160  --.-KB/s 時間 0s
# shasum -a 512 -c elasticsearch-7.10.2-amd64.deb.sha512
elasticsearch-7.10.2-amd64.deb: OK
# dpkg -i elasticsearch-7.10.2-amd64.deb
以前に未選択のパッケージ elasticsearch を選択しています。
(データベースを読み込んでいます ... 現在 61346 個のファイルとディレクトリがインストールされています。)
elasticsearch-7.10.2-amd64.deb を展開する準備をしています ...
Creating elasticsearch group... OK
Creating elasticsearch user... OK
elasticsearch (7.10.2) を展開しています...
elasticsearch (7.10.2) を設定しています ...
Created elasticsearch keystore in /etc/elasticsearch/elasticsearch.keystore
systemd (241-7~deb10u5) のトリガを処理しています ...

elasticsearch-plugin をinstallする。←公式サイト参照

インストール
Fess は以下の環境で利用することができます。 OS: Windows や Unix など Java が実行できる OS 環境 Java: Java 11 (...

Fessインストール

# wget https://github.com/codelibs/fess/releases/download/fess-13.10.3/fess-13.10.3.deb
--2021-02-27 15:06:45--  https://github.com/codelibs/fess/releases/download/fess-13.10.3/fess-13.10.3.deb
github.com (github.com) をDNSに問いあわせています... 13.114.40.48
github.com (github.com)|13.114.40.48|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 302 Found
場所: https://github-releases.githubusercontent.com/12801725/6a237480-76ec-11eb-826f-ccd0177f2537?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20210227%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20210227T060645Z&X-Amz-Expires=300&X-Amz-Signature=e9ac934aedd069a044bae9a6c856bd31e0458f4ebb3db7c33952667b3e3b0411&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=12801725&response-content-disposition=attachment%3B%20filename%3Dfess-13.10.3.deb&response-content-type=application%2Foctet-stream [続く]
# dpkg -i fess-13.10.3.deb
以前に未選択のパッケージ fess を選択しています。
(データベースを読み込んでいます ... 現在 62399 個のファイルとディレクトリがインストールされています。)
fess-13.10.3.deb を展開する準備をしています ...
Creating fess group... OK
Creating fess user... OK
fess (13.10.3) を展開しています...
fess (13.10.3) を設定しています ...
systemd (241-7~deb10u5) のトリガを処理しています ...

起動!

# systemctl start elasticsearch.service
# systemctl start fess.service

ステータス確認

# systemctl status elasticsearch.service
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/lib/systemd/system/elasticsearch.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2021-02-27 18:34:32 JST; 9s ago
     Docs: https://www.elastic.co
 Main PID: 3808 (java)
    Tasks: 56 (limit: 3491)
   Memory: 1.2G
   CGroup: /system.slice/elasticsearch.service
           tq3808 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=true
           mq3955 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller

ブラウザで8080ポート指定で確認。ログイン画面が表示されれば成功。

後はクローラ、スケジューラの設定をGUIの管理画面から行う。

詳細は、自宅サーバのこちらに記載しました。

コメント