Well, I am on the road today, headed off to New Zealand to teach an IPA Design and Implementation class. I just looked at the schedule, and realized that I have a blog article due…
This one won’t have a lot of fancy graphics, since I don’t have access to any servers from LAX Airport. Instead, I would like to share a little bit of our (particularly my) experience creating the lab environment for Interactions 2011 a couple of weeks ago in Indianapolis.
First, the obligatory disclaimer – some of the things we do in a lab or training environment are not supported in production (such as running IC 3.0 in a VM on a Hyper-V host). However, they work very well for small development or training environments.
First I should describe the setup. I think I was a little too ambitious, because it took a lot more time to set up than I anticipated, and I was still licensing and configuring machines on into the first day of labs. In the past we have had one central IC server for all the labs, and 10 lab stations running client-side applications. This year we had a much larger room, so I decided to set up 16 lab stations instead of 10. Also, I really wanted everyone to be able to fully experience IC 3.0 and 4.0 without having to worry about breaking someone else’s lab, so…I created one IC 3.0 server, one 3.0 workstation, one IC 4.0 server, one 4.0 workstation, and one 4.0 MediaServer for each lab station (yes, 5 machines per lab station). The 16 laptops were just running Windows 7 with desktop shortcuts to run remote Desktop sessions to the workstation systems. Everything except the laptops was virtualized using Hyper-V. In addition to the lab machines, I also ran Exchange 2010, IC Sip Proxy 4.0, a SIP Bulk Caller, a central IIS web server, an extra IC 3.0 server for the Web Portal lab, and my Domain Controller/DHCP/DNS server on one of the Hyper-V hosts. (If anyone is counting, I had over 80 VMs).
To host the VMs I built out our new Mobile Classroom rack with two HP DL-380 servers. One is a G6 with dual quad-core Xeon processors (16 cores total with Hyper-Threading), 64 GB of RAM, and 1.8 TB or so of hard disk. The other is a G7 with dual hex-core Xeons (24 cores), 96 GB of RAM, and 3 TB of disk space. Both run Windows 2008 R2 SP1. I assigned each IC server 2GB of memory, 45 GB static disk space, and two virtual Xeon processors. The MediaServer VMs, SIP Proxy, and workstation VMs only had one virtual processor and 1 GB of RAM. I was able to create templates in Microsoft SCVMM and then use the SCVMM PowerShell to script creation of multiple machines, which was a big help, but I still had to do a lot of configuration on each server to get it running properly. generating licenses was no fun.
Once I had all of the machines configured and running, the labs went pretty well. I couldn’t get phones to register or calls to work on the IC 4.0 servers for the first lab (my apologies to Matt Taylor and all those who wanted to play with Interaction Analyzer). After a lot of head scratching and asking developers for help, I finally remembered that I had never trusted the MediaServer certificates on the IC servers. IC 4.0 can’t provision phones, place calls, or do anything call-related without a MediaServer, since we got rid of HMP. Once I trusted the certificates, things were much better! I still had issues off and on with several of the 4.0 servers, but it is pre-release code after all…and I was able to figure out most of the issues.
As far as performance, I don’t think the host servers broke much of a sweat. It’s hard to gather Performance Monitor statistics when running VMs in Hyper-V, so I don’t have any actual numbers, but even when the SIP Bulk Caller was running on the network we did not experience any choppy audio or slowdown on the lab workstation VMs. Folks who had experienced labs at past conferences expressed appreciation at having individual servers, and some people commented on how quiet the mobile rack was this year in comparison to the days of running seven or eight servers plus gateways.
All in all, I am pleased with the result. Now I just have to tweak the setup a bit, straighten out some of the IP Address reservations in DHCP, and we’ll be all set with a much more efficient, quiet, and flexible Mobile Classroom environment.
Remember – this is NOT a supported production environment, but works well in a small (we only have three phones per student) development environment.
As I mentioned at the start, I’m off to New Zealand…with our Mini-Mobile classroom, which has four Mac minis running Windows 2008 R2 hosting the VMs, a wireless access point and wireless bridges for each student station, so we can run the training environment with minimal hard wiring…ask me later about that setup.
Master Training Consultant