# 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 depending on your intended architecture:

# Silent Installation

Silent installation is only recommended for experienced users requiring automated deployments

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

 Parameter Description Default /EXIVITY_PROGRAM_PATH Path to Exivity program files C:\Exivity\program /EXIVITY_HOME_PATH Path to Exivity home files C:\Exiivty\home /ADMIN_USER Exivity admin user admin /ADMIN_PASSWORD Exivity admin password exivity /PGUSER PostgreSQL user postgres /PGPASSWORD PostgreSQL password randomized /PGHOST Hostname for PostgreSQL server localhost /PGPORT Port of PostgreSQL server 5432 /PGDB Exivity database on PostgreSQL server exdb /PGDATA Location of PostgreSQL data files (only used when installing local database instance) \system\pgdata /PSQL_INSTALLED 1 (install locally) or 0 (do not install) 1 /API_INSTALLED 1 (install locally) or 0 (do not install) 1 /WEB_INSTALLED 1 (install locally) or 0 (do not install) 1 /SCHEDULER_INSTALLED 1 (install locally) or 0 (do not install) 1 /PROXIMITYHOST Remote API hostname (required when installing Web component only) localhost /PROXIMITYPORT Remote API port (required when installing Web component only) 8002

### Example to install using all defaults:

<setup>.exe /S

### Example to install using custom path and Exivity admin user:

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

# Updating minor versions

Updating your installation of Exivity to a more recent minor and/or bugfix release (i.e. 3.x.x --> 3.x.x) is straightforward and may be done by installing the new version over the top of the old.

## Manually update

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

## Silent update

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

When upgrading to a more recent major version (i.e. 2.10.2 --> 3.x.x) consult first the release notes to verify any breaking changes that may apply to your installation.

# 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:

To achieve this, first install Exivity on the backend node using the standard procedure described here. Afterwards install the Exivity software on the system that should become the User Portal and only install the Web Component. When asked, specify the API Backend hostname and port to finalize the installation.

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 in the Nginx webproxy.conf. 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.

After completing your installation, 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:

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

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:

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:

If the name in the noproxy list has a leading period, it is a domain match against the provided host name. This way ".example.com" will switch off proxy use for both "www.example.com" as well as for "foo.example.com".

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

# Increase limit of filesize upload in the API

By default, Exivity API has a limit of 2048kb for filesize uploading, should you require to increase it, please modify the file located in %EXIVITY_PROGRAM_PATH%\server\php\php.ini