Working With Search Instances

A search instance in the PeopleSoft Search Framework represents a single instance of the search engine. The search instance(s) created using the PeopleSoft Search Framework define the instances that will be used by the PeopleSoft applications to provide end user search.

The search instance definition specifies connectivity and other administration settings required for:

  • running queries against the search server.

  • administrative tasks.

To define a search instance, access the Search Instance Properties page by selecting PeopleTools > Search Framework > Search Admin Activity Guide > Configuration > Search Instance.

You can also define a search instance by using the SEARCH_TEMPLATE configuration template in Automated Configuration Manager (ACM). The steps to run the template are described later in this topic, see Creating a Search Instance in Automated Configuration Manager.

This example illustrates the fields and controls on the Search Instance Properties page. You can find definitions for the fields and controls later on this page.

Search Instance Properties page

Search Instance

To enable connectivity between your PeopleSoft system and the search engine, you need to provide these search instance values.

Field or Control

Description

Search Instance

Enter a name for the search instance.

Note: PeopleSoft Search Framework enables you to create multiple search instances for the purpose of fail-over mechanism.

See Understanding High Availability Feature in PeopleSoft Search Framework and Implementing Fail-over Mechanism for more information.

When you create multiple search instances, you can use the Search Instance Administration page to specify priority for each search instance. See Administering Search Instances.

Search Provider

OpenSearch is the default search provider.

Search Options Config

See Managing General Search Options.

Search Instance Properties

This section contains details for the user name and password used to connect to the search engine. These credentials are part of the authentication mechanism from PeopleSoft to the search engine. During an incoming search request, the search engine matches these credentials with values stored in the configuration file to authenticate the incoming search request.

Note: Use this section to add multiple nodes for an OpenSearch search instance by clicking the scroll bar plus button. Configuring multiple nodes enables you to use the fail-over mechanism when one of the nodes may go down for any reason. In a multi-node OpenSearch cluster, always ensure that the replica value is set to at least 1. For more information, see Implementing Fail-over Mechanism and Managing General Search Options.

Oracle PeopleSoft recommends setting up an OpenSearch cluster with three nodes on machines that are not on the same physical server.

For information on creating additional OpenSearch nodes, see Adding a New Node to an Existing Cluster.

Field or Control

Description

Host Name

Enter the server name of the host where the search engine is running, including the domain. The host name value can be a DNS name or an IP address.

For example:

example.com

Port

Enter the port on which the search engine listens for requests.

Note: The default port for OpenSearch is 9200.

If a load balancer or reverse proxy is used between OpenSearch and PeopleSoft, the OpenSearch port number should be the same across all nodes in the cluster.

SSL Option

Select one of the options for SSL:

  • Select DISABLE in the following scenarios:

    • If SSL is not implemented on the search engine.

    • If http is implemented on both PeopleSoft and search engine.

  • Select ENABLE in the following scenarios:

    • If SSL is implemented on both PeopleSoft and the search engine.

    • If https is implemented on PeopleSoft and SSL is implemented on the search engine.

See Configuring SSL between PeopleSoft and Search Engine.

Ping

Click to make sure your host name and port are correct and that the search engine is available. A positive result displays a success message.

Ping Test Result: Success. opensearch version 2.3.0 (262,613)

User Name

Enter the user name to connect to the search engine.

Password

Enter the password associated with the user name.

Test Login

Click to test the credentials you have specified against the search engine. A positive result displays a success message.

Login Success. (262, 615)

Proxy User

Enter a trusted entity.

This enables the PeopleSoft system to log into the search engine using a proxy identity to run a query. This proxy account is a Trusted Entity. You may need to contact your administrator to obtain Trusted Entity credentials or to have those credentials created for the Search Framework query service.

Important! Even though the Search Framework is authenticated by the search engine as the Trusted Entity, the search engine uses the identity of the currently signed on PeopleSoft user for query authorization.

Note: Proxy User acts as an authentication user for every search request.

Proxy Pwd

Enter the password associated with the trusted entity.

Proxy Login

Click to test the credentials you have specified against the search engine. A positive result displays the success message.

Login Success (262,615)

+ (plus sign)

