Chapter 3. Data Grid on OpenShift

3.1. Data Grid 8.3 images

Data Grid 8.3 includes two container images, the Data Grid Operator image and Data Grid Server image.

Data Grid images are hosted on the Red Hat Container Registry, where you can find health indexes for the images along with information about each tagged version.

Custom Data Grid Deployments

Red Hat does not support customization of any 8.3 images from the Red Hat Container Registry through the Source-to-Image (S2I) process or ConfigMap API.

As a result it is not possible to use custom:

  • Discovery protocols
  • JGroups SYM_ENCRYPT or ASYM_ENCRYPT encryption mechanisms

Additional resources

3.2. Embedded caches on OpenShift

Using embedded Data Grid caches in applications running on OpenShift, which was referred to as Library Mode in previous releases, is intended for specific uses only:

  • Using local or distributed caching in custom Java applications to retain full control of the cache lifecycle. Additionally, when using features that are available only with embedded Data Grid such as distributed streams.
  • Reducing network latency to improve the speed of cache operations.

The Hot Rod protocol provides near-cache capabilities that achieve equivalent performance to a standard client-server architecture.

Requirements

Embedding Data Grid in applications running on OpenShift requires you to use a discovery mechanism so Data Grid nodes can form clusters to replicate and distribute data.

Red Hat supports only DNS_PING as the cluster discovery mechanism.

DNS_PING exposes a port named ping that Data Grid nodes use to perform discovery and join clusters. TCP is the only supported protocol for the ping port, as in the following example for a pod on OpenShift:

spec:
  ...
  ports:
    - name: ping
      port: 8888
      protocol: TCP
      targetPort: 8888

Limitations

Embedding Data Grid in applications running on OpenShift also has some specific limitations:

  • Persistent cache stores are not currently supported.
  • UDP is not supported with embedded Data Grid.

Custom caching services

Red Hat highly discourages embedding Data Grid to build custom caching servers to handle remote client requests. To benefit from regular, automatic updates with performance improvements and fix security issues, you should create Data Grid clusters with the Data Grid Operator instead.