cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1765
Views
25
Helpful
14
Replies

CVP failover

Ritesh Desai
Spotlight
Spotlight

Hi folks,

Please suggest...

Customer with PCCE setup where 2 VXML Servers are configured Side-A and Side-B. Customer DOES NOT have any inbound IVR Configuration. Do I need to configure survivability.tcl OR ELSE have to just define 2 VXML Server in CVP-OAMP Console window(Primary VXML and Secondary VXML)...

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai
1 Accepted Solution

Accepted Solutions

Got It, so considering PCCE setup with having one CVP server at each side and no CSS/ACE(for http load balancing) and no CUSP for SIP proxy.

i would also consider having at least one VXML/Ingress gateway at site (Side A and Side B).

So now here is how i would achieve load balancing.

For ingress SIP leg redundancy to the CVP call server SIP service:

On Side A Ingress Gateway:

have 1 outgoing Dial-peer for CVP DNs with preference 1 pointing to Side A call server

have 1 outgoing Dial-peer for CVP DNs with preference 2 pointing to Side B call server.

On Side B Ingress Gateway:

have 1 outgoing Dial-peer for CVP DNs with preference 1 pointing to Side B call server

have 1 outgoing Dial-peer for CVP DNs with preference 2 pointing to Side A call server.

you can also attache serviceability script for advance call control to inbound dial-peer.

for VRU leg redundancy:

On Side A CVP server, Point VRU label to route to Side A VXML gateway with preference 1 and Side B VXML gateway with Preference 2. (can be done with sip server groups)

On Side B CVP server, Point VRU label to route to Side B VXML gateway with preference 1 and Side A VXML gateway with Preference 2. (can be done with sip server groups)

For VXML Server redundancy:

the VXML server is chosen from whatever you set in user.microapp.media_server 

so let's assume we set the user.microapp.media_server = "http://cvpvxml:7000/CVP"

so to achieve redundancy for VXML server:

On Side A VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host cvpvxml <ip address of side A VXML server>

ip host cvpvxml-backup <ip address of side B VXMl server>

On Side B VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host cvpvxml <ip address of side B VXML server>

ip host cvpvxml-backup <ip address of side A VXMl server>

the catch here is, if VXML gateway is not able to reach host defined in media_server it will append -backup to the hostname and tries to reach backup.

For media server redundancy:

the media server is chosen from whatever you set in user.microapp.media_server 

so let's assume we set the user.microapp.media_server = "http://media"

so to achieve redundancy for media server:

On Side A VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host media <ip address of side A media server>

ip host media-backup <ip address of side B media server>

On Side B VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host media <ip address of side B media server>

ip host media-backup <ip address of side A media server>

the catch here is, if VXML gateway is not able to reach host defined in media_server it will append -backup to the hostname and tries to reach the backup.

so all the redundancy is taken care here.

View solution in original post

14 Replies 14

Chintan Gajjar
Level 8
Level 8

Hello Ritesh,

Its unclear to me that what you are asking and what solution or comments you are looking for.

PCCE has 4 Call+VXML+Media server 2 on each side.

What are you looking for?

Regards,

Chintan

Chintan,

In my scenario, customer does not have any IVR, so rather deploying 4 Call+VXML, wasting resources so only 2 CVP-VXML Servers. Okey.

So, we are having only 2 CVP-VXML servers each on SideA and SideB. Considering this scenario, if Side-A CVP-VXML goes down then SideB CVP-VXML Server takes over.

For this HA functionality, would I require 2 CVP Server's dial-peer to route call OR ELSE different configuration is needed. Please suggest...

Hope you got clarity :)

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

Got It, so considering PCCE setup with having one CVP server at each side and no CSS/ACE(for http load balancing) and no CUSP for SIP proxy.

i would also consider having at least one VXML/Ingress gateway at site (Side A and Side B).

So now here is how i would achieve load balancing.

For ingress SIP leg redundancy to the CVP call server SIP service:

On Side A Ingress Gateway:

have 1 outgoing Dial-peer for CVP DNs with preference 1 pointing to Side A call server

have 1 outgoing Dial-peer for CVP DNs with preference 2 pointing to Side B call server.

On Side B Ingress Gateway:

have 1 outgoing Dial-peer for CVP DNs with preference 1 pointing to Side B call server

have 1 outgoing Dial-peer for CVP DNs with preference 2 pointing to Side A call server.

you can also attache serviceability script for advance call control to inbound dial-peer.

for VRU leg redundancy:

On Side A CVP server, Point VRU label to route to Side A VXML gateway with preference 1 and Side B VXML gateway with Preference 2. (can be done with sip server groups)