Click the + (plus) sign in the grid to enter details of another node if you plan to implement fail-over mechanism.

Note: Oracle PeopleSoft recommends a three-node cluster initially. Then, depending on the hardware, memory availability, and search performance, you may add nodes to the existing cluster.

See Understanding Clusters in OpenSearch.

OpenSearch Interact

Click this link to open the OpenSearch Interact page that enables you to choose the cluster and index level options on which you want to obtain information from the search engine.

See Administering OpenSearch Using the OpenSearch Interact Page.

OpenSearch Dashboards

This section contains details of the server where OpenSearch Dashboards is installed.

Field or Control

Description

Host Name

Enter the server name of the host where OpenSearch Dashboards is running, including the domain. The host name value can be a DNS name or an IP address.

For example, example.com

Note: OpenSearch Dashboards can be installed on the same server as OpenSearch or on a separate server. Oracle recommends that you install OpenSearch Dashboards on one of the OpenSearch nodes in the cluster to ensure better connectivity between OpenSearch and OpenSearch Dashboards.

Port

Enter the port on which OpenSearch Dashboards listens for requests.

Note: The default port for OpenSearch Dashboards is 5601.

SSL Option

Select one of the options for SSL:

  • Select DISABLE in the following scenarios:

    • If SSL is not implemented on OpenSearch Dashboards.

    • If http is implemented on both PeopleSoft and OpenSearch Dashboards.

  • Select ENABLE in the following scenarios:

    • If SSL is implemented on both PeopleSoft and OpenSearch Dashboards.

    • If https is implemented on PeopleSoft and SSL is implemented on OpenSearch Dashboards.

For more information, see Configuring SSL for OpenSearch Dashboards.

Logstash

This section contains details of the server where Logstash is installed.

Field or Control

Description

Host Name

Enter the server name of the host where Logstash is running, including the domain. The host name value can be a DNS name or an IP address.

For example, example.com.

Logstash Port

Enter the port on which Logstash listens for requests.

Note: The default port for Logstash is 9800.

SSL Option

Select one of the options for SSL:

  • Select DISABLE in the following scenarios:

    • If SSL is not implemented on Logstash.

    • If http is implemented on both PeopleSoft and Logstash.

  • Select ENABLE in the following scenarios:

    • If SSL is implemented on both PeopleSoft and Logstash.

    • If https is implemented on PeopleSoft and SSL is implemented on Logstash.

Ping

Click to make sure your host name and port are correct and that the search engine is available. A positive result displays a success message.

Call Back Properties

The callback properties are used to perform a callback to PeopleSoft to fill in data such as search attribute values, so you need to provide the URL and password for this access.

Note: PeopleSoft Search Framework uses the REST ListeningConnector for callback.

Field or Control

Description

URL

Enter the URL for the PeopleSoft system listening connector, using the following syntax.

http://<server>:<port>/PSIGW/RESTListeningConnector/<node>

Note: If the callback URL is https and if SSL is not configured on OpenSearch, then the PeopleSoft root CA needs to be installed in the OpenSearch truststore and the truststore path and password should be specified in the opensearch.yml configuration file.

If OpenSearch is behind a load balancer and the setting is to terminate SSL at load balancer, the orclssl.callback property should be set to false in the opensearch.yml configuration file.

User Name

Enter the PeopleSoft user name granted the permission list PTPT3300. This user must have the Search Server and Search Query Administrator roles.

Note: This user name must exist as an active user profile on the PeopleSoft system listed in the URL specified. This is generally a system user as opposed to an interactive user. In addition, if you have attachments on an FTP server that will be accessed by the search engine, this user must also be authorized to access the FTP site.

Password\Confirm Password

Enter and confirm the password associated with the PeopleSoft user name.

Validate

Click to validate the URL, service operations, and credentials you have entered. A positive result displays the following message on the Validation Report page:

All validations are successful.

The following service-operation validations are performed to confirm:

  • Service operations related to PTSF are active.

  • Handlers corresponding to service operation are active.

  • Routers corresponding to service operation are active.

  • Service operation alias name matches with router alias name.

  • Service-operation security is set.

Update deployed definitions

