General Installation Information
This guide walks you through basic installation and optimization steps for HiveMQ.
For more ways to try out and evaluate HiveMQ such as Docker and AWS, see Getting Started with HiveMQ.
You can download HiveMQ in a convenient ZIP package with all the executable files, initialization scripts, and example configurations you need to successfully install HiveMQ.
The HiveMQ download package contains the following directories:
Folder name | Description |
---|---|
|
Startup scripts and binary files. |
|
Configuration files. |
|
Persistent client data and cluster data. |
|
One or more HiveMQ license files. |
|
All HiveMQ log files. |
|
All extensions to the HiveMQ installation. |
|
License information for third-party libraries. |
The conf/examples directory of your HiveMQ installation contains several useful example configuration files.
|
Installation on Unix-based systems (Linux, BSD, macOS, Unix)
The default installation directory for HiveMQ is /opt/hivemq
. The default HiveMQ username is hivemq
.
If you install HiveMQ to a different directory or define a custom HiveMQ username, you must update the $HIVEMQ_DIRECTORY
and HIVEMQ_USER
in the $HIVEMQ_DIRECTORY/bin/start.sh
script accordingly.
Some of the following commands require root privileges, log in as root user or use sudo to execute the commands. |
-
Log in as root user
-
Go to the directory where you want to download and install HiveMQ. In this example, we use
/opt
.cd /opt
-
On the HiveMQ website, select Download HiveMQ ZIP Archive to get a trial version of HiveMQ.
-
Copy the provided download link and download HiveMQ
wget --content-disposition <your download link>
or
curl -O -L <your download link>
-
Extract the files
unzip hivemq-<version>.zip
-
Create a HiveMQ symbolic link (symlink)
ln -s /opt/hivemq-<version> /opt/hivemq
-
Create a HiveMQ user
useradd -d /opt/hivemq hivemq
-
Make scripts executable and change the owner to
hivemq
userchown -R hivemq:hivemq /opt/hivemq-<version> chown -R hivemq:hivemq /opt/hivemq cd /opt/hivemq chmod +x ./bin/run.sh
-
Adjust the configuration properties to your needs.
For more information, see Configuration.
-
Install the Init script (optional)
For Debian-based Linux distributions such as Debian, Ubuntu, or Raspbian that use init.d scripts
cp /opt/hivemq/bin/init-script/hivemq-debian /etc/init.d/hivemq chmod +x /etc/init.d/hivemq
For Linux systems that use a systemd service
cp /opt/hivemq/bin/init-script/hivemq.service /etc/systemd/system/hivemq.service
For all other Linux systems
cp /opt/hivemq/bin/init-script/hivemq /etc/init.d/hivemq chmod +x /etc/init.d/hivemq
-
Modify /etc/init.d/hivemq (optional)
Set the HIVEMQ_HOME and the HIVEMQ_USER variables to the correct values for your system.
The default values are as follows:
HIVEMQ_HOME=/opt/hivemq
HIVEMQ_USER=hivemq
If you installed HiveMQ on a directory other than /opt/hivemq
, point the HIVEMQ_HOME in your Init script to the correct directory. Otherwise, the daemon cannot start correctly. -
Start HiveMQ on boot (optional)
For Debian-based linux such as Debian, Ubuntu, Raspbian
update-rc.d hivemq defaults
For Debian-based Linux such Debian, Ubuntu, Raspbian that use systemd
systemctl enable hivemq
Debian > 6.0
insserv hivemq
CentOS or RHEL
chkconfig hivemq on
Start HiveMQ
The following instructions show how to start HiveMQ after the installation.
Start HiveMQ manually
-
Change directory to HiveMQ directory
cd /opt/hivemq
-
Execute startup script
./bin/run.sh
Verify that HiveMQ is running
Check if HiveMQ is listening to the default port for MQTT
netstat -an | grep 1883
If you run HiveMQ as daemon:
/etc/init.d/hivemq status
If you run HiveMQ with systemd:
systemctl status hivemq.service
To debug the HiveMQ startup with systemd, you can inspect the output:
journalctl | grep -i hivemq
Windows systems
Manual installation
-
Download the latest HiveMQ version from our website
-
Unpack the hivemq.zip file to C:\hivemq.
Install HiveMQ as a Windows service
Follow these steps to install HiveMQ as a Windows service:
-
Download the hivemq-windows-service.zip.
-
Unzip the hivemq-windows-service.zip file.
-
Copy the windows-service folder to your HiveMQ home folder.
-
Open the windows-service folder.
-
Double-click the installService.bat file.
-
Restart your system.
To install a service, you need administrative rights. If you currently lack the correct permission level, right-click the installService.bat file and select Run as administrator. |
Start HiveMQ
The following instructions show how to start HiveMQ after installing:
Double-click the run.bat file.
Keep in mind that a click with the left mouse button (QuickEdit) stops the output of the command line. When you click the command line before "Started HiveMQT in xxx ms" displays, the HiveMQ start up process pauses. To resume the start up, click the right mouse button. Clicks that occur after the HiveMQ start up is complete do not impact the execution of HiveMQ. |
Set the heap that HiveMQ uses
The heap that the HiveMQ process uses can be set as a variable in the run.sh
file (run.bat
on Windows).
Add a line with -Xmx
to the variables.
Example configuration with a 4 GB heap:
############## VARIABLES
JAVA_OPTS="$JAVA_OPTS -Xmx4g"
Make the same changes to the recovery.sh
file (recovery.bat
on Windows).
We recommended that you configure the JVM heap with 50% of the RAM that is available on the system on which you run HiveMQ.
The HiveMQ process can use more RAM than the amount of RAM that you allocate to the JVM heap. |
Install a HiveMQ License
To install a HiveMQ license, move the hivemq.lic
file that you received with your purchase into the license
folder of your HiveMQ installation.
HiveMQ automatically and dynamically recognizes licenses during runtime. There is no need to restart HiveMQ when you add or change your HiveMQ license.
When HiveMQ detects a valid license file, HiveMQ logs a statement similar to the following:
2020-08-20 20:49:44,322 INFO - Found valid site license (hivemq.lic) issued to XXX for max XXX CPU cores, valid until XXX.
Multiple HiveMQ Licenses
New HiveMQ licenses can be added during runtime. When multiple valid license files are available in a HiveMQ installation, HiveMQ automatically selects the license that allows the highest CPU count.
If multiple valid licenses that allow the same CPU count are present, HiveMQ automatically selects the license that is valid longest.
You do not need to restart HiveMQ when you switch or add licenses during runtime.
Get a HiveMQ license
To obtain a HiveMQ license, contact sales@hivemq.com.
|