Skip to content

504. Install and start Foretify Manager

This section provides steps for installing Foretify Manager, creating a Foretify Manager service, and using Foretify Manager on the client-side.

Important Notes

Installing an older version of Foretify Manager over an existing newer version can cause backward compatibility issues that require the database to be reset. It is recommended that you do not downgrade your Foretify Manager version.

All configuration files, such as application.properties, should be placed in a dedicated Foretellix folder, rather than in the versioned install directories. This folder can also contain the installation itself.

Service files must be updated so that the application’s WorkingDirectory points to this folder, ensuring that the application can locate its configuration at runtime. This setup protects configuration and persistent files from being overwritten during version updates.

504.1 Install Foretify Manager

  1. Download the Foretify Manager tarball and extract its contents in a location of your choice. For example, /opt/ftx:

    Shell commands: download Foretify Manager archive
    $ cd /opt/ftx
    $ sftp <ftp_user>@18.197.237.108
    > get download/fmanager_16_07_2021_ubuntu.tar.gz
    > get download/fmanager_16_07_2021_ubuntu.tar.gz.sha512
    > exit
    
  2. Check archive integrity.

    Shell commands: check archive integrity
    $ sha512sum -c fmanager_16_07_2021_ubuntu.tar.gz.sha512
    
    If this triggers an error, try downloading the archive again. If it persists, please contact Foretellix.

  3. Extract the archive files and create a symbolic link to the installation. For example:

    Shell commands: extract files and create link
    $ tar xzvf fmanager_16_07_2021_ubuntu.tar.gz
    $ ln -s fmanager_16_07_2021_ubuntu fmanager
    
  4. Change the ownership to allow root and users to read and execute the scripts:

    Shell commands: change ownership
    $ sudo chown -R $USER:users fmanager_12_10_2020
    $ sudo chown -h $USER:users fmanager
    

504.1.1 Logging

By default, Foretify Manager writes log files in /var/log/foretellix.

Make sure this directory exists and that write privileges are granted:

Shell commands: create default log directory
$ sudo mkdir /var/log/foretellix
$ sudo chmod 777 /var/log/foretellix

504.1.1.1 Setting a different location for logs

A different directory can be set as an output destination for the log files by configuring the following setting in application.properties:

application.properties file syntax
server.logs.dir=/path/to/fmanager/logs

504.1.1.2 Setting logs to output to console

Logging to the console instead of files can be done by configuring the following setting in application.properties:

application.properties file syntax
server.logs.appender=CONSOLE

504.1.2 Session management

All Foretify Manager sessions require checking out a license, and are timed out 12 hours after the last API request by default.

In addition, all browser sessions send a heartbeat/"keep-alive" message once a minute. As a result, inactive sessions, such as closed browser tabs, are identified and their acquired licenses can be released after a few minutes.

These settings are controlled by the following application.properties configurations:

application.properties file syntax
fmanager.session.maxInactiveInterval=12h
fmanager.session.heartbeatInterval=1m
fmanager.session.missingHeartbeatInterval=5m

504.2 Create the Foretify Manager service

Foretify Manager must be run as a service.

  1. Create the service file:

    Shell commands: create service file
    $ sudo touch /usr/lib/systemd/system/fmanager.service
    $ sudo vi /usr/lib/systemd/system/fmanager.service
    
  2. Add the following to the fmanager.service file:

    fmanager.service file syntax
    [Unit]
    Description=fmanager server daemon
    After=postgresql.service
    After=elasticsearch.service
    After=syslog.target
    
    [Service]
    EnvironmentFile=/etc/foretellix/fmanager.env
    WorkingDirectory=/opt/ftx/fmanager/server/bin/
    ExecStart=/opt/ftx/fmanager/server/bin/fmanager_server
    SuccessExitStatus=143
    Restart=always  
    RestartSec=30
    
    [Install]
    WantedBy=multi-user.target
    

    Make sure that WorkingDirectory is the path where you have your application.properties.

  3. Create the fmanager.env file used by fmanager.service:

    Shell commands: create env file
    $ sudo touch /etc/foretellix/fmanager.env
    $ sudo vi /etc/foretellix/fmanager.env
    
  4. Add the following contents to fmanager.env, using the correct addresses:

    fmanager.env file syntax
    FTX_LIC_FILE=27001@license_server
    FTX_ELASTICSEARCH_HOST="http://127.0.0.1:9200"
    FTX_POSTGRESQL_HOST="127.0.0.1:5432"
    

    Make sure the protocol (HTTP/S), IP addresses, and port numbers are correct. The above example is the default.

504.2.1 Start the Foretify Manager service

To start the Foretify Manager service execute the following commands:

Shell commands: start fmanger service
$ sudo systemctl enable fmanager.service
$ sudo systemctl start fmanager.service
$ sudo systemctl status fmanager.service

The status command should indicate the service has started and that it is active and enabled.

504.3 Manage users

504.3.1 Create user accounts

Foretify Manager provides a built-in administrator user named admin@fmanager.com with password admin.

Additional users can be created using the create_user utility.

Note

Possible user roles, set by the --role parameter provided to the create_user utility, are:

  • ADMIN: Complete administrative privileges including creating user accounts, data upload to the server, and data analysis. A license is checked out at login or when using Python utilities.
  • USER: Complete user privileges including data upload to the server and data analysis. A license is checked out at login or when using Python utilities. This is default.
  • DATA_UPLOADER: Allowed only to upload VPlans or run data to the server. No license is checked out.
Shell command: create user
$ create_user --user my_username --email myemail --host 138.54.93.29 --port 8443 --role USER

504.3.2 Change user passwords

Users can change their password using the change_password utility.

Note

It is recommended to change the administrator user's default password during installation.

Note

The new password needs to be at least 5 characters long, and it can only contain letters, digits, and any of the !@#$%^&*()[]{}-=_+? special characters.

Shell command: change password
$ change_password --user my_username --host 138.54.93.29 --port 8443

504.4 Using Foretify Manager's web application (GUI)

Foretify Manager GUI is a web application, so you will use a browser to open it. The preferred browser is Chrome.

To start the Foretify Manager GUI:

  1. Open the Chrome browser.

  2. Type in the URL, for example:

    URL syntax: :
    http://138.54.93.29:8443
    

    You should see the login dialog.

  3. Login using the credentials for the default user or for one of the users you created.

504.5 Using Foretify Manager's Python SDK

Foretify Manager provides a Python SDK package, allowing the development of Python applications using the server's API.

For additional information on installation and usage of Python SDK, see Foretify Manager API (Python SDK) reference.