Installation

Skip to Configuration in case of using Virtual Appliance v7.01+, all necessary is already in place

Under root user (or with sudo).

Stop XorMon service
systemctl stop xormon
Upgrade (adjust version number if necessary)
rpm -Uvh  ./xormon-7.70-1.noarch.rpm
Start XorMon service
systemctl start xormon
Check service status:
systemctl status xormon
  • SQLite 4.2?+ installed on LPAR2RRD/STOR2RRD instance
  • Tomcat/Java ??
  • lpar2rrd v7.70
  • stor2rrd v7.70
  • perl-DBI/DBD ??
Only Linux is supported for hosting XorMon application.
All installation steps on this page do either under root user or use sudo

XorMon user

    Either create special user for XorMon application like xormon with no special user rights or use whatever else name/account for it if you install it on your Linux machine.
    When you are on our Virtual Appliance then definitelly use already existing user account lpar2rrd.
    Below examples use xormon account name.
    useradd -m xormon
    

Java

    Install Java runtime environment version >= 8 from repository or by direct download.

    Debian:
    apt install openjdk-8-jre
    
    Red Hat:
    yum install java-1.8.0
    
    SuSE:
    rpm -ivh jre-8u281-linux-x64.rpm
    
    Check:
    java -version
      openjdk version "1.8.0_101"
    

XorMon Installation

    CentOS, RHEL, Xorux Virtual Appliance (adjust version number if necessary):
    rpm -Uvh ./xormon-7.70-1.noarch.rpm
    
    Debian, Ubuntu (adjust version number if necessary):
    apt-get install xormon_1.0.0-1_all.deb
    
    It will be installed into /opt/xorux/xormon directory
    /opt/xorux/xormon/config/application.properties can be modified to change webapp defaults (e.g. server.port=8443, server.ssl.key-store=selfsigned).
    In case there is only /opt/xorux/xormon/config/application.properties-template then copy it to /opt/xorux/xormon/config/application.properties
    When it runs then it creates its own database and application logs in home directory of the user: ~/xormon-data

    Note: Hostname of the hosted server must be either resolvable via DNS or present in /etc/hosts even as an alias of the localhost

Service (systemd)

    Service must be configured to start XorMon on system start.
    XorMon uses embedded Tomcat.

    Create systemd.service file: /etc/systemd/system/xormon.service
    Change user if appropriate, example uses xormon user (check: User=xormon) , use lpar2rrd account if it already exists (especially on the virtual appliance)
    Make sure that Java really exists in "/usr/bin/java"
    vi /etc/systemd/system/xormon.service
    
    [Unit]
    Description=XorMon webapp
    After=network.target
    
    [Service]
    Type=exec
    
    User=xormon   
    
    WorkingDirectory=/home/xormon
    ExecStart=/usr/bin/java -Xms512M -Xmx1024M -server -XX:+UseG1GC -Dh2.bindAddress=127.0.0.1 -jar /opt/xorux/xormon/xormon.war
    SuccessExitStatus=143
    [Install]
    WantedBy=multi-user.target
    
    Start service:
    systemctl daemon-reload
    systemctl enable xormon
    systemctl start xormon
    
    Check service status:
    systemctl status xormon
    

init.d installation manual

Optional: enable UI to run on port 443 instead of default 8443

    Configure proxy in Apache on XorMon host (install Apache if necessary) under root.
    vi /etc/httpd/conf.d/ssl.conf
    
    and put below code right behind this line: "<VirtualHost _default_:443>"
    Timeout 300
    ProxyTimeout 300
    ProxyBadHeader Ignore
    
    RewriteEngine On
    RewriteCond %{HTTP:Upgrade} =websocket [NC]
    RewriteRule ^/xormon/ws(.*)    wss://127.0.0.1:8443/ws$1 [P,L]
    
    Redirect 301 /xormon /xormon/
    ProxyPass /xormon/ https://127.0.0.1:8443/
    <location /xormon/>
    ProxyPassReverse /
    </location>
    
    ProxyPreserveHost On
    SSLProxyEngine On
    
    # skip self-signed cert verification
    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off
    SSLProxyCheckPeerExpire off
    
    Restart Apache
    systemctl restart httpd.service
    
    Apache2
    enable apache modules and restart Apache:
    a2enmod rewrite
    a2enmod proxy
    a2enmod proxy_http
    
    systemctl restart apache2.service
    

