- Print
- DarkLight
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/sudoers
you 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
- The ssh files must be in
- 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
- Be stored in a folder
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
sisense
user
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
sisense
user
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.
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}