Elastic is new in Peoplesoft world but in the market its a proven track of solid performance and presence almost everywhere. This is a 3-part series where in this will serve as an intro and installation of Elastic , 2nd Part will link both Elastic and Peoplesoft and 3rd Part will show more detailed flow of messages and how things work as a whole.
Elastic Search is a full-text search engine library built on top of Apache Lucene; as a product, Elastic search provides a simplified API over Lucene.
For Folks, more interested in understanding the concept or development there is an informative book providing an insight on how elastic search works (Elastic search: The Definitive Guide). https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html
As delivered from Elastic there are series of Products as listed at https://www.elastic.co/products ; for the context of this article we will only focus on Elastic search as core and how Oracle has made use of it inside the PeopleSoft stack.
Starting with the basics, it’s really important to understand the terminology used in Elastic ; they have really described in detail at https://www.elastic.co/guide/en/elasticsearch/reference/current/_basic_concepts.html ; any one implementing elastic these concepts are really the core and they will be used in writing the GET and POST queries to Elastic Server. Oracle does refer in the People books for Search that future is Elastic all the way and have referred to the Doc Id: 2205540.2 for more understanding. I assume as an audience reading this post you are one of the three categories – you have verity as search, you have Oracle SES or you are just looking to turn on search. This post caters more to third category but there is provision of turning on multiple products (this can be done setting search priorities) but keep in mind Oracle SES and verity come with an expiry date now.
Before Jumping off and installing elastic lets breakdown and understand how Oracle used this product.
Few of the basic operations that PeopleSoft will perform is Create Index, Update Index, Search Index.
You need People tools 8.55.11 to work with Elastic Search.
Elastic installation files can be downloaded from Oracle Support Doc ID PeopleSoft People Tools Patches Home Page (Doc ID 2062712.2); there is now a revision _02 and for this post we will be using Windows installation; the revision _02 was released on Feb 22,2017.
One thing to be noted here is the version PeopleSoft is using internally versus what Elastic has as a latest version.
The Installation files from Oracle is around 166MB and the barebone elastic installable from Elastic.co is around 33mb; so obviously the built from Oracle is whole lot more PeopleSoft specific customized version of Elastic search; we will place this folder at C:\ES_INSTALL\
So, the structure looks like as above, the pdf file is informative.Well we have the installation files; so let’s go ahead install.Run PowerShell as an admin user.
Next it will ask that do you want to install Puppet, Say Yes and continue
With the new version 2_02 , the script failed initially as the Zip is not found in the directory
C:\ES_INSTALL\ELASTICSEARCH-DPK-WIN-2.3.2_02 , I recommend the log file is your best friend here , if at any point you encounter an error read the log file generated at C:\ES_INSTALL\ELASTICSEARCH-DPK-WIN-2.3.2_02\setup\
To fix it , simply have the folder contain the zip you initially downloaded.
After this continue with installation.
Well if installation goes smooth good luck … you will be able to see everything with an OK in green 😊 else a Failed in RED is always there to indicate there is a problem.As in above steps it will ask you an elastic domain password for this demo let’s keep it Elastic1234; further set the proxy password as same: Elastic1234.
Both these credentials are important and should be noted as they will be used in Elastic Cluster admin and Integration Broker configuration in PeopleSoft.
So, Elastic Admin is: esadmin/Elastic1234 and Proxy user is people/Elastic1234.
Next It will ask for Cluster name (ES_CLUSTER) and Port; give a valid name and default port is 9200.
Next it will ask for Heap Size; Oracle recommends it to be 50% of the available memory; hence if you have 32 GB as the available memory make it 16GB. For this demo purpose, we will have this towards low end as say 2.
Most cases when there is an error ; the prompt will land up to
Now this is in a Puppet world.Sometimes a simple puppet re-run works fine.
To debug further and see what is wrong I suggest running
It will give you a trace and will pin point the actual issue.
I have documented most common issues encountered:
- Check the host file on PC has an entry for 127.0.0.1 same as the script is looking for.
- Check if the file C:\psft\pt\es2.3.2\config\elasticsearch.yml has correct data for this version of elastic search there are problem encountered in this file and one of the Oracle support post even suggest using a clone of this file.
I suggest opening it and observing network. Host, node name, cluster name is correct; further I recommend that the last two lines be commented –
- Check if any firewall / Antivirus is restricting the program to run
- Make sure you are running the steps as an administrator
A Test for install –