From ed1a9831d37d6ad04436047365fc5672acb7b013 Mon Sep 17 00:00:00 2001 From: achmelo Date: Thu, 21 Dec 2023 10:32:47 +0100 Subject: [PATCH] configure infinispan with zowe yaml Signed-off-by: achmelo --- .../extend-apiml/api-mediation-infinispan.md | 44 +++++++++++-------- .../configure-caching-service-ha.md | 12 ++--- docs/user-guide/install-zos.md | 2 +- sidebars.js | 1 + 4 files changed, 35 insertions(+), 24 deletions(-) diff --git a/docs/extend/extend-apiml/api-mediation-infinispan.md b/docs/extend/extend-apiml/api-mediation-infinispan.md index 5d456d20cd..403db6a854 100644 --- a/docs/extend/extend-apiml/api-mediation-infinispan.md +++ b/docs/extend/extend-apiml/api-mediation-infinispan.md @@ -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 @@ -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 + ``` \ No newline at end of file diff --git a/docs/user-guide/configure-caching-service-ha.md b/docs/user-guide/configure-caching-service-ha.md index 2703a65a82..78ac382808 100644 --- a/docs/user-guide/configure-caching-service-ha.md +++ b/docs/user-guide/configure-caching-service-ha.md @@ -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 diff --git a/docs/user-guide/install-zos.md b/docs/user-guide/install-zos.md index e5ec5c842d..f9ccc9491b 100644 --- a/docs/user-guide/install-zos.md +++ b/docs/user-guide/install-zos.md @@ -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 diff --git a/sidebars.js b/sidebars.js index db18b6f788..ae49c7161e 100644 --- a/sidebars.js +++ b/sidebars.js @@ -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", ], } ],