Deploy GWS Ingress

From Genesys Documentation
Jump to: navigation, search

Learn how to deploy GWS Ingress.

Early Adopter Program
Genesys Engage cloud private edition is being released to pre-approved customers as part of the Early Adopter Program. Please note that the documentation and the product are subject to change. For more details about the program, please contact your Genesys representative.



Prerequisites

GWS project must be created and 'gws-services' must be installed.

Installation Steps

  • Use project gws
oc project gws
  • Credential mapping to default service account
oc adm policy add-scc-to-user genesys-restricted -z default-restricted -n gws
  • Download the gws-ingress helm charts from following repo
https://pureengage.jfrog.io/ui/packages/helm:%2F%2Fgws-ingress?name=gws&type=packages
  • Create Secret for consul token
oc create secret generic gws-secrets-green -n gws --from-literal='gws-consul-token=<token-from-consul>'
  • Copy the values.yaml file from the gws-ingress folder and update the value for Host parameters:
REGISTRY: pureengage-docker-staging.jfrog.io/gws
entryPoints:
  internal:
    service:
      type: LoadBalancer
      annotations: {}
    ingress:
      path: /
      annotations: {}
      tlsEnable: false
      secretName: gws-secret-int
      hostName: gws01-int.yourclusterdomain.com   -------------------------------- http internal end point for accessing GWS APIs
  internalTest:
    service:
      type: LoadBalancer
      annotations: {}
    ingress:
      path: /
      annotations: {}
      tlsEnable: false
      secretName: gws-secret-int
      hostName: gws01-test.yourclusterdomain.com   -------------------------------- http test end point for accessing GWS APIs
      
  external:
    service:
      type: ClusterIP
      annotations: {}
        #service.beta.kubernetes.io/aws-load-balancer-internal: "true"
        #service.beta.kubernetes.io/aws-load-balancer-type: nlb
    ingress:
      path: /
      annotations: {}
      tlsEnable: false
      secretName: gws-secret-ext
      hostName: gws01.yourclusterdomain.com              -------------------------------- http end point for accessing GWS APIs
      hostNameTemp: gws-temp.yourclusterdomain.com       -------------------------------- http test end point for accessing GWS

  externalTest:
    service:
      type: ClusterIP
      annotations: {}
        #service.beta.kubernetes.io/aws-load-balancer-internal: "true"
        #service.beta.kubernetes.io/aws-load-balancer-type: nlb
    ingress:
      path: /
      annotations: {}
        #appgw.ingress.kubernetes.io/connection-draining: "true"
        #appgw.ingress.kubernetes.io/connection-draining-timeout: "30"
        #appgw.ingress.kubernetes.io/cookie-based-affinity: "true"
        #appgw.ingress.kubernetes.io/ssl-redirect: "false"
        #cert-manager.io/cluster-issuer: letsencrypt-prod
        #ingress.kubernetes.io/ssl-redirect: "false"
        #kubernetes.io/ingress.class: azure/application-gateway
      tlsEnable: false
      secretName: gws-secret-ext
      hostName: gws.apps.yourclusterdomain.com  -------------------------------- http end point for accessing GWS

Version Details:
gws-system-nginx: 9.0.000.14

Copy the above file and the gws-ingress helm package to the installation location.

  • Install gws-ingress
helm install gws-ingress ./gws-ingress-0.2.7.tgz -f values.yaml

Test Installation

To check the ingress installation, run the following commands:

  • Check the pod
oc get pod

It should return gws-service-proxy and the status should be running. Example:

gws-service-proxy-d5997957f-m4kcg 1/1 Running 0 4d13h
  • Check the service

oc get svc The result should display the service name. Example:

y ClusterIP 10.202.55.20 <none> 80/TCP,81/TCP,85/TCP,86/TCP 4d13h

Create HTTPS Routes

Run the following command to create https routes to access externally:

The recommended Hostname format is gws.<cluster-subdomain>. For example, VCE cluster (https://console-openshift-console.yourclusterdomain.com/), the host name should be gws.yourclusterdomain.com

oc create route edge --service=gws-service-proxy --hostname=<hostname>

Test Routes

Access the following URL in a browser. It should navigate you to the login page.

https://<hostname>/ui/wwe/index.html