-
Notifications
You must be signed in to change notification settings - Fork 136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Infinispan doc updates #4101
base: docs-staging
Are you sure you want to change the base?
Infinispan doc updates #4101
Changes from all commits
dc18a02
f2ddd45
7777abf
45d84be
e6e4b49
6fb6374
1f5a8ec
d2bffd8
7e8abc5
d2dcfb4
64072a8
34d0522
8e972fa
08f5cb6
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,19 @@ | ||
# Using Infinispan as a storage solution through the Caching service | ||
# Using Infinispan as a storage solution through the Caching Service | ||
|
||
:::info Required roles: system administrator, security administrator | ||
::: | ||
|
||
You can configure Infinispan as a storage solution through the Caching service, as well as configure Infinispan for high availability to replicate data to provide data durability and availability. | ||
You can configure Infinispan as a storage solution through the Caching Service, as well as configure Infinispan for high availability (HA) to replicate data to provide data durability and availability. | ||
|
||
- [Using Infinispan as a storage solution through the Caching service](#using-infinispan-as-a-storage-solution-through-the-caching-service) | ||
- [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 | ||
|
||
Infinispan is a storage solution that stores data structures in key-value pairs. The API Caching service uses hash sets, where each | ||
service storing data via the Caching service has its own hash, and each data entry is a key-value entry within that service's Infinispan hash set. | ||
Infinispan is a storage solution that stores data structures in key-value pairs. The API Caching Service uses hash sets, where each | ||
service storing data via the Caching Service has its own hash, and each data entry is a key-value entry within that service's Infinispan hash set. | ||
|
||
For more information on Infinispan, see the [official Infinispan documentation](https://infinispan.org/documentation/). | ||
|
||
|
@@ -26,40 +26,56 @@ For more information on Infinispan replication and how to configure a replica in | |
|
||
## Infinispan configuration | ||
|
||
Configure Infinispan as a storage solution through the Caching service by setting the following configuration parameters in the `zowe.yaml`. | ||
Configure Infinispan as a storage solution through the Caching Service by setting the following configuration parameters in the `zowe.yaml`. | ||
|
||
* **`zowe.components.caching-service.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 `${haInstance.hostname}[${zowe.components.caching-service.storage.infinispan.jgroups.port}]`. | ||
|
||
* **`zowe.components.caching-service.storage.infinispan.persistence.dataLocation`** | ||
* **zowe.components.caching-service.storage.infinispan.persistence.dataLocation** | ||
|
||
The path where the service keeps 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 data property for each instance. For more information, see the [Soft-Index File Store](https://infinispan.org/blog/2014/10/31/soft-index-file-store). | ||
The default value is `data`. To run the Caching Service in HA, ensure that you apply the following configuration conditions: | ||
|
||
- The value should be the same for each instance. | ||
- The location should point to a non-shared filesystem. Each instance requires unique storage. | ||
- For more information, see the [Soft-Index File Store](https://infinispan.org/blog/2014/10/31/soft-index-file-store). | ||
|
||
* **`zowe.components.caching-service.storage.infinispan.persistence.indexLocation`** | ||
|
||
* **zowe.components.caching-service.storage.infinispan.persistence.indexLocation** | ||
|
||
The path where the service keeps its index data for the Infinispan Soft-Index Cache Store. | ||
The default value is `index`. If you run the Caching Service in HA and the instances use the same filesystem, you have to specify a different value of the index property for each instance. For more information, see the [Soft-Index File Store](https://infinispan.org/blog/2014/10/31/soft-index-file-store). | ||
The default value is `index`. To run the Caching Service in HA, ensure that you apply the following configuration conditions: | ||
|
||
- The value should be the same for each instance. | ||
- The location should point to a non-shared filesystem. Each instance requires unique storage. | ||
- For more information, see the [Soft-Index File Store](https://infinispan.org/blog/2014/10/31/soft-index-file-store). | ||
|
||
|
||
* **`zowe.components.caching-service.storage.infinispan.jgroups.port`** | ||
* **zowe.components.caching-service.storage.infinispan.jgroups.port** | ||
|
||
(OPTIONAL)The default value is `7098`. The port number used by Infinispan to synchronise data among cahing-service instances. | ||
(Optional) The default value is `7600`. The port number is used by Infinispan to synchronise data among Caching Service instances. | ||
|
||
* **`zowe.components.caching-service.storage.infinispan.jgroups.host`** | ||
:::note | ||
We recommend you define this value to avoid potential problems or errors in future Zowe upgrades, for example | ||
from version 2.x through v3.1 to v3.2 and newer versions. | ||
::: | ||
|
||
(OPTIONAL)The default value is taken from zowe hostname. The hostname used by Infinispan to synchronise data among cahing-service instances. | ||
* **zowe.components.caching-service.storage.infinispan.jgroups.host** | ||
|
||
(Optional) The default value is taken from zowe hostname. The hostname used by Infinispan to synchronise data among Caching Service instances. | ||
|
||
* **`zowe.components.caching-service.storage.infinispan.keyExchange.port`** | ||
* **zowe.components.caching-service.storage.infinispan.keyExchange.port** | ||
|
||
(OPTIONAL)The default value is `7118`. The port number used by Infinispan to exchange encryption key among cahing-service instances. | ||
(Optional) The default value is `7601`. The port number is used by Infinispan to exchange encryption key among Caching Service instances. | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This one is not defined in https://github.com/zowe/zowe-install-packaging/blob/v3.x/staging/files/defaults.yaml |
||
:::note | ||
We recommend you define this value to avoid potential problems or errors in future Zowe upgrades, for example | ||
from version 2.x through v3.1 to v3.2 and newer versions. | ||
::: | ||
|
||
**Example of Caching service HA configuration using Infinispan:** | ||
**Example of Caching Service HA configuration using Infinispan:** | ||
|
||
```yaml | ||
haInstances: | ||
|
@@ -68,19 +84,21 @@ Configure Infinispan as a storage solution through the Caching service by settin | |
caching-service: | ||
storage: | ||
mode: infinispan | ||
infinispan: | ||
initialHosts: lpar2[7098] | ||
infinispan: | ||
jgroups.port: 7600 | ||
initialHosts: lpar2[7600] | ||
persistence: | ||
dataLocation: /global/zowe/workspace/caching-service/data01 | ||
indexLocation: /global/zowe/workspace/caching-service/index01 | ||
dataLocation: /global/zowe/workspace/caching-service/data | ||
indexLocation: /global/zowe/workspace/caching-service/index | ||
lpar2: | ||
Comment on lines
+91
to
+92
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. add a comment to the example about needing to be in a non-shared filesystem (tendency to copy-paste) |
||
components: | ||
caching-service: | ||
storage: | ||
mode: infinispan | ||
infinispan: | ||
initialHosts: lpar1[7098] | ||
infinispan: | ||
jgroups.port: 7600 | ||
initialHosts: lpar1[7600] | ||
persistence: | ||
dataLocation: /global/zowe/workspace/caching-service/data02 | ||
indexLocation: /global/zowe/workspace/caching-service/index02 | ||
dataLocation: /global/zowe/workspace/caching-service/data | ||
indexLocation: /global/zowe/workspace/caching-service/index | ||
``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is going with 3.2, I'd keep the 7098, I believe we need to update that in the
defaults.yaml