Installing Digital Hive 2024.3 on Linux

Installing Digital Hive 2024.3 on Linux

Overview

The 2024.3 Digital Hive release brings a lot of new capabilities to the market. In order to deliver some of the new features, changes to the underlying technology stack that underpins the Digital Hive solution had to be made. The 2024.3 release includes modernization to both PostgreSQL (Digital Hive Content Store) and ElasticSearch (provides the search capabilities). Although a lot of effort went in to upgrading the components and to minimize the effort required to install Digital Hive, there are some additional installation steps that must be performed to successfully install Digital Hive 2024.3 on Linux.

Info
Installing a new instance of Digital Hive on Linux requires special installation considerations, and the Digital Hive Installation and Configuration Overview article can be followed.

Pre-installation Steps

  1. Create a non-root user to use for the Digital Hive installation
    1. Create user: sudo adduser 'digitalhive' (replace digitalhive with your username of choice)
    2. Add the user created to the superuser group: sudo usermod -aG sudo digitalhive
    3. Switch to the new user: sudo su - digitalhive
  2. Edit the limits.conf file, for example, sudo vi /etc/security/limits.conf
  3. Add the following properties and save the file (include the * and ensure there is a space afterwards)

    * soft nofile 65536

    * hard nofile 65536

    * soft nproc 8192

    * hard nproc 8192

    * soft memlock unlimited

    * hard memlock unlimited

  4. Using sudo, edit sysctl.conf 
     sudo vi /etc/sysctl.conf

  5. Add the following lines and save the file
    #Added for Elasticsearch
    vm.max_map_count=262144

  6. Reboot the server 
    sudo reboot

Postgres Installation Steps (This example uses Ubuntu, the Linux commands will be slightly different on other Linux flavours)

