In this release, the implementation of the Endeca Server cluster
has changed significantly.
The following statements provide a brief listing of the changes. For
detailed information, see the
Oracle Endeca Server Cluster Guide and the
Oracle Endeca Server Installation Guide.
- Integration with the
WebLogic Server. In this release, Endeca Server is a J2EE application that
runs in the WebLogic Server domain container. WebLogic Server 10.3.6 is used.
The Endeca Server utilizes the WebLogic Server native Application Development
Framework, specifically JRF, for the Endeca Server interfaces.
- Cluster use cases. In
the previous release, system administrators could create a single data store on
a set of Endeca Server nodes, with a one-to-one mapping between Endeca Server
host machines to the Dgraph nodes (one Dgraph process per each Endeca Server
running on a single hardware machine). In this release, two installation and
deployment scenarios are possible:
- Installation and
deployment of a single Endeca Server instance on a WebLogic Server that is
started as a single Admin Server in the WebLogic Server domain created
specifically for the Endeca Server Java application.
In this Endeca Server, one or more data domains can be created.
Each of the data domains can run one or more Dgraph processes (where a specific
Dgraph can serve only one data domain).
- Installation and
deployment of a multiple-node Endeca Server cluster on a set of physical
machines that run in a WebLogic Server domain created for the Endeca Server.
In the WebLogic domain, a single Admin server controls a set of
Managed servers. Managed servers host the Endeca Server instances comprising an
Endeca Server cluster. (The Admin Server can host an Endeca Server in a single
node deployment, but not in a multiple-node Endeca Server cluster deployment).
In this multi-node Endeca Server cluster deployment, multiple
data domain clusters can be created in the Endeca Server cluster. The system
administrators can start by first creating a data domain in a single Endeca
Server instance in the development environment, and then redeploying this data
domain in an Endeca Server cluster.
For information on the cluster installation and deployment, see
the
Oracle Endeca Server Installation Guide.
- Cluster Coordinator
changes. In this release, the Cluster Coordinator is part of the Endeca
Server installation and is always installed when you install the Endeca Server.
It should no longer be installed separately as in previous release.
Additionally, instead of starting a new Cluster Coordinator for each
data domain cluster (as in the previous release), in this release an ensemble
of Cluster Coordinator services runs on a subset of Endeca Servers running in
an Endeca Server cluster.
- Improved clustering
capabilities and increased availability. An ensemble of Cluster Coordinator
services tracks availability of Dgraph nodes for multiple data domains hosted
in the Endeca Server cluster. Dgraphs are resilient to failure of Cluster
Coordinator service (that is, Cluster Coordinator is in itself highly
available, if configured in a manner where at least three or a greater than
three odd number of Cluster Coordinator services are running on Endeca Server
instances.)
- Leader election in a data
domain cluster. Instead of letting the system administrator determine the
data domain's leader node (Dgraph leader node), in this release, the Endeca
Server cluster determines which of the Endeca Server nodes will host the Dgraph
that will be the leader node for the data domain.
Similarly, instead of manually identifying and starting the follower
Dgraph nodes (as was required in the previous release), in this release, the
Endeca Server cluster automatically starts the Dgraph nodes, and performs their
allocation to Endeca Server nodes that are part of the Endeca Server cluster.
- Failure recovery. In
the previous release, recovery from a failed Dgraph leader process necessitated
additional actions by the system administrator.
In this release, leader election in the data domain cluster is
automatic.
- Allocation of Dgraphs to
Endeca Server instances. In the previous release, it was difficult to use a
hardware cluster to serve multiple data domains because the system
administrator needed to manage mapping of leader/follower Dgraphs to the
hardware machines manually, by specifying their host names and ports.
In this release, the allocation of data domain nodes to the Endeca
Server nodes is automatic. Moreover, the system administrator managing the
Endeca Server cluster can create data domain profiles with different hardware
usage to address different deployment scenarios, such as for testing and
production data domains.
- Multiple data domains are
supported. In this release, system administrators can create an Endeca
Server cluster to support provisioning of a large number of data domain
clusters, while making efficient use of hardware. Some data domains can be
hosted on the same multiple Endeca Server nodes to support higher throughput
and increased availability of the Endeca Server services for query processing.
Data domain system administrators can manage a large number of data
domains for different tenants, in different sizes and availability constraints,
on a hardware cluster that is hosting Endeca Server instances.
- Cluster security. In
this release, the Endeca Server cluster installation is secured by optionally
configured SSL during the installation process. If the SSL mode is used, the
Endeca Server to Dgraph communication uses SSL also (and cannot be turned off).
The Endeca Server to the Cluster Coordinator communication (and the
communication between the Cluster Coordinator services themselves) is secure by
default (and cannot be turned off).
- Cluster interfaces.
To support the Endeca Server cluster implementation, two new interfaces have
been added. A Cluster Web Service lets system administrators create Endeca
Server clusters on existing hardware. A Manage Web Service lets the system
administrators create, clone and delete data domains based on previously
predefined data domain profiles, across the entire Endeca Server cluster. It
also handles starting data domain nodes (Dgraphs) on appropriate Endeca Server
nodes.
Additionally, the
endeca-cmd utility has been enhanced in this release
to allow accessing a data domain at any Endeca Server node in the Endeca Server
cluster. The
endeca-cmd utility relies on the Cluster and Manage
Web Services and lets system administrators create Endeca Server cluster node
profiles, list Endeca Server nodes, create data domain profiles, create and
manage data domains, and check the health status of the Endeca Server cluster
nodes, data domains and data domain nodes. The system administrators in charge
of individual data domains can also export their index and re-import it into a
new data domain cluster.
- Routing capabilities in
the Endeca Server cluster. Any node in the Endeca Server cluster can answer
queries for any data domain, even if the Dgraph node for that data domain is
not running on the Endeca Server node that initially received the query. Endeca
Server can route queries to an appropriate node for a given data domain.
You can also configure the cluster to use session affinity, and use
an external load balancer in front of the Endeca Server cluster to provide
additional load balancing capabilities.
For more information, see the
Oracle Endeca Server Cluster Guide.