Skip to content

Commit

Permalink
configure infinispan with zowe yaml
Browse files Browse the repository at this point in the history
Signed-off-by: achmelo <[email protected]>
  • Loading branch information
achmelo committed Dec 21, 2023
1 parent 8210b6d commit ed1a983
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 24 deletions.
44 changes: 26 additions & 18 deletions docs/extend/extend-apiml/api-mediation-infinispan.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@
As an API developer, you can configure Infinispan as a storage solution through the Caching service. This article describes how to configure your storage solution for Infinispan.
You can configure Infinispan for high availability as well as to replicate data to provide data durability and availability.

- [Understanding Infinispan](#understanding-infinispan)
- [Infinispan configuration](#infinispan-configuration)
- [Using Infinispan as a storage solution through the Caching service](#using-infinispan-as-a-storage-solution-through-the-caching-service)
- [Understanding Infinispan](#understanding-infinispan)
- [Infinispan replica instances](#infinispan-replica-instances)
- [Infinispan configuration](#infinispan-configuration)

## Understanding Infinispan

Expand All @@ -16,38 +18,44 @@ For more information on Infinispan, see the [official Infinispan documentation](
### Infinispan replica instances

Infinispan can be used with both on standalone instance and High Availability mode. In case of multiple Caching Service instances,
you will have to specify all the cluster nodes (members). Each Infinispan node is bound to specific Caching Service instance and runs on a different port and host, which can be configured. See the [nfinispan configuration](#infinispan-configuration) to know how to configure multiple Infinispan nodes.
you will have to specify all the cluster nodes (members). Each Infinispan node is bound to specific Caching Service instance and runs on a different port and host, which can be configured. See the [infinispan configuration](#infinispan-configuration) to know how to configure multiple Infinispan nodes.

For more information on Infinispan replication and how to configure a replica instance, see the [official Infinispan Cross-site Replication documentation](https://infinispan.org/docs/stable/titles/xsite/xsite.html).

## Infinispan configuration

Configure Infinispan as a storage solution through the Caching service by setting the following environment variables. Environment variables can be set by adding them to `instance.env`.
Configure Infinispan as a storage solution through the Caching service by setting the following configuration parameters in the `zowe.yaml`.

* **`CACHING_STORAGE_INFINISPAN_INITIALHOSTS`**
* **`zowe.components.caching-service.storage.infinispan.initialHosts`**

This property specifies the list of cluster nodes (members). In case of multiple instances, the value for each Caching Service instance can be
either a list of all the members, separated by a comma, or just the replica. The format is `${JGROUPS_BIND_ADDRESS}[${JGROUPS_BIND_PORT}]`.
either a list of all the members, separated by a comma, or just the replica. The format is `${haInstance.hostname}[${zowe.components.caching-service.storage.infinispan.jgroups.port}]`.

**Example:**
`CACHING_STORAGE_INFINISPAN_INITIALHOST=caching-service[7600]`


* **`CACHING_STORAGE_INFINISPAN_PERSISTENCE_DATALOCATION`**
* **`zowe.components.caching-service.storage.infinispan.persistence.dataLocation`**

The path where the Soft-Index store will keep its data files for the Infinispan Soft-Index Cache Store.
The default value is `data`. If you run the Caching Service in HA and the instances use the same filesystem,
you have to specify a different value of the `CACHING_STORAGE_INFINISPAN_PERSISTENCE_DATALOCATION` property for each
you have to specify a different value of the `zowe.components.caching-service.storage.infinispan.persistence.dataLocation` property for each
instance. For more information, see [Soft-Index File Store](https://infinispan.org/blog/2014/10/31/soft-index-file-store).


* **`JGROUPS_BIND_PORT`**

The Jgroups port used by Infinispan.

* **`zowe.components.caching-service.storage.infinispan.jgroups.port`**

* **`JGROUPS_BIND_ADDRESS`**
The port number used by Infinispan to synchronise data among cahing-service instances.

The Jgroups address used by Infinispan.


**Example of Caching service configuration using Infinispan:**
```
zowe
components:
caching-service:
storage:
mode: infinispan
infinispan:
initialHosts: lpar123[7099]
jgroups:
port: 7098
persistence:
dataLocation: data01
```
12 changes: 7 additions & 5 deletions docs/user-guide/configure-caching-service-ha.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,13 @@ The Infinispan storage method is recommended for production usage.

```
zowe
environments:
JGROUPS_BIND_PORT:
JGROUPS_BIND_ADDRESS:
CACHING_STORAGE_INFINISPAN_INITIALHOSTS:
CACHING_STORAGE_INFINISPAN_PERSISTENCE_DATALOCATION:
components:
caching-service:
storage:
mode: infinispan
infinispan:
jgroups:
port: 7098
```

## VSAM
Expand Down
2 changes: 1 addition & 1 deletion docs/user-guide/install-zos.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ In most cases, the system programmer performs the Zowe installation and configur

The following diagram illustrates the full ecosystem for installing Zowe server-side components for z/OS.

![4 installation methods](../images/install/4-installation-methods(2).png)
![4 installation methods](../images/install/4-installation-methods.png)

## Stage 1: Prepare for installation

Expand Down
1 change: 1 addition & 0 deletions sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -651,6 +651,7 @@ module.exports = {
"extend/extend-apiml/api-mediation-caching-service",
"extend/extend-apiml/api-mediation-vsam",
"extend/extend-apiml/api-mediation-redis",
"extend/extend-apiml/api-mediation-infinispan",
],
}
],
Expand Down

0 comments on commit ed1a983

Please sign in to comment.