Installation

Overview

This guide provides all the steps required to complete installation of Wildfly application server.

Prerequisites

In order to deploy CRM.COM software the following prerequisites should be in place.

  • Linux CentOS or RedHat Ent version 6 or 7
  • The following packages should be installed:
    • wget
    • rar
    • rsync
    • At least 16 GB memory
    • At least 100GB of disk space allocated to /opt directory
    • At least 10GB of disk space allocated to /install directory

Note that as of this writing the CRM.COM version is 10.1.

 

Installation process

The following section includes a step by step guide to complete the application server installation.

Install necessary Linux packages

Use the following commands to install the required Linux packages:

 $ sudo yum install -y wget
$ sudo yum install -y rsync
$ sudo wget http://repository.it4i.cz/mirrors/repoforge/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
$ sudo rpm -i rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
$ sudo yum install -y rar
$ sudo yum install -y unrar

Modify the security limits for wildfly user as specified below:

$ sudo vi /etc/security/limits.conf

Append the following line at the end of the file:

wildfly     soft nofile 20000
wildfly     hard nofile 20000
wildfly     soft nproc unlimited
wildfly     hard nproc unlimited

 

Copy the installation archive provided by CRM.COM to the /install directory

CRM.COM will provide an archive file that includes all necessary installation files to complete the installation. Extract the contents of the archive into the /install directory as described below:

$ cd /install
$ tar zxf crm_r10_rhel6_7_wildfly_10.tar.gz

 

Install required java version jdk1.8.0_72

CRM.COM requires java jdk1.8.0_72. Follow steps below to install it.

First extract the java archive into /opt directory:

$ cd /opt
$ sudo tar zxf /install/java/jdk-8u72-linux-x64.tar.gz
$ cd /opt/jdk1.8.0_72/
$ sudo alternatives --install /usr/bin/java java /opt/jdk1.8.0_72/bin/java 2

Execute the following command:

 $ sudo alternatives --config java

and make sure that java jdk1.8.0_72 is selected as in the example below:

 There are 2 programs which provide 'java'.
  Selection    Command
-----------------------------------------------
*+ 1           /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64/jre/bin/java
   2           /opt/jdk1.8.0_72/bin/java

Enter to keep the current selection[+], or type selection number: 2

Finally execute the following commands:

$ sudo alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_72/bin/jar 2
$ sudo alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_72/bin/javac 2
$ sudo alternatives --set jar /opt/jdk1.8.0_72/bin/jar
$ sudo alternatives --set javac /opt/jdk1.8.0_72/bin/javac

Confirm that the default java is now jdk1.8.0_72

$ java -version
java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)
$

 

Install Wildfly

Follow the instructions below to install Wildfly:

$ cd /install/bin
$ sudo ./install.sh

After successful installation you change the Wildfly admin user password using the following command:

$ sudo /opt/wildfly/bin/add-user.sh -s -u admin -p "<new password>"

Also you should change the java heap size to the appropriate value according to the application server available memory.

To change the min and max heap size values edit the following file:

 $ sudo vi /opt/wildfly/bin/standalone.conf

Locate the line:

JAVA_OPTS="-Xms2g -Xmx6g -XX:MetaspaceSize=6g -XX:MaxMetaspaceSize=9g -Djava.net.preferIPv4Stack=true" 

And modify -Xms (min) and -Xmx (max) values accordingly.

 

Now you should be able to access the application management console using the following URL:

http://<hostname>:9990

 

Connect to your database

The next step is to create JDBC connections to your database. The examples shown below assume that the database is Oracle.

CRM.COM application needs at least two database schemas:

  • The Ecenter schema (for example ECENTER)
  • One Organisation schema (ORG1)

To configure JDBC connections in Wildfly:

 

  • Navigate to: Configuration->subsystems->Datasources->XA
  • And the press  button

 

  • Select Oracle XA Datasource and press Next

 

You can choose any name for the JDBC connection but it is better to reflect the fact that this is the ecenter.

On the other hand, the JNDI name must be named java:/ecenter. This is how CRM.COM application locates the ecenter schema. CRM.COM will not be able to connect to any organisation if the JNDI name is not specified exactly as java:/ecenter

  • Press Next

  • Select Detected Driver, select oracle and press Next

  • Click on the value parameter and change the URL to the appropriate one for your environment. e.g. jdbc:oracle:thin:@cyn1ora001:1521:crm
  • Press Next
  • Specify username and password for your schema

  • Press Next

  • Press Test Connection

At this point you should get a successful message.

  • Press OK
  • Press Finish to exit

 

  • Change the default pool size by navigating again to: Configuration->subsystems->Datasources->XA
  • Select the XA Datasource and click on View
  • Select Pool

 

    • Enter 1 for Min Pool Size
    • Enter 1 for Initial Pool size
    • Enter 600 for Max Pool Size
    • Select EntirePool for Flush Strategy
  • Press Save

 

Repeat the process for your Organisation schema.

Please note that for the organisation JDBC connection the JNDI name should be named as follows: java:/<MPID>

where MPID should be the lower case value of the field MPID in table MASTERPARTNERS that exists in the ecenter schema. For example, if the MPID value is ‘ORG1’ then the JNDI name should be java:/org1

 

 

 

Install CRM.COM

Now that Wildfly is installed and configured, the next step is to install the CRM.COM application.  Before installing CRM.COM application make sure that you locate the EAR file and possible the custom rar file in the following directory: /install/crm.com/YYYY-MM-DD

where YYYY-MM-DD is the date stamp of the last installation that took place in this app server.

For example:

 $ ll /install/crm.com/2016-10-19
-rw-r--r--. 1 root root 143155773 Oct 18 18:21 Crm_10.1.0(201610181820WFL).ear
-rw-r--r--. 1 root root    583511 Oct 19 12:59 org1_10.1.0(78606).rar
$

 

The example above shows that directory /install/crm.com/2016-10-19 has both a CRM release 10.1.0 built on 2016-10-18 at 18:20 

And also a custom archive for organisation ORG1 with build version 78606 intended for CRM.COM release 10.1.0.

To install CRM.COM follow the steps below:

$ cd /install/crm.com
$ copyinstallfiles.sh 2016-10-19
$ installear.sh

Within a few minutes the installation will be completed and Wildfly will be restarted.

At this point you should be able to navigate to the CRM.COM login page using the following URL: https://<hostname>:28443/crm

 

 

 

 

Post installation tasks

If you require to connect to third party secure sites like for example CA systems, usually there is a need to trust the SSL certificates of the third party site. The following steps are required to put the certificate in the java trust store:

Locate the required certificate file. For example in /install/cert

 $ ll /install/cert
-rw-r--r--. 1 root root 1678 Oct 22 10:47 omi.verimatrix.com.crt

To install a trusted SSL certificate run the following command:

$ sudo /opt/jdk1.8.0_72/bin/keytool -import -alias omi.verimatrix.com -file /install/cert/omi.verimatrix.com.crt -keystore /opt/jdk1.8.0_72/jre/lib/security/cacerts

When asked for a password, the default password is "changeit".

Answer yes to the question Trust this certificate? [no]:

To view installed certificates run the following command:

$ sudo /opt/jdk1.8.0_72/bin/keytool -list -keystore /opt/jdk1.8.0_72/jre/lib/security/cacerts

Widlfy should be restarted for this to take effect:

 $ stopwildfly
 $ startwildfly