Info
Here is an article that explains how to install PostgreSQL 16 on RHEL-Based Linux

  1. Set up PostgreSQL repositories by installing necessary tools, creating directories and downloading the PostgreSQL signing key
    1. Install the curl tools and ensures that the system has the necessary certificates to verify secure connections:
      sudo apt install curl ca-certificates
    2. Create a directory /usr/share/postgresql-common/pgdg , which will be used to store the signing key:
      sudo install -d /usr/share/postgresql-common/pgdg
    3. Download the PostgreSQL Apt repository signing key: 
      sudo apt install -y postgresql-common
      sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh
  2. Apply the latest Linux updates:  sudo apt-get update
  3. Install PostgreSQL 16 Repository:  sudo apt -y install postgresql
  4. Allow other computers to connect to Postgres (replace <version> with the installed version of PostgreSQL:  
    sudo vi /etc/postgresql/<version>/main/postgresql.conf
  5. Change listen_address from localhost to *, and remove the '#' in front of listen_addresses
    listen_addresses = ‘*’
  6. Ensure PostgreSQL is running by running: sudo systemctl status postgresql
    1. If it's not running, start PostgreSQL: sudo systemctl start postgresql
  7. Set the password for the postgres user:  sudo -u postgres psql template1
  8. Run this SQL:  alter user postgres with encrypted password ‘your_password’;
  9. Type: exit
  10. Change the authentication for the postgres user allowed for the template1 database to use md5 authentication:
    sudo vi /etc/postgresql/<version>/main/pg_hba.conf
  11. Add this line (changing <local network IP> to your private IP):
    hostssl  template1           all               <local network IP>           md5
  12. Restart Postgres:  sudo systemctl restart postgresql.service
  13. Create a Postgres user for the Digital Hive content store
    1. Switch user to postgres
      sudo su postgres
    2. Run postgresql: psql 
  14. At the postgres=# prompt, run this SQL (replacing your_password the password you want)
    1. CREATE ROLE dhadmin WITH LOGIN CREATEROLE INHERIT CONNECTION LIMIT -1 VALID UNTIL '3024-08-10T05:30:17-05:00' PASSWORD 'your_password';
    2. CREATE DATABASE digitalhive WITH OWNER = dhadmin TEMPLATE = template0 ENCODING = 'UTF8' LC_COLLATE = 'C' LC_CTYPE = 'C' CONNECTION LIMIT = -1;
  15. Give the dhadmin user access to the public schema
  16. grant all on schema public to dhadmin;
  17. Exit psql
    exit
Info
You now have a Postgres Digital Hive database that can be used for the Digital Hive content store

Digital Hive Installation Steps

  1. Download Digital Hive 2024.3 - Linux and SFTP to the Linux server
  2. Open a Linux terminal and login as the Digital Hive user
  3. Create a directory in your Digital Hive root, called installer.  For example, in my environment, the Digital Hive user home is /home/digitalhive/DigitalHive and I created a directory in there called installer:  mkdir /home/digitalhive/DigitalHive/installer
  4. If you didn't SFTP into that folder directly, move the file to that directory:  mv DigitalHive-2024.3_linux-x64.tar.gz /home/digitalhive/DigitalHive
    NOTE: 
    if you used root to SFTP the file to the server, then you will have to chown and chgrp the file to the Digital Hive user, For example:
    chown digitalhive DigitalHive-2024.3_linux-x64.tar.gz
    chgrp digitalhive  DigitalHive-2024.3_linux-x64.tar.gz
  5. If you're not logged in as the Digital Hive user, then: su digitalhive
  6. Untar the file: tar -xvf DigitalHive-2024.3_linux-x64.tar
  7. Run the installer with this command:  ./setup.sh
  8. At this prompt: Press 1
  9. Enter Licensee name:  <your license name>
  10. Enter License key:  <your license key>
  11. Press 1 to continue
  12. Press spacebar until this prompt:  Press 1 to accept, 2 to reject, 3 to display
  13. Enter 1
  14. Enter 0 (or press Enter) to Install
  15. Enter 1
  16. Enter 0 or Press Enter (for Express)
  17. Enter 0 or Press Enter (for full installation)
  18. Enter 1

  19. Enter the Digital Hive installation path (or press enter to accept the default path)
  20. Enter (assuming it is correct)
  21. Enter 1

  22. Press Enter or put in whatever name you want at this prompt
  23. Enter a password and confirm the password
  24. Enter 1
  25. Enter the hostname or IP of the server (this example uses dhserver)
  26. Enter the name of the database that you created

  27. Press Enter (if the port is correct) or enter the correct port (in this example 5433)
  28. Enter the Digital Hive user that you created earlier, in this example dhadmin
  29. Enter and confirm that Digital Hive user password

  30. Enter 1
  31. Enter 1 (if you want to install IQ)
  32. Enter 1
  33. Press Enter for all of these ports (or enter a port that you want to use)

  34. Enter 1

  35. Installation will begin and end with a message stating that it was successful

Info
Digital Hive should be successfully installed now


    • Related Articles

    • Installing the Digital Hive Software

      Question How do you install Digital Hive? Answer Digital Hive can be installed in Windows or Linux environments. Installing Digital Hive on Windows Prerequisites for installing Digital Hive on Windows Microsoft® Visual C++ 2013 runtime library ...
    • Upgrading Digital Hive on Linux to the 2024.3 Release

      Overview The 2024.3 Digital Hive release brings a lot of new capabilities to the market. In order to deliver some of the new features, changes to the underlying technology stack that underpins the Digital Hive solution had to be made. The 2024.3 ...
    • Single Sign On with Digital Hive on Linux

      Question Is it possible to set up Single Sign On when Digital Hive is on Linux? Answer Yes, it is possible using OAUTH2, OpenID Connect (OIDC), and OKTA with Azure. First you will need to create a Digital hive Azure App Registration, you can refer to ...
    • Digital Hive Architecture Overview

      Overview Digital Hive is a lightweight, web-based application that is both easy to install as well as to maintain and manage. Other than the Microsoft C++ redistributable (https://www.microsoft.com/en-ca/download/details.aspx?id=40784), there are no ...
    • Digital Hive Installation and Configuration Overview

      Overview This article serves as a collection of all the steps required to install and configure the Digital Hive solution. Prerequisites Digital Hive can be installed on either Windows or Linux based systems. From a server sizing perspective, the ...