Revision as of 07:33, November 21, 2018 by Xavier (talk | contribs)
Jump to: navigation, search

Deploying with bash scripts

The following Kubernetes distributions are supported:

  • OpenShift (Fully Supported)
  • Google Kubernetes Engine (Partially Supported)

Requirements

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

Deploying GWS with OpenShift Platform

  • Copy your configuration to ~/.kube/config.
  • 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.

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"



Working with Prometheus and Grafana

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

Working with GWS Infrastructure

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

Working with GWS Application Stack

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

Pulling Current GWS Applications Container

- $ STACK_DOCKER_IMAGE_PATH=gws-registry-usw1.genhtcc.com ./pull-containers.sh

DNS Requirements

All of the services, either cluster-wide, infrastructure or GWS-applications ingresses require DNS names to be pre-populated to get access to and for host-based naming virtualization.

    XX.XX.XX.XX   grafana.gke.local
    XX.XX.XX.XX   consul.gke.local
    XX.XX.XX.XX   active.gke.local
    XX.XX.XX.XX   test.gke.local

Persistent Storage Requirements

  • Openshift : the GlusterFS storage can be pre-populated manually.
  • GKE : No specific configuration is required.
  • No storage : Set the PERSISTENT_STORAGE=false in the environment file.
Comments or questions about this documentation? Contact us for support!