Skip to main content
Skip table of contents

Expertflow CX Components Blueprint on Kubernetes

This page illustrates the Kubernetes objects and their corresponding implementation specifications for deploying the Expertflow CIM solution on customer infrastructure.

Supported Operating Systems

Kubernetes Distributions

Kubernetes Objects for Expertflow CIM Internal Components


Component

TypeNamespaceDeploymentReplicaSetRestart PolicyVolume NameMount-PointVolume sizeContainer-PortsPort-name

 Service

service-typeService PortsConfig-MapsHealthIngress
RequestLimit

Calls (Internal - CIM)

Calls (External)

Called By

1360-connectordeploymentexpertflowef-360-connector1Always


8080
http-360c
-8080
ef-360-connector-svcCluster-IP8080ef-connector360-cm
https://${FQDN}/360connector

CPUs


RAM

50m


64Mi

100m


128Mi

CCM, File-engine360-Server
2file-enginedeploymentexpertflowef-file-engine1Always


8443
https-fi
-m-8443
ef-file-engine-svcCluster-IP8443

ef-file-engine-cm,

variables-common-

env-cm

curl -fsk https://localhost:8443/api/SystemInfo 

https://${FQDN}/file-engine

CPUs




RAM

250m




128Mi

500m




512Mi


Minio360-Connector, Unified-Admin, Customer-Widget, Unified-Agent
3ccmdeploymentexpertflowef-ccm1Always


8081
http-ccm
-8081
ef-ccm-svcCluster-IP8081

ef-ccm-cm,

ef-connection-env-cm


https://${FQDN}/ccm

CPUs







RAM

50m







256Mi

100m







1Gi

CIM-Customer, Bot-framework, Connectors(Web, whatsapp ...)ActiveMq, Redis, Mongo360-Connector, Unified-Admin, Web-Channel-Manager, Agent-Manager, Customer-Widget, Twillio-Connector
4bot-frameworkdeploymentexpertflowef-bot-framework1Always


8082
http-bot-
f-8082
ef-bot-framework-svcCluster-IP8082

ef-bot-framwork-cm,

ef-connection-env-cm


https://${FQDN}/bot-framework

CPUs





RAM

50m





256M

100m





512Mi

Routing-engineActiveMQ, Redis, Mongo, Rasa-xRouting-engine, CCM, Unified-admin, Agent-Manager, Unified-Agent
5routing-enginedeploymentexpertflowef-routing-engine1Always


8081
http-
ro-en-8081
ef-routing-engine-svcCluster-IP8081

ef-routing-engine-cm,

ef-connection-env-cm


https://${FQDN}/routing-engine

CPUs



RAM

200m



512Mi

500m



1Gi

Agent-manager, Bot-FrameworkActiveMq, Redis, MongoBot-Framework, Unified-admin, Agent-Manager
6cim-customerdeploymentexpertflowef-cim-customer1Always


8080
http-
ci-cu-8080
ef-cim-customer-svcCluster-IP8080

ef-cim-customer-cm,

ef-connection-env-cm


https://${FQDN}/cim-customer

CPUs



RAM

50m



64Mi

100m



128Mi


Redis, MongoCCM, Agent-Manager, Unified-Agent
7agent-managerdeploymentexpertflowef-agent-manager1Always


3000
 http-ag
-ma-3000
ef-agent-manager-svcCluster-IP3000

ef-agent-manager-cm,

ef-connection-env-cm


https://${FQDN}/agent-manager

CPUs



RAM

50m



256Mi

100m



512Mi

Bot-Framework, Routing-engine, Cim-Customer, Unified-Admin, CCM, License-ManagerActiveMQ, Redis, KeycloakRouting-engine, Unified-Agent
8unified-admindeploymentexpertflowef-unified-admin1Always


3000
http-un-
ad-3000
ef-unified-admin-svcCluster-IP3000

ef-unified-admin-cm,

ef-connection-env-cm


https://${FQDN}/unified-admin

CPUs





RAM

50m





128Mi

100m





256Mi

Routing-Engine, CCM, Bot-Framework, License-Manager, Business-Calendar, File-EngineKeycloak, Mongo, RedisAgent-Manager
9license-managerdeploymentexpertflowef-license-manager1Always


8888
http-li-
ma-8888
ef-license-manager-svcCluster-IP8888

ef-licence-manager-cm,

ef-connection-env-cm


https://${FQDN}/license-manager

CPUs


RAM

50m


128Mi

100m


256Mi


Redis, MongoUnified-Admin, Agent-Manager
10business-calendardeploymentexpertflowef-business-calendar1Always


8443
 http-bu-
ca-8443
ef-business-calender-svcCluster-IP8443ef-business-calender-cm
https://${FQDN}/business-calendar

CPUs


RAM

50m


128Mi

100m


256Mi



Unified-Admin
11web-channel-managerdeploymentexpertflowef-web-channel-manager1Always


7000
http-we-ch
-7000

ef-web-channel-

manager-svc

Cluster-IP7000

ef-web-channel-

manager-cm


https://${FQDN}/web-channel-manager

CPUs


RAM

50m


256Mi

100m


512Mi

CCM
Customer-Widget, CCM
12customer-widgetdeploymentexpertflowef-customer-widget1Always


8080
http-cu
-wi-8080

ef-customer-

widget-svc

Cluster-IP8080ef-customer-widget-cm
https://${FQDN}/customer-widget

CPUs


RAM

50m


64Mi

100m


128Mi

Web-Channel-Manager(Socket), CCM, File-Engine

13twillio-connectordeploymentexpertflowef-twillio-connecctor1Always


8085
http-tw-
co-8085
ef-twilio-connector-svcCluster-IP8085ef-twilio-connector-cm

https://${FQDN}/twilio-connector

