I am looking for some info on building high availability Unity systems. We have a customer who wants 99.99% availability from the system.<br><br>I am new to Unity, and would like to better understand the resilience/redundancy options. Is there a whitepaper on the subject I could read?<br><br>Is runing Unity on an NT cluster an option?<br><br>Apologies if this has been asked before, I did search the forum before posting but didn't find anything much on this topic. Also is there an FAQ available and if so from where?<br><br>Many Thanks<br><br>Tim Banks<br><br>Solution Architect<br>MCSE Unity SE<br>Compaq Global Services
For Unity 2.4.6 the only high availability option is the simple failover capability, which is pretty limited. There is a section in the 2.4.6 readme file (found under the \documentation directory on CD #1) covering the details of how to configure two Unity servers such that one is the backup to the other. Theres a number of limitations to this configuration, for instance MWIs and notifications will not function while the primary is off line and the like. Must of the work here comes from setting up your switch to properly route calls when the primary Unity server is off line.
If you dont have a set of 2.4.6 CDs at your disposal, email me and Ill zip them up and send them your way to take a look.
No, running Unity on an NT cluster is not an option. We do have a couple of sites that have Unity (with Exchange of course) on its own box and we are talking to an Exchange cluster where all the subscribers are homed. Frankly this doesnt work all that well since Microsoft has never figured out how to get the client connectivity to seamlessly handle an Exchange server going off line (i.e. if you have Outlook attached to that server when it goes down you have to stop Outlook and restart it before itll reconnect to another server in the cluster). Its not exactly smooth and since Unity uses the same client libraries to connect to Exchange, we get hit with the same problem (i.e. Unity would have to be restarted in some scenarios). Same deal with all the mirroring products from 3rd parties you can get your backup on line fairly quickly but its not hot failover by any stretch of the imagination. The quest for a seamless hot failover solution based on Windows clustering is still a bit off into the future Im afraid.
Unity Product Architect/Answer Monkey
http://www.AnswerMonkey.net (new page for Unity support tools and scripts)
For the simple failover, what kind of programming has to be done in the switch? We Just have a VG200 Gateway, a Call Manager & a Unity.
Can the backup Unity box be of a completely different hardware breed?
For simple failover in Unity 2.4.6 , you just need more phone lines and have to setup the response ring rate on the Unity's to be different.
You can have the secondary server on a different hardware. Just make sure that it is big enough to handle the requests that your primary handles and it is in the HCL for Unity.
Then there is no special programming to be done in some "switch" (maybe switch meant: Cisco router or Call Manager or catalyst switch)?
From the forum I read these exact words from Jeff L. about how to set up a simple failover:
"...When the primary goes off line calls will get picked up by this 2nd server. The switch, however, is responsible for being smart enough to route calls to the 2nd box when the primary fails to answer and the mechanism for doing this varies depending on what kind of switch youre using (this is the tricky part)..."
"Most of the work here comes from setting up your switch to properly route calls when the primary Unity server is off line."
Please let me know about this switch programming issue.
What Jeff is saying is absolutely right.
You have to setup the switch so that it knows to route the call over to the secondary Unity when the primary cannot answer. There are more than one ways to go around setting this up in the Call Manager. This forum deals with issues related to Unity. For specific Call Manager configurations and solutions, you will need to go to their forum. Check out this link -
Ok. But when you use the term "switch", what are you referring to?
"Switch" meaning Call Manager?
"Switch" meaning router or catalyst switch or gateway?
Thank you for defining what the word "switch" means referring to the Unity simple failover procedure.
So all that is needed should be: programming the Call Manager's uOne ports (Voice ports) & setting the backup Unity server to answer on maybe 3 more rings than the primary Unity server.
Can Unity 3.0 work with simple failover since hot failover is not supposed to be out till Unity 3.1?
Thanks for the help.
No Unity 3.0 does not support any failover. It is to be released with Unity 3.1.
If you have a customer who already has failover in Unity 2.4.6, and cannot wait till Unity 3.1, please contact your Cisco sales personnel. They might be able to offer some solutions, but they will not be pretty.
My advise, wait for Unity 3.1, that is the best option.
When is 3.1 supposed to come out?
I am asking all of this because we have a very big customer who is interested in IP telephony but they want everything to have an immediate hot failover which is not the case for Unity right now. I would like to tell them that Unity at least offeres simple failover but a gap, not even offering simple failover from 2.4.6 to 3.1 is not acceptable for them. They are a company that does all their business over the phone.
Once you told me there was no simple failover capabilites with Unity 3.0x, I thought maybe we could set them up with Unity 2.4.6 for now & then upgrade to Unity 3.1 when it comes out. But I don't want them to have to buy 2 seperate software licenses for two machines so close together & maybe involving rebuilding the servers from scratch when Unity 3.1 comes out.
There are no confirmed dates on the Unity 3.1 release.
This forum cannot really resolve sales issues. You really need to get into touch with the friendly neighbourhood Cisco Sales personnel. They can really help you out on your options.
Is there anyone at Cisco who can give us even a hint at what quarter it might come out?
This big customer is looking to purchase a hot failover redundant vmail system for February installation in a new office.
Unity 3.1 is being targeted to be released in the first quarter of 2002. We are still in the process of figuring out what the content and when the exact release date will be.
You should talk to the sales people. Maybe you can be a field trial site especially for the failover feature. We are always looking for good customer sites for trials.
I have built a Primary Demo Unity box & a backup "simple fail over" demo Unity box.
I have built & configured the boxes according to the Unity 2.4.6 README file under "Setting up a second Unity server for backup".
I have followed the directions very carefully, step by step. However, I ran into some problems. So I have some questions:
1. When I was verifying phone system information on the backup server, under System switch in the SA, it said Cisco Call Manager 3.01 or Later with Integration type: TAPI. However, in Edit Switch Utility the Integration type is blank, but, under Licensing in the SA, & in Key Dump it says Integration type: Muliple Integrations. I am guessing the reason for the multiple integrations type is because I entered the Call Manager phone system information under both Switch & IP Switch in the SA. I think it thinks there are two Call Managers because under Ports in the SA, there are two Call Managers listed under a Port Assignments section (it wants me to desginate a range of ports for each Call Manager). Did I do something wrong? Is the Integration type suppoed to be Mulitple Integrations? How do I remove a call manager from the switch section in the SA (I should not have a call manager listed under both Switch & IP Switch in the SA)?
2. I can't set up the backup server to answer on more rings than the primary server. When I open Edit Switch Utility the Integration type is blank (as mentioned above). Why does nothing happen when I click the "Edit this Switch Configuration" button?
3. I can Export from the Primary server to the Backup server C:\exchsrvr\res\
4. Ports questions: I installed the AV-CiscoTSP driver on the backup server because it did not say whether to do so or not. Was this correct to do so? If so, was I supposed to specify the exact same voice port names (ex: ciscoUM1-VI1) on the backup server as I have listed under Telephony on the Primary server? I guess I am asking if both servers are supposed to SHARE particular 2 voice ports or does each server (primary & backup) get its own designated SEPERATE 2 voice ports (given that I built two DEMO Unity servers to setup simple failover)?
Thank you for the help in advance.
Some answers -
1) All demo systems are installed as Multi Switch. But you should only install one version of the TSP on there. This will show up on the IP switch page of the SA. What shows on the KeyDump is not controlled by what you install. Multiple switches basically means that you can have a traditional switch and a IP switch on the same Unity. I think you should redo the machine and only install one Call Manager integration. It would be best to first get the Primary Unity server running and answering calls before you start the work on the failover setup.
2) Redoing the primary with only one switch should help here.
3) You should have this directory if you have installed Exchange on the system and then installed Unity. Which is the directory that Exchange was installed into on the backup machine?
4) Yes you have to install the Av-CiscoTSP driver on the backup server too. And yes, it does need to have the same port assignments as the primary server. Basically the phone rings on both the Unity servers. The number of rings determines who picks it up.
I am sorry for being so confusing. Sorry to keep hassling but this is the only way I can get answers to my questions. I seem to have a few things going on that are new to me since I have never setup two Unity servers in the same exchange site before & also have never set up 2 unity servers in the same Unity location.
1. OK, so all DEMO systems are installed as Integration type: "Muliple Integrations". I had thought the reason the Integration type said "Mulple Integrations" was because I ACCIDENTALLY set up the Cisco Call Manager 3.01 or Later Integration type: TAPI under BOTH Switch & IP Switch under System in the SA. You see, I believe I first set up the phone system information under "Switch" instead of "IP Switch". After getting the first Unity up & running, when I returned to double-check the switch settings later (when following the steps to setup a backup server), I realized I should have set up the call manager phone information under "IP Switch" - not "Switch" so at this point I entered the Call Manager information into IP switch even though the information was already in "Switch" & working. So now I think Unity thinks I have two Call Manager systems. I only have one Call Manager system. I want to remove the Call Manager information from "Switch" & keep the Call Manager information under "IP Switch". Is there any way to do this?
2. The only way to fix the problem where I can't click on the "Edit this Switch configuration" button is to redo the Primary unity demo box???
3. Exchange 5.5 & Unity were installed on both the primary & backup servers. Like I said, I followed the directions on how to build a backup server very carefully. Exchange was installed on the backup server in the same direcory path as on the primary Unity server. Except the backup server does not have the [backup server name] direcory under C:\exchsrver\res like the primary server has. So the backup server should have a direcoty named [backup server name] under C:\exchsrvr\res or not? According to the backup server directions it is supposed to have one but I want to make sure it should be there. If yes, why might it not be there?
4. OK, so I was correct to install the Av-CiscoTSP driver on the backup server too (you said so). But the directions do not mention it. Ok, you said it "needs to have the same port assignments as the primary server". So, if the primary server has a voice port named "ciscoUM1-VI1" listed under Telephony, then the backup server should have that same voice port named "ciscoUM1-VI1" listed under telephony, correct or no? Also, in the simple failover configuration with 2 demo boxes, does each server have its very own 2 licensed ports (2 ports on primary & 2 additional ports on backup server = 4 ports total) , or do both servers share the same 2 ports (=2 ports total shared between the two servers)??
Sorry for so many questions but I am almost there. I just need these questions answered & then my failover demo should be fully working.
Thank you in advance.
By default, the demo systems install as Multiple integration. This was done so that folks using the demo's can be either a PBX or a IP switch.
On your primary you seem to have two IP sitches setup. It is possible to clean this up, but it can take lot of time and registry manipulations. And if something goes wrong, you will need TAC. But TAC does not support demo systems. So best is to wipe the system clean and try again. This time install in the demo mode. When it comes up, install the TSP. You should be done and should not need to change anything.
To clean out the box, run the uninstall utility that is available from answermonkey.net
Your backup server needs to have the res\server directory. In Unity 2.4.6 we store the stream files containing the greetings etc in there. Is your backup server able to answer calls? Is yes, then it is getting the streams for somwhere. You might want to look for the *.stm files on your hard drives.
On a call manager integration, the extensions for the primary and the secondary server will all be in the same hunt group. The primary numbers will be addressed to first.
This is what I can advise you to do -
1) Recreate a brand new Primary and Secondary server.
2) Install the TSP on both the servers.
3) Independently verify that each server is able to answer calls and is able to work with Unity. You can try this with the default example subscriber on each box.
4) Then set them up for failover.
Yes I do seem to have two Call Manager switches set up. One under "Switch" & one under "IP Switch" in SA. So I should redo the primary & secondary boxes because trying to remove one of the switch would be messy & not supported. OK. I have been instaling the servers in demo mode all along.
I should clean out what "box" with "the uninstalll utility"? Do you mean run the Unity uninstall Utility to remove both Unitys from the existing exchange site? I hope that is not hard to do because I do not want to & can't reinstall the Existing exchange server I made.
My backup server does not have a res/server directory of it own. I even did a search for .stm files & came up with none for that machine. However, the backup server does have a res/primary server directory. But that is because I successfully replicated the res\primary server directory to the backup server. I know my backup server says there are no ports to configure & that no ports were available to answer(I couldn't set up any ports under the SA on the backup server - when I tried to enter a port range for the call manager on the backup server the port number would go back to zero no matter what port number range I tried to enter in its place).
So in a simple failover confuration, with Demo installs, am I dealing with 4 ports total (ports a & b on primary & ports c & d on backup) or just two ports total shared between the two servers (ports a & b shared)?
With the steps you advise to setup simple failover:
3. OK verify that each unity is able to answer calls & "able to work with "Unity?"?
4. Then set them up for failover? I thought you need to set up the backup server for "failover" during the Unity Installation program which would be part of, or right after, Step 1 (create new primary & secondary servers)?
Thank you for all your help Anil. I am almost done.
I know I can at least redo the priamry & backup servers again & get this far, only next time, without entering the Call manager in the Switch section twice.
Thanks in advance for your response.
The Unity Uninstall Utility will only Uninstall the Unity software. It leaves the Exchange setup alone. It does delete the Exchange properties for the mailboxes, but does nothing to the Exchange install. Make sure you read through the great help that accompanies the tool.
If the res directory is not showing on your secondary box, you have problems with the Exchange setup. Once you are all clean on the two servers and reinstall Unity, check to make sure that both the Unity's are answering calls.
I mistypes previously. Once you have installed both the Unity's make sure that they are working with the Call Manager.
When I said, set them up for failover, I meant do the things like the file replication etc. The secondary server is basically a fully functional Unity of its own. When you setup the TSP, you will have the extensions identified. You should be able to call into one of those extensions and hear Unity answer the call.
Ok Thanks Anil.
I am rebuilding both boxes right now. I am putting the secondary Unity box into the same Unity location as the primary.
Then I will install the TSP driver on both boxes. But the question I still need answered is: how many ports total do I have? I know the primary Unity should have port 1 (8000) & port 2 (8001). Does the backup box share that same port 1 & port 2 OR does the backup box just have a port 3 (8002) & port 4 (8003)?
The 2nd Unity box is ports 3 and 4 (there is no way to "share" ports on the CM like you can with analog PBXs by branching lines out). On the CM side it's just one big hunt group of lines that encompass both Unity servers.
Yes, this means if your system is overloaded with calls under normal conditions (i.e. a non fail-over situation) it is possible for the 2nd Unity box to field calls.
Unity Product Architect/Answer Monkey
http://www.AnswerMonkey.net (new page for Unity support tools and scripts)
I am trying to set up a primary & a backup unity server ("simple failover") using demo licensing.
My primary server has been set up with port 1 & port 2 designated in the TSP & the Call MAnager. This 1st server answers calls & everything.
I am finishing the backup server now. I have it added to the exchange site. I am about to install Unity. During the Unity install, I am going to select "join an existing Unity location for simple failover". Then once Unity is done installing, I will add ports 3 & 4 to call manager & then install the TSP driver with ports 3 & 4 to the backup server. Finally I will test the backup Unity server to make sure it can answer calls.
I think I got the simple failover working.
However, I made one mistake building the boxes, I made the Win NT Primary domain controller of my Cisco test rack the Primary Unity server. So when I went to test the failover, I realized I couldn't power off the Primary Unity server completely because it is the PDC. The Exchange server & the backup server need the PDC in order to run exchange & unity services. So all I can do to test my simple failover to the backup server is to stop all the Unity services on the Primary Unity server, right?
Congratulations. The enhanced failover that we are doing as a feature in Unity 3.1 should be a lot more painless. But it will be key dependent so you will not be able to test it with demo versions of the software.
Since you have the primary Unity as also your PDC, yes shutting down Unity would be a nice and easy way of testing failover.
By "shutting down Unity", you mean just Stopping Unity, right (stopping all the AV*.* services)?
Because I can't shut down the primary Unity because it is the Win NT Primary Domain controller.
The Res directory was showing on my backup Unity box but there was no [server name] folder under the Res direcotry. That was the problem. According to the directions on how to build a backup unity server, there SHOULD BE a folder there (under Res on backup server - they talk about it in the file replication steps in the readme file).