# Prerequisites
Recommended EC2 instance type is **i3.xlarge**.
Install OpenJDK 11 by running the following command: `
amazon-linux-extras install -y java-openjdk11
`Install wget by running the following command: `
yum install wget
`Verify the installation by running the following command: `
java -version
`Increase the map count with the following command `
sysctl -w vm.max_map_count=262144
` set this permanently in /etc/sysctl.conf by adding the following line: vm.max_map_count=262144Increase ulimit value and test system settings
To change the file descriptor setting, edit the file /etc/sysctl.conf. Add line `
fs.file-max=100000
` to it.To apply the changes : `
sysctl -p
`To change the ulimit setting, edit the file /etc/security/limits.conf and set the hard and soft limits: `
* soft nofile 100000
` `* hard nofile 100000
`After this value is changed please reboot the server. `
reboot
`Test the settings using the following command: `
ulimit -a
`To check the current open file descriptor limit: `
more /proc/sys/fs/file-max
` OR `sysctl -a | grep fs.file-max
`To find out how many file descriptors are currently being used: `
more /proc/sys/fs/file-nr
`To find out how many files are currently open: `
lsof | wc -l
`
# Installation
Please login as root using **sudo su** if you are not the root user.
Create a SearchBlox user `
sudo adduser searchblox
` `sudo passwd searchblox
`SearchBlox has to be installed in /opt folder, so change directory to /opt `
cd /opt
`Download SearchBlox rpm package `
sudo wget https://d2fco3ozzrfhhd.cloudfront.net/v9.2.2/searchblox-9.2.2-0.noarch.rpm
`Install the rpm package `
sudo rpm -ivh searchblox-9.2.2-0.noarch.rpm
`Change permission for the following folders `
sudo chown -R searchblox:searchblox /opt/searchblox
` `sudo chmod -R 755 /opt/searchblox/bin
` `sudo chmod -R 755 /opt/searchblox/elasticsearch/bin
` `sudo chmod -R 755 /opt/searchblox/analytics
` `sudo chmod -R 755 /opt/searchblox/logs
` `sudo chmod -R 755 /opt/searchblox/elasticsearch/logs
`To start Elasticsearch and SearchBlox services `
systemctl start sbelastic
` `systemctl start searchblox
`To stop Elasticsearch and SearchBlox services `
systemctl stop sbelastic
` `systemctl stop searchblox
`
# Running Analytics as Service
Download sbanalytics.service file into /etc/systemd/system `
wget https://d2fco3ozzrfhhd.cloudfront.net/9.2/analytics/sbanalytics.service
`Enable sbanalytics.service using the command: `
systemctl daemon-reload
`Start Analytics service using the command: `
systemctl start sbanalytics
`View the status of the Analytics service using the command: `
systemctl status sbanalytics
`To stop the Analytics service run below command: `
systemctl stop sbanalytics
`
# Verify Installation
Once you see the message "The service has started", wait for few seconds then go to http://localhost:8080/searchblox/admin/main.jsp to validate.
You can verify if SearchBlox has started successfully by viewing the status.log file in the `
<SEARCHBLOX_INSTALLATION_PATH>/webapps/searchblox/logs
` folder.
Please confirm the message "Started Successfully" is shown in the log. In case of any errors, this log will provide additional information for troubleshooting.
To learn more on Troubleshooting visit: [Logging and Troubleshooting](🔗)
To learn about accessing SearchBlox visit: [Overview of SearchBlox](🔗)
To learn about tuning after installation visit: [Installation Tuning](🔗)
SearchBlox Admin Console Access using IP Address or Domain Name
You can use your IP instead of localhost in the URL to access the SearchBlox Admin Console.
If a domain name is mapped to the IP address, you can use the domain name: https://exampledomain:port/searchblox/admin/main.jsp https://exampledomain:port/searchblox/plugin/index.html
# Change SearchBlox Server Port
**SearchBlox Server runs on port 8080 by default.**
You can change the port by following the following steps:
Stop SearchBlox
Edit the file _/opt/searchblox/start.ini_ at line number 163 as follows: `
jetty.http.port=8080
`Start SearchBlox
If it is not possible to run SearchBlox in a port less than 1024 since SearchBlox runs as a non-root user, you can enable port forwarding if required using :
`iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
`
# Uninstall
Run the following command to uninstall or remove SearchBlox:
`yum remove searchblox
`