Jump to: navigation, search
(Created target blank page For Version: HTCC:9.0.0)
 
(Update with the copy of version: 9.0.0DRAFT)
Line 1: Line 1:
<!-- Creation of the target page -->
+
= Deploying Web Services and Applications =
 +
 
 +
After you install [[Prerequisites#docker|Docker]] and [[Prerequisites#kubernetes|Kubernetes]], follow the steps on this page to deploy Web Services and Applications.
 +
 
 +
{{NoteFormat|{{Editgrn_open}}XR: Where and how to get the Docker image for deployment?{{Editgrn_close}} }}
 +
 
 +
The following Kubernetes distributions are supported:
 +
* OpenShift
 +
* Google Kubernetes Engine
 +
 
 +
== Requirements ==
 +
# {{#Widget:ExtLink|link=https://kubernetes.io/docs/tasks/tools/install-kubectl/|displaytext=Kubectl}} and {{#Widget:ExtLink|link=https://docs.helm.sh/using_helm/#installing-helm|displaytext=Helm}} client utilities
 +
#* Tiller is not required.
 +
## For Google Kubernetes Engine deployments, install and configure the ''{{#Widget:ExtLink|link=https://cloud.google.com/sdk/docs/#linux
 +
|displaytext=gcloud}}'' utility.
 +
# The scripts reside in the '''gws-microservices''' hg repository.
 +
 
 +
<div class="cloud-tabberlive-wrapper">
 +
<tabber>
 +
 +
OpenShift=
 +
<div class="cloud-wrapper">
 +
<h2>Deploying GWS with OpenShift Platform</h2>
 +
<div class="cloud-left">
 +
 
 +
* Copy your configuration to '''~/.kube/config'''.
 +
* Open a shell session.
 +
* Type  <tt>kubectl get nodes</tt> to list the nodes in your cluster.
 +
* Type <tt>cd gws-microservices/production/premise/kubernetes</tt> to go to the '''kubernetes''' directory.
 +
* Create your own environment configuration file and put it to '''env-examples''' directory. Or use the ones available.
 +
** Type <tt>. env-examples/<YOUR ENVIRONMENT SOURCE FILE></tt> to source the cluster environment variables.
 +
* Import GWS-applications docker images to your container registry or add the GWS registry keys to '''/etc/docker.d'''.
 +
** Get the registry keys and add them to '''/etc/docker.d''' on all hosts.
 +
* Restart docker.
 +
</div>
 +
</div>
 +
 +
|-|
 +
Google Kubernetes Engine=
 +
<div class="cloud-wrapper">
 +
<h2>Deploying GWS with Google Kubernetes Engine</h2>
 +
<div class="cloud-left">
 +
* Follow the registration web-UI steps.
 +
* Open a shell session.
 +
* Type <tt>gcloud container clusters list</tt> to list existing clusters for running containers.
 +
* Type <tt>cd gws-microservices/production/premise/kubernetes</tt>  to go to the '''kubernetes''' directory.
 +
* Create your own environment configuration file and put it to "env-examples" directory. Or use the ones available.
 +
* Type <tt>. env-examples/<YOUR ENVIRONMENT SOURCE FILE></tt> to source the cluster environment variables.
 +
**  Import GWS-applications docker images to your container registry or add the GWS registry keys to '''/etc/docker.d'''.
 +
* Get the GWS-microservices docker images tarball via any Genesys supply channel and import it to Google Container Registry: <tt>TARBALL=/full/path/to/GWS/apps/tarball push-containers-to-gke.sh</tt>
 +
 
 +
</div>
 +
</div>
 +
 
 +
 +
</tabber>
 +
<div style="clear: both;"> </div>
 +
 
 +
{{NoteFormat|{{Editgrn_open}}XR: Is there a sequence to be followed? What needs to be deployed first?{{Editgrn_close}}|}}
 +
 
 +
