Configuring Elasticsearch client

You can configure all Elasticsearch client type and setup properties through Elasticsearch properties.

The yfs.elasticsearch.client.type Elasticsearch property defines the type of Elasticsearch client that is used for establishing a connection and further communication with the Elasticsearch server. In earlier versions of Sterling™ Order Management System Software, clients such as NodeClient, TransportClient, JestClient were supported to connect directly to an Elasticsearch cluster. From Sterling Order Management System Software version 10.0, the direct connection approach is not supported and also the use is forbidden.

The built-in integration with Order Search uses SSIClient to communicate with Order Search, which deploys elasticsearch internally. The property is defaulted to SSIClient and you must not alter this property. The SSIClient requires the Order Search URL to establish a connection with Order Search. Ensure that you set the Order Search URL to the osi.order.service.url yfs property.

At the time of initialization, the SSIClient checks if it can connect to Order Search and fails the Sterling Order Management System Software deployment in case it cannot communicate with Order Search. The yfs.validation.fail.behavior elasticsearch property defines this behavior and defaults to ‘fail’. The default value 'fail' aborts the application and agent servers, whereas the value 'warn' logs an error message and continues. It is recommended that you keep the default behavior and correct the URL and/or any authentication issues on connecting with Order Search instead of overriding the property value to ‘warn’ and continue. The idea of throwing the exception is to prevent any Sterling Order Management System Software deployment in an erroneous situation.