Difference between revisions of "PEC-IWD/Current/IWDPEGuide/Deploy"
From Genesys Documentation
(Published) |
|||
Line 5: | Line 5: | ||
|ComingSoon=No | |ComingSoon=No | ||
|Section={{Section | |Section={{Section | ||
− | |sectionHeading= | + | |sectionHeading=Kubernetes |
|alignment=Vertical | |alignment=Vertical | ||
− | |structuredtext= | + | |structuredtext====Prepare=== |
− | |||
− | |||
− | #Create a new project using the following command: | + | #Create a new project using the following command:<source>kubectl create namespace iwd</source> |
− | |||
#Create a pull secret for accessing the JFrog registry. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Configure#Configure_Kubernetes|display text=Create the pull secret}}. | #Create a pull secret for accessing the JFrog registry. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Configure#Configure_Kubernetes|display text=Create the pull secret}}. | ||
#Download the IWD helm chart from the JFrog repository. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Planning|display text=Download the Helm charts}}. | #Download the IWD helm chart from the JFrog repository. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Planning|display text=Download the Helm charts}}. | ||
− | #Create gauth | + | #Create a gauth client. <br />IWD requires ''clientId'' and ''clientSecret'' registered in Authentication Service. These must be provided during Helm Chart deployment. Create new client credentials if they are not already created . Refer to the GWS documentation for more information. |
+ | |||
+ | ===Deploy=== | ||
+ | |||
+ | #Extract parameters from chart to see multiple (default) values used to fine tune the installation.<source>$ helm show values iwd-<version>.tgz > values.yaml</source>For information on parameters and values in the '''values.yaml''' file, see {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Configure#Override_Helm_chart_values|display text=Override Helm chart values}}.<br />Sample override file:<source> | ||
+ | replicaCount: 1 | ||
+ | |||
+ | image: | ||
+ | registry: pureengage-docker-staging.jfrog.io | ||
+ | repository: nexus/iwd | ||
+ | pullSecrets: [] | ||
+ | |||
+ | gauth: | ||
+ | auth: | ||
+ | url: http://gauth-auth.gauth | ||
+ | redirectUrl: https://gauth.${domain} | ||
+ | |||
+ | redis: | ||
+ | nodes: redis://infra-redis-redis-cluster.infra.svc.cluster.local:6379 | ||
+ | useCluster: true | ||
+ | enableTLS: false | ||
+ | password: <test_password> | ||
+ | |||
+ | gws: | ||
+ | url: http://gauth-auth.gauth | ||
+ | clientId: <test_clientID> | ||
+ | clientSecret: <test_clientSecret> | ||
+ | apiKey: <test_apikey> | ||
+ | |||
+ | ingress: | ||
+ | enabled: true | ||
+ | hosts: | ||
+ | - host: iwd.${domain} | ||
+ | paths: | ||
+ | - path: '/iwd/' | ||
+ | port: 4024 | ||
+ | tls: | ||
+ | - hosts: | ||
+ | - iwd.${domain} | ||
+ | secretName: letsencrypt | ||
+ | |||
+ | nexus: | ||
+ | url: http://nexus.nexus | ||
+ | apikey: <test_apikey> | ||
+ | |||
+ | elasticsearch: | ||
+ | host: elastic-es-http.infra.svc.cluster.local | ||
+ | port: 9200 | ||
+ | </source> | ||
+ | #Install IWD using the following command (replace <> with applicable values):<source> | ||
+ | helm install iwd ./iwd-<version>.tgz -f override_values.yaml | ||
+ | --set gws.clientId=<client id> | ||
+ | --set gws.clientSecret=<client secret> | ||
+ | --set redis.password=<password to redis> | ||
+ | --set nexus.apikey=<Nexus API key> | ||
+ | --set gws.apiKey='None' | ||
+ | --namespace=iwd | ||
+ | </source> | ||
+ | |||
+ | <br /> | ||
|Status=No | |Status=No | ||
}}{{Section | }}{{Section | ||
− | |sectionHeading= | + | |sectionHeading=OpenShift |
|alignment=Vertical | |alignment=Vertical | ||
− | |structuredtext= | + | |structuredtext====Prepare=== |
− | + | ||
− | + | #Create a new project using the following command:<source>oc get clusterversion | |
+ | oc new-project iwd</source> | ||
+ | #Create a pull secret for accessing the JFrog registry. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Configure#Configure_Kubernetes|display text=Create the pull secret}}. | ||
+ | #Download the IWD helm chart from the JFrog repository. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Planning|display text=Download the Helm charts}}. | ||
+ | #Create a gauth client. <br/>IWD requires ''clientId'' and ''clientSecret'' registered in Authentication Service. These must be provided during Helm Chart deployment. Create new client credentials if they are not already created . Refer to the GWS documentation for more information. | ||
+ | |||
+ | ===Deploy=== | ||
− | Sample override file: | + | #Extract parameters from chart to see multiple (default) values used to fine tune the installation.<source>$ helm show values iwd-<version>.tgz > values.yaml</source>For information on parameters and values in the '''values.yaml''' file, see {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Configure#Override_Helm_chart_values|display text=Override Helm chart values}}.<br />Sample override file:<source> |
− | <source> | ||
replicaCount: 1 | replicaCount: 1 | ||
Line 70: | Line 131: | ||
port: 9200 | port: 9200 | ||
</source> | </source> | ||
− | Install IWD using the following command (replace <> with applicable values): | + | #Install IWD using the following command (replace <> with applicable values):<source> |
− | <source> | + | helm install iwd ./iwd-<version>.tgz -f override_values.yaml |
− | helm install iwd ./iwd-<version>.tgz -f override_values.yaml --namespace=iwd | + | --set gws.clientId=<client id> |
+ | --set gws.clientSecret=<client secret> | ||
+ | --set redis.password=<password to redis> | ||
+ | --set nexus.apikey=<Nexus API key> | ||
+ | --set gws.apiKey='None' | ||
+ | --namespace=iwd | ||
+ | </source> | ||
+ | #Add a route:<source>oc create route edge --service=iwd --hostname=iwd.apps.<your_cluster> --port=api --path=/iwd</source> | ||
+ | |||
+ | <br /> | ||
+ | |Status=No | ||
+ | }}{{Section | ||
+ | |sectionHeading=Google Kubernetes Engine (GKE) | ||
+ | |alignment=Vertical | ||
+ | |structuredtext====Prepare=== | ||
+ | |||
+ | #Log in to the GKE cluster.<source>gcloud container clusters get-credentials <cluster-name></source> | ||
+ | #Create a new project: | ||
+ | ##Create a ''create-iwd-namespace.json'' :<source>{ | ||
+ | "apiVersion": "v1", | ||
+ | "kind": "Namespace", | ||
+ | "metadata": { | ||
+ | "name": "iwd", | ||
+ | "labels": { | ||
+ | "name": "iwd" | ||
+ | } | ||
+ | } | ||
+ | }</source> | ||
+ | ##Create a namespace using the above JSON:<source>kubectl apply -f create-iwd-namespace.json</source> | ||
+ | ##Confirm the namespace creation:<source>kubectl describe namespace iwd</source> | ||
+ | #Create a pull secret for accessing the JFrog registry.<source>kubectl create secret docker-registry jfrog-stage-credentials \ | ||
+ | --docker-server=pureengage-docker-staging.jfrog.io \ | ||
+ | --docker-username=<camelot-username> \ | ||
+ | --docker-password=<API key from jfrog> \ | ||
+ | --docker-email=<emailid></source> | ||
+ | #Download the IWD helm chart from the JFrog repository. See {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Planning|display text=Download the Helm charts}}. | ||
+ | #Create a gauth client. <br/>IWD requires ''clientId'' and ''clientSecret'' registered in Authentication Service. These must be provided during Helm Chart deployment. Create new client credentials if they are not already created . Refer to the GWS documentation for more information. | ||
+ | |||
+ | ===Deploy=== | ||
+ | |||
+ | #Extract parameters from chart to see multiple (default) values used to fine tune the installation.<source>$ helm show values iwd-<version>.tgz > values.yaml</source>For information on parameters and values in the '''values.yaml''' file, see {{Link-AnywhereElse|product=PEC-IWD|version=Current|manual=IWDPEGuide|topic=Configure#Override_Helm_chart_values|display text=Override Helm chart values}}.<br />Sample override file:<source> | ||
+ | replicaCount: 1 | ||
+ | |||
+ | image: | ||
+ | registry: pureengage-docker-staging.jfrog.io | ||
+ | repository: nexus/iwd | ||
+ | pullSecrets: | ||
+ | - name: "pullsecret" | ||
+ | |||
+ | gauth: | ||
+ | auth: | ||
+ | url: http://gauth-auth.gws | ||
+ | redirectUrl: https://gws.nlb02-useast1.gcpe002.gencpe.com | ||
+ | |||
+ | redis: | ||
+ | nodes: redis://infra-redis-redis-cluster.infra.svc.gke2-useast1.gcpe002.gencpe.com:6379 | ||
+ | useCluster: true | ||
+ | enableTLS: false | ||
+ | #password: xxx #in secrets | ||
+ | |||
+ | gws: | ||
+ | url: http://gauth-auth.gws | ||
+ | #clientId: xxx #in secrets | ||
+ | #clientSecret: xxx #in secrets | ||
+ | #apiKey: xxx #in secrets | ||
+ | |||
+ | ingress: | ||
+ | enabled: true | ||
+ | hosts: | ||
+ | - host: iwd.nlb02-useast1.gcpe002.gencpe.com | ||
+ | paths: | ||
+ | - path: '/iwd/' | ||
+ | port: 4024 | ||
+ | annotations: | ||
+ | cert-manager.io/issuer-name: ca-cluster-issuer | ||
+ | kubernetes.io/ingress.class: nginx | ||
+ | tls: | ||
+ | - hosts: | ||
+ | - iwd.nlb02-useast1.gcpe002.gencpe.com | ||
+ | secretName: iwd-ingress-cert | ||
+ | |||
+ | nexus: | ||
+ | url: http://nexus.nexus | ||
+ | #apikey: xxx #in secrets | ||
+ | |||
+ | elasticsearch: | ||
+ | host: elastic-elasticsearch-master.infra.svc.gke2-useast1.gcpe002.gencpe.com | ||
+ | port: 9200 | ||
+ | |||
+ | monitoring: | ||
+ | # Deploy ServiceMonitor | ||
+ | enabled: true | ||
+ | # Create PrometheusRule k8s object with alarm definitions | ||
+ | alarms: true | ||
+ | # Create ConfigMap with Grafana Dashboards | ||
+ | dashboards: true | ||
+ | </source> | ||
+ | #Install IWD using the following command (replace <> with applicable values):<source> | ||
+ | helm install iwd ./iwd-<version>.tgz -f override_values.yaml | ||
+ | --set gws.clientId=<client id> | ||
+ | --set gws.clientSecret=<client secret> | ||
+ | --set redis.password=<password to redis> | ||
+ | --set nexus.apikey=<Nexus API key> | ||
+ | --set gws.apiKey='None' | ||
+ | --namespace=iwd | ||
</source> | </source> | ||
− | + | ||
− | |||
<br /> | <br /> | ||
|Status=No | |Status=No |
Revision as of 19:52, March 30, 2022
This topic is part of the manual Intelligent Workload Distribution Private Edition Guide for version Current of Intelligent Workload Distribution.
Contents
Learn how to deploy IWD.
Related documentation:
RSS:
Kubernetes
Prepare
- Create a new project using the following command:
kubectl create namespace iwd
- Create a pull secret for accessing the JFrog registry. See Create the pull secret.
- Download the IWD helm chart from the JFrog repository. See Download the Helm charts.
- Create a gauth client.
IWD requires clientId and clientSecret registered in Authentication Service. These must be provided during Helm Chart deployment. Create new client credentials if they are not already created . Refer to the GWS documentation for more information.
Deploy
- Extract parameters from chart to see multiple (default) values used to fine tune the installation.For information on parameters and values in the values.yaml file, see Override Helm chart values.
$ helm show values iwd-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengage-docker-staging.jfrog.io repository: nexus/iwd pullSecrets: [] gauth: auth: url: http://gauth-auth.gauth redirectUrl: https://gauth.${domain} redis: nodes: redis://infra-redis-redis-cluster.infra.svc.cluster.local:6379 useCluster: true enableTLS: false password: <test_password> gws: url: http://gauth-auth.gauth clientId: <test_clientID> clientSecret: <test_clientSecret> apiKey: <test_apikey> ingress: enabled: true hosts: - host: iwd.${domain} paths: - path: '/iwd/' port: 4024 tls: - hosts: - iwd.${domain} secretName: letsencrypt nexus: url: http://nexus.nexus apikey: <test_apikey> elasticsearch: host: elastic-es-http.infra.svc.cluster.local port: 9200
- Install IWD using the following command (replace <> with applicable values):
helm install iwd ./iwd-<version>.tgz -f override_values.yaml --set gws.clientId=<client id> --set gws.clientSecret=<client secret> --set redis.password=<password to redis> --set nexus.apikey=<Nexus API key> --set gws.apiKey='None' --namespace=iwd
OpenShift
Prepare
- Create a new project using the following command:
oc get clusterversion oc new-project iwd
- Create a pull secret for accessing the JFrog registry. See Create the pull secret.
- Download the IWD helm chart from the JFrog repository. See Download the Helm charts.
- Create a gauth client.
IWD requires clientId and clientSecret registered in Authentication Service. These must be provided during Helm Chart deployment. Create new client credentials if they are not already created . Refer to the GWS documentation for more information.
Deploy
- Extract parameters from chart to see multiple (default) values used to fine tune the installation.For information on parameters and values in the values.yaml file, see Override Helm chart values.
$ helm show values iwd-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengage-docker-staging.jfrog.io repository: nexus/iwd pullSecrets: [] gauth: auth: url: http://gauth-auth.gauth redirectUrl: https://gauth.${domain} redis: nodes: redis://infra-redis-redis-cluster.infra.svc.cluster.local:6379 useCluster: true enableTLS: false password: <test_password> gws: url: http://gauth-auth.gauth clientId: <test_clientID> clientSecret: <test_clientSecret> apiKey: <test_apikey> ingress: enabled: true hosts: - host: iwd.${domain} paths: - path: '/iwd/' port: 4024 tls: - hosts: - iwd.${domain} secretName: letsencrypt nexus: url: http://nexus.nexus apikey: <test_apikey> elasticsearch: host: elastic-es-http.infra.svc.cluster.local port: 9200
- Install IWD using the following command (replace <> with applicable values):
helm install iwd ./iwd-<version>.tgz -f override_values.yaml --set gws.clientId=<client id> --set gws.clientSecret=<client secret> --set redis.password=<password to redis> --set nexus.apikey=<Nexus API key> --set gws.apiKey='None' --namespace=iwd
- Add a route:
oc create route edge --service=iwd --hostname=iwd.apps.<your_cluster> --port=api --path=/iwd
Google Kubernetes Engine (GKE)
Prepare
- Log in to the GKE cluster.
gcloud container clusters get-credentials <cluster-name>
- Create a new project:
- Create a create-iwd-namespace.json :
{ "apiVersion": "v1", "kind": "Namespace", "metadata": { "name": "iwd", "labels": { "name": "iwd" } } }
- Create a namespace using the above JSON:
kubectl apply -f create-iwd-namespace.json
- Confirm the namespace creation:
kubectl describe namespace iwd
- Create a create-iwd-namespace.json :
- Create a pull secret for accessing the JFrog registry.
kubectl create secret docker-registry jfrog-stage-credentials \ --docker-server=pureengage-docker-staging.jfrog.io \ --docker-username=<camelot-username> \ --docker-password=<API key from jfrog> \ --docker-email=<emailid>
- Download the IWD helm chart from the JFrog repository. See Download the Helm charts.
- Create a gauth client.
IWD requires clientId and clientSecret registered in Authentication Service. These must be provided during Helm Chart deployment. Create new client credentials if they are not already created . Refer to the GWS documentation for more information.
Deploy
- Extract parameters from chart to see multiple (default) values used to fine tune the installation.For information on parameters and values in the values.yaml file, see Override Helm chart values.
$ helm show values iwd-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengage-docker-staging.jfrog.io repository: nexus/iwd pullSecrets: - name: "pullsecret" gauth: auth: url: http://gauth-auth.gws redirectUrl: https://gws.nlb02-useast1.gcpe002.gencpe.com redis: nodes: redis://infra-redis-redis-cluster.infra.svc.gke2-useast1.gcpe002.gencpe.com:6379 useCluster: true enableTLS: false #password: xxx #in secrets gws: url: http://gauth-auth.gws #clientId: xxx #in secrets #clientSecret: xxx #in secrets #apiKey: xxx #in secrets ingress: enabled: true hosts: - host: iwd.nlb02-useast1.gcpe002.gencpe.com paths: - path: '/iwd/' port: 4024 annotations: cert-manager.io/issuer-name: ca-cluster-issuer kubernetes.io/ingress.class: nginx tls: - hosts: - iwd.nlb02-useast1.gcpe002.gencpe.com secretName: iwd-ingress-cert nexus: url: http://nexus.nexus #apikey: xxx #in secrets elasticsearch: host: elastic-elasticsearch-master.infra.svc.gke2-useast1.gcpe002.gencpe.com port: 9200 monitoring: # Deploy ServiceMonitor enabled: true # Create PrometheusRule k8s object with alarm definitions alarms: true # Create ConfigMap with Grafana Dashboards dashboards: true
- Install IWD using the following command (replace <> with applicable values):
helm install iwd ./iwd-<version>.tgz -f override_values.yaml --set gws.clientId=<client id> --set gws.clientSecret=<client secret> --set redis.password=<password to redis> --set nexus.apikey=<Nexus API key> --set gws.apiKey='None' --namespace=iwd
Validate the deployment
Watch the helm output at the end of installation. It provides the status and additional information about where to log in to the IWD UI.
See the following sample output:
Release "iwd" has been upgraded. Happy Helming!
NAME: iwd
LAST DEPLOYED: Tue Jul 13 10:18:07 2021
NAMESPACE: iwd
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Please be patient while iwd 100.0.0741322 is being deployed
Comments or questions about this documentation? Contact us for support!