Jump to: navigation, search
(Hardware recommendations)
Line 1: Line 1:
= Deployment of Web Services and Applications =
+
=Deployment of Web Services and Applications=
 
{{PrereleaseDisclaimer}}
 
{{PrereleaseDisclaimer}}
 
+
===Hardware recommendations===
=== Hardware recommendations ===
 
 
 
 
The solution can be deployed at a Kubernetes cluster with a minimal size of 3 nodes with an overall amount of 96 GB RAM. Recommended hardware requirements for each Kubernetes node:
 
The solution can be deployed at a Kubernetes cluster with a minimal size of 3 nodes with an overall amount of 96 GB RAM. Recommended hardware requirements for each Kubernetes node:
 
 
* CPU: 4 - 8 cores
 
* CPU: 4 - 8 cores
 
* RAM: 32 GB
 
* RAM: 32 GB
 
* HDD: 500 GB
 
* HDD: 500 GB
  
== Prerequisites ==
+
==Prerequisites==
  
 
# Kubernetes cluster deployed and available. The following Kubernetes distributions are currently supported:
 
# Kubernetes cluster deployed and available. The following Kubernetes distributions are currently supported:
#* Google Kubernetes Engine (GKE).
+
#* Red Hat Openshift Enterprise
#* OpenShift
+
#* Openshift Kubernetes Deployment
 +
#* Rancher Kubernetes Deployment
 +
#* Google Kubernetes Engine
 +
#* <span style="color: rgb(35, 47, 62);">Amazon Elastic Kubernetes Service</span>
 
# Client-side utilities installed at deployment host:
 
# Client-side utilities installed at deployment host:
 
#* [https://kubernetes.io/docs/tasks/tools/install-kubectl/ Kubectl] tool
 
#* [https://kubernetes.io/docs/tasks/tools/install-kubectl/ Kubectl] tool
Line 23: Line 23:
 
# Docker images of GWS components uploaded into a registry available from the target Kubernetes instance.
 
# Docker images of GWS components uploaded into a registry available from the target Kubernetes instance.
  
 
+
====Configuring the Web Services applications====
==== Configuring the Web Services applications ====
 
 
 
 
To install Web Services, set up the two application objects in the Genesys configuration environment using Genesys Administrator
 
To install Web Services, set up the two application objects in the Genesys configuration environment using Genesys Administrator
 
 
* An application of type Genesys Generic Server that is called the GWS Server Application.
 
* An application of type Genesys Generic Server that is called the GWS Server Application.
 
* An application of type Genesys Generic Client that is called the GWS Client Application.
 
* An application of type Genesys Generic Client that is called the GWS Client Application.
  
=== Creating and importing the application templates ===
+
===Creating and importing the application templates===
 
 
 
Web Services and Applications package includes a template for Genesys Generic Server (Web_Services_and_Applications_900), but you must create a new template for Genesys Generic Client.
 
Web Services and Applications package includes a template for Genesys Generic Server (Web_Services_and_Applications_900), but you must create a new template for Genesys Generic Client.
 
+
# To create the Genesys Generic Client template, navigate to '''PROVISIONING > Environment> Application Templates'''.
# To create the Genesys Generic Client template, navigate to '''PROVISIONING &gt; Environment&gt; Application Templates'''.
 
 
# Select '''New...''' and configure the properties of the template as shown below:
 
# Select '''New...''' and configure the properties of the template as shown below:
 
#* Name: GWS_App
 
#* Name: GWS_App
Line 41: Line 36:
 
#* Version: 9.0
 
#* Version: 9.0
 
#* State: Enabled
 
#* State: Enabled
# Click '''Save &amp; Close'''.
+
# Click '''Save & Close'''.
 
# To import the Genesys Generic Server template, click '''Upload Template''' in the '''Tasks''' panel. The '''Click 'Add' and choose application template (APD) file to import''' dialog opens.
 
