Difference between revisions of "PEC-REP/Current/GCXIPEGuide/PlanningRAA"
Line 10: | Line 10: | ||
*Postgres 42.2.11 JDBC Driver | *Postgres 42.2.11 JDBC Driver | ||
*Oracle Database 21c (21.1) JDBC Driver | *Oracle Database 21c (21.1) JDBC Driver | ||
− | |||
You can override the JDBC driver by copying the driver file to '''lib\jdbc_driver_<RDBMS>''' (or by making a link) in a work directory. See [https://docs.genesys.com/Documentation/RAA/9.0.0/Dep/PostInstall#JDBCDriverForRAA JDBC driver for RAA] for details. | You can override the JDBC driver by copying the driver file to '''lib\jdbc_driver_<RDBMS>''' (or by making a link) in a work directory. See [https://docs.genesys.com/Documentation/RAA/9.0.0/Dep/PostInstall#JDBCDriverForRAA JDBC driver for RAA] for details. | ||
|HelmStatus=No | |HelmStatus=No | ||
− | |HelmText=For | + | |HelmText=For more information about downloading containers, see: {{SuiteLevelLink|helmchart}}. |
<span lang="EN-CA">To learn what Helm chart version you must download for your release, see</span> {{Link-AnywhereElse|product=ReleaseNotes|version=Current|manual=GenesysEngage-cloud|topic=GCXIHelm|display text=Helm charts and containers for Genesys Customer Experience Insights}}. | <span lang="EN-CA">To learn what Helm chart version you must download for your release, see</span> {{Link-AnywhereElse|product=ReleaseNotes|version=Current|manual=GenesysEngage-cloud|topic=GCXIHelm|display text=Helm charts and containers for Genesys Customer Experience Insights}}. | ||
− | = | + | |ThirdPartyStatus=No |
− | + | |ThirdPartyText=For information about setting up your Genesys Multicloud CX private edition platform, including Kubernetes, Helm, and other prerequisites, see {{SuiteLevelLink|softwarereq}}. | |
− | + | {{AnchorDiv|JDBCDrivers}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {{AnchorDiv| | ||
|StorageStatus=No | |StorageStatus=No | ||
− | |StorageText====GIM secret volume=== | + | |StorageText=This section describes the storage requirements for various volumes. |
− | + | ===GIM secret volume=== | |
− | + | In scenarios where '''raa.env.GCXI_GIM_DB__JSON''' is not specified, RAA mounts this volume to provide GIM connections details. | |
− | |||
− | '''gimsecret.yaml''' | + | #Declare GIM database connection details as a Kubernetes secret in '''gimsecret.yaml''': |
− | <source lang="bash">apiVersion: v1 | + | #:<source lang="bash">apiVersion: v1 |
kind: Secret | kind: Secret | ||
metadata: | metadata: | ||
Line 141: | Line 32: | ||
type: kubernetes.io/service-account-token | type: kubernetes.io/service-account-token | ||
data: | data: | ||
− | json_credentials: eyJqZGJjX3VybCI6ImpkYmM6cG9zdGdyZXNxbDovLzxob3N0Pjo1NDMyLzxnaW1fZGF0YWJhc2U+IiwgImRiX3VzZXJuYW1lIjoiPHVzZXI+IiwgImRiX3Bhc3N3b3JkIjoiPHBhc3N3b3JkPiJ9Cg== | + | json_credentials: eyJqZGJjX3VybCI6ImpkYmM6cG9zdGdyZXNxbDovLzxob3N0Pjo1NDMyLzxnaW1fZGF0YWJhc2U+IiwgImRiX3VzZXJuYW1lIjoiPHVzZXI+IiwgImRiX3Bhc3N3b3JkIjoiPHBhc3N3b3JkPiJ9Cg==</source> |
− | </source> | + | #Reference '''gimsecret.yaml''' in '''values.yaml''': |
− | + | #:<source lang="bash">raa | |
− | |||
− | ''' | ||
− | <source lang="bash">raa | ||
... | ... | ||
volumes: | volumes: | ||
Line 155: | Line 43: | ||
jsonFile: "json_credentials" | jsonFile: "json_credentials" | ||
...</source> | ...</source> | ||
− | |||
− | ''' | + | Alternatively, you can mount the CSI secret using '''secretProviderClass''', in '''values.yaml''':<source lang="bash">raa |
− | <source lang="bash">raa | ||
... | ... | ||
volumes: | volumes: | ||
Line 167: | Line 53: | ||
jsonFile: "json_credentials" | jsonFile: "json_credentials" | ||
...</source> | ...</source> | ||
− | |||
===Config volume=== | ===Config volume=== | ||
− | RAA mounts a config volume | + | RAA mounts a config volume inside the container, as the folder '''/genesys/raa_config'''. The folder is treated as a work directory, RAA reads the following files from it during startup: |
− | *custom '''*.ss''' files | + | *'''conf.xml''', which contains application-level config settings. |
− | *JDBC driver from '''lib/jdbc_driver_ | + | *custom '''*.ss''' files. |
− | + | *JDBC driver, from the folder '''lib/jdbc_driver_<RDBMS>'''. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | RAA does not normally create any files in '''/genesys/raa_config''' at runtime, so the volume does not require a fast storage class. By default, the size limit is set to 50 MB. You can specify the storage class and size limit in '''values.yaml''':<source lang="bash">raa | |
− | |||
− | |||
− | ''' | ||
− | <source lang="bash">raa | ||
... | ... | ||
volumes: | volumes: | ||
Line 201: | Line 66: | ||
config: | config: | ||
capacity: 50Mi | capacity: 50Mi | ||
− | storageClassName: "<vendor storage class>" | + | storageClassName: "<vendor storage class>"</source> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
... | ... | ||
− | + | RAA helm chart creates a Persistent Volume Claim (PVC). You can define a Persistent Volume (PV) separately using the '''gcxi-raa''' chart, and bind such a volume to the PVC by specifying the volume name in the '''raa.volumes.config.pvc.volumeName''' value, in '''values.yaml''':<source lang="bash"> | |
− | + | raa | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ''' | ||
− | <source lang="bash">raa | ||
... | ... | ||
volumes: | volumes: | ||
... | ... | ||
config: | config: | ||
− | |||
pvc: | pvc: | ||
volumeName: "my_raa_config_volume" | volumeName: "my_raa_config_volume" | ||
...</source> | ...</source> | ||
− | |||
− | |||
− | |||
===Health volume=== | ===Health volume=== | ||
− | RAA uses | + | RAA uses the Health volume to store: |
− | |||
− | |||
− | |||
− | |||
− | + | *Health files. | |
+ | *Prometheus file containing metrics for the most recent 2-3 scrape intervals. | ||
+ | *Results of the most recent '''testRun init''' container execution. | ||
− | ''' | + | By default, the volume is limited to 50MB. RAA periodically interacts with the volume at runtime, so Genesys does not recommend a slow storage class for this volume. You can specify the storage class and size limit in '''values.yaml''':<source lang="bash">raa |
− | |||
− | <source lang="bash">raa | ||
... | ... | ||
volumes: | volumes: | ||
Line 302: | Line 91: | ||
capacity: 50Mi | capacity: 50Mi | ||
storageClassName: "<vendor storage class>" | storageClassName: "<vendor storage class>" | ||
− | ...</source> | + | ...</source>RAA helm chart creates a PVC. You can define a PV separately using the '''gcxi-raa''' chart, and bind such a volume to the PVC by specifying the volume name in the '''raa.volumes.health.pvc.volumeName''' value, in '''values.yaml''':<source lang="bash">raa |
− | |||
− | |||
− | '''raa | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ''' | ||
− | <source lang="bash">raa | ||
... | ... | ||
volumes: | volumes: | ||
... | ... | ||
health: | health: | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
pvc: | pvc: | ||
volumeName: "my_raa_helath_volume" | volumeName: "my_raa_helath_volume" | ||
− | ...</source> | + | ...</source><br /> |
− | |||
|NetworkStatus=No | |NetworkStatus=No | ||
|NetworkText=RAA interacts only with the Genesys Info Mart database. | |NetworkText=RAA interacts only with the Genesys Info Mart database. | ||
Line 399: | Line 117: | ||
|GDPRStatus=No | |GDPRStatus=No | ||
|GDPRText=Not applicable. | |GDPRText=Not applicable. | ||
− | |||
}} | }} |
Revision as of 20:15, April 8, 2022
Contents
Find out what to do before deploying Reporting and Analytics Aggregates (RAA).
Limitations and assumptions
The RAA container works with the Genesys Info Mart database; deploy RAA only after you have deployed Genesys Info Mart. The Genesys Info Mart database schema must correspond to a compatible Genesys Info Mart version. Execute the following command to discover the required Genesys Info Mart release:
docker run -it --entrypoint /bin/java gcxi/raa:<IMAGE_VERSION> -jar GIMAgg.jar -version
RAA container runs RAA on Java 11, and is supplied with the following of JDBC drivers:
- MSSQL 9.2.1 JDBC Driver
- Postgres 42.2.11 JDBC Driver
- Oracle Database 21c (21.1) JDBC Driver
You can override the JDBC driver by copying the driver file to lib\jdbc_driver_<RDBMS> (or by making a link) in a work directory. See JDBC driver for RAA for details.
Download the Helm charts
For more information about downloading containers, see: Downloading your Genesys Multicloud CX containers.
To learn what Helm chart version you must download for your release, see Helm charts and containers for Genesys Customer Experience Insights.
Third-party prerequisites
For information about setting up your Genesys Multicloud CX private edition platform, including Kubernetes, Helm, and other prerequisites, see Software requirements.
Storage requirements
This section describes the storage requirements for various volumes.
GIM secret volume
In scenarios where raa.env.GCXI_GIM_DB__JSON is not specified, RAA mounts this volume to provide GIM connections details.
- Declare GIM database connection details as a Kubernetes secret in gimsecret.yaml:
apiVersion: v1 kind: Secret metadata: namespace: gcxi name: gim-secret type: kubernetes.io/service-account-token data: json_credentials: eyJqZGJjX3VybCI6ImpkYmM6cG9zdGdyZXNxbDovLzxob3N0Pjo1NDMyLzxnaW1fZGF0YWJhc2U+IiwgImRiX3VzZXJuYW1lIjoiPHVzZXI+IiwgImRiX3Bhc3N3b3JkIjoiPHBhc3N3b3JkPiJ9Cg==
- Reference gimsecret.yaml in values.yaml:
raa ... volumes: ... gimSecret: name: "gim-secret-volume" secretName: "gim-secret" jsonFile: "json_credentials" ...
Alternatively, you can mount the CSI secret using secretProviderClass, in values.yaml:
raa
...
volumes:
...
gimSecret:
name: "gim-secret-volume"
secretProviderClass: "gim-secret-class"
jsonFile: "json_credentials"
...
Config volume
RAA mounts a config volume inside the container, as the folder /genesys/raa_config. The folder is treated as a work directory, RAA reads the following files from it during startup:
- conf.xml, which contains application-level config settings.
- custom *.ss files.
- JDBC driver, from the folder lib/jdbc_driver_<RDBMS>.
RAA does not normally create any files in /genesys/raa_config at runtime, so the volume does not require a fast storage class. By default, the size limit is set to 50 MB. You can specify the storage class and size limit in values.yaml:
raa
...
volumes:
...
config:
capacity: 50Mi
storageClassName: "<vendor storage class>"
...
RAA helm chart creates a Persistent Volume Claim (PVC). You can define a Persistent Volume (PV) separately using the gcxi-raa chart, and bind such a volume to the PVC by specifying the volume name in the raa.volumes.config.pvc.volumeName value, in values.yaml:
raa
...
volumes:
...
config:
pvc:
volumeName: "my_raa_config_volume"
...
Health volume
RAA uses the Health volume to store:
- Health files.
- Prometheus file containing metrics for the most recent 2-3 scrape intervals.
- Results of the most recent testRun init container execution.
By default, the volume is limited to 50MB. RAA periodically interacts with the volume at runtime, so Genesys does not recommend a slow storage class for this volume. You can specify the storage class and size limit in values.yaml:
raa
...
volumes:
...
health:
capacity: 50Mi
storageClassName: "<vendor storage class>"
...
RAA helm chart creates a PVC. You can define a PV separately using the gcxi-raa chart, and bind such a volume to the PVC by specifying the volume name in the raa.volumes.health.pvc.volumeName value, in values.yaml:
raa
...
volumes:
...
health:
pvc:
volumeName: "my_raa_helath_volume"
...
Network requirements
RAA interacts only with the Genesys Info Mart database.
RAA can expose Prometheus metrics by way of Netcat.
The aggregation pod has it's own IP address, and can run with one or two running containers. For Helm test, an additional IP address is required -- each test pod runs one container.
Genesys recommends that RAA be located in the same region as the Genesys Info Mart database.
Secrets
RAA secret information is defined in the values.yaml file (line 89).
For information about configuring arbitrary UID, see Configure security.
Genesys dependencies
RAA interacts with Genesys Info Mart database only.
GDPR support
Not applicable.