Difference between revisions of "PEC-Email/Current/EmailPEGuide/Deploy"
From Genesys Documentation
Line 1: | Line 1: | ||
− | {{ | + | {{ArticlePEServiceDeploy |
− | | | + | |ServiceId=b2d1432d-5111-43be-90fa-3abe7e48df15 |
− | | | + | |IncludeAssumptions=Yes |
− | |||
− | |||
|Section={{Section | |Section={{Section | ||
|sectionHeading=Kubernetes | |sectionHeading=Kubernetes | ||
Line 147: | Line 145: | ||
image: | image: | ||
registry: pureengage-docker-staging.jfrog.io | registry: pureengage-docker-staging.jfrog.io | ||
+ | repository: nexus/iwd-email | ||
+ | pullSecrets: | ||
+ | - name: pullsecret | ||
+ | |||
+ | gauth: | ||
+ | auth: | ||
+ | url: http://gauth-auth.${GAUTH_NAMESPACE}:80 | ||
+ | |||
+ | redis: | ||
+ | nodes: redis://${REDIS_ADDR}:${REDIS_PORT} | ||
+ | useCluster: true | ||
+ | enableTLS: false | ||
+ | #password: xxx #in secrets | ||
+ | |||
+ | nexus: | ||
+ | url: http://nexus.${NEXUS_NAMESPACE} | ||
+ | #apikey: xxx #in secrets | ||
+ | |||
+ | monitoring: | ||
+ | # Deploy PodMonitor | ||
+ | enabled: true | ||
+ | # Create PrometheusRule k8s object with alarm definitions | ||
+ | alarms: true | ||
+ | # Create ConfigMap with Grafana Dashboards | ||
+ | dashboards: true | ||
+ | # URL to Runbook | ||
+ | # runbookUrl: | ||
+ | </source> | ||
+ | #Install Email using the following command (replace <> with applicable values):<source> | ||
+ | helm install iwdem ./iwdem-<version>.tgz -f override_values.yaml \ | ||
+ | --set redis.password=<password to redis> \ | ||
+ | --set nexus.apikey=<Nexus API key> \ | ||
+ | --namespace=iwdem | ||
+ | </source> | ||
+ | |||
+ | <br /> | ||
+ | |Status=No | ||
+ | }}{{Section | ||
+ | |sectionHeading=Azure Kubernetes Service (AKS) | ||
+ | |anchor=AKS | ||
+ | |alignment=Vertical | ||
+ | |structuredtext====Prepare=== | ||
+ | |||
+ | #Log in to the AKS cluster.<source>az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin</source> | ||
+ | #Create a new project: | ||
+ | ##Create a ''create-iwdem-namespace.json'' :<source>{ | ||
+ | "apiVersion": "v1", | ||
+ | "kind": "Namespace", | ||
+ | "metadata": { | ||
+ | "name": "iwdem", | ||
+ | "labels": { | ||
+ | "name": "iwdem" | ||
+ | } | ||
+ | } | ||
+ | }</source> | ||
+ | ##Create a namespace using the above JSON:<source>kubectl apply -f create-iwdem-namespace.json</source> | ||
+ | ##Confirm the namespace creation:<source>kubectl describe namespace iwdem</source> | ||
+ | #Create a pull secret for accessing the JFrog registry.<source>kubectl create secret docker-registry pullsecret \ | ||
+ | --docker-server=pureengageuse1-docker-multicloud.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-Email|version=Current|manual=EmailPEGuide|topic=Planning|display text=Download the Helm charts}}. | ||
+ | #Email requires the Digital Channels API key. The key must be provisioned and shared via Digital Channels. | ||
+ | |||
+ | ===Deploy=== | ||
+ | |||
+ | #Extract parameters from chart to see multiple (default) values used to fine tune the installation.<source>$ helm show values iwdem-<version>.tgz > values.yaml</source>For information on parameters and values in the '''values.yaml''' file, see {{Link-AnywhereElse|product=PEC-Email|version=Current|manual=EmailPEGuide|topic=Configure#Override_Helm_chart_values|display text=Override Helm chart values}}.<br />Sample override file:<source> | ||
+ | replicaCount: 1 | ||
+ | |||
+ | image: | ||
+ | registry: pureengageuse1-docker-multicloud.jfrog.io | ||
repository: nexus/iwd-email | repository: nexus/iwd-email | ||
pullSecrets: | pullSecrets: |
Latest revision as of 11:15, September 23, 2022
Contents
Learn how to deploy Email into a private edition environment.
Related documentation:
RSS:
Assumptions
- The instructions on this page assume you are deploying the service in a service-specific namespace, named in accordance with the requirements on Creating namespaces. If you are using a single namespace for all private edition services, replace the namespace element in the commands on this page with the name of your single namespace or project.
- Similarly, the configuration and environment setup instructions assume you need to create namespace-specific (in other words, service-specific) secrets. If you are using a single namespace for all private edition services, you might not need to create separate secrets for each service, depending on your credentials management requirements. However, if you do create service-specific secrets in a single namespace, be sure to avoid naming conflicts.
Kubernetes
Prepare
- Create a new project using the following command:
kubectl create namespace iwdem
- 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.
- Email requires the Digital Channels API key. The key must be provisioned and shared via Digital Channels.
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 iwdem-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengage-docker-staging.jfrog.io repository: nexus/iwd-email pullSecrets: - name: pullsecret gauth: auth: url: http://gauth-auth.${GAUTH_NAMESPACE}:80 redis: nodes: redis://${REDIS_ADDR}:${REDIS_PORT} useCluster: true enableTLS: false #password: xxx #in secrets nexus: url: http://nexus.${NEXUS_NAMESPACE} #apikey: xxx #in secrets monitoring: # Deploy PodMonitor enabled: true # Create PrometheusRule k8s object with alarm definitions alarms: true # Create ConfigMap with Grafana Dashboards dashboards: true # URL to Runbook # runbookUrl:
- Install Email using the following command (replace <> with applicable values):
helm install iwdem ./iwdem-<version>.tgz -f override_values.yaml \ --set redis.password=<password to redis> \ --set nexus.apikey=<Nexus API key> \ --namespace=iwdem
OpenShift
Prepare
- Create a new project using the following command:
oc get clusterversion oc new-project iwdem
- 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.
- Email requires the Digital Channels API key. The key must be provisioned and shared via Digital Channels.
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 iwdem-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengage-docker-staging.jfrog.io repository: nexus/iwd-email pullSecrets: - name: pullsecret gauth: auth: url: http://gauth-auth.${GAUTH_NAMESPACE}:80 redis: nodes: redis://${REDIS_ADDR}:${REDIS_PORT} useCluster: true enableTLS: false #password: xxx #in secrets nexus: url: http://nexus.${NEXUS_NAMESPACE} #apikey: xxx #in secrets monitoring: # Deploy PodMonitor enabled: true # Create PrometheusRule k8s object with alarm definitions alarms: true # Create ConfigMap with Grafana Dashboards dashboards: true # URL to Runbook # runbookUrl:
- Install Email using the following command (replace <> with applicable values):
helm install iwdem ./iwdem-<version>.tgz -f override_values.yaml \ --set redis.password=<password to redis> \ --set nexus.apikey=<Nexus API key> \ --namespace=iwdem
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-iwdem-namespace.json :
{ "apiVersion": "v1", "kind": "Namespace", "metadata": { "name": "iwdem", "labels": { "name": "iwdem" } } }
- Create a namespace using the above JSON:
kubectl apply -f create-iwdem-namespace.json
- Confirm the namespace creation:
kubectl describe namespace iwdem
- Create a create-iwdem-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.
- Email requires the Digital Channels API key. The key must be provisioned and shared via Digital Channels.
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 iwdem-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengage-docker-staging.jfrog.io repository: nexus/iwd-email pullSecrets: - name: pullsecret gauth: auth: url: http://gauth-auth.${GAUTH_NAMESPACE}:80 redis: nodes: redis://${REDIS_ADDR}:${REDIS_PORT} useCluster: true enableTLS: false #password: xxx #in secrets nexus: url: http://nexus.${NEXUS_NAMESPACE} #apikey: xxx #in secrets monitoring: # Deploy PodMonitor enabled: true # Create PrometheusRule k8s object with alarm definitions alarms: true # Create ConfigMap with Grafana Dashboards dashboards: true # URL to Runbook # runbookUrl:
- Install Email using the following command (replace <> with applicable values):
helm install iwdem ./iwdem-<version>.tgz -f override_values.yaml \ --set redis.password=<password to redis> \ --set nexus.apikey=<Nexus API key> \ --namespace=iwdem
Azure Kubernetes Service (AKS)
Prepare
- Log in to the AKS cluster.
az aks get-credentials --resource-group <resource-group> --name <cluster-name> --admin
- Create a new project:
- Create a create-iwdem-namespace.json :
{ "apiVersion": "v1", "kind": "Namespace", "metadata": { "name": "iwdem", "labels": { "name": "iwdem" } } }
- Create a namespace using the above JSON:
kubectl apply -f create-iwdem-namespace.json
- Confirm the namespace creation:
kubectl describe namespace iwdem
- Create a create-iwdem-namespace.json :
- Create a pull secret for accessing the JFrog registry.
kubectl create secret docker-registry pullsecret \ --docker-server=pureengageuse1-docker-multicloud.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.
- Email requires the Digital Channels API key. The key must be provisioned and shared via Digital Channels.
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 iwdem-<version>.tgz > values.yaml
Sample override file:replicaCount: 1 image: registry: pureengageuse1-docker-multicloud.jfrog.io repository: nexus/iwd-email pullSecrets: - name: pullsecret gauth: auth: url: http://gauth-auth.${GAUTH_NAMESPACE}:80 redis: nodes: redis://${REDIS_ADDR}:${REDIS_PORT} useCluster: true enableTLS: false #password: xxx #in secrets nexus: url: http://nexus.${NEXUS_NAMESPACE} #apikey: xxx #in secrets monitoring: # Deploy PodMonitor enabled: true # Create PrometheusRule k8s object with alarm definitions alarms: true # Create ConfigMap with Grafana Dashboards dashboards: true # URL to Runbook # runbookUrl:
- Install Email using the following command (replace <> with applicable values):
helm install iwdem ./iwdem-<version>.tgz -f override_values.yaml \ --set redis.password=<password to redis> \ --set nexus.apikey=<Nexus API key> \ --namespace=iwdem
Validate the deployment
Watch the helm output at the end of installation. Pods must be in a Running state and they must pass all READY checks.
See the following sample output:Release "iwdem" has been upgraded. Happy Helming!
NAME: iwdem
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!