CPUs


RAM

50m


64Mi

100m


128Mi

CCMTwillio Server
14unified-agent
deployment
expertflowef-unified-agent1Always


80
 http-un
-ag-80
ef-unified-agent-svcCluster-IP80ef-unified-agent-cm 
https://${FQDN}/unified-agent

CPUs


RAM

50m


128Mi

100m


256Mi

Agent-Manager, File-Engine, Bot-Framework, Cim-CustomerFinesse
15
conversation-controller
deployment
expertflow
ef-conversation
-controller
1
Always
ef-conversation-
controller-actions,
ef-conversation-
controller-pycache, 
ef-conversation-
controller-utils

/app/actions,

/app/actions/__pycache__,

/app/actions/utils


5000
http-co-
ct-5000
ef-conversation-
controller-svc
Cluster-IP
5000
ef-connection-env-cm,
ef-conversation-
controller-cm


CPUs


RAM

50m


128Mi

100m


256Mi




16
conversation-manager
deployment
expertflow
ef-conversation
-manager
1
Always



8080
http-co-
ma-8080
ef-conversation-
manager-svc
Cluster-IP
8080
ef-connection-env-cm,
ef-conversation
-manager-cm

https://${FQDN}/conversation-
manager

CPUs


RAM

50m


256Mi

100m


512Mi




17
facebook-connector
deployment
expertflow
ef-facebook
-connector
1
Always



 8080
 http-fb-
co-8080
ef-facebook-
connector-svc
Cluster-IP
8080
ef-facebook-
connector-cm

https://${FQDN}/facebook-connector

CPUs


RAM

50m


64Mi

100m


128Mi




18
realtime-reports
deployment
expertflow
ef-realtime
-reports
1
Always



 8080
http-re-
rp-8080
 
ef-realtime-
reports-svc
Cluster-IP
8080
ef-connection-env-cm,
ef-realtime-reports-cm

https://${FQDN}/realtime-reports

CPUs


RAM

50m


128Mi

100m


256Mi




19
reporting-connector
deployment
expertflow
ef-reporting
-connector
1
Always
config-volume-conf,
config-volume-cron

/root/config/reporting-connector.conf,

/etc/crontabs/root




ef-realtime-
reports-svc
Cluster-IP
8080



CPUs


RAM

50m


64Mi

100m


256Mi




20
state-event-logger
deployment
expertflow
ef-state-
events-logger
1
Always








ef-connection-env-cm,
ef-state-events-logger-cm


CPUs


RAM

50m


128Mi

100m


256Mi




21
web-widget
deployment
expertflow
ef-web-widget
1
Always



80
 http-we
-wi-80
ef-web-
widget-svc
Cluster-IP
8080


https://${FQDN}/web-widget

CPUs


RAM

50m


64Mi
100m


256Mi



Kubernetes Objects for Expertflow CIM External Components


Component

TypeNamespaceDeploymentReplicaSetRestart PolicyVolume size Mount-PointContainer-Ports

 Service Identifier

service-typeService PortsConfig-MapsSecretHealthIngress

Calls (Internal - CIM)

Calls (External)

Called By

1miniodeploymentef-externalminio1Always8Gi/data9000

minio.ef-external.svc

Cluster-IP9000






2mongostatefulsetef-externalmongo-mongodb1Always8Gi/bitnami/mongodb27017mongo-mongodb.ef-external.svcCluster-IP27017






3activemqstatefulsetef-externalef-amq1Always8Gi/opt/activemq/data8162, 61613-61617ef-amq.ef-external.svcCluster-IP8162, 61613-61617






4redisstatefulsetef-externalredis1Always8Gi/data6379redis-master.ef-external.svcCluster-IP6379






5keycloakdeploymentef-externalkeycloak1Always8Gi
8080, 8443keycloak.ef-external.svcCluster-IP8080, 8443ef-keycloak-config

https://${FQDN}/auth


6grafanadeploymentef-externalgrafana1Always4Gi/var/lib/grafana3000grafana.ef-external.svcCluster-IP3000ef-grafana-ini-cm, ef-supervisor-dashboard-cmef-grafana-dashboard-provider-secret
https://${FQDN}/grafana


7postgresqlstatefulsetef-externalef-postgresql1Always32Gi











8supersetdeploymentef-externalsuperset1Always

8088,5432superset.ef-external.svcCluster-IP8088,5432






Storage class

A default Storage class of any of these providers can be provisioned for dynamic volume provisioning. 

  • Multi-node on-prem setup
    • Longhorn by Rancher ( supported, tested to work )
    • GlusterFS ( supported, not tested  )
    • NFS ( supported, not tested)
    • openEBS ( supported, not tested )


  • For cloud based storage
    • AWS 
    • GCE

  • Single-Node Deployment
    • hostpath ( suitable for single node deployment only )


  • Any other K8s compatible storage solution for dynamic volume provisioning may be used e.g., Rook-Ceph. 

Ingress 


Ingress ControllerPOC
ingress-nginx

COMAPTIBLE

Traefik

COMAPTIBLE


Load Balancer

A VRRP based IP Transition is supported by using metallb as load-balancer for on-prem deployments. 

Load BalancerCompatible
metalLB

COMAPTIBLE

For K3s Based cluster, the Load-Balancer is not required as all the nodes in the cluster are exposed to the network and can be used for FQDN to IP Mapping.

Geographically  Federated Cluster


Please refer to this link for a cluster spanning geographically spanned architecture.

https://kubernetes.io/docs/setup/best-practices/

https://kubernetes.io/blog/2016/10/globally-distributed-services-kubernetes-cluster-federation/

https://kubernetes.io/docs/setup/best-practices/cluster-large/

https://kubernetes.io/docs/setup/best-practices/node-conformance/




JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.