# To import the Genesys Generic Server template, click '''Upload Template''' in the '''Tasks''' panel. The '''Click 'Add' and choose application template (APD) file to import''' dialog opens.
 
# Click '''Add''' and navigate to the '''templates''' folder in your installation package.
 
# Click '''Add''' and navigate to the '''templates''' folder in your installation package.
 
# Select the '''Web_Services_and_Applications_900''' template file and click '''Open'''.
 
# Select the '''Web_Services_and_Applications_900''' template file and click '''Open'''.
# Click '''Save &amp; Close'''.
+
# Click '''Save & Close'''.
  
==== Creating the GWS Server Application ====
+
====Creating the GWS Server Application====
 +
# Navigate to '''PROVISIONING > Environment > Application''' and click '''New...'''.
 +
# In the '''General''' section, configure the properties of the application as shown below:
 +
 
 +
#* Name: GWS
 +
#* Template: Web_Services_and_Applications_900
 +
#* State: Enabled
  
<ol style="list-style-type: decimal;">
+
# Add the following connections:
<li>Navigate to '''PROVISIONING &gt; Environment &gt; Application''' and click '''New...'''.</li>
 
<li>In the '''General''' section, configure the properties of the application as shown below:
 
<ul>
 
<li>Name: GWS</li>
 
<li>Template: Web_Services_and_Applications_900</li>
 
<li>State: Enabled</li></ul>
 
</li>
 
<li><p>Add the following connections:</p>
 
<ul>
 
<li>Configuration Server</li>
 
<li>SIP Server (if supporting voice)</li>
 
<li>Interaction Server (if supporting multimedia)</li>
 
<li>Universal Contact Server</li>
 
<li>Stat Server</li></ul>
 
  
<p>For each connection added, configure the location. In the '''Advanced''' tab of '''Connection Info''' in '''Application parameters''' set the region, e.g.: ''locations=/USW2.''</p></li>
+
#* Configuration Server
<li>In the '''Server Info''' section, select a Tenant:
+
#* SIP Server (if supporting voice)
<ul>
+
#* Interaction Server (if supporting multimedia)
<li>Click '''Add'''.</li>
+
#* Universal Contact Server
<li>Choose the Environment tenant (or any other tenant that has a connection to your Configuration Server).</li>
+
#* Stat Server
<li>Click '''OK'''.</li></ul>
+
 
</li>
+
For each connection added, configure the location. In the '''Advanced''' tab of '''Connection Info''' in '''Application parameters''' set the region, e.g.: ''locations=/USW2.''
<li>Choose a Host object.</li>
+
# In the '''Server Info''' section, select a Tenant:
<li>Add a default Listening Port:
+
 
<ul>
+
#* Click '''Add'''.
<li>Click '''Add'''.</li>
+
#* Choose the Environment tenant (or any other tenant that has a connection to your Configuration Server).
<li>Enter the application's Port. For instance, ''7000''.</li>
+
#* Click '''OK'''.
<li>Click '''OK'''.</li></ul>
+
 
</li>
+
# Choose a Host object.
<li>Add a &quot;.&quot; to the '''Working Directory''','''Command Line''', and '''Command Line Arguments''' fields. These values are mandatory for all applications and must be entered to save the application object. Web Services does not use these values, so the &quot;.&quot; is used as a placeholder.</li></ol>
+
# Add a default Listening Port:
 +
 
 +
#* Click '''Add'''.
 +
#* Enter the application's Port. For instance, ''7000''.
 +
#* Click '''OK'''.
 +
 
 +
