+

Search Tips   |   Advanced Search


Configure Remote Search in Kubernetes

This section shows how to configure Remote Search for the HCL WebSphere Portal 9.5 environments on supported Kubernetes platforms.

Note: The HCL WebSphere Portal 9.5 Remote Search image is currently supported for deployment to RedHat OpenShift. Additional guidance will be added to deploy to other supported Kubernetes platforms in the future.


Introduction

Use HCL WebSphere Portal 9.5 Remote Search images in supported Kubernetes platforms, such as Red Hat OpenShift, require a different setup and configuration steps than those used to set up Remote Search on a non-Docker or Kubernetes container platform.


Deploy Remote Search in HCL WebSphere Portal 9.5 Kubernetes platforms

Prerequisite: Download the HCL WebSphere Portal 9.5 Docker containers from the HCL DX entitlements from the HCL Software License Portal.

The HCL DX 9.5 container update CF_181 and higher packages will include a core software and Remote search container. Load both of these images into a Kubernetes platform supported by HCL DX 9.5 such as Red Hat OpenShift. In this example, the OpenShift load command can be used. Note that if our organization has a corporate OpenShift repository, we might use OpenShift pull instead to put it into your local repository.

The first one (dx-core-image), is the core HCL DX 9.5 Portal and Web Content Manager image while the second one (dx-dxrs-image) is the remote search image.

After the Remote Search images are loaded to the Kubernetes environment we will deploy to, follow deployment steps for that platform presented in the HCL WebSphere Portal 9.5 Container Deployment topic pages.


EJBs and host names

HCL WebSphere Portal 9.5 Container core and Portal Remote Search each use WebSphere Application Server as a base. As these components are on different hosts (containers), they need to communicate via IP. The initial conversation between HCL WebSphere Portal 9.5 core and the Remote Search server takes place over IIOP (rmi) which is the internet protocol of EJBs.

Ideally, the /etc/hosts file of both containers would have the host name of the other. In other words, the /etc/hosts file of the HCL Digital Experience Container core would have a host reference for the Remote Search and vice versa. However, three factors make this impossible. The containers are based on Red Hat UBI, the /etc/hosts file is owned by root, and the root password (and sudo) is not available. Apply the command below to define host references for the Remote Search service from the Digital Experience Container core. Therefore, a way to force the Kubernetes environment, such as Red Hat OpenShift to write the /etc/hosts file at container initialization time is needed.

HCL DX 9.5 Container operators that execute image deployment to Kubernetes platforms such as Red Hat OpenShift create the correct host-name in /etc/hosts for the local container. In addition, these operators will execute a DNS resolution on foreign host-names as long as they are on the same Kubernetes deployment.

Portal and Portal Remote Search both use WebSphere Application Server as a base. As they are on different hosts (containers), they have to be able to talk to each other via IP. The initial conversation between Portal DX and the Remote Search server take place over IIOP (rmi) which is the internet protocol of EJBs.


Define serverindex.xml on the Remote Search server

When deploying the Remote Search image on supported Kubernetes platforms, additional configuration settings for the serverindex.xml are required. When deployed to Kubernetes, the HCL DX 9.5 container operators are configured to check to ensure that the servername is already correct.

Note that dx-deployment-service-remotesearch is a DNS resolvable name from the point of view of the HCL WebSphere Portal 9.5 Server. The remote search server includes the 'ping' command. We can use this to verify that the hostname dx-deployment-service-remotesearch resolves to a valid IP address.

Now, when the HCL DX 9.5 server communicates to the Remote Search server over IIOP, the Remote Search Server will return dx-deployment-service-remotesearch as the hostname of the Remote Search Server. The HCL DX 9.5 Server has configuration that will append the port to the hostname that was just returned.


Remote Search services configuration

The following guidance aligns with the Remote Search services configuration instructions available in the Remote Search services topic for deployment to non-container HCL Digital Experience servers.

