Offline Installation
    • 11 Apr 2024
    • 5 Minutes to read
    • Contributors
    • Dark
      Light

    Offline Installation

    • Dark
      Light

    Article summary

    Offline Installation

    This documentation is about how to install SISENSE on a Linux system.

    Current Limitations

    The SISENSE BI Tool deployment is certified to run on the following Linux operating systems:

    • Ubuntu
      • 18.04 LTS
      • 20.04 LTS
      • 22.04 LTS
    • CentOS
      • 8 Stream
    • RHEL
      • 8.0, 8.4, 8.5, 8.6, 8.7, 8.8

    Requirements

    The package must be uploaded directly on the host machine, which must have the following elements:

    • RAM : 16 GB minimum
    • CPU : 8 Core
    • 150 GB minimum on /var
    • 500 GB minimum on/opt/sisense mounted on a dedicated disk (Sisense requires SSDs. Required space for ElastiCube files + Plugins + Builds + Backup archives. Sisense recommends a second disk size of at least the size of all ElastiCubes x 2)
    • Bash shell for .sh scripts execution
    • Mandatory packages : see related section below

    Mandatory packages

    These tools must be installed on the server.

    Tar

    Tar is installed by default in most of the Linux distributions.

    Unzip

    Unzip can be found here for x86-64 architectures : Unzip binaries

    Docker

    Docker must be installed on version 20.10.24. To install Docker in an offline mode, please refer
    to this documentation : Docker offline installation

    jq

    jq can be downloaded for x86-64 architecture here : jq binaries

    yq

    yq can be downloaded here for different architectures : yq binaries
    Choose the latest version, go to the "Assets" section and choose the correct archive for your architecture.

    python3

    python3 is installed by default in most of the Linux distributions.

    Configuration of the user "sisense"

    An user sisense must be created on the system.

    The user named sisense must also adhere to the following:

    • Must be in the sudo (or wheel for RHEL based distributions)
    • Must be in the docker group
    • User and Group ID must be equal to 1000
    • In /etc/sudoersyou must add the following line at the end of the file : sisense ALL=(ALL) NOPASSWD: ALL
    • Must be able to connect via ssh from the computer to the host machine without a password (i.e. ssh key configured):
      • The ssh files must be in /home/sisense/.ssh
      • Passphrase must be empty
    • Must have read / write permissions on the /opt/sisense directory and the ownership
    • For an HTTPS installation, the key and the certificate must :
      • Be stored in a folder /home/sisense/ssl
      • The certificate must be called bi.crt
      • The key must be called bi.key
      • The folder must be owned by the sisense user

    Docker

    The docker-buildx-plugin package must be uninstalled. It can create issues during SISENSE installation.

    Docker Registry

    The Docker Registry is a server-side application that stores and lets you distribute Docker images.

    SISENSE needs to have access to a Docker Registry in HTTPS and authenticated. The account you use to connect to the Docker Registry can push and pull images from the Docker Registry.

    It's NOT the same thing as Docker execution environment. It's possible to have a Docker environment on a server without a Docker Registry.

    At leat 20 Go of disk storage are asked to push the images

    Why SISENSE solution needs a Docker Registry ?

    At the beginning of the installation process, the SISENSE installer will push the Docker offline images (saved as tar.gz archives) to the Docker Registry. These images will be later pulled and used to run the SISENSE solution.

    To have an authenticated Docker Registry with valid certificates is mandatory, because without that, the commands to push and pull images will fail. The installer of SISENSE cannot work on a HTTP only Docker Registry, it needs HTTPS.

    Installation of the Docker Registry provided by Zetaly

    Prerequisites

    A Docker environment must be installed.

    Execution

    The provided package contains an offline Docker Registry called Distribution Registry, in an archive
    docker-registry.tar.gz

    This Docker Registry will be launched as a Docker container.

    All the following commands have to be launched with the sisenseuser

    The first step is to load the image of Docker Registry.

    docker load --input docker-registry.tar.gz

    Check the correct loading of the image with :

    docker images

    A line with REPOSITORY = registry and TAG = 2.8.3 must appear.

    Run the following commands :
    mkdir registry

    mkdir registry/auth

    mkdir registry/certs

    htpasswd -cB htpasswd admin (replace admin by any other username)

    -> Enter password

    cp htpasswd registry/auth

    Copy the SSL certificate and its key into the folder registry/certs and rename it domain.key dnd domain.crt.

    Run the following command :

    docker run -d \ -p 5000:5000 \ --restart=always \ --name registry \ -v "./registry/auth":/auth \ -e "REGISTRY_AUTH=htpasswd" \ -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \ -e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \ -v "./registry/certs":/certs \ -v "./registry":/var/lib/registry \ -e "REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt" \ -e "REGISTRY_HTTP_TLS_KEY=/certs/domain.key" \ registry:2.8.3

    Check the correct run of the container with :

    docker ps

    Installing SISENSE

    Before begin the installation, be sure that the PostgreSQL engine is reachable by the SISENSE server.

    There are two steps during the installation. First, the installer will push the different images of SISENSE in the Docker Registry.
    Secondly, the process of installation starts itself.

    All the following commands have to be launched with the sisenseuser

    Launch:

    bash biofflineinstall.sh SISENSE_HOST_IP DOCKER_REGISTRY_IP DOCKER_REGISTRY_USER IS_SSL OPTIONAL_SSL_KEY_PATH OPTIONAL_SSL_CERTIFICATE_PATH

    With :

    • SISENSE_HOST_IP is the address of the machine.
    • DOCKER_REGISTRY_IP is the IP or FQDN of the Docker Registry. The protocol can be skipped.
    • DOCKER_REGISTRY_USER is the user of the Docker Registry that can push the images. Use the username that was used during the htpasswd file creation.
    • IS_SSL : type 0 if Sisense runs in HTTP mode, or 1 if Sisense runs on HTTPS mode .
      • If IS_SSL = 1, you must provide two additional parameters, the SSL key path and the SSL certificate path
      • If IS_SSL = 0, you can keep the two fields empty

    All the values must be put into double-quotes except 0 or 1.

    For example for a HTTP installation :
    bash biinstall.sh "172.31.24.120" "registry.sandbox.zetaly.io" "admin" 0

    And for an HTTPS installation :
    bash biinstall.sh "172.31.24.120" "registry.sandbox.zetaly.io" "admin" 1 "/domain.key" "/domain.crt"

    The installer asks you the password of the user {DOCKER_REGISTRY_USER} of the Docker Registry. After typing it, the images will be push one by one to the Docker Registry.

    To check everything is good, go on {DOCKER_REGISTRY_IP}/v2/_catalog on a browser or use curl {DOCKER_REGISTRY_IP}/v2/_catalog.

    After the images re pushed, a new prompt appears.

    Type:
    cd zetaly-sisense-offline-L2023.6.0.260/

    cd sisense-L2023.6.0.260

    ./sisense.sh single_config.yaml

    The command line asks for user DOCKER_REGISTRY_USER login and password. Type them and continue the process.

    After, it seems like for the online installation.

    When the installation ends, go the page of Sisense first initialisation.

    image.png

    Choose "Behind a firewall" under the two fields of authentication.

    Here, you have to past a key that you can obtain from the Support team. Copy the printed ID and ask the support team to create a Sisense account and to associate this account to the ID. After, they will give you a key you will paste on the field.

    Connect with your admin account then wait for the initialization to end.

    Complete the configuration file (by default, zetalyinstall.cnf) with the correct information.

    Run the following command:

    ̀bash post-biinstall.sh {PATH_TO_CNF}


    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.