# Add a "." to the '''Working Directory''','''Command Line''', and '''Command Line Arguments''' fields. These values are mandatory for all applications and must be entered to save the application object. Web Services does not use these values, so the "." is used as a placeholder.
  
 
For information on configuring Workspace Web Edition, see [https://docs.genesys.com/Documentation/HTCC/9.0.0/IWWDep/Welcome Configuration Guide for WWE].
 
For information on configuring Workspace Web Edition, see [https://docs.genesys.com/Documentation/HTCC/9.0.0/IWWDep/Welcome Configuration Guide for WWE].
  
==== Creating the GWS Client Application ====
+
====Creating the GWS Client Application====
  
# Navigate to '''PROVISIONING &gt; Environment &gt; Application''' and click '''New...'''.
+
# Navigate to '''PROVISIONING > Environment > Application''' and click '''New...'''.
 
# In the '''General''' section, configure the properties of the application as shown below:
 
# In the '''General''' section, configure the properties of the application as shown below:
 
#* Name: GWS_App
 
#* Name: GWS_App
Line 92: Line 85:
 
# Add the following connections:
 
# Add the following connections:
 
#* GWS Server application that was configured in the previous procedure.
 
#* GWS Server application that was configured in the previous procedure.
# Click '''Save &amp; Close'''.
+
# Click '''Save & Close'''.
 
 
  
== Deployment Steps ==
+
==Deployment Steps==
  
 
# Validate your Kubernetes credentials:
 
# Validate your Kubernetes credentials:
 
#* Follow the registration web-UI steps. and type <tt>gcloud container clusters list</tt> command to see all GKE clusters available to you, if any.
 
#* Follow the registration web-UI steps. and type <tt>gcloud container clusters list</tt> command to see all GKE clusters available to you, if any.
<ol start="2" style="list-style-type: decimal;">
 
<li> <p>Unpack the ''gws-microservices''.tgz file with the following command:<br />
 
<tt>tar -zxf ''gws-microservices''.tgz</tt></p></li></ol>
 
  
<ol start="3" style="list-style-type: decimal;">
+
#*#  Unpack the ''gws-microservices''.tgz file with the following command:<br />
<li><p>Go to the '''kubernetes''' directory:<br />
+
<tt>tar -zxf ''gws-microservices''.tgz</tt>
<tt>cd gws-microservices/kubernetes</tt>
+
 
</p></li></ol>
+
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
# Go to the '''kubernetes''' directory:<br /><tt>cd gws-microservices/kubernetes</tt>
 +
 
 +
 
 +
# Modify the '''''<ToBeChanged: …''''''''>''' values defined in the configurations files with the actual values required by deployment.
 +
 
 +
#* the '''conf/gke.env''' file for GKE deployments
 +
#* the '''conf/openshift.env''' file for OpenShift deployments
 +
 
  
<ol start="4" style="list-style-type: decimal;">
+
# Apply the modified configuration file to the current bash session:<br /><tt>source conf/gke.env</tt> for GKE deployments<br /><tt>source conf/openshift.env</tt> for OpenShift deployments
<li><p>Modify the '''''&lt;ToBeChanged: …''&gt;''' values defined in the configurations files with the actual values required by deployment.</p>
 
<ul>
 
<li>the '''conf/gke.env''' file for GKE deployments</li>
 
<li>the '''conf/openshift.env''' file for OpenShift deployments</li>
 
</ul>
 
</li>
 
<li><p>Apply the modified configuration file to the current bash session:<br />
 
<tt>source conf/gke.env</tt> for GKE deployments<br />
 
<tt>source conf/openshift.env</tt> for OpenShift deployments
 
</p></li></ol>
 
<ol start="6" style="list-style-type: decimal;">
 
<li><p>Deploy the monitoring stack using '''gws-monitoring-deploy.sh''' script'''.''' The script will deploy Prometheus and Grafana solutions at your Kubernetes cluster.</p></li>
 
<li><p>Deploy GWS infrastructure using '''gws-infra-deploy.sh''' script'''.''' The script will deploy GWS dependency servers - ElasticSearch, Redis, Consul, etc., at your Kubernetes cluster.</p></li>
 
<li><p>Deploy GWS microservices using '''gws-app-deploy.sh''' script.</p></li>
 
<li><p>Initialize GWS using '''gws-postinstall.sh''' script. The script uses GWS REST API to provision environment, contact center, and authentication client.</p></li></ol>
 
  
== Upgrade Procedure ==
 
  
<ol style="list-style-type: decimal;">
+
# Deploy the monitoring stack using '''gws-monitoring-deploy.sh''' script'''.''' The script will deploy Prometheus and Grafana solutions at your Kubernetes cluster.
<li><p>Download new version of '''gws-microservices.tgz''' package from Genesys FTP to the deployment host.</p></li>
+
# Deploy GWS infrastructure using '''gws-infra-deploy.sh''' script'''.''' The script will deploy GWS dependency servers - ElasticSearch, Redis, Consul, etc., at your Kubernetes cluster.
<li><p>Unpack the ''gws-microservices''.tgz file with the following command:<br />
+
# Deploy GWS microservices using '''gws-app-deploy.sh''' script.
<tt> tar -zxf gws-microservices.tgz</tt>
+
# Initialize GWS using '''gws-postinstall.sh''' script. The script uses GWS REST API to provision environment, contact center, and authentication client.
</p></li>
 
<li><p>Go to the '''kubernetes''' directory:<br />
 
<tt>cd gws-microservices/kubernetes</tt></p></li>
 
<li><p>Modify the '''&lt;ToBeChanged: …&gt;''' values defined in the '''conf/gke.env''' file with the actual values required by deployment. Refer to the file used in deployment.</p></li>
 
<li><p>Apply the modified configuration file to the current bash session:<br />
 
<tt>source conf/gke.env</tt></p></li>
 
<li><p>Upgrade GWS microservices using '''gws-app-deploy.sh''' script.</p></li></ol>
 
  
 +
==Upgrade Procedure==
 +
# Download new version of '''gws-microservices.tgz''' package from Genesys FTP to the deployment host.
 +
# Unpack the ''gws-microservices''.tgz file with the following command:<br /><tt> tar -zxf gws-microservices.tgz</tt>
 +
# Go to the '''kubernetes''' directory:<br /><tt>cd gws-microservices/kubernetes</tt>
 +
# Modify the '''<ToBeChanged: …>''' values defined in the '''conf/gke.env''' file with the actual values required by deployment. Refer to the file used in deployment.
 +
# Apply the modified configuration file to the current bash session:<br /><tt>source conf/gke.env</tt>
 +
# Upgrade GWS microservices using '''gws-app-deploy.sh''' script.
  
 
[[Category:V:HTCC:9.0.0DRAFT]]
 
[[Category:V:HTCC:9.0.0DRAFT]]

Revision as of 06:15, June 13, 2019

Deployment of Web Services and Applications

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.

Hardware recommendations

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

  • CPU: 4 - 8 cores
  • RAM: 32 GB
  • HDD: 500 GB

Prerequisites

  1. Kubernetes cluster deployed and available. The following Kubernetes distributions are currently supported:
    • Red Hat Openshift Enterprise
    • Openshift Kubernetes Deployment
    • Rancher Kubernetes Deployment
    • Google Kubernetes Engine
    • Amazon Elastic Kubernetes Service
  2. Client-side utilities installed at deployment host:
    • Kubectl tool
    • Helm client, Tiller is not required.
    • gcloud utility (for GKE deployments)
  3. Valid credentials for your Kubernetes cluster.
  4. The gws-microservices.tgz package downloaded from Genesys FTP to the deployment host.
  5. Docker images of GWS components uploaded into a registry available from the target Kubernetes instance.

Configuring the Web Services applications

To install Web Services, set up the two application objects in the Genesys configuration environment using Genesys Administrator

  • An application of type Genesys Generic Server that is called the GWS Server Application.
  • An application of type Genesys Generic Client that is called the GWS Client Application.

Creating and importing the application templates

Web Services and Applications package includes a template for Genesys Generic Server (Web_Services_and_Applications_900), but you must create a new template for Genesys Generic Client.

  1. To create the Genesys Generic Client template, navigate to PROVISIONING > Environment> Application Templates.
  2. Select New... and configure the properties of the template as shown below:
    • Name: GWS_App
    • Type: Genesys Generic Client
    • Version: 9.0
    • State: Enabled
  3. Click Save & Close.
  4. To import the Genesys Generic Server template, click Upload Template in the Tasks panel. The Click 'Add' and choose application template (APD) file to import dialog opens.
  5. Click Add and navigate to the templates folder in your installation package.
  6. Select the Web_Services_and_Applications_900 template file and click Open.
  7. Click Save & Close.

Creating the GWS Server Application

  1. Navigate to PROVISIONING > Environment > Application and click New....
  2. In the General section, configure the properties of the application as shown below:
    • Name: GWS
    • Template: Web_Services_and_Applications_900
    • State: Enabled
  1. Add the following connections:
    • Configuration Server
    • SIP Server (if supporting voice)
    • Interaction Server (if supporting multimedia)
    • Universal Contact Server
    • Stat Server

For each connection added, configure the location. In the Advanced tab of Connection Info in Application parameters set the region, e.g.: locations=/USW2.

  1. In the Server Info section, select a Tenant:
    • Click Add.
    • Choose the Environment tenant (or any other tenant that has a connection to your Configuration Server).
    • Click OK.
  1. Choose a Host object.
  2. Add a default Listening Port:
    • Click Add.
    • Enter the application's Port. For instance, 7000.
    • Click OK.
  1. Add a "." to the Working Directory,Command Line, and Command Line Arguments fields. These values are mandatory for all applications and must be entered to save the application object. Web Services does not use these values, so the "." is used as a placeholder.

For information on configuring Workspace Web Edition, see Configuration Guide for WWE.

Creating the GWS Client Application

  1. Navigate to PROVISIONING > Environment > Application and click New....
  2. In the General section, configure the properties of the application as shown below:
    • Name: GWS_App
    • Template: GWS_App
    • State: Enabled
  3. Add the following connections:
    • GWS Server application that was configured in the previous procedure.
  4. Click Save & Close.

Deployment Steps

  1. Validate your Kubernetes credentials:
    • Follow the registration web-UI steps. and type gcloud container clusters list command to see all GKE clusters available to you, if any.
      1. Unpack the gws-microservices.tgz file with the following command:

tar -zxf gws-microservices.tgz




  1. Go to the kubernetes directory:
    cd gws-microservices/kubernetes


  1. Modify the <ToBeChanged: …'''> values defined in the configurations files with the actual values required by deployment.
    • the conf/gke.env file for GKE deployments
    • the conf/openshift.env file for OpenShift deployments


  1. Apply the modified configuration file to the current bash session:
    source conf/gke.env for GKE deployments
    source conf/openshift.env for OpenShift deployments


  1. Deploy the monitoring stack using gws-monitoring-deploy.sh script. The script will deploy Prometheus and Grafana solutions at your Kubernetes cluster.
  2. Deploy GWS infrastructure using gws-infra-deploy.sh script. The script will deploy GWS dependency servers - ElasticSearch, Redis, Consul, etc., at your Kubernetes cluster.
  3. Deploy GWS microservices using gws-app-deploy.sh script.
  4. Initialize GWS using gws-postinstall.sh script. The script uses GWS REST API to provision environment, contact center, and authentication client.

Upgrade Procedure

  1. Download new version of gws-microservices.tgz package from Genesys FTP to the deployment host.
  2. Unpack the gws-microservices.tgz file with the following command:
    tar -zxf gws-microservices.tgz
  3. Go to the kubernetes directory:
    cd gws-microservices/kubernetes
  4. Modify the <ToBeChanged: …> values defined in the conf/gke.env file with the actual values required by deployment. Refer to the file used in deployment.
  5. Apply the modified configuration file to the current bash session:
    source conf/gke.env
  6. Upgrade GWS microservices using gws-app-deploy.sh script.
Comments or questions about this documentation? Contact us for support!