All of the instructions contained in the Remote Search services topic should also be completed in a Kubernetes container-based HCL Digital Experience deployment. The following guidance outlines specific settings that were used in the Remote Search service DX 9.5 image deployment to supported Kubernetes platforms.

  1. Create a single sign-on (SSO) domain between HCL WebSphere Portal 9.5 container and the Remote Search service container by following the non-container on-premises procedure for Create a single sign-on domain between HCL WebSphere Portal and the Remote Search service. This entails exchanging SSL certificates and LTPA domain tokens.

    Note: When retrieving the SSL certificates from the host server, use the URL configuration host as defined in the table below (dx-deployment-service-remotesearch) as the host, and the appropriate port for the SSL access. We must also complete Set the search user ID and Remove search collections before creating a new search service.

  2. Create a new search service and use the following values for a Remote Search services configuration to a Kubernetes container deployment. See the section on Create a new search service for more information.

    For testing Search Services configuration, the following are used:

    Item Value
    IIOP_URL iiop://dx-deployment-service-remotesearch:2809
    PSE TYPE Select ejb from the pull down.
    EJB ejb/com/ibm/hrl/portlets/WsPse/WebScannerLiteEJBHome
    DefaultCollectionsDirectory Leave empty.
    Search service implementation Select Portal Search Service Type from the pull down.
    CONFIG_FOLDER_PATH Did not set (differs from non-container instructions).

    Note: Once completed and saved, the HCL WebSphere Portal 9.5 container deployment has a new search service called Remote PSE service EJB, with a green check mark confirming that the service was correctly set up and is able to communicate with the Remote Search container.

  3. Based on the previously created Remote Search service, create a Portal Search Collection and a JCR Search Collection using the following parameters.

    1. Use the following parameters to create a Portal search collection.

      Parameter Value
      Search collection name Portal Search Collection
      Search collection location /opt/HCL/AppServer/profiles/prs_profile/SearchCollections/PortalSearchCollection

      Note: The 'search collection location' is relative to the remote search container. Furthermore, one places the collection in the profile of the Remote Search server because the profile of the remote search server is persisted. One obviously wants the search indexes persisted across restarts.

    2. Use the following parameters to create a Content Source JCR search collection.

      The Collect documents linked from this URL is

        https://dx-deployment-service:10042/wps/seedlist/myserver?Source=com.ibm.lotus.search.plugins.seedlist.retriever.portal.PortalRetrieverFactory&Action=GetDocuments&Range=100&locale=en-US

      Note that the host and port are the Kubernetes (for example, Red Hat OpenShift) service host and the port to which 10042 was mapped. In this case, 10042is the HttpQueueInboundDefaultSecure port on the HCL DX 9.5 Server. Note also that one can put this URL in a browser (on the OpenShift host) and confirm that the response is an ATOM feed.

      On the Security panel, use dx-deployment-service as the host name, along with the username wpsadmin and the associated password for wpsadmin. One can also specify Realm as CrawlerUsersRealm

      Complete the following configuration parameters to enable search in the Web Content Manager Authoring i interfaces:

      Parameter Value
      Search collection name JCRCollection1
      Search collection location /opt/HCL/AppServer/profiles/prs_profile/SearchCollections/JCRCollection1


JCR Content Source Configuration

Use the following URL for Collect documents linked from this URL:

The parsing of the SeedlistId positional parameter in this URL uses an index of the virtual portal being crawled. In this case 1 (in 2 places) represents the base virtual portal.

Note: The host and port are the Kubernetes (for example, Red Hat OpenShift ) service host and the port to which 10042 was mapped. In this case, 10042 is the HttpQueueInboundDefaultSecure port on the HCL DX 9.5 server. Note also that one can put this URL in a browser (on the OpenShift host) and confirm that the response is an ATOM feed.

On the Security panel, use dx-deployment-service as the host name, along with the username wpsadmin and the associated password for wpsadmin. One can also specify Realm as CrawlerUsersRealm


Configure WCM Authoring Portlet search function

Note: Even though the documents are gathered by the Remote Search function from the JCR, additional configuration is needed in order for the HCL Web Content Manager (WCM) Authoring Portlet search to use document search. Set the following values for this configuration. Set the Custom properties for the WebSphere Application Server Resource Environment Provider, JCR ConfigService, using the following values:

Property Value
jcr.textsearch.enabled true
jcr.textsearch.indexdirectory /opt/HCL/AppServer/profiles/prs_profile/SearchCollections
jcr.textsearch.PSE.type ejb
jcr.textsearch.EJB.IIOP.URL iiop://dx-deployment-service-remotesearch:2809
jcr.textsearch.EJB.EJBName ejb/com/ibm/hrl/portlets/WsPse/WebScannerLiteEJBHome

Note: On the jcr.textsearch.indexdirectory, the subdirectory JCRCollection1 is NOT included in the path.

Parent topic: Customization