Click this link to invoke a bulk update for all definitions currently deployed to the search engine.

If you have changed any of the callback properties (URL, user name, or password), all currently deployed search definitions need to be updated with the new callback values to continue successful interaction with the Search Framework.

Set Namespace Aliases

Click this link to set namespace aliases when you clone an environment.

See Setting Namespace Aliases for more information.

Save

When you save a search instance, OpenSearch creates an orcl_es_auth index that stores the callback service URL for each PeopleSoft database. When a user accesses OpenSearch Dashboards in PeopleSoft, the user is authenticated using the callback service request to the orcl_es_auth index of a specific database.

You can modify any of the search instance values if the information changes for the specified server. That is, if the server receives a new IP address or a new DNS name, if the port for the search services changes, or if any credentials change, then the values can be updated as needed.

Important! You may not reuse a search instance entry for an entirely new instance of a search server if the existing search instance contains deployed search definitions and search categories. If you reuse an existing search instance entry that contains deployed search definitions and search categories, it may cause deployment errors.

Deleting a saved search instance is not supported.

If you have multiple PeopleSoft applications, you can share a single search instance among the PeopleSoft systems. When sharing a search instance, keep these items in mind:

  • Single sign-in needs to be implemented among all of the PeopleSoft systems sharing the search instance.

  • To enable menu search in a cluster environment, you need to run the Remote Search Group Configuration plug-in in Automated Configuration Manager.

    PeopleTools delivers the Remote Search Group Configuration plug-in, which is grouped under the Cluster_Template template. See Automated Configuration Management for information on running a template.

    When you import remote search groups, source and target PeopleSoft environments have to be mapped to the same search instance. For example, if HCM is mapped to search instance 1 and FSCM is mapped to search instance 2, and if cluster environment is mapped to search instance 1, then importing search groups from HCM to cluster environment is supported, however, importing search groups from FSCM to cluster environment is not supported.

  • While you do not need to synchronize user profiles among multiple PeopleSoft systems, if the same user ID exists on multiple systems, it must be associated with the same, individual user. That is, a user ID must be unique for all of the systems sharing the search instance, not just a single PeopleSoft application.

OpenSearch provides several REST APIs that can be used to obtain details of a cluster or index in the PeopleSoft implementation. In the absence of a default user interface to administer OpenSearch, PeopleSoft provides a user interface (called OpenSearch Interact) that enables you to choose the cluster and index level options on which you want to obtain information from the search engine. Based on the selected options, PeopleSoft Search Framework generates a URL, which is submitted to OpenSearch, and the response is displayed on the OpenSearch Interact page. The OpenSearch Interact page is accessible from the Search Instance Properties page, and it provides administration requests only for those cluster and index validations that are exposed by PeopleSoft.

Access the OpenSearch Interact page (PeopleTools > Search Framework > Search Admin Activity Guide > Configuration > Search Instance) by selecting an OpenSearch search instance, and then selecting the OpenSearch Interact link on the Search Instance Properties page.

This example illustrates the fields and controls on the OpenSearch Interact page (initial). You can find definitions for the fields and controls later on this page.

OpenSearch Interact page (initial)

This example illustrates the fields and controls on the OpenSearch Interact page after selecting an option from the Service Type drop-down list. You can find definitions for the fields and controls later on this page.

OpenSearch Interact page

Field or Control

Description

Search Instance

The search instance name.

Service Type

Displays a list of service type groups.

The following service type groups are available:

  • Cluster - Use the Cluster service type to retrieve information related to the OpenSearch cluster.

  • Count - Use the Count service type to retrieve the number of indexed documents related to search definitions.

  • Mapping - Use the Mapping service type to retrieve the attribute mapping information related to search definitions.

  • Search - Use the Search service type to retrieve index-level information related to search categories.

Suggestions

The Suggestions field displays on the initial OpenSearch Interact page and it changes based on the service type you select.

