Installation
Requirements
Fess can be available in these environments.
OS: Windows/Unix with Java environment
Java: Java 11
(RPM or DEB) Elasticsearch: 7.7.X
If Java is not installed in your environment, see we want to Fess from AdoptOpenJDK site to install JDK. Embedded Elasticsearch is not recommended for production use.
Download
Download the latest Fess package from the release site, https://github.com/codelibs/fess/releases.
Installation
Using ZIP package
Unzip the downloaded fess-<version>.zip. For UNIX environment, run the following command:
$ unzip fess-<version>.zip
$ cd fess-<version>
Using RPM package
You need to install elasticsearch RPM package before Fess installation. Download elasticsearch RPM package from elasticsearch site https://www.elastic.co/downloads/elasticsearch, and then install the package.
$ sudo rpm -ivh elasticsearch-<version>.rpm
To access from Fess, the following configuration needs to be added to /etc/elasticsearch/elasticsearch.yml
configsync.config_path: /var/lib/elasticsearch/config
Next, install Fess RPM package.
$ sudo rpm -ivh fess-<version>.rpm
Fess provides elasticsearch plugins to extend elasticsearch’s features for Fess. Install the following plugins to plugins directory in elasticsearch.
$ /usr/share/elasticsearch/bin/elasticsearch-plugin install org.codelibs:elasticsearch-analysis-fess:7.7.0
$ /usr/share/elasticsearch/bin/elasticsearch-plugin install org.codelibs:elasticsearch-analysis-extension:7.7.0
$ /usr/share/elasticsearch/bin/elasticsearch-plugin install org.codelibs:elasticsearch-configsync:7.7.0
$ /usr/share/elasticsearch/bin/elasticsearch-plugin install org.codelibs:elasticsearch-dataformat:7.7.0
$ /usr/share/elasticsearch/bin/elasticsearch-plugin install org.codelibs:elasticsearch-minhash:7.7.0
Note that these plugins depends on elasticsearch version.
To register them as a service, run the following commands if using chkconfig,
$ sudo /sbin/chkconfig --add elasticsearch
$ sudo /sbin/chkconfig --add fess
For systemd based system(e.g. CentOS 7),
$ sudo /bin/systemctl daemon-reload
$ sudo /bin/systemctl enable elasticsearch.service
$ sudo /bin/systemctl enable fess.service
Using Your Elasticsearch Cluster On ZIP package
Fess is able to connect to your existing elasticsearch cluster. For the details to configure elasticsearch for Fess, please see steps in Using RPM package.
To connect to elasticsearch cluster from Fess, use JVM options in a launch script file. For Windows environment, the following settings are put into fess-<version>\bin\fess.in.bat. fess.dictionary.path needs to be set to a path of configsync.config_path in elasticsearch.yml.
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.es.http_address=http://localhost:9200
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.dictionary.path="c:/<elasticsearch-<version>/data/config/"
For Elasticsearch RPM/DEB package, they are in fess-<version>/bin/fess.in.sh.
ES_HTTP_URL=http://localhost:9200
FESS_DICTIONARY_PATH=/var/lib/elasticsearch/config/