=== Deploying GWS Infrastructure===
 +
{{Editgrn_open}}XR: Should we delete first before deploying?{{Editgrn_close}}
 +
<pre>
 +
./gws-infra-deploy.sh delete
 +
./gws-infra-deploy.sh
 +
</pre>
 +
 
 +
=== Deploying  GWS Application Stack===
 +
<pre>
 +
./gws-app-deploy.sh delete
 +
./gws-app-deploy.sh
 +
</pre>
 +
 
 +
=== Deploying  Prometheus and Grafana ===
 +
{{NoteFormat|These services are deployed cluster-wide and do not depend on GWS-applications' loads. }}
 +
<pre>
 +
$ ./monitoring-deploy.sh delete
 +
$ ./monitoring-deploy.sh
 +
</pre>
 +
 
 +
=== Pulling Current GWS Applications Container ===
 +
 
 +
<pre>
 +
$ STACK_DOCKER_IMAGE_PATH=gws-registry-usw1.genhtcc.com ./pull-containers.sh
 +
</pre>
 +
 
 +
[[Category:V:HTCC:9.0.0]]
 +
 
 +
 
 +
[[Category:V:HTCC:9.0.0]]

Revision as of 06:01, November 29, 2018

Deploying Web Services and Applications

After you install Docker and Kubernetes, follow the steps on this page to deploy Web Services and Applications.

Important
XR: Where and how to get the Docker image for deployment?

The following Kubernetes distributions are supported:

  • OpenShift
  • Google Kubernetes Engine

Requirements

  1. Kubectl and Helm client utilities
    • Tiller is not required.
    1. For Google Kubernetes Engine deployments, install and configure the gcloud utility.
  2. The scripts reside in the gws-microservices hg repository.

Deploying GWS with OpenShift Platform

  • Copy your configuration to ~/.kube/config.
  • Open a shell session.
  • Type kubectl get nodes to list the nodes in your cluster.
  • Type cd gws-microservices/production/premise/kubernetes to go to the kubernetes directory.
  • Create your own environment configuration file and put it to env-examples directory. Or use the ones available.
    • Type . env-examples/<YOUR ENVIRONMENT SOURCE FILE> to source the cluster environment variables.
  • Import GWS-applications docker images to your container registry or add the GWS registry keys to /etc/docker.d.
    • Get the registry keys and add them to /etc/docker.d on all hosts.
  • Restart docker.

Deploying GWS with Google Kubernetes Engine

  • Follow the registration web-UI steps.
  • Open a shell session.
  • Type gcloud container clusters list to list existing clusters for running containers.
  • Type cd gws-microservices/production/premise/kubernetes to go to the kubernetes directory.
  • Create your own environment configuration file and put it to "env-examples" directory. Or use the ones available.
  • Type . env-examples/<YOUR ENVIRONMENT SOURCE FILE> to source the cluster environment variables.
    • Import GWS-applications docker images to your container registry or add the GWS registry keys to /etc/docker.d.
  • Get the GWS-microservices docker images tarball via any Genesys supply channel and import it to Google Container Registry: TARBALL=/full/path/to/GWS/apps/tarball push-containers-to-gke.sh


Important
XR: Is there a sequence to be followed? What needs to be deployed first?

Deploying GWS Infrastructure

XR: Should we delete first before deploying?

./gws-infra-deploy.sh delete 
./gws-infra-deploy.sh

Deploying GWS Application Stack

./gws-app-deploy.sh delete
./gws-app-deploy.sh

Deploying Prometheus and Grafana

Important
These services are deployed cluster-wide and do not depend on GWS-applications' loads.
$ ./monitoring-deploy.sh delete
$ ./monitoring-deploy.sh

Pulling Current GWS Applications Container

$ STACK_DOCKER_IMAGE_PATH=gws-registry-usw1.genhtcc.com ./pull-containers.sh
Comments or questions about this documentation? Contact us for support!