The Suggestions field changes to the following:

  • When you select Cluster as service type, the Suggestions field changes to Cluster API, which provides cluster related options:

    • Aliases - provides information on currently configured aliases, which includes indices, filter, and routing information.

    • Allocation - provides a summary of the number of shards allocated to each data node and the disk space used.

    • Count - provides the document count of the entire cluster or individual indices. The document count includes only live documents, that is, the document count does not include deleted documents that have not yet been cleaned up by the merge process.

    • Health - provides the general health of a cluster. The information is similar to the cluster information when you select the /_cluster/health option.

    • Indices - provides a cross-section of each index, and it spans nodes.

    • Nodes - provides a topology of the cluster, which includes the OpenSearch version, JVM version, heap, memory, load, uptime of a node, etc.

    • Plug ins - provides a list of running plug-ins in each node.

    • Shards - provides a detailed view of shards in a node. The detailed information includes whether its a primary or replica, the number of documents, the size of the shard in bytes, etc.

    • Cluster health - provides the general health of a cluster. It uses the color codes of green, yellow, and red.

      For a description of the color codes used for cluster health in OpenSearch, see Verifying the Cluster and its Nodes.

    • Cluster statistics - provides cluster-wide statistics. The statistics include basic index metric (such as shard numbers, store size, memory usage) and information about the current nodes that form the cluster (such as number of nodes, roles, operating system, JVM versions, memory usage, CPU, and installed plugins).

    • Nodes statistics - provides statistics of all nodes in a cluster. By default, all statistics of a node are displayed.

  • When you select Count or Mapping as service type, the Suggestions field changes to Search Definition, which provides a list of deployed search definitions in the search instance.

  • When you select Search as service type, the Suggestions field changes to Search Category, which provides a list of deployed search categories in the search instance.

Method

The Method field is displayed when the service type is Search. Choose the type of HTTP request that needs to be issued to the search server.

Valid options are:

  • GET

  • POST

URL

The URL is automatically formed based on the selected options. For example, if you select Cluster as service type and select cat/indices as the cluster API, the URL is automatically formed:

http://example.com:9200/_cat/indices?v

Note: The URL cannot be modified. To modify the URL, you need to change the options you have selected.

Body

The Body field appears when you select POST as a method. This field must contain a JSON request.

The contents of the Body field are passed along with the request to the search engine.

Result

The Result area displays the response from the search engine for each request. PeopleSoft Search Framework displays the response from the search engine as is.

Namespace aliasing enables you to re-use an index or indices built on an environment (original environment) on another environment (which is referred to as “new environment” for purpose of differentiation), thus avoiding the necessity to re-index the same search definitions on the new environment. The namespace aliasing feature is handy when you need to clone environments or when the middle-tier changes.

When you need to clone an environment, for example, you clone a test FSCM environment (FSCMTEST), where all the search definitions in FSCMTEST are already indexed to a search server, as a staging FSCM environment (FSCMSTAGING), you can re-use the index or indices of FSCMTEST from the FSCMSTAGING environment that is connected to the same search server by setting up namespace aliasing.

When the Application server or Web server changes, but is connected to the same database, you can use namespace aliasing to map the new environment to the original environment and thus re-use the index or indices of the original environment.

The namespace aliasing feature enables you to map the database name, node name, and node URI of the new environment to the original environment where the indices are built. The new environment re-uses the indices on the original environment, so users can perform search in the new environment without having to wait for indices to be built. Also, you can perform incremental indexing to update the indices from the new environment.

You can use the Namespace Alias Settings page to set namespace aliasing or you can use the PTSFConfigureSearch plug-in in Automated Configuration Manager to set namespace aliasing.

Access the Namespace Alias Settings page by selecting PeopleTools > Search Framework > Search Admin Activity Guide > Configuration > Search Instance. Then click the Set Namespace Aliases link.

Alternatively, access the Namespace Alias Settings page by selecting PeopleTools > Search Framework > Administration > Custom Namespace Settings.

This example illustrates the fields and controls on the Namespace Alias Settings page. You can find definitions for the fields and controls later on this page.

Namespace Alias Settings page

Field or Control

Description

Database Name

The name of the database in the new environment.

You may enter the same database name as in the original environment.

Database Alias Name

The name of the database in the original environment.

Node Name

The name of the node in the new environment.

You may enter the same node name as in the original environment.

Node Alias Name

The name of the node in the original environment.

Alias Node URI