On Side B CVP server, Point VRU label to route to Side B VXML gateway with preference 1 and Side A VXML gateway with Preference 2. (can be done with sip server groups)

For VXML Server redundancy:

the VXML server is chosen from whatever you set in user.microapp.media_server 

so let's assume we set the user.microapp.media_server = "http://cvpvxml:7000/CVP"

so to achieve redundancy for VXML server:

On Side A VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host cvpvxml <ip address of side A VXML server>

ip host cvpvxml-backup <ip address of side B VXMl server>

On Side B VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host cvpvxml <ip address of side B VXML server>

ip host cvpvxml-backup <ip address of side A VXMl server>

the catch here is, if VXML gateway is not able to reach host defined in media_server it will append -backup to the hostname and tries to reach backup.

For media server redundancy:

the media server is chosen from whatever you set in user.microapp.media_server 

so let's assume we set the user.microapp.media_server = "http://media"

so to achieve redundancy for media server:

On Side A VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host media <ip address of side A media server>

ip host media-backup <ip address of side B media server>

On Side B VXML gateway, make use of IP host entry to achieve redundancy as below:

ip host media <ip address of side B media server>

ip host media-backup <ip address of side A media server>

the catch here is, if VXML gateway is not able to reach host defined in media_server it will append -backup to the hostname and tries to reach the backup.

so all the redundancy is taken care here.

Thanks Chintan for guidance...

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

Hi Chintan,

SIP PROXY

  • Can TDM + SIP Proxy on single VG-3945 will be sufficient to handle calls?
  • Is SIP proxy server residing on Gateway used only when CVP Failover?
  • Am refering to this guide URL: http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cust_contact/contact_center/customer_voice_portal/srnd/9_0/CCVP_BK_C7053373_00_cvp-9-01-srnd/CCVP_BK_C7053373_00_cvp-srnd_chapter_0100.pdf
  • Is Proxy module different? Am not sure about this, please suggest.

From above suggestion,

for VRU leg redundancy:

On Side A CVP server, Point VRU label to route to Side A VXML gateway with preference 1 and Side B VXML gateway with Preference 2. (can be done with sip server groups)

Does sip server groups would communicate to DNS for each inbound call. Am refering because of FQDN and components in SIP SERVER GROUPS.

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

You Probably don't use CUSP for PCCE, since PCCE is small deployment and can run without SIP proxy.

but if you want to use CUSP, it should be deployed on separate ISR G2 router with CUSP SRE module.

In your case, if you are not going to use CUSP, you can take help on local DNS based SRV on ISR Routers to load balance calls across CVP.

the local DNS srv based ip host record will not require any external DNS interactions.

and same thing CVP for VRU label load balancing will be achieved by SIP server group with local DNS SRV. here also no external DNS interaction is required.

for configuring ingress gateway to load balance across CVP for inbound calls

look at here, step 7 under 

Configure Gateway Settings for Comprehensive Call Flow Model.

Hi Chintan,

In our PCCE deployment, we are using client DNS for DNS entries and records. PCCE components will register to client DNS.

the local DNS srv based ip host record will not require any external DNS interactions.

Am confused with local DNS SRV records.

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

As you know DNS is nothing but host to IP resolution.
gateway when tries to send call to CVP, it looks at dial-peer, and if dial-peer is configured with host name of CVP server or srv group, it will first try to resolve that locally with available ip host entries, and if nothing found it will reach out to DNS for that.


Example or use case:


--> i have four CVP server,two in DC 1 and two in DC 2. host name and IP as below:

CVP1 192.168.1.10 (DC1)
CVP2 192.168.1.11 (DC1)

CVP3 192.168.2.10 (DC2)
CVP4 192.168.2.11 (DC2)

--> I have one ingress gateway in DC1 and one in DC2 terminating TDM or SIP Trunks.
--> I want to load balance calls arriving in DC1 gateway as 50/50 to two servers available in DC1.
and if none of those CVPs are reachable, i would like use two CVP servers in DC2 and load balance calls to them as 50/50.

in a same way:

I want to load balance calls arriving in DC2 gateway as 50/50 to two servers available in DC2.
and if none of those CVPs are reachable, i would like use two CVP servers in DC1 and load balance calls to them as 50/50.

and yes gateway will do local DNS lookup and no external DNS servers will be used.

so for above use case, my gateway config in DC1 looks as below:

configure the ip host entry for four CVPs. with this gateways can resolve ip of those 4 CVPs without any external DNS lookup.

ip host CVP1 192.168.1.10
ip host CVP2 192.168.1.11
ip host CVP3 192.168.2.10
ip host CVP4 192.168.2.11

