Breadcrumbs

CX-Voice Deployment on Kubernetes

This document illustrates the procedure and steps to deploy Expertflow CX-voice on Kubernetes.

Prepare for CX Deployment

Step 1: Create Namespaces

  1. Create a namespace cx-voice for all cx-voice components.

Bash
# Run the following command on the control-plane node.
kubectl create namespace cx-voice

Step 2: Apply Image Pull secret

  1. Run the following commands for applying ImagePullSecrets of Expertflow CX images.

Bash
kubectl apply -f voice/pre-deployment/registryCredits/ef-imagePullSecret-cx-voice.yaml

Step 3: Update FQDN

Expertflow CX-voice should be accessible by a fully qualified domain name. Assign the FQDN that resolves to the control plane node or KubeVIP.

Bash
# Replace <FQDN> with your FQDN for Expertflow CX and run this command.
sed -i 's/devops[0-9]*.ef.com/<FQDN>/g'   voice/cx-voice/Ingresses/*

Deploy CX-voice Components

  1. Apply all configurations in the ConfigMaps folder using

kubectl apply -f voice/cx-voice/ConfigMaps
  1. Create services for all deployment EF components

kubectl apply -f voice/cx-voice/Services
  1. Apply all the Deployment manifests 

kubectl apply -f voice/cx-voice/Deployments
  1. Before proceeding to the the next steps, wait for all the solution components to be up and ready.

Bash
# Wait for the CX voice to be ready
kubectl -n cx-voice get pods

Step 4: Setup Ingress Routes

For RKE2-based Ingresses using Ingress-Nginx Controller

Bash
kubectl apply -f voice/cx-voice/Ingresses