The node URI in the original environment.

When you enter the URI, follow this syntax:

http or https://<hostname>:<port>/psc/<sitename>/

Optionally, you can copy the URI entered for the node in the Content URI Text edit box on the Node Definitions page (Portal tab).

Clear Data

Clears the data entered on the page and also removes it from the database.

To administer search instances, access the Search Instance Administration page by selecting PeopleTools > Search Framework > Administration > Prioritize Search Instances.

Search administrators can use the Search Instance Administration page to specify the priority for each search instance.

This example illustrates the fields and controls on the Search Instance Administration page. You can find definitions for the fields and controls later on this page.

Search Instance Administration page

Field or Control

Description

Search Instance

Lists the search instances created in PeopleSoft Search Framework.

Search Provider

Lists the search provider associated with a search instance.

Priority

Allows Search administrators to set the sequence in which the available search instances are to be used when any of the search instances fail. The lowest number is 1 and it has the highest priority.

The search instance with the priority set at the lowest number has the highest priority, and it will be set as the default search instance.

When you create a search instance on the Search Instance Properties page, the new search instance is assigned a sequence number. You can use this page to specify the sequence that you want.

When you deploy an index on a new search instance, you may want to validate or test the index before you roll out the index in a production environment. Search administrators can use the Search User Instance page to assign users to a search instance on which the deployed index needs to be validated or tested.

Note: When you assign a user to a search instance using the Search User Instance page, you override the priority setting specified on the Search Instance Administration page for the particular user.

To assign users to a search instance where a deployed index needs to be validated or tested, access the Search User Instance page by selecting PeopleTools > Search Framework > Administration > Search Instance by User.

This example illustrates the fields and controls on the Search User Instance page. You can find definitions for the fields and controls later on this page.

Search User Instance page

Field or Control

Description

User ID

Select a user to whom you want to assign the task of validating or testing an index that is deployed.

Search Instance

Select a search instance where you have deployed an index, which needs to be validated or tested before deploying the index to a production environment.

Note: You would use this page to test new search instances as they come online. It does not need to be specified for all users.

The Automated Configuration Manager (ACM) framework enables you to store environment configuration settings in a template stored in the database or an external template file, which you can reapply when needed. You can use SEARCH_TEMPLATE in ACM to configure a search instance.

Using ACM allows you to automate the creating of search instance and deploying/indexing of search definitions. Though, you can create a search instance and deploy/index search definitions in a single execution of the template, PeopleSoft recommends to create the search instance first and then deploy/index the required search definitions.

Complete these steps to create a search instance and deploy/index search definitions:

  1. Select PeopleTools > Automated Config Manager > ACM Templates > Template Definition.

  2. Search for and open SEARCH_TEMPLATE.

  3. On the Configuration Template Definition page, verify that the Configure Search Instance plugin is selected, and then select the Properties icon.

  4. Specify the properties for the plug-in on the Configure Search Instance page.

    If OpenSearch Dashboards is installed, specify the properties associated with OpenSearch Dashboards.

    For descriptions of each of the properties, see PTSFConfigureSrchInstance.

  5. Ensure that the Configure Search Instance plug-in is selected and the Deploy Search Definition plug-in is not selected.

  6. Save the template and click Execute to begin the program run.

    If the program run is successful, the system displays a success message, that is, a search instance is created. After successfully creating a search instance, proceed with the steps of deploying/indexing the required search definitions.

    To verify that the search instance has been configured for the search engine, select PeopleTools > Search Framework > Search Admin Activity Guide > Configuration > Search Instance.

  7. On the Configuration Template Definition page, verify that Deploy Search Definition is selected and click the Properties icon.

  8. Specify the properties for the plug-in on the Deploy Search Definition page and click OK.

    For description of each of the properties, see PTSFAdministerSearch.

  9. Ensure that the Deploy Search Definition plug-in is selected and the Configure Search Instance plug-in is not selected.

  10. Save the template and click Execute to begin the program run.

    If the program run is successful, the system displays a success message.

    To verify the required search definitions are deployed and indexed, select PeopleTools > Search Framework > Search Admin Activity Guide > Administration > Schedule Search Index.