- 15 Jul 2024
- 6 Minutes to read
- Contributors
- Print
- DarkLight
Online installation
- Updated on 15 Jul 2024
- 6 Minutes to read
- Contributors
- Print
- DarkLight
Online Installation
This documentation is about how to install SISENSE on a Linux system with Internet connection.
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
Supports only x86-64/AMD64 architecture. The ARM64 or s390x (IBM) architectures are currently not supported. You can verify the architecture in place (e.g., Architecture: x86-64) by running the hostnamectl command in Linux.
The Linux operating system versions specified above are also based on the minor release number, and must be taken into account to ensure compatibility.
The Linux operating system must be an official release, and one that has not been customized (i.e. where it was modified to harden the kernel).
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 or be installed thanks to the package manager of the system.
python3
python3 is installed by default in most of the Linux distributions. Make sure that python3-pip is also installed.
nc (netcat)
netcat is installed by default in most of the Linux distributions or be installed thanks to the package manager of the system.
sshpass
sshpass is installed by default in most of the Linux distribution or be installed thanks to the package manager of the system.
jq
jq is installed by default in most of the Linux distribution or be installed thanks to the package manager of the system.
python3-libselinux
python3-libselinux can be installed thanks to the package manager of the system.
dbus (for ubuntu only)
dbus can be instanned on Ubuntu thanks to the aptitude package manager.
For RHEL/Centos Linux, access to dl.fedoraproject.org and all its mirrors (cdn.redhat.com network (details are here) is required for the SISENSE BI Tool installer to install the following packages : python3, python3-pip, nc, sshpass, jq, libselinux-python3.
Network configuration
The server hosting the SISENSE BI Tool must be connected to the Internet and must have network access to the following packages repository list :
Packages repository list to be whitelisted :
- apt.dockerproject.org
- archive.ubuntu.com
- auth.cloud.sisense.com
- bitbucket.org
- bugs.launchpad.net
- dl.fedoraproject.org
- docs.docker.com
- docs.helm.sh
- download.docker.com
- github.com
- gcr.io
- grafana.com
- help.ubuntu.com
- index.docker.io
- kubernetes.io
- l.sisense.com
- mirror.centos.org
- ppa.launchpad.net
- pypi.python.org
- quay.io
- registry-1.docker.io
- storage.googleapis.com
- www.ubuntu.com
- yum.dockerproject.org
DNS Configuration
The DNS must be configured in your network. This is needed :
- to resolve the Docker registry
- for SISENSE component interconnections to function properly (i.e. the DNS server must be accessible from the Kubernetes nodes where SISENSE is deployed)
Whitelisted Resources
The following whitelisted resources must be added :
- cdn.redhat.com (for details, see https://access.redhat.com/articles/1525183)
- pypi.org to install Python modules
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
Docker environment execution (the docker daemon) must be installed on the system in version 20.10.24.
Please refer to official documentation to install Docker.
The sisense user must be a member of docker group.
The docker-buildx-plugin package must be uninstalled. It can create issues during SISENSE installation.
Installation
Configuration file
In the provided package, a file called single_config.yaml allows to configure the installation of the SISENSE BI Tool.
Some properties can be updated to customize the installation. The file can be edited thanks to an editor like nano or vi.
Properties that you can updated :
- ssh_key
- gateway_port
ssh_key : by default, this value is “/home/sisense/.ssh/id_rsa". You can edit this value to indicate the path of private SSH key of the user sisense.
gateway_port : by default, this value is 30845. This is the port used when the BI Tool runs in HTTP. See the following property to have more details.
Installation steps
All the following commands have to be launched with the sisense user
bash biinstall.sh {INTERNAL_IP_ADDRESS} {EXTERNAL_IP_ADDRESS} {IS_SSL} {OPTIONAL_SSL_KEY_PATH} {OPTIONAL_SSL_CERTIFICATE_PATH}
With :
- INTERNAL_IP_ADDRESS : the private IP address of the machine hosting the BI Tool
- EXTERNAL_IP_ADDRESS : the public IP address (internet facing) of the machine hosting the SISENSE BI Tool
- IS_SSL : type 0 if the BI tool runs in HTTP mode, or 1 if it 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.
Do not use sudo to run the command !
For example for a HTTP installation :
bash biinstall.sh "172.31.24.120" "34.45.203.111" 0
And for an HTTPS installation :
bash biinstall.sh "172.31.24.120" "34.45.203.111" 1 "/domain.key" "/domain.crt"
After the installation is complete, a green message appears indicating that the BI tool is listening on your port 443 if the BI Tool runs in HTTPS mode, or on the port gateway_port if the BI tool runs in HTTP only mode .
- Access the web page at the address BI.Host.Scheme://{BI.Host.Base}:{BI.Host.Port}, where {BI.Host.Base} and {BI.Host.Port} are the values of :
- BI.Host.Scheme = https or http depending of your running mode of the BI tool
- BI.Host.Base = YOUR_INTERNAL_IP_ADDRESS or YOUR_EXTERNAL_IP_ADDRESS depending of your network configurations
- BI.Host.Port = 443 or gateway_port depending of your running mode of the BI tool, HTTPS or HTTP
Connect with your admin account then wait for the initialization to end.
Complete the configuration file (by default, “zetalyinstall.cnf”) with the correct information (see below for more information).
Run the following command:
bash post-biinstall.sh {PATH_TO_CNF}
Possible configuration
All the possible configuration are not in the "zetalyinstall.cnf" file by default.
Key | Example or possible values | Description |
---|---|---|
BI.Host.Base | IP (10.44.85.42) or FQDN (zetaly.domain.io) | BI host |
BI.Host.Port | Example: 4456 | BI port |
BI.UserName | Example: sisense@mycompany.com | Sisense sysadmin username |
BI.Password | Example: My_Pas$word | Sisense sysadmin password |
Database.Host.Base | IP (10.44.85.42) or FQDN (zetaly.domain.io) | Zetaly database host |
Database.Host.Port | Example: 4456 | Zetaly database port |
Database.UserName | Example: zetaly_user | Zetaly database username |
Database.Password | Example: my_P@ssword | Zetaly database password for the previous username |
Database.Name | Example: zetalydb | Zetalydatabase name |
Database.Type | postgresql/mssql | Database type |
Elasticubes.ImportAction | skip/overwrite/duplicate | Elasticube importation behavior. |
Skip: If the cube already exists, skip it Overwrite: If the cube already exits, replace the existing one (If the cube already exists, replace the existing cube (all existing data will be lost). Duplicate: Import the cube but without replacing the existing one |