Re: [asterisk-users] Virtual machine timing (KVM)
FWIW, we recently moved a 1.4.29 Asterisk system onto a VMWare guest machine and with 40+ call legs (20+ calls), it isn't even breaking a sweat. We have had no complaints from users nor have we noticed any degradation in voice quality, be it live, voicemail or conference bridge (with six participants). The underlying hardware is an HP ProLiant DL360 G5 (Xeon 5160 3gz, 2 cores) with 20gb of memory and the VMWare version is ESXi 4. -Original Message- From: asterisk-users-boun...@lists.digium.com [mailto:asterisk-users-boun...@lists.digium.com] On Behalf Of Sean Brady Sent: Friday, February 19, 2010 12:37 PM To: Asterisk Users Mailing List - Non-Commercial Discussion Subject: Re: [asterisk-users] Virtual machine timing (KVM) To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? The 2.2.1 version of DAHDI using DAHDI dummy seems to be working adequately in a Xen environment on CentOS for me, although I haven't been using MeetMe. Have you run into issues with it specifically? Which version of DAHDI are you using? If there are some issues that you have found I would like to know... Thanks, Sean -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
On Sun, Feb 21, 2010 at 10:04 PM, Sean Brady sbr...@gtfservices.com wrote: I do get choppy audio when playing recordings occasionally. I haven’t had time to figure that one out, but I haven’t put it into production yet. You just said you're getting unexplained choppiness. You also just said you're not in production. I have been told repeatedly that Asterisk shouldn’t be virtualized, and that timing was an issue, however I have never been given a reason that I consider acceptable to preclude me from doing so. How about the fact you're getting unexplained choppiness before you're even in production? surrounding Asterisk virtualized. Perhaps I am just stubborn, but I am determined to run Asterisk virtualized in production with conferencing (be it meetme or confbridge) until it’s been proven without doubt that it just doesn’t work. What exactly would constitute 'proof without a doubt' that would satisfy you? If your virtualized webserver has to fight it out with other virts, and your webserver takes an extra second to process a web page, not such a big deal. If that's your audio conference that just had to spin for a second, you just lost words out of a sentence. If it happens during authentication, you dropped digits and the auth fails. If it happens during call setup, the call might not go through. If it happens during hangup, the hangup might get missed. UDP does NOT retransmit. Get it? Now do you understand why it's a bad idea? Timers are built on the premise that they have access to either a real timing device, or unobstructed access to a processor which clicks through a proc cycle at a pre-determined rate. Once you break those rules, don't be surprised when the timers stop working, and 'bad things' happen. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
David Backeberg wrote: Timers are built on the premise that they have access to either a real timing device, or unobstructed access to a processor which clicks through a proc cycle at a pre-determined rate. Once you break those rules, don't be surprised when the timers stop working, and 'bad things' happen. Forgive the possibly stupid question, but do these problems you describe apply equally to the dom0 as to any domU's in a xen system? I used to think not, but now I'm starting to realize that I'm probably mistaken... -- Jon-o Addleman - http://www.redowl.ca -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
On Mon, Feb 22, 2010 at 10:51 AM, Jonathan Addleman j...@redowl.ca wrote: David Backeberg wrote: Timers are built on the premise that they have access to either a real timing device, or unobstructed access to a processor which clicks through a proc cycle at a pre-determined rate. Once you break those rules, don't be surprised when the timers stop working, and 'bad things' happen. Forgive the possibly stupid question, but do these problems you describe apply equally to the dom0 as to any domU's in a xen system? I used to think not, but now I'm starting to realize that I'm probably mistaken... http://wiki.xensource.com/xenwiki/Scheduling It sounds like there are multiple ways to do scheduling in a Xen situation. The best way to avoid overloading the system is to deliberately underutilize the system, but then what's the point of virtualization? The supposed benefits of virtualization are power savings, and better utilization of existing resources. If you're using it for other reasons like a development environment, you'll probably be fine. To be clear, you may get away with virtualization and never run into any problems. But you have to know who to blame when you DO run into problems. Having problems of the sort uniquely caused by starving virtual kernels for resources is not going to be the fault of asterisk, but rather a failure to anticipate the downside of trying to use virtualization with asterisk. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
On Mon, Feb 22, 2010 at 11:06 AM, David Backeberg dbackeb...@gmail.comwrote: On Mon, Feb 22, 2010 at 10:51 AM, Jonathan Addleman j...@redowl.ca wrote: David Backeberg wrote: Timers are built on the premise that they have access to either a real timing device, or unobstructed access to a processor which clicks through a proc cycle at a pre-determined rate. Once you break those rules, don't be surprised when the timers stop working, and 'bad things' happen. Forgive the possibly stupid question, but do these problems you describe apply equally to the dom0 as to any domU's in a xen system? I used to think not, but now I'm starting to realize that I'm probably mistaken... http://wiki.xensource.com/xenwiki/Scheduling It sounds like there are multiple ways to do scheduling in a Xen situation. The best way to avoid overloading the system is to deliberately underutilize the system, but then what's the point of virtualization? The supposed benefits of virtualization are power savings, and better utilization of existing resources. If you're using it for other reasons like a development environment, you'll probably be fine. To be clear, you may get away with virtualization and never run into any problems. But you have to know who to blame when you DO run into problems. Having problems of the sort uniquely caused by starving virtual kernels for resources is not going to be the fault of asterisk, but rather a failure to anticipate the downside of trying to use virtualization with asterisk. -- There may be a way to use the Sangoma Voicetime USB timing device and map the Device to the VM. Its not possible in Citrix Xen but is possible in VMWare. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
I had a system running on Xen in test. I had terrible echo problems with a SPA3000. As a reference, I swapped to bare metal machine and although I still had echoing, the echoing was much closer to the original sound. The Xen server was idle apart from the AsteriskNOW installation. So, this lead me to believe that Xen was introducing some latency somewhere this could be due to bridging overheads or something... not necessarily due to processor starvation. I was really disappointed because it has taken away the whole viability of the project I was running with. I might get better luck with some better echo cancellation, but the latency introduced would still affect normal two way conversations. Running under Xen also had some interesting effects on DTMF tones, etc. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
Forgive the possibly stupid question, but do these problems you describe apply equally to the dom0 as to any domU's in a xen system? I used to think not, but now I'm starting to realize that I'm probably mistaken... Dom0 is still a virtual machine, so I would say so. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
Ian Murray wrote: Forgive the possibly stupid question, but do these problems you describe apply equally to the dom0 as to any domU's in a xen system? I used to think not, but now I'm starting to realize that I'm probably mistaken... Dom0 is still a virtual machine, so I would say so. Ok, thanks! Another stupid question that I probably know (or should know) the answer to: if all the other virtual machines are shut down, should the dom0 return to normal, or does simply having a xen-enabled kernel cause trouble? I imagine it's the actual sharing that's at fault, but who knows..? Thanks! -- Jon-o Addleman - http://www.redowl.ca -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
David Backeberg wrote: On Fri, Feb 19, 2010 at 11:42 AM, Mike A. Leonetti mleone...@evolutionce.com wrote: To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? You could always use ConfBridge(), starting in 1.6.2.*, which does not require DAHDI/Zaptel, and therefore doesn't require a timer. Let me be the first to tell you that using a virt for a conferencing solution, especially if you want people to actually use it, sounds like a 'Bad Idea'. You could oversubscribe the resources so you don't starve the virt, but we already have a name or that. It's called not using a virt in the first place. Well, when you're right you're right. If it's really that much of a bad idea I'll just put in for a real machine. Although virtualizing seems to be all the buzz lately so I was just wondering if I could consolidate hardware (or continue to consolidate hardware). Our internal Asterisk does currently run on KVM. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
Sean Brady wrote: To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? The 2.2.1 version of DAHDI using DAHDI dummy seems to be working adequately in a Xen environment on CentOS for me, although I haven't been using MeetMe. Have you run into issues with it specifically? Which version of DAHDI are you using? If there are some issues that you have found I would like to know... Thanks, Sean To be honest I haven't tried it with Asterisk version 1.4 or higher. I only tried it with 1.2 and when the DAHDI was called Zaptel. I have been a little afraid to upgrade to 1.6 from 1.2 just in case there are some incompatibilities in my config that'll bring down the phone system here at the office for a while. The issue that I had was that the even the calls were choppy. Not even specifically just the MeetMe ones. But that was on VirtualBox. I am using KVM now. I'm not sure if that matters. What is your timer frequency set to in the kernel btw? -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
On Sun, Feb 21, 2010 at 06:56:04AM -0500, Mike A. Leonetti wrote: Well, when you're right you're right. If it's really that much of a bad idea I'll just put in for a real machine. Although virtualizing seems to be all the buzz lately so I was just wondering if I could consolidate hardware (or continue to consolidate hardware). Our internal Asterisk does currently run on KVM. DAHDI 2.2.1 works nicely with both internal timing and host DAHDI hardware. At least on my laptop. -- Tzafrir Cohen icq#16849755 jabber:tzafrir.co...@xorcom.com +972-50-7952406 mailto:tzafrir.co...@xorcom.com http://www.xorcom.com iax:gu...@local.xorcom.com/tzafrir -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
Sean Brady wrote: To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? The 2.2.1 version of DAHDI using DAHDI dummy seems to be working adequately in a Xen environment on CentOS for me, although I haven't been using MeetMe. Have you run into issues with it specifically? Which version of DAHDI are you using? If there are some issues that you have found I would like to know... Thanks, Sean To be honest I haven't tried it with Asterisk version 1.4 or higher. I only tried it with 1.2 and when the DAHDI was called Zaptel. I have been a little afraid to upgrade to 1.6 from 1.2 just in case there are some incompatibilities in my config that'll bring down the phone system here at the office for a while. The issue that I had was that the even the calls were choppy. Not even specifically just the MeetMe ones. But that was on VirtualBox. I am using KVM now. I'm not sure if that matters. What is your timer frequency set to in the kernel btw? With DAHDI dummy in 2.2.1 you don't have to even do that, AFAIK. At least I didn't on my test box. I do get choppy audio when playing recordings occasionally. I haven't had time to figure that one out, but I haven't put it into production yet. I have been told repeatedly that Asterisk shouldn't be virtualized, and that timing was an issue, however I have never been given a reason that I consider acceptable to preclude me from doing so. I have also seen presentations talking about using Asterisk in Xen environments as well as Amazon's EC2 (also Xen). So there is some real contradictions and FUD surrounding Asterisk virtualized. Perhaps I am just stubborn, but I am determined to run Asterisk virtualized in production with conferencing (be it meetme or confbridge) until it's been proven without doubt that it just doesn't work. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
[asterisk-users] Virtual machine timing (KVM)
To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? Thanks. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
On Fri, Feb 19, 2010 at 11:42 AM, Mike A. Leonetti mleone...@evolutionce.com wrote: To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? You could always use ConfBridge(), starting in 1.6.2.*, which does not require DAHDI/Zaptel, and therefore doesn't require a timer. Let me be the first to tell you that using a virt for a conferencing solution, especially if you want people to actually use it, sounds like a 'Bad Idea'. You could oversubscribe the resources so you don't starve the virt, but we already have a name or that. It's called not using a virt in the first place. -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
David Backeberg wrote: You could always use ConfBridge(), starting in 1.6.2.*, which does not require DAHDI/Zaptel, and therefore doesn't require a timer. It *does* require a timer (all conferencing requires a timer), but it does not require a DAHDI/Zaptel timer, there are other options available. MeetMe not only requires a timer, the mixing itself is done in DAHDI/Zaptel, whereas ConfBridge does the mixing in the application. -- Kevin P. Fleming Digium, Inc. | Director of Software Technologies 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA skype: kpfleming | jabber: kpflem...@digium.com Check us out at www.digium.com www.asterisk.org -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users
Re: [asterisk-users] Virtual machine timing (KVM)
To get MeetMe working properly, I know some sort of timing device provided by the zaptel package is required (even if it means the zt_dummy). But, on a virtual machine I know that the Linux timing won't work as expected. Is it possible to then dedicate a physical device like a USB port or something to the virtual machine to use for the timing interrupts? The 2.2.1 version of DAHDI using DAHDI dummy seems to be working adequately in a Xen environment on CentOS for me, although I haven't been using MeetMe. Have you run into issues with it specifically? Which version of DAHDI are you using? If there are some issues that you have found I would like to know... Thanks, Sean -- _ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users