Step1: Verify Pre-requisites for Linux Installation

System Requirements

  • We recommend installing Skedler Reports in a separate VM or Docker container or server.
  • Linux Operating System with x86-64-bit architecture
    • Ubuntu version 12.04 and above
    • Debian version 7 and above
  • Minimum of 2 CPU cores and 8 GB of RAM is recommended for deploying Skedler Reports

Library Dependencies


  • libnss3 library

    • Debian/Ubuntu – sudo apt-get install libnss3
    • CentOS/RedHat – sudo yum install libnss3.so libnssutil3.


  • Font config libraries

    • Debian/Ubuntu – sudo apt-get install libfontconfig
    • CentOS/RedHat – sudo yum install fontconfig


Skedler Reports requires hostname of the server in which Skedler Reports is installed to be configured in /etc/hosts.

1.  Check hostname by giving this command: 

     $>hostname   

In reporting.yml the host parameter is the host in which skedler reports binds.

2.  If the host is configured as 127.0.0.1 then make sure you have an entry in /etc/hosts as mentioned below,

     127.0.0.1 localhost

     Note: If you are binding skedler reports to localhost you can't access it from outside.      

3. However. If the bind address is 0.0.0.0, that means skedler reports binds to any IP (configured for your system). In this case, your entry in the host's file(/etc/hosts) should be

    <ipaddress> <hostname>

4.  If the host(IP address of the server) in reporting.yml is changed other than the default value 0.0.0.0 then there should be an entry for the host in /etc/hosts like

     <ipaddress> <hostname>

 5.  Reboot the system.

       

Note: If you are using any proxy server add your hostname to a no_proxy list in the file /etc/environment add the following line,

           no_proxy="<ipaddress>,<hostname>"


Elasticsearch, Kibana, Grafana version and Open Distro for Elasticsearch

  • Elasticsearch: 5.x – 7.0.x

  • Kibana: 5.x – 7.0.x

  • Grafana: 4.x – 6.1.x

  • Open Distro for Elasticsearch: 0.8.0 - 0.9.0


Step 2: Download

  • Download the latest version of Skedler Reports from Download page.


Step 3: Extract

  • Untar the skedler.tar.gz file to the desired folder (e.g., /opt). For convenience, let us call this folder as $skedler_home.


Step 4: Configure reporting.yml

  • Go to config folder using the command cd config.
  • Open reporting.yml (e.g., vi /opt/skedler/config/reporting.yml) 
    • Skedler security configuration
      • To use the security plugin and therefore, the authenticated users of ELK or Grafana for user-based report creation and generation, follow the below configuration
        Uncomment the variable skedler_anonymous_access and set the value to `false`.
      • For example,
        
        # To use security users of ELK or Grafana for user-based report creation and generation, uncomment the variable and set the value to `false`. By default the variable value is set to `true`
        
        skedler_anonymous_access: false


    • Datastore configuration

      • Skedler needs a datastore to store Skedler metadata and history data. By default Skedler uses Internal Database as a Datastore. Alternatively, you can configure either Elasticsearch or an external  "mysql" or "sqlite"  database as a Datastore.

        • If you would like to use Elasticsearch as a Datastore (especially if you are upgrading from v3.x), follow the configuration shown below:
          1. Add Elasticsearch URL with the port (even if the port is 80) in the reporting.yml file in the following format <protocol>://<server>:<port>

          # The Elasticsearch instance to use for all your queries.
          
          elasticsearch_url: "http://localhost:9200"

          2. If any security plugin is configured for Elasticsearch such as X-pack or Search Guard or ReadOnlyRest or Basic Auth, uncomment the variable and configure the variable with the respective value given below:

          # If Elasticsearch uses security or basic auth, add the security username and password here for Skedler.
          
          #skedler_elasticsearch_username: user
          #skedler_elasticsearch_password: pass


          On Advanced Configuration refer to the following article Reporting.yml & ReportEngine Configuration

      • If you would like to use Internal Database as a Datastore, follow the configuration shown below,
        • Skedler uses an embedded database to store metadata and history data. The embedded database is located at,

          For linux, /var/lib/skedler/skedler.db and /var/lib/skedler/skedlerHistory.db 
          For windows, C:\skedler\skedler.db and C:\skedler\skedlerHistory.db

           


Step 5: Install Skedler Reports

  • Provide the required permission to install.sh in $skedler home script file using the command
  • cd $skedler_home
  • sudo chmod u+x install_as_service.sh
  • Install Skedler Reports using the below command. Run install.sh as sudo user

             sudo ./install_as_service.sh


Step 6: Start Skedler Reports

Starting Skedler Reports manually

Start the application from $skedler_home folder by using the command bin/skedler


Starting Skedler Reports in debug mode
bin/skedler debug


To Start the application as service run the following command from $skedler_home

Start Skedler Reports as service

sudo service skedler start

 

To stop Skedler Reports as service

sudo service skedler stop



Step 7: Access Skedler Reports

Skedler Reports can be accessed from the following URL http://<yourServer>:3000. 


Step 8: Configure Skedler Reports Settings

To configure Skedler Reports settings refer the How to configure Datasource and Notification Channel details.


You are now ready to start scheduling Reports. 


Refer to How to create and schedule a report based on Kibana dashboard to create reports. 



Step 9: License Upgrade

Activation is required for purchased product license key. If you purchase Skedler Reports license, you will receive a license key by email.  

Once Skedler has launched it operates in Enterprise trial with a validity of  21 days. Once the Enterprise trial expires, the product moves to Community Edition and operate withs by limited functionality.


Refer to Upgrade License


References