Optional: using external signed certificate

XorMon can use other certificate instead of its self-signed default:
  1. optional-A: If the new certificate isn't in PKCS12 archive, create it by:
    openssl pkcs12 -export -in server.crt -inkey server.key -out xormon.p12 -name xormon -CAfile ca.crt -caname root
    
    See more command options at www.openssl.org/docs/man1.1.1/man1/openssl-pkcs12.html

  2. optional-B: If the new certificate is already in PKCS12 archive, but without alias, you need to create one with:
    keytool -changealias -alias "" -destalias "xormon" -keystore ./keystore.p12 -storetype PKCS12
    
    See more command options at docs.oracle.com/javase/8/docs/technotes/tools/windows/keytool.html

  3. Uncomment and modify configurations server.ssl.* in /opt/xorux/xormon/config/application.properties appropriately:
    server.ssl.key-store-type=PKCS12
    server.ssl.key-store=config/xormon.p12
    server.ssl.key-store-password=s3crEt
    server.ssl.key-alias=xormon
    

Firewall

    If you have enabled firewall on XorMon machine then allow default ports:
    firewall-cmd --zone=public --permanent --add-port=8443/tcp
    firewall-cmd --reload
    

Connection test

    XorMon is available at https://<server>:8443/, (if you have enabled Apache proxy then https://<server>/xormon/)
    Note do not miss the last "/" in the URL when using a proxy
    The default login credentials are username: admin@xormon.com, password: xorux4you

    XorMon login


    If you cannot reach it then try to obtain HTML page locally:
    curl -kL https://localhost:8443/
    

LPAR2RRD/STOR2RRD

    Upgrade to LPAR2RRD v7.10+ and STOR2RRD v7.10+ which are compatible with the latest XorMon 1.0.0-1.

