Cisco Outbound Connector Kubernetes Deployment Guide
The purpose of this document is to provide deployment steps for Cisco Outbound connector of Expertflow CX solution.
Run All Commands in cim-solution/kubernetes Directory
Before you begin, verify
- CX deployment on Kubernetes, see https://expertflow-docs.atlassian.net/l/cp/6ufqN94G
- Redis is installed, see https://redis.io/docs/install/install-redis/
- Cisco UCCE or UCCX is set up with API-created campaigns
Redis Setup
After installing Redis, enable and start it:
CODEsystemctl enable redis systemctl enable redis-server systemctl start redis systemctl start redis-server
Run the following command, but replace PASSWORD with your desired Redis password:
CODEsed -i '/# requirepass/c\requirepass PASSWORD' /etc/redis/redis.conf
Run the following commands:
CODEsed -i '/protected-mode/c\protected-mode no' /etc/redis/redis.conf sed -i '/bind 127.0.0.1 -::1/c\# bind 127.0.0.1 -::1' /etc/redis/redis.conf sed -i '/bind 127.0.0.1 ::1/c\# bind 127.0.0.1 ::1' /etc/redis/redis.conf
Restart Redis:
CODEsystemctl restart redis systemctl restart redis-server
Create Namespace
Create the namespace using the command.
kubectl create namespace cisco-voice
Image Pull secret
For cisco-voice namespace, use the following command:
kubectl apply -f pre-deployment/registryCredits/ef-imagePullSecret-cisco-voice.yaml
Update the FQDN
Decide the FQDN to be used in your solution and change the <FQDN> in the below-given command to your actual FQDN
sed -i 's/devops[0-9]*.ef.com/<FQDN>/g' cisco-voice/Ingresses/nginx/* cisco-voice/ConfigMaps/*
Set ConfigMap fields
Open the Cisco Outbound Connector ConfigMap with
CODEvi cisco-voice/ConfigMaps/ef-cisco-outbound-connector-cm.yml
Change the values as follows:
CISCO_FQDN: The address of the Cisco deployment.
CISCO_USERNAME: The admin username of the Cisco deployment.
CISCO_PASS: The admin password of the Cisco deployment.
CISCO_TYPE: CCX or CCE, depending on the Cisco deployment.
CX_FQDN: The address of EF CX. https://FQDN
DB_IP: The server IP address of the Cisco database.
DB_NAME: The name of the Cisco database where the dialinglist(CCX) or Dialer_Detail(CCE) tables are located.
DB_PASS: The password of the Cisco database.
DB_PORT: The port of the Cisco database. For CCX the default is 1504. For CCE the default is 1433.
DB_USERNAME: The username of the Cisco database.
LOG_LEVEL: The amount of detail in the logs. Default is INFO, and for more detailed logs the value should be DEBUG.
REDIS_DB: The index of the Redis cache where call IDs will be stored. Can be a number from 0 through 16.
REDIS_HOST: The server IP address of the Redis cache.
REDIS_PASS: The password of the Redis cache.
REDIS_PORT: The port of the Redis cache. The default is 6379.
REDIS_DELAY: The time in minutes the connector will wait between checking call results for the call IDs stored in the Redis cache.
SERVICE_ID: Service Identifier for the connector set in the EF CX channel settings.
Apply the configurations using
CODEkubectl apply -f cisco-voice/ConfigMaps/ef-cisco-outbound-connector-cm.yml
Start the Cisco Outbound Connector service
Create a service for the Cisco Outbound Connector:
kubectl apply -f cisco-voice/Services/ef-cisco-outbound-connector-service.yml
Services must be created before Deployments
Create the Cisco Outbound Connector Deployment
Apply the Deployment manifest for the Cisco Outbound Connector:
kubectl apply -f cisco-voice/Deployments/ef-cisco-outbound-connector-deployment.yaml
Set the Cisco Outbound Connector Ingress
You need to apply the Ingress route for the Cisco Outbound Connector:
kubectl apply -f cisco-voice/Ingresses/nginx/ef-cisco-outbound-connector-ingress.yml