8.4 KiB
AYANOVA INSTALLATION - LINUX LOCAL NETWORK
The "LOCAL NETWORK" installation is appropriate for use within a private office network. This type of installation is not suitable for outside internet access, for outside access use the NGINX proxied AyaNova server install guide instead.
Once the AyaNova server is up and running users on a local area network can access it with their web browsers pointed to the address of the AyaNova server.
No installation is required at the user end to access the AyaNova web app with a supported browser.
Linux distributions
These instructions were compiled and tested on an Ubuntu 20 server OS however any Linux x64 distribution should work provided the ASP.NET Core framework can be installed to it.
AyaNova web app system requirements
Any modern browser (not Internet Explorer) with Javascript enabled on any device with a minimum display width of 360 pixels.
System requirements
- OS : Linux x64 operating system supported by ASP.NET Core
- Internet connection : required to install license and to automatically download the Chromium report rendering engine
- Disk space: minimum 400mb of free disk space
- RAM : 512 MB (minimum), 1 GB (recommended)
- Modern web browser with Javascript enabled
Installation procedure
ASP.NET Core runtime
AyaNova requires the ASP.NET Core runtime version 6.0 or newer. Install the ASP.NET CORE runtime using this guide for your specific OS https://docs.microsoft.com/en-us/dotnet/core/install/linux
PostgreSQL server
AyaNova requires access to a PostgreSQL database server version 12 or newer. If you do not have a PostgreSQL server already available then it must be installed to a location visible to the AyaNova server (same computer or a local computer on the same network).
We recommend not using the version of PostgreSQL provided by your OS package manager as they tend to be out of date.
To install PostgreSQL directly start here https://www.postgresql.org/download/linux/
Set the PostgreSQL password
If you are installing a local copy of PostgreSQL for the first time to use with AyaNova a password will need to be set for access. If you have an existing PostgreSQL server then you can skip this step but will need the Postgre server password in a later step.
Type sudo -u postgres psql
This should open a postgres psql command window
Type ALTER USER postgres PASSWORD 'YOUR_PASSWORD_HERE'; substituting your desired password here and be sure to make a note of it for later.
If successful psql will display "ALTER ROLE" in response and you can close the psql console by typing \q to quit.
Create folders for AyaNova
AyaNova requires two folders to be created, one to hold the AyaNova binary and other server and web application files and one to hold the AyaNova data. AyaNova will need to write to both these locations so be sure you choose locations with appropriate permissions.
Create the AyaNova binary files folder. For server linux we recommend /var/ayanova.
Type sudo mkdir /var/ayanova
Create the data folder, for server linux we recommend and AyaNova defaults to '/var/ayanova/data' in it's configuration.
Type sudo mkdir /var/ayanova/data
Download the AyaNova binaries archive
Download the AyaNova archive to the binary files folder created in the previous step.
https://www.ayanova.com/Downloads/v8/ayanova-linux-x64-server.zip
Using curl utility:
sudo curl -O https://www.ayanova.com/Downloads/v8/ayanova-linux-x64-server.zip
Unzip the archive
Unzip the archive into the AyaNova server binary files folder created in the previous step:
sudo unzip ayanova-linux-x64-server.zip
Set execute permission
In the AyaNova binary files folder:
sudo chmod 777 ./AyaNova
Server configuration
The server must be configured before it will be able to start properly and find the database server.
The AyaNova bin folder has a config.json file which is AyaNova's initial source for configuration settings required for the server to start. It is necessary to edit this file (or provide an alternative source of configuration and specify the password to connect to the PostgreSQL server. For example, if editing the default config.json file:
{
"AYANOVA_USE_URLS": "http://*:7575",
"AYANOVA_DB_CONNECTION":"Server=localhost;Username=postgres;Password=mypasswordforpostgres;Database=AyaNova;",
"AYANOVA_DEFAULT_TRANSLATION":"en",
"AYANOVA_DATA_PATH":"/var/ayanova/data/",
"AYANOVA_LOG_LEVEL": "Info"
}
The AYANOVA_DB_CONNECTION property must be edited and where it has "mypasswordforpostgres" substitute the actual PostgreSQL password to be used that was previously set. If the database server is located on a different computer then the Server= connection string property must be set to the address of that computer.
The AYANOVA_USE_URLS property specifies which TCP / IP Port that AyaNova server should listen on for connections from web browsers. The default value is port 7575 which should be free in most cases, however if you need to use an alternate port due to conflict it must be set here. We recommend using the default 7575 to avoid current or future confusion or conflict with other servers that may be installed or present elsewhere on the network.
Boot and test AyaNova server
Start the server from the AyaNova bin folder `sudo ./AyaNova'
You should see an output in the terminal that indicates the AyaNova server version and that it is booting. Any problems found that prevent boot up will be displayed here.
If all is well then the console window will display "BOOT: COMPLETED - SERVER OPEN" as well as some other configuration data:
Login to AyaNova web app
Open your web browser and navigate to the AyaNova server URL. Assuming the default port of 7575 is in use then the URL would be http://YOUR_AYANOVA_SERVER_IP_ADDRESS:7575
Report rendering issues
AyaNova uses a "headless" Chromium web browser instance for report rendering and will attempt to automatically download it when rendering the first report. On server versions of Linux there may be missing libraries required for this process.
If you receive a popup error when rendering a report you can view it in the web app error log, from any main page in AyaNova select About AyaNova at the bottom of the context menu then select Log from the About page context menu to view a list of the most recent errors encountered in AyaNova web client.
A typical error indicating a missing library for Chromium may look like this:
"Failed to launch browser! /var/ayanova/.local-chromium/Linux-884014/chrome-linux/chrome: error while loading shared libraries: libatk-1.0.so.0: cannot open shared object file: No such file or directory"
This error indicates libatk will need to be installed.
Repeat this process for any missing libraries until report rendering works properly.
test@devtest:/var/ayanova$ ldd ./.local-chromium/Linux-884014/chrome-linux/chrome | grep not libatk-1.0.so.0 => not found libatk-bridge-2.0.so.0 => not found libcups.so.2 => not found libxkbcommon.so.0 => not found libXcomposite.so.1 => not found libXdamage.so.1 => not found libXfixes.so.3 => not found libXrandr.so.2 => not found libgbm.so.1 => not found libpango-1.0.so.0 => not found libcairo.so.2 => not found libatspi.so.0 => not found libxshmfence.so.1 => not found
Starting and stopping AyaNova server
To shut down the AyaNova server cleanly use the AyaNova web app form accessed from Server Operations -> Server State and the menu item Shut down server.
Alternatively you can hard shut down AyaNova using the ctrl-c key combination in the terminal console window where AyaNova is running however this is not recommended.
Getting started and using AyaNova
The next step is to follow the getting started guide for using and administrating AyaNova from a business point of view and also the operations maintenance guide to ensure AyaNova runs smoothly and data is safe and secure.
