Redis requirements for Voice services

From Genesys Documentation
Jump to: navigation, search
This topic is part of the manual Voice Microservices Private Edition Guide for version Current of Voice Microservices.

Register services and endpoints that connect to Redis.

Before you deploy the Voice services, you must deploy the infrastructure services. See Third-party prerequisites for the list of required infrastructure services. It is your responsibility to deploy and manage all required third-party services.

This page describes how to register Redis services in Consul to enable connections from the Voice services. Complete the work on this page before you make any changes described in Configure Voice Microservices.

Register the Redis service in Consul

After you create the Redis cluster, register the Redis IP address with Consul. You must create cluster information for the Kubernetes services and endpoints that connect to Redis. Once the Kubernetes services are created, Consul will automatically sync those services and register them in Consul.

Create Kubernetes services and endpoints

Perform Redis registration for all of the following Redis service names. The Voice services use these service names to connect to the Redis cluster.
redis-agent-state
redis-call-state
redis-config-state
redis-ors-state
redis-ors-stream
redis-registrar-state
redis-rq-state
redis-sip-state
redis-tenant-stream

Manifest file

For all the preceding Redis service names, create a separate service and endpoint using the following example:
apiVersion: v1
kind: Service
metadata:
  name: <redis-service-name> (ex, redis-agent-state)
  namespace: <namespace> (ex, voice)
  annotations:
    "consul.hashicorp.com/service-sync": "true"
spec:
  clusterIP: None
---
apiVersion: v1
kind: Endpoints
metadata:
  name: <redis-service-name> (ex, redis-agent-state)
  namespace: <namespace> (ex, voice)
subsets:
  - addresses:
      - ip: <redis Cluster IP> (ex, 51.143.122.147)
    ports:
      - port: <redis port> (ex, 6379)
        name: redisport
        protocol: <redis transport> (ex, TCP)
Use the following command to get the cluster IP for the Redis service:
kubectl get service infra-redis-redis-cluster -n infra -o jsonpath='{.spec.clusterIP}'
Retrieved from "https://all.docs.genesys.com/VM/Current/VMPEGuide/DeployRedis (2023-10-03 11:39:15)"
Comments or questions about this documentation? Contact us for support!