SQLite

    There must be installed SQlite 3.8+ on LPAR2RRD and ST0R2RRD machine(s)
    Check if there is already SQLite available, install it if not:
    sqlite3 -version
      3.27.1 2019-02-08 13:17:39 0eca3dd3d38b31c92b49ca2d311128b74584714d9e7de895b1a6286ef959alt1
    

    Debian
      sudo apt install libsqlite3 libdbd-sqlite3-perl
      
    Red Hat
      sudo yum install perl-DBD-SQLite sqlite sqlite-libs
      
      Use below CentOS packages if your sqlite is below 3.8.

    CentOS 7 (Xorux Virtual Appliance)
    • perl-DBD-SQLite:
      yum install perl-DBD-SQLite
      
      You can even download perl-DBD-SQLite-with_dependencies.x86_64.tgz when above "yum install perl-DBD-SQLite" does not find any source for installation:
      tar xvfz perl-DBD-SQLite-with_dependencies.x86_64.tgz
      yum install ./perl-DBD-SQLite-1.39-3.el7.x86_64.rpm ./perl-DBI-1.627-4.el7.x86_64.rpm ./perl-Net-Daemon-0.48-5.el7.noarch.rpm ./perl-PlRPC-0.2020-14.el7.noarch.rpm
      
    • SQLite:
      CentOS repositories do not contain requested version
      Download and install these packages sqlite-3.26.0-3.el7.x86_64.rpm, sqlite-libs-3.26.0-3.el7.x86_64.rpm
      yum install ./sqlite-3.26.0-3.el7.x86_64.rpm ./sqlite-libs-3.26.0-3.el7.x86_64.rpm
      
    SuSE
      zypper addrepo https://download.opensuse.org/repositories/server:database/openSUSE_Leap_15.2/server:database.repo
      zypper refresh
      zypper install sqlite3
      zypper install perl-DBD-SQLite
      

    AIX
    Make sure all is installed for both products:
    cd /home/lpar2rrd/lpar2rrd
    ./bin/SQLiteDB-test.sh
      OK
    
    cd /home/stor2rrd/stor2rrd
    ./bin/SQLiteDB-test.sh
      OK
    
    If no success then use this cmd to get exact error (it does not print anything if all is fine)
    . etc/lpar2rrd.cfg  # or etc/stor2rrd.cfg
    $PERL -I. -MSQLiteDataWrapper -e 'SQLiteDataWrapper::dbConnect({ db_file => "'$db_tmp'" })'
    

    Enable XorMon connection on LPAR2RRD/STOR2RRD

      Edit <stor2rrd/lpar2rrd working directory>/etc/.magic and enable XorMon application connection.
      Options:
      • export XORMON=1 : enables connection from all IPs
      • export XORMON=192.168.1.1 : enables connection from XorMon running on 192.168.1.1 only, as per now hostname is not supported just IP
      umask 022
      cd /home/lpar2rrd/lpar2rrd/    # or where is your LPAR2RRD home
      vi etc/.magic
      
      export XORMON=192.168.1.1
      
      Do same for STOR2RRD: /home/stor2rrd/stor2rrd/etc/.magic
      Note: it might take up to 1 hour since enabling XORMON=1 till XorMon front-end can succesfully connect to the back-end (backend creates all necessary databases within an hour)

    LPAR2RRD: restart the daemon

      Restart LPAR2RRD daemon to apply XorMon setting under lpar2rrd user account:
      cd /home/lpar2rrd/lpar2rrd
      ./load.sh daemon_stop
      ./load.sh daemon_start
      

    SSL (Apache HTTP) - Optional

      XorMon prefers HTTPS connection to STOR2RRD/LPAR2RRD installations if XorMon is running on separate machine.
      It is a procedure how to set SSL in Apache on LPAR2RRD/STOR2RRD. This is optional stuff.
      Generate self-signed certificate (when asked for Common name, enter hostname or IP of server):
      openssl req -x509 -nodes -days 9999 -newkey rsa:2048 -keyout /home/lpar2rrd/.ssh/apache-selfsigned.key -out /home/lpar2rrd/.ssh/apache-selfsigned.crt
      
      Install mod_ssl:
      sudo  install mod_ssl
      
      Edit SSL module configuration (e.g. /etc/httpd/conf.d/ssl.conf) and change paths to certificate:
      sudo vi /etc/httpd/conf.d/ssl.conf
      
      SSLCertificateFile "/home/lpar2rrd/.ssh/apache-selfsigned.crt"
      SSLCertificateKeyFile "/home/lpar2rrd/.ssh/apache-selfsigned.key"
      
      Test configuration changes:
      sudo apachectl configtest
      
      Restart service:
      sudo systemctl restart httpd
      
      More configuration options https://httpd.apache.org/docs/2.4/ssl/ssl_howto.html

Application access
XorMon is accessible on https://<server>:8443/, (if you have enabled Apache proxy then https://<server>/xormon/)
Note: do not miss the last "/" in the URL when using a proxy
XorMon actually supports access only over the HTTPS protocol.
The default login credentials are username: admin@xormon.com, password: xorux4you

XorMon login


LPARRRD/STOR2RRD back-end conenction
Navigate: UI ➡ Top-right ➡ Settings ➡ Other ➡ Backend and configure path to local STOR2RRD/LPAR2RRD installation or remote HTTPS server.

XorMon back-end

Remote access
  • XorMon is on different machine than LPAR2RRD/STOR2RRD
  • IP/hostname, protocol HTTP or HTTPS
  • Keep path to the application like "/lpar2rrd" or "/stor2rrd", change it if you have other configured path
  • Supply user name and password, if your LPAR2RRD/STOR2RRD UI does not use user authentication then keep it blank
  • You can optionally disable LPAR2RRD/STOR2RRD direct UI, then only XorMon UI will be able to manage it
Local access
  • XorMon is installed on the machine as LPAR2RRD/STOR2RRD
  • You can optionally disable LPAR2RRD/STOR2RRD direct UI, then only XorMon UI will be able to manage it
After save you will see if that connection is successfull or failed.
Check error message and correct problems.
If you have no clue then contact us via support@xorux.com.

Active Directory setup manual.