Jump to: navigation, search
Line 31: Line 31:
 
===Implementation Steps===
 
===Implementation Steps===
 
<ol>
 
<ol>
<li>Unpack installation package (Example: IP_HTCCDev_9000197b1_ENU_dockerlinux.zip file) and navigate to "ip" folder which should contain following files:
+
<li>Unpack installation package (Example: IP_HTCCDev_9000197b1_ENU_dockerlinux.zip file) and navigate to the '''ip''' folder which contains the following files:
 
* gws-microservices.tgz
 
* gws-microservices.tgz
 
* exported microservices in tar.gz format (Example: gws-platform-configuration_9.0.000.42.tar.gz)
 
* exported microservices in tar.gz format (Example: gws-platform-configuration_9.0.000.42.tar.gz)
 
</li>
 
</li>
<li>Unpack gws-microservices.tgz archive to /opt/genesys/gws directory.
+
<li>Unpack '''gws-microservices.tgz''' archive to '''/opt/genesys/gws''' directory.
 
<source lang="text">
 
<source lang="text">
 
mkdir -p /opt/genesys/gws
 
mkdir -p /opt/genesys/gws
Line 47: Line 47:
 
{{NoteFormat|This script must be run with Docker capable privileges and you must login to your registry before pushing.}}
 
{{NoteFormat|This script must be run with Docker capable privileges and you must login to your registry before pushing.}}
 
</li>
 
</li>
<li>Edit the following values in the /opt/genesys/gws/kubernetes/parameters.yaml file:
+
<li>Edit the following values in the '''/opt/genesys/gws/kubernetes/parameters.yaml''' file:
 