now configure the srv host entry for both the CVP server groups, you can pick any fqdn but i am using cvpdc1.cisco.com/cvpdc2.cisco.com
so the srv for SIP tcp connection will look as below:

ip host _sip._tcp.cvpdc1.cisco.com srv 50 50 5060 CVP1
ip host _sip._tcp.cvpdc1.cisco.com srv 50 50 5060 CVP2
ip host _sip._tcp.cvpdc2.cisco.com srv 50 50 5060 CVP3
ip host _sip._tcp.cvpdc2.cisco.com srv 50 50 5060 CVP4

now simply use the Dial-peer with two different preference to send out calls to CVP groups with first preference as DC1 servers and second preference as DC2 servers.


dial-peer voice 30000 voip
description "CALLS TO CVP in DC1"
destination-pattern 300..
voice-class codec 1
preference 0
session protocol sipv2
session target dns:cvpdc1.cisco.com
dtmf-relay sip-notify rtp-nte
no vad


dial-peer voice 30000 voip
description "CALLS TO CVP in DC2"
destination-pattern 300..
voice-class codec 1
preference 1
session protocol sipv2
session target dns:cvpdc2.cisco.com
dtmf-relay sip-notify rtp-nte
no vad

That's it, hope you can determine the config required for gateway in DC2 from above.
HTH.

Chintan,

Good one!

Am worrying about is, using DNS SRV will increase CPU & memory utillization on DNS server. DNS SRV will initiate for each and every call right?

So local DNS SRV you mean to say is

1. from DP it will search for cvpdc1.cisco.com

2. it will check

  • ip host _sip._tcp.cvpdc1.cisco.com srv 50 50 5060 CVP1
    ip host _sip._tcp.cvpdc1.cisco.com srv 50 50 5060 CVP2

3. then it will check and relate

  • ip host CVP1 192.168.1.10
    ip host CVP2 192.168.1.11

correct? Hope Im!

In CVP OAMP Console under SIP Server Groups, we'll add CVP Servers 1,2,3 and 4, correct?

regards,

Ritesh Desai

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

Not really, there is no where i see mentioned about local DNS resolution causing memory and CPU spike.

and if it is i think it's always less than external DNS resolution, because Router now has to process the DNS requests as well.

the only disadvantage of local DNS based SRV is if you happened to change the IP address of CVP, you need to update each gateway with the change.

but for small environment i think it should be okay, and don't worry people around world are using such solutions and wide manner.

now coming back to CVP ops console --> Sip server Group, you don't define CVP here. you define a server group FQDN and add VXML host or CUCM host to it.

this will create local SRV on each CVP server based on how deploy.

now you can point CVP static routes to the server groups for VRU and Agent labels.

Chintan,

Thanks.. got an idea.

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

Am preparing a installation reference document i came with confusion.

for VRU leg redundancy:
On Side A CVP server, Point VRU label to route to Side A VXML gateway with preference 1 and Side B VXML gateway with Preference 2. (can be done with sip server groups)

SIP Server groups configuration,

Image-1 attached

My understanding is calls from ICM carrying ICM Label+Correlation ID will be sent to CVP SIP Service. On which VXML Gateway to route the Label+Cor ID will be taken care by SIP Server Groups. right?

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai

Ritesh,

I don't see any attachment, but i see you have doubt about sip server groups on CVP for VRU redundancy. and below is my example on how to do that.

I have two VXML gateway on DC1 and DC2.

192.168.1.1 (in DC1)

192.168.1.2 (in DC2)

the calls arriving on CVP in DC1 should always use VXML gateway in DC1 and for failover can use vxml gateway available in DC2.

and same true for CVP available in DC2, the calls arriving on CVP in DC2 should always use VXML gateway of available in DC2, and for failover should use the VXML gateway in DC1.

so first of all, i will define two sip server group in CVP.  each will have same hosts(VXML gateways), but the priorities will be different.

as you can see the elements are same in both the groups but priorities are different, in one group the the VXML gateway available in DC1 has highest priority then in DC2, and vice versa.

Now Save and Deploy two newly created SIP server groups on all the call servers.

Next go to call server and point static route for VRU label to appropriate SIP server group. below are the image for Call server configuration for CVP in two different DC.

in DC1 call server, please assume VRU label is 6111111111, the config looks as below:

in DC2 call server, please assume VRU label is 6111111111, the config looks as below:

That's it, save and deploy the config and you are done.

Thanks Chintan,

My understanding was right... thank you bhai.

regards,

Ritesh Desai.

*** Please rate helpful post. Please mark as answer if it solves your problem/query.
regards, Ritesh Desai
Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: