On-premises

Exivity can be installed in your on-premises data center using the provided installer. You can automatically deploy it using the silent installation command line options or execute it as an interactive installer.

To install Exivity, you'll need the following:

  1. A system that complies with the Exivity minimal system requirements

  2. The Exivity software installation executable

  3. A valid Exivity license key

If you need help meeting one or more of the above requirements, please get in contact with our support department.

Interactive installation

To install Exivity interactively, execute the provided setup executable. Then follow the instructions on screen:

  • Provide a valid license key

  • Pick a folder to install the Exivity program Files

  • Pick a folder that Exivity will use to save its configuration, extraction and reporting files. This is called the Exivity home directory and it is recommended to use a local SSD volume which is not the boot drive.

  • Provide the TCP port for the Exivity API (default: 8002)

  • Provide the TCP port for the Exivity GUI (default: 8001)

  • Choose an admin username and password

  • As the installer completes you will be offered the option to start the Exivity services

Silent Installation

To execute a silent installation the following command line parameters are supported:

<setup>.exe /S /EXIVITY_PROGRAM_PATH=[path] /EXIVITY_HOME_PATH=[path] /ADMIN_USER=[user] /ADMIN_PASSWORD=[password]

EXAMPLE:

<setup>.exe /S /EXIVITY_PROGRAM_PATH="C:\Program Files\Exivity\program" /EXIVITY_HOME_PATH=D:\Exivity\home /ADMIN_USER=master /ADMIN_PASSWORD=P@ssword

Upgrading

Upgrading your installation of Exivity is straightforward and may be done by installing the new version over the top of the old.

Manually upgrade

Execute the setup executable. It will detect the installed version of Exivity, and will automatically upgrade when you click Next

Silent upgrade

When executing <setup>.exe /S, your existing installation will be automatically upgraded.

Installing a valid SSL certificate

Exivity comes as standard with an untrusted self-signed SSL certificate. It is therefore highly recommended to replace the default certificate with an official one, signed by your Certificate Authority. To install a signed certificate, follow this procedure:

  1. Download the 32 bit version of openssl.exe from https://slproweb.com/products/Win32OpenSSL.html, and install this tool on the Exivity server

  2. Use the openssl.exe executable to generate a valid key file on the Exivity server by executing the following command:

    • C:\TEMP>c:\location\to\openssl.exe genrsa -out exivity.key 4096

  3. Run the following command to create a certificate signing request file:

    • C:\TEMP>c:\location\to\openssl.exe req -new -key exivity.key -out exivity.csr

  4. You will be asked to enter general information like company name, city, etc. However, it is important to include the FQDN of the Exivity server when asked for it:

  • 'Common Name (e.g. server FQDN or YOUR name) []'

NOTE: when asked, it is required to not provide a password (leave this field empty and press return), otherwise the Exivity application will not be able to use your certificate.

  1. The generated CSR file should be sent to your Certificate Authority. After processing by your CA, you shoud receive back a .crt file. Rename this file to exivity.crt and copy it, together with your exivity.key file, to the directory %EXIVITY_PROGRAM_PATH%\server\nginx\conf. This should overwrite the existing key and crt files

  2. Restart the Exivity Web Service Windows service to activate your signed certificate.

Configuring a separate web server portal

In some environments it may be desirable to separate the webserver from the backend components. This can be achieved by installing two separate Exivity instances. One instance could be placed in a DMZ and the second instance would then typically be deployed within a local network as shown in the following diagram:

Separating web portal from backend components

To achieve this, first install Exivity on both nodes using the standard procedure described here. After installing the Exivity software on the system that should become the User Portal, create the following file in the directory%EXIVITY_PROGRAM_PATH%/server/nginx/conf/sites-enabled:

userportal.conf
server {
listen 443 http2 ssl;
server_name localhost;
ssl_certificate exivity.crt;
ssl_certificate_key exivity.key;
error_page 497 301 =307 https://$host:$server_port$request_uri;
root web/glass;
index index.html;
charset utf-8;
location ~ /v[0-9]+?/ {
proxy_pass https://HOSTNAME_BACKEND_PORTAL:8002;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port 443;
}
location / {
proxy_pass https://127.0.0.1:8001;
proxy_buffering off;
}
access_log logs/access-webproxy.log;
error_log logs/error-webproxy.log error;
location = /favicon.ico {
access_log off;
log_not_found off;
}
location = /robots.txt {
access_log off;
log_not_found off;
}
client_max_body_size 100m;
}

Make sure to replace HOSTNAME_BACKEND_PORTAL with the actual hostname or IP address of the system that serves as your Exivity Backend Portal.

When using SAML2 as an authentication mechanism for Single Sign On, and users also connect to a User Portal, take special attention to theX-Forwarded-Host and X-Forwarded-Port parameters on lines 19 and 20. These are required when the User Portal is served on a different port (i.e. 443) compared to the backend portal API (i.e. 8002). When this is the case, the forwarded port needs to match the port number of the user portal.

The second item that requires configuration is the config.json in the %EXIVITY_PROGRAM_PATH%/web/glass directory on the User Portal:

config.json
{
"whiteLabel": false,
"apiHost": "https://HOSTNAME_USER_PORTAL"
}

Replace HOSTNAME_USER_PORTAL with the actual hostname or IP address of the system that serves as your Exivity User Portal. In case the User Portal should be accessible from the internet, you will need to ensure to provide the fully qualified domain name of the User Portal.

Once you have applied these changes, restart the Exivity Web Service . You should now be able to access your Exivity User Portal.

Using an Internet proxy when extracting data

In cases where Exivity instance requires internet connectivity (i.e. to obtain Azure or AWS consumption data), and your network infrastructure requires use of a proxy server, it is necessary to configure a system environment variable.

Right click on This PC in an Explorer Window and click on Properties:

System Properties

Then go to Advanced System Settings, then click the Environment Variables button:

Manage System Variables

Now add a new System Variable with the name ALL_PROXY and fill in the address of your proxy server as the value for this variable:

ALL_PROXY variable

In case you do not want to use the proxy for certain address or domains, it is also possible to add an additional variable NO_PROXY:

Skip proxy for certain addresses

After confirming the change, make sure to restart both the Exivity Windows Services.