{|
 
{|
 
| valign="top" |
 
| valign="top" |
Line 66: Line 66:
 
GWS_DOMAIN
 
GWS_DOMAIN
 
| valign="top" |
 
| valign="top" |
"onpremiselab.com"
+
[http://onpremiselab.com/  http://onpremiselab.com ]
 
| valign="top" |
 
| valign="top" |
 
Domain associated with this contact center.
 
Domain associated with this contact center.
Line 76: Line 76:
 
| valign="top" |
 
| valign="top" |
 
Location of Configuration Server <br>
 
Location of Configuration Server <br>
'''Note:''' The GWS Cluster Application object (typically named CloudCluster) in the Configuration Database must be configured with a specified location for each connection to Genesys servers, like Configuration Server, Stat Server, T-Server, and so on. This setting defines which server instance is visible by the GWS node based on its position in the GWS Cluster.
+
'''Note:''' The GWS Cluster Application object (typically named CloudCluster) in the Configuration Database must be configured with a specified location for each connection to Genesys servers, such as Configuration Server, Stat Server, T-Server, and so on. This setting defines which server instance is visible by the GWS node based on its position in the GWS Cluster.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 139: Line 139:
 
[http://onpremiselab.com/  http://onpremiselab.com ]
 
[http://onpremiselab.com/  http://onpremiselab.com ]
 
| valign="top" |
 
| valign="top" |
Specifies an array by using double quotes and comma to separate values with no whitespace between. Used as part of OAuth authentication flow.
+
Specifies an array by using double quotes and comma to separate values with no white space in between. Used as part of OAuth authentication flow.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 146: Line 146:
 
false
 
false
 
| valign="top" |
 
| valign="top" |
Enables Ingress secured endpoint configuration for Web Service and Applications.
+
Enables Ingress secured endpoint configuration for Web Services and Applications.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 160: Line 160:
 
false
 
false
 
| valign="top" |
 
| valign="top" |
Enable PostgreSQL deployment procedure in same namespace as Web Services and Applications. <br>
+
Enable PostgreSQL deployment procedure in the same namespace as Web Services and Applications.<br>
 
'''Note:''' For Lab deployments only.
 
'''Note:''' For Lab deployments only.
 
|-
 
|-
Line 169: Line 169:
 
| valign="top" |
 
| valign="top" |
 
Address of PostgreSQL installation <br>
 
Address of PostgreSQL installation <br>
'''Note''' : If DEPLOY_POSTGRES set to true, default value should be kept.
+
'''Note''': If DEPLOY_POSTGRES set to <tt>true</tt>, the default value should be retained.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 177: Line 177:
 
| valign="top" |
 
| valign="top" |
 
PostgreSQL database name <br>
 
PostgreSQL database name <br>
'''Note''' : If DEPLOY_POSTGRES set to true, default value should be kept.  
+
'''Note''': If DEPLOY_POSTGRES set to <tt>true</tt>, the default value should be retained.  
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 185: Line 185:
 
| valign="top" |
 
| valign="top" |
 
PostgreSQL user, which can be used to connect to database <br>
 
PostgreSQL user, which can be used to connect to database <br>
'''Note''' : If DEPLOY_POSTGRES set to true, default value should be kept.
+
'''Note''': If DEPLOY_POSTGRES set to <tt>true</tt>, the default value should be retained.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 193: Line 193:
 
| valign="top" |
 
| valign="top" |
 
PostgreSQL user password <br>
 
PostgreSQL user password <br>
'''Note''' : If DEPLOY_POSTGRES set to true, default value should be kept.
+
'''Note''': If DEPLOY_POSTGRES set to <tt>true</tt>, the default value should be retained.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 209: Line 209:
 
| valign="top" |
 
| valign="top" |
 
Address of Redis cluster installation <br>
 
Address of Redis cluster installation <br>
'''Note''' : If DEPLOY_REDIS set to true, default value should be kept.
+
'''Note''': If DEPLOY_REDIS set to <tt>true</tt>, the default value should be retained.
 
|-
 
|-
 
| valign="top" |
 
| valign="top" |
Line 216: Line 216:
 
false
 
false
 
| valign="top" |
 
| valign="top" |
Enable ElasticSearch cluster deployment procedure in same namespace as Web Services and Applications. <br>
+
Enable ElasticSearch cluster deployment procedure in same namespace as Web Services and Applications.<br>
 
'''Note:''' For Lab deployments only.
 
'''Note:''' For Lab deployments only.
 
|-
 
|-
Line 225: Line 225:
 
| valign="top" |
 
| valign="top" |
 
Address of ElasticSearch cluster installation <br>
 
Address of ElasticSearch cluster installation <br>
'''Note''' : If DEPLOY_ELASTICSEARCH set to true, default value should be kept.
+
'''Note''': If DEPLOY_ELASTICSEARCH set to <tt>true</tt>, the default value should be retained.
 
|}
 
|}
 
</li>
 
</li>

Revision as of 09:18, February 5, 2020

Deployment of Web Services and Applications in Kuberbetes

Important: This content is restricted and not viewable without a login supplied by Genesys. The information contained in this documentation is not considered final and is managed under the terms and conditions found in the Pre-release Agreement. This documentation provides the most up-to-date reference information available for this pre-release version and is restricted for use by those who have signed the Pre-release Agreement with Genesys to acquire an early version of the software.

Prerequisites

Hardware Requirements

The solution can be deployed at a Kubernetes cluster with a minimal size of 3 nodes with an overall amount of 64 GB RAM. Recommended hardware requirements for each Kubernetes node:

  • Nodes: 3 nodes (Virtual Machines)
  • RAM: Approximately 22 GB for each node (64 GB in total)
  • CPU: 15 cores for each node (45 cores in total)
  • HDD: 100 GB for each node

Software Requirements

  • OS: CentOS-7

Kubernetes cluster:

  • Rancher Kubernetes Deployment
  • Client-side utilities installed at deployment host:

Workspace Web Requirements

  • Browser:
    • Google Chrome 75+
    • Mozilla Firefox 68+
    • Firefox ESR 60.9
    • Microsoft Internet Explorer 11
    • Microsoft Edge

Configuring Web Services Applications

To configure Web services and applications, refer to Configuring Web Services and Applications.

Deploying GWS

Implementation Steps

  1. Unpack installation package (Example: IP_HTCCDev_9000197b1_ENU_dockerlinux.zip file) and navigate to the ip folder which contains the following files:
    • gws-microservices.tgz
    • exported microservices in tar.gz format (Example: gws-platform-configuration_9.0.000.42.tar.gz)
  2. Unpack gws-microservices.tgz archive to /opt/genesys/gws directory.
    mkdir -p /opt/genesys/gws
    tar xvf gws-microservices.tgz -C /opt/genesys/gws
  3. Populate the Docker images (presented in *.tar.gz format) from installation package to your corporate docker registry.
    for i in *.tar.gz; do /opt/genesys/gws/kubernetes/bin/push-containers-to-local-registry.sh $i %corporate_registry_address% --push; done
    Important
    This script must be run with Docker capable privileges and you must login to your registry before pushing.
  4. Edit the following values in the /opt/genesys/gws/kubernetes/parameters.yaml file:

    Variable

    Value

    Description

    REGISTRY

    NA

    Corporate docker registry, which is accessible from all Kubernetes nodes.

    GWS_DOMAIN

    http://onpremiselab.com

    Domain associated with this contact center.

    LOCATION

    /USW2

    Location of Configuration Server
    Note: The GWS Cluster Application object (typically named CloudCluster) in the Configuration Database must be configured with a specified location for each connection to Genesys servers, such as Configuration Server, Stat Server, T-Server, and so on. This setting defines which server instance is visible by the GWS node based on its position in the GWS Cluster.

    CS_USERNAME

    default

    Username to connect to Configuration Server.

    CS_PASSWORD

    password

    Password to connect to Configuration Server.

    CS_APPNAME

    Cloud

    Application name to connect to Configuration Server.

    CS_ADDRESS

    127.0.0.1

    Address of primary Configuration Server.

    CS_PORT

    8888

    Port of primary Configuration Server.

    CS_BACKUP_ADDRESS

    127.0.0.1

    Address of backup Configuration Server.

    CS_BACKUP_PORT

    8888

    Port of backup Configuration Server.

    CS_TENANT

    Environment

    Configuration Server's tenant name.

    GWS_REDIRECT_URI

    http://onpremiselab.com

    Specifies an array by using double quotes and comma to separate values with no white space in between. Used as part of OAuth authentication flow.

    ingressTlsEnable

    false

    Enables Ingress secured endpoint configuration for Web Services and Applications.

    POST_DEPLOY_UPDATE

    true

    Enable post deploy procedure, which creates default Genesys environment, contact center and OAuth client.

    DEPLOY_POSTGRES

    false

    Enable PostgreSQL deployment procedure in the same namespace as Web Services and Applications.
    Note: For Lab deployments only.

    POSTGRES_ADDR

    postgres

    Address of PostgreSQL installation
    Note: If DEPLOY_POSTGRES set to true, the default value should be retained.

    POSTGRES_DB

    gws_environment

    PostgreSQL database name
    Note: If DEPLOY_POSTGRES set to true, the default value should be retained.

    POSTGRES_USER

    gws_env_master

    PostgreSQL user, which can be used to connect to database
    Note: If DEPLOY_POSTGRES set to true, the default value should be retained.

    POSTGRES_PASS

    gws_env_password

    PostgreSQL user password
    Note: If DEPLOY_POSTGRES set to true, the default value should be retained.

    DEPLOY_REDIS

    false

    Enable Redis cluster deployment procedure in same namespace as Web Services and Applications.
    Note: For Lab deployments only.

    REDIS_ADDR

    redis-cluster:6379

    Address of Redis cluster installation
    Note: If DEPLOY_REDIS set to true, the default value should be retained.

    DEPLOY_ELASTICSEARCH

    false

    Enable ElasticSearch cluster deployment procedure in same namespace as Web Services and Applications.
    Note: For Lab deployments only.

    ELASTICSEARCH

    elasticsearch:9200

    Address of ElasticSearch cluster installation
    Note: If DEPLOY_ELASTICSEARCH set to true, the default value should be retained.

  5. Invoke Helm:
    helm install gws/ -n gws-service -f gws-versions.yaml -f parameters.yaml

    Where:

    • gws/ is helm chart directory;
    • -n gws-service is Kubernetes namespace name to deploy to
    • -f gws-versions.yaml is config file where containers version defined
    • -f parameters.yaml is config file where deployment parameters defined
  6. Wait until Helm-deployed Web Service and Applications and Kubernetes cluster starts all requested containers. It may take up to 10 minutes.
Comments or questions about this documentation? Contact us for support!