Difference between revisions of "PEC-REP/Current/GIMPEGuide/PlanningGSP"

From Genesys Documentation
Jump to: navigation, search
Line 6: Line 6:
 
|LimitationsStatus=No
 
|LimitationsStatus=No
 
|HelmStatus=No
 
|HelmStatus=No
|HelmText=GIM Stream Processor (GSP) is the only service that runs in the GSP Docker container. The Helm charts included with the GSP release provision GSP and any Kubernetes infrastructure necessary for GSP to run.
+
|HelmText=To configure and deploy the GIM Stream Processor (GSP), you must obtain the Helm charts included with the GSP release. These Helm charts provision GSP plus any Kubernetes infrastructure GSP requires to run.
  
See {{Link-AnywhereElse|product=ReleaseNotes|version=Current|manual=GenesysEngage-cloud|topic=GIMHelm}} for the Helm chart version you must download for your release.
+
GSP is the only service that runs in the GSP container.
  
For information about how to download the Helm charts, see {{SuiteLevelLink|helmchart}}.
+
For information about how to download the Helm charts, see {{SuiteLevelLink|helmchart}}. To find the correct Helm chart version for your release, see {{Link-AnywhereElse|product=ReleaseNotes|version=Current|manual=GenesysEngage-cloud|topic=GIMHelm}} for the Helm chart version you must download for your release.
 
 
{{JDNote|There are known differences between the content on pages in this GSP section and the PAT team instructions used as doc input. Some of the PAT team content (for example, details about how to create third-party storage) is intentionally excluded, while there are some corrections/additions in this doc that the PAT team may not have carried over. Before using PAT team input to update pages in this section, compare their new content against the May 10/22 version of [https://intranet.genesys.com/display/CPE/19.3.1+Deployment 19.3.1 Deployment], and only consider content added since then. Similarly for GCA and GIM.}}
 
 
|ThirdPartyStatus=No
 
|ThirdPartyStatus=No
 
|ThirdPartyText=For information about setting up your Genesys Multicloud CX private edition platform, see {{SuiteLevelLink|softwarereq}}.
 
|ThirdPartyText=For information about setting up your Genesys Multicloud CX private edition platform, see {{SuiteLevelLink|softwarereq}}.
Line 19: Line 17:
 
|SectionThirdPartyItem={{SectionThirdPartyItem
 
|SectionThirdPartyItem={{SectionThirdPartyItem
 
|ThirdPartyItem=2f69518e-33af-4c0f-adcc-a98e5427e5e0
 
|ThirdPartyItem=2f69518e-33af-4c0f-adcc-a98e5427e5e0
|Notes=The Kafka topics that GSP will consume and produce must exist in the Kafka configuration. See more details [[{{FULLPAGENAME}}#Kafka|below]].
+
|Notes=The Kafka topics that GSP will consume and produce must exist in the Kafka configuration. See more details [[Draft:PEC-REP/Current/GIMPEGuide/PlanningGSP#GSP KafkaTopics|below]].
 
}}{{SectionThirdPartyItem
 
}}{{SectionThirdPartyItem
 
|ThirdPartyItem=9ae24d71-5263-4a2e-8d1b-f65660f1cdc0
 
|ThirdPartyItem=9ae24d71-5263-4a2e-8d1b-f65660f1cdc0
Line 30: Line 28:
 
}}
 
}}
 
|StorageStatus=No
 
|StorageStatus=No
|StorageText=Like GCA, GSP uses S3-compatible storage to store data during processing. GSP stores data such as GSP checkpoints, savepoints, and high availability data. By default, GSP is configured to use Azure Blob Storage, but you can also use S3-compatible storage provided by other cloud platforms. Genesys expects you to use the same storage account for GSP and GCA.
+
|StorageText=GSP maintains internal “state,” such as such as GSP checkpoints, savepoints, and high availability data, which must be persisted (stored). When it starts, GSP reads its state from storage, which allows it to continue processing data without reading data from Kafka topics from the start. GSP periodically updates its stare as it processing incoming data.
 +
GSP uses S3-compatible storage to store persisted data. You must provision this S3-compatible storage in your environment.  
 +
 
 +
By default, GSP is configured to use Azure Blob Storage, but you can also use S3-compatible storage provided by other cloud platforms. Genesys expects you to use the same storage account for GSP and GCA.
  
Follow the instructions provided by the storage service provider of your choice to create the S3-compatible storage. For example:
+
{{AnchorDiv|GSP_Plan_CreateS3Storage}}
 +
===Create S3-compatible storage===
 +
Genesys Info Mart has no special requirements for the storage buckets you create. Follow the instructions provided by the storage service provider of your choice to create the S3-compatible storage.
  
*For OpenShift, see the OpenShift Data Foundation (formerly OpenShift Container Storage) documentation about creating an Object Bucket Claim (OBC). Note that you must install OpenShift container storage on your cluster and provision it with bucket storage such as NooBaa before you create an OBC.<!--(CPE-2460)-->
+
*For OpenShift, see the OpenShift Data Foundation (formerly OpenShift Container Storage) documentation about creating an Object Bucket Claim (OBC). Note that you must install OpenShift container storage on your cluster and provision it with bucket storage such as NooBaa before you create an OBC.
 
*For GKE, see the Google Cloud Storage documentation about creating bucket storage.
 
*For GKE, see the Google Cloud Storage documentation about creating bucket storage.
 +
*For AKS, see Azure Storage documentation about creating blob storage.
  
Genesys Info Mart has no special requirements for the storage buckets you create.
+
To enable the S3-compatible storage object, you populate Helm chart override values for the service (see ). To do this, you need to know details such as the endpoint information, access key, and secret.
 
 
To enable the Genesys Info Mart service to access your S3-compatible storage object, you need to know details such as the endpoint information, access key, and secret, in order to populate Helm chart override values for the service (see {{Link-SomewhereInThisVersion|manual=GIMPEGuide|topic=ConfigureGSP|anchor=Storage|display text=Configure S3-compatible storage}}).
 
  
 
{{NoteFormat|Note and securely store the bucket details, particularly the access key and secret, when you create the storage bucket. Depending on the cloud storage service you choose, you may not be able to recover this information subsequently.}}
 
{{NoteFormat|Note and securely store the bucket details, particularly the access key and secret, when you create the storage bucket. Depending on the cloud storage service you choose, you may not be able to recover this information subsequently.}}
Line 50: Line 52:
 
There are other private edition services you must deploy before Genesys Info Mart. For detailed information about the recommended order of services deployment, see {{SuiteLevelLink|deployorder}}.
 
There are other private edition services you must deploy before Genesys Info Mart. For detailed information about the recommended order of services deployment, see {{SuiteLevelLink|deployorder}}.
 
|GDPRStatus=No
 
|GDPRStatus=No
|GDPRText=Not applicable, provided your Kafka retention policies have not been set to more than 30 days. GSP does not store information beyond ephemeral data used during processing.
+
|GDPRText=Not applicable, provided your Kafka retention policies have not been set to more than 30 days. GSP does not store information beyond the ephemeral data used during processing.
{{AnchorDiv|Kafka}}
+
{{AnchorDiv|GSP_KafkaTopics}}
==Kafka configuration==
+
==GSP Kafka topics==
Unless Kafka has been configured to auto-create topics, ensure that the Kafka topics GSP requires have been created in the Kafka configuration. The following table shows the topic names GSP expects to use. An entry in the '''Customizable GSP parameter''' column indicates that GSP supports using a customized topic name. If you use customized topic names, you must override the applicable values in the '''values.yaml''' file (see {{Link-SomewhereInThisVersion|manual=GIMPEGuide|topic=ConfigureGSP|anchor=OverrideValues|display text=Override Helm chart values}}).  
+
For GSP, topics in Kafka represent various data domains and GSP expects certain topics to be defined.
  
The topics represent various data domains. If a topic does not exist, GSP will never receive data for that domain. If the topic exists but the customizable parameter value is empty in the GSP configuration, data from that domain will be discarded.
+
*If a topic does not exist, GSP will never receive data for that domain.
 +
*If a customized topic has been created but not defined in GSP configuration, data from that domain will be discarded.
  
{{JDNote|Uncomment the gsp-mn row when media-neutral is supported. Add a row for designer-das when SDR is supported (see [https://genesysjira.atlassian.net/browse/GIM-14103 GIM-14103]).}}
+
Unless Kafka has been configured to auto-create topics, you must manually ensure that all of the Kafka topics GSP requires are created in Kafka configuration. 
 +
 
 +
The following table shows the topic names GSP expects to be available. In this table, an entry in the '''Customizable GSP parameter column''' indicates support for customizing that topic name.  
 
{{{!}}
 
{{{!}}
 
!'''Topic name'''
 
!'''Topic name'''
Line 63: Line 68:
 
!'''Description'''
 
!'''Description'''
 
{{!}}-
 
{{!}}-
{{!}} colspan="3"{{!}}'''GSP consumes the following topics:'''
+
{{!}} colspan="3"{{!}}'''GSP consumes data from the following topics:'''
 
{{!}}-
 
{{!}}-
{{!}}voice-callthread
+
{{!}}digital-agentstate
{{!}}
+
{{!}}digitalAgentStates
{{!}}Name of the input topic with voice interactions
+
{{!}}Name of the input topic with digital agent states
 +
{{!}}-
 +
{{!}}digital-itx
 +
{{!}}digitalItx
 +
{{!}}Name of the input topic with digital interactions
 +
{{!}}-
 +
{{!}}gca-cfg
 +
{{!}}cfg
 +
{{!}}Name of the input topic with configuration data
 
{{!}}-
 
{{!}}-
 
{{!}}voice-agentstate
 
{{!}}voice-agentstate
 
{{!}}
 
{{!}}
 
{{!}}Name of the input topic with voice agent states
 
{{!}}Name of the input topic with voice agent states
 +
{{!}}-
 +
{{!}}voice-callthread
 +
{{!}}
 +
{{!}}Name of the input topic with voice interactions
 
{{!}}-   
 
{{!}}-   
 
{{!}}voice-outbound
 
{{!}}voice-outbound
Line 77: Line 94:
 
{{!}}Name of the input topic with outbound (CX Contact) activity associated with either voice or digital interactions
 
{{!}}Name of the input topic with outbound (CX Contact) activity associated with either voice or digital interactions
 
{{!}}-
 
{{!}}-
{{!}}digital-itx
+
{{!}} colspan="3"{{!}}'''GSP produces data into the following topics:'''
{{!}}digitalItx
 
{{!}}Name of the input topic with digital interactions
 
 
{{!}}-
 
{{!}}-
{{!}}digital-agentstate
+
{{!}}gsp-cfg
{{!}}digitalAgentStates
 
{{!}}Name of the input topic with digital agent states
 
{{!}}-
 
{{!}}gca-cfg
 
 
{{!}}cfg
 
{{!}}cfg
{{!}}Name of the input topic with configuration data
+
{{!}}Name of the output topic for configuration reporting
 
{{!}}-
 
{{!}}-
{{!}} colspan="3"{{!}}'''GSP produces the following topics:'''
+
{{!}}gsp-custom
 +
{{!}}custom
 +
{{!}}Name of the output topic for custom reporting
 
{{!}}-
 
{{!}}-
 
{{!}}gsp-ixn
 
{{!}}gsp-ixn
 
{{!}}interactions
 
{{!}}interactions
 
{{!}}Name of the output topic for interactions
 
{{!}}Name of the output topic for interactions
{{!}}-
 
{{!}}gsp-sm
 
{{!}}agentStates
 
{{!}}Name of the output topic for agent states
 
 
{{!}}-  
 
{{!}}-  
 
{{!}}gsp-outbound
 
{{!}}gsp-outbound
Line 103: Line 112:
 
{{!}}Name of the output topic for outbound (CX Contact) activity
 
{{!}}Name of the output topic for outbound (CX Contact) activity
 
{{!}}-
 
{{!}}-
{{!}}gsp-custom
+
{{!}}gsp-sm
{{!}}custom
+
{{!}}agentStates
{{!}}Name of the output topic for custom reporting
+
{{!}}Name of the output topic for agent states
{{!}}-
 
{{!}}gsp-cfg
 
{{!}}cfg
 
{{!}}Name of the output topic for configuration reporting
 
 
{{!}}-
 
{{!}}-
 
<!--{{!}}gsp-mn {{Editgrn_open}}<font color=red>'''Writer's note:''' This row will be commented out until media-neutral is officially supported.</font>{{Editgrn_close}}
 
<!--{{!}}gsp-mn {{Editgrn_open}}<font color=red>'''Writer's note:''' This row will be commented out until media-neutral is officially supported.</font>{{Editgrn_close}}

Revision as of 03:00, September 30, 2022

This topic is part of the manual Genesys Info Mart Private Edition Guide for version Current of Reporting.

Find out what to do before deploying GIM Stream Processor (GSP).

Limitations and assumptions

Not applicable

Download the Helm charts

To configure and deploy the GIM Stream Processor (GSP), you must obtain the Helm charts included with the GSP release. These Helm charts provision GSP plus any Kubernetes infrastructure GSP requires to run.

GSP is the only service that runs in the GSP container.

For information about how to download the Helm charts, see Downloading your Genesys Multicloud CX containers. To find the correct Helm chart version for your release, see Helm charts and containers for Genesys Info Mart for the Helm chart version you must download for your release.

Third-party prerequisites

For information about setting up your Genesys Multicloud CX private edition platform, see Software requirements.

The following table lists the third-party prerequisites for GSP.

Third-party services
Name Version Purpose Notes
Kafka 2.x Message bus.The Kafka topics that GSP will consume and produce must exist in the Kafka configuration. See more details below.
Object storage Persistent or shared data storage, such as Amazon S3, Azure Blob Storage, or Google Cloud Storage.Both GSP and GCA require persistent storage to store data during processing. You can use the same storage account for both services.
A container image registry and Helm chart repository Used for downloading Genesys containers and Helm charts into the customer's repository to support a CI/CD pipeline. You can use any Docker OCI compliant registry.
Command Line Interface The command line interface tools to log in and work with the Kubernetes clusters.

Storage requirements

GSP maintains internal “state,” such as such as GSP checkpoints, savepoints, and high availability data, which must be persisted (stored). When it starts, GSP reads its state from storage, which allows it to continue processing data without reading data from Kafka topics from the start. GSP periodically updates its stare as it processing incoming data. GSP uses S3-compatible storage to store persisted data. You must provision this S3-compatible storage in your environment.

By default, GSP is configured to use Azure Blob Storage, but you can also use S3-compatible storage provided by other cloud platforms. Genesys expects you to use the same storage account for GSP and GCA.

Create S3-compatible storage

Genesys Info Mart has no special requirements for the storage buckets you create. Follow the instructions provided by the storage service provider of your choice to create the S3-compatible storage.

  • For OpenShift, see the OpenShift Data Foundation (formerly OpenShift Container Storage) documentation about creating an Object Bucket Claim (OBC). Note that you must install OpenShift container storage on your cluster and provision it with bucket storage such as NooBaa before you create an OBC.
  • For GKE, see the Google Cloud Storage documentation about creating bucket storage.
  • For AKS, see Azure Storage documentation about creating blob storage.

To enable the S3-compatible storage object, you populate Helm chart override values for the service (see ). To do this, you need to know details such as the endpoint information, access key, and secret.

Important
Note and securely store the bucket details, particularly the access key and secret, when you create the storage bucket. Depending on the cloud storage service you choose, you may not be able to recover this information subsequently.

Network requirements

No special network requirements. Network bandwidth must be sufficient to handle the volume of data to be transferred into and out of Kafka.

Browser requirements

Not applicable

Genesys dependencies

There are no strict dependencies between the Genesys Info Mart services, but the logic of your particular pipeline might require Genesys Info Mart services to be deployed in a particular order. Depending on the order of deployment, there might be temporary data inconsistencies until all the Genesys Info Mart services are operational. For example, GSP looks for the GCA snapshot when it starts; if GCA has not yet been deployed, GSP will encounter unknown configuration objects and resources until the snapshot becomes available.

There are other private edition services you must deploy before Genesys Info Mart. For detailed information about the recommended order of services deployment, see Order of services deployment.

GDPR support

Not applicable, provided your Kafka retention policies have not been set to more than 30 days. GSP does not store information beyond the ephemeral data used during processing.

GSP Kafka topics

For GSP, topics in Kafka represent various data domains and GSP expects certain topics to be defined.

  • If a topic does not exist, GSP will never receive data for that domain.
  • If a customized topic has been created but not defined in GSP configuration, data from that domain will be discarded.

Unless Kafka has been configured to auto-create topics, you must manually ensure that all of the Kafka topics GSP requires are created in Kafka configuration.

The following table shows the topic names GSP expects to be available. In this table, an entry in the Customizable GSP parameter column indicates support for customizing that topic name.

Topic name Customizable GSP parameter Description
GSP consumes data from the following topics:
digital-agentstate digitalAgentStates Name of the input topic with digital agent states
digital-itx digitalItx Name of the input topic with digital interactions
gca-cfg cfg Name of the input topic with configuration data
voice-agentstate Name of the input topic with voice agent states
voice-callthread Name of the input topic with voice interactions
voice-outbound Name of the input topic with outbound (CX Contact) activity associated with either voice or digital interactions
GSP produces data into the following topics:
gsp-cfg cfg Name of the output topic for configuration reporting
gsp-custom custom Name of the output topic for custom reporting
gsp-ixn interactions Name of the output topic for interactions
gsp-outbound outbound Name of the output topic for outbound (CX Contact) activity
gsp-sm agentStates Name of the output topic for agent states
Comments or questions about this documentation? Contact us for support!