User Tools

Site Tools


Install EASA on Linux (RHEL)

These steps are for a Red Hat Enterprise Linux distribution but should be similar for any redhat-variant.

For Ubuntu instructions see Install EASA on Linux (Ubuntu).



A. Prerequisites

  • MySQL version 5.7.18 and above
  • Java 8 and csh to run EASA installer
  • <SERVERDATA> must be owned by non-root user
  • Install and Run easa with non-root user via sudo command
  • Any remote EASAP Server must have access to the MySQL instance on the EASA Server

B. Installation Steps

Let's setup EASA Linux.

This example uses Red Hat Enterprise Linux but the steps should be very similar for any Redhat-variant distribution.

  1. Remove MariaDB which is installed by default in RHEL
    • # sudo yum remove mariadb-server -y
  2. Install MySQL (If not installed yet). Choose an installer suitable for your linux distro,
    • For RHEL run the following commands,
      • # wget https://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
      • # sudo rpm -ivh mysql57-community-release-el7-8.noarch.rpm ← requires mysql version 5.7.18 or later
      • # sudo yum install mysql-server -y
      • # sudo systemctl start mysqld ← start mysql among other tasks a temporary password is generated
      • # sudo grep 'temporary password' /var/log/mysqld.log ← returns the temporary mysql root password
      • # sudo mysql_secure_installation ← adjust security options, we recommend 'Yes' to each of these options
  3. Save the script to a local folder → 6.1.1-mysql.sql
  4. At a command prompt, in the folder above, run mysql -u root -p < 6.1.1-mysql.sql
    • Required databases, tables, and data will be created in mysql
    • We may see our new schema with the following mysql commands,
      • show databases;
      • use easa; show tables;
      • use excel; show tables;
      • use excelTesting; show tables;
      • use stockdata; show tables;
  5. Contact support@easasoftware.com for the proprietary SQL to update the three temporary MySQL user:password pairs
  6. Install Java 8 if not yet installed.
  7. Contact us for link to download the EASA installer for Linux: support@easasoftware.com, then download it.
  8. Run EASA installer as non-root user with sudo command
  9. Install <EASAROOT> and <SERVERDATA> in suitable locations (ie. /usr/local/)
  10. Change owner of <SERVERDATA> directory to the non-root user using chown:
    • sudo chown –R user <SERVERDATA>/
  11. For cluster installations, share easa-share folder with Network Sharing. In a window manager:
    • Right-click on the folder
    • Click properties → share
      • → This will prompt user to install Samba, follow on-screen instructions.
    • Configure the EASA Server to use remote jsf under <SERVERDATA>/easa/admin/config/context.properties
  12. Start the EASA server
  13. Let's check it, open a browser and connect to http://localhost/easa

C. Configure remote access to MySQL (optional)

We provide a simplified database creation script as a reference implementation for a customer unfamiliar with MySQL administration; for the very simplest EASA Linux installation, the EASA Server and MySQL will reside on a single physical machine. In practice a remote EASAP Server or Compute Server may be needed and so we might want to make a few changes to the default MySQL script or run the follow statements after installation.

Here we grant access for a remote user of the database.

  1. Create a new user in the MySQL for remote connection
    • (ie. GRANT ALL ON *.* TO ‘remoteuser’@’remote jsf ip address’ IDENTIFIED BY ‘remoteuserpass’ )
  2. For cluster installations it is better to use the ip address rather than machine name. Here we create a single remote user with access to the MySQL server for testing. Please follow these steps
    • GRANT ALL ON easa.* TO ‘remoteuser’@’%’;
    • GRANT ALL ON easa.* TO ‘remoteuser’@’localhost’;
    • GRANT ALL ON easa.* TO ‘remoteuser’@’IP_address_EASA Server’;
    • GRANT ALL ON easa.* TO ‘remoteuser’@’IP_of_remote_EASAP Server’;
    • Do these steps for the following databases: stockdata, excel, excelTesting
  3. FLUSH PRIVILEGES after creating user
  4. Edit the file under /etc/mysql/mysql.conf.d/mysqld.cnf and change the property bind-address to 0.0.0.0 to allow access from a remote client (Be aware this may pose a security issues in production, yet for testing this should suffice)
  5. Restart mysql by issuing sudo service mysql restart
  6. For the following three files
    • <SERVERDATA>/webapps/easa-share/admin/config
      • excel.cfg.xml
      • excelTesting.cfg.xml
    • <SERVERDATA>/webapps/easa/admin/config
      • easa.cfg.xml
    • Change any instance of localhost to the ip address of the unix machine
    • Configure the user and password to the remoteuser and its password
  7. Restart the EASA Server
  8. Login to the EASA Server as admin and change the database configuration under,
    • EASA→Configure→Databases→Configure Databases→StockData
      • URL –> use the IP address of the MySQL machine rather than localhost
      • User Name –> remoteuser
      • Password –> remoteuser's password
      • Driver name → com.mysql.jdbc.Driver
  9. We may now add the EASAP Server and Excel Server under Compute Server web page use the IP address instead of the machine name

D. Configure a Windows machine as an EASAP/Excel Server (optional)

  1. Install EASAP Server and Excel Server components of EASA, certify the machine has 32-bit Microsoft Excel, do not run the service yet (see Setup EASA 6.1 on Windows with a local database)
  2. Configure <SERVERDATA>/jsf-easa/admin/config/context.properties
  3. Modify the properties below: (use IP addresses)
    • easa.server.public=http://rhel_machine_ip/easa
    • jsf.public.url=http://easap_excel_machine_ip/jsf-easa
    • excel.provider=local
  4. Configure the two files <EASAROOT>/webapps/jsf-easa/WEB-INF/classes/excel.cfg.xml and excelTesting.cfg.xml
    • Change the address from localhost to the ip address of the Linux machine
    • Change the user and password to remoteuser created earlier and its password

When dealing with a mixture of Linux and Windows, it is recommended to use IP addresses rather than the machine names to avoid DNS configuration or problems.


E. Run 6.1.1-mysql.sql

Run 6.1.1-mysql.sql with admin priveleges to create the necessary databases, tables and data required for EASA.