Chapter 12. Configuring network access to Data Grid
Expose Data Grid clusters so you can access Data Grid Console, the Data Grid command line interface (CLI), REST API, and Hot Rod endpoint.
12.1. Getting the service for internal connections Copy linkLink copied to clipboard!
By default, Data Grid Operator creates a service that provides access to Data Grid clusters from clients running on OpenShift.
This internal service has the same name as your Data Grid cluster, for example:
metadata: name: infinispan
metadata:
name: infinispan
Procedure
Check that the internal service is available as follows:
oc get services
oc get servicesCopy to Clipboard Copied! Toggle word wrap Toggle overflow
12.2. Exposing Data Grid through a LoadBalancer service Copy linkLink copied to clipboard!
Use a LoadBalancer service to make Data Grid clusters available to clients running outside OpenShift.
To access Data Grid with unencrypted Hot Rod client connections you must use a LoadBalancer service.
Procedure
-
Include
spec.exposein yourInfinispanCR. -
Specify
LoadBalanceras the service type with thespec.expose.typefield. Optionally specify the network port where the service is exposed with the
spec.expose.portfield.spec: expose: type: LoadBalancer port: 65535spec: expose: type: LoadBalancer port: 65535Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Apply the changes.
Verify that the
-externalservice is available.oc get services | grep external
oc get services | grep externalCopy to Clipboard Copied! Toggle word wrap Toggle overflow
12.3. Exposing Data Grid through a NodePort service Copy linkLink copied to clipboard!
Use a NodePort service to expose Data Grid clusters on the network.
Procedure
-
Include
spec.exposein yourInfinispanCR. -
Specify
NodePortas the service type with thespec.expose.typefield. Configure the port where Data Grid is exposed with the
spec.expose.nodePortfield.spec: expose: type: NodePort nodePort: 30000spec: expose: type: NodePort nodePort: 30000Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Apply the changes.
Verify that the
-externalservice is available.oc get services | grep external
oc get services | grep externalCopy to Clipboard Copied! Toggle word wrap Toggle overflow
12.4. Exposing Data Grid through a Route Copy linkLink copied to clipboard!
Use an OpenShift Route with passthrough encryption to make Data Grid clusters available on the network.
Procedure
-
Include
spec.exposein yourInfinispanCR. -
Specify
Routeas the service type with thespec.expose.typefield. Optionally add a hostname with the
spec.expose.hostfield.spec: expose: type: Route host: www.example.orgspec: expose: type: Route host: www.example.orgCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Apply the changes.
Verify that the route is available.
oc get routes
oc get routesCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Route ports
When you create a Route, it exposes a port on the network that accepts client connections and redirects traffic to Data Grid services that listen on port 11222.
The port where the Route is available depends on whether you use encryption or not.
| Port | Description |
|---|---|
|
| Encryption is disabled. |
|
| Encryption is enabled. |
12.5. Network services Copy linkLink copied to clipboard!
Reference information for network services that Data Grid Operator creates and manages.
| Service | Port | Protocol | Description |
|---|---|---|---|
|
|
| TCP |
Access to Data Grid endpoints within the OpenShift cluster or from an OpenShift |
|
|
| TCP | Cluster discovery for Data Grid pods. |
|
|
| TCP |
Access to Data Grid endpoints from a |
|
|
| TCP | JGroups RELAY2 channel for cross-site communication. |