Running a “datacenter”

It has been way too long since my last post.

In my spare time, along with two other partners, I run a virtualization datacenter in a collocation facility. In addition to generating income, it also serves as an excellent test lab for open source products. It is my conviction that the small business market can seriously benefit from open source applications.

Pfsense, for example, will match up to any mid-level commercial router/firewall for a fraction of the cost (hardware needed to run pf). Virtualization further reduces this expense. Much of the current server hardware in use today will run VMware ESXi (not open source, but no charge). VMware estimates that most desktop and server hardware is only in use 5-15% of the time. Server virtulization reduces physical storage space, cooling requirements, energy consumption, all part of total cost of ownership. VMware certainly is not the only server virtualization host available. Check out offerings from MS, Citrix or Ubuntu. There are others as well.

Note: yes, ESXi is 100% $FREE. There is no requirement to purchase support.

For data storage, we have successfully proven (many times over) that linux (Ubuntu server) NFS is a solid, valid option for shared storage. Production MS Windows and *nix-based virtual machines run flawlessly. MS Windows Server 2008 (all versions) runs particularly well in a virtual environment.

Note: MS Enterprise license allows four instances of server to be installed on a virtual host. Further reduction of expense.

Virtualization is also excellent as a test platform. Windows or *nix servers and desktops can be spun up very rapidly on a single host. I will frequently load a server to install an application evaluation. There is no fear of corrupting existing production servers. If I choose not to use the app, I simply delete the vm and resources are recovered.

I am also successfully using an open source VoIP PBX. Various distributions based on asterisk are very strong and offer all of the common phone system features found in key systems and even pbx.

Today’s take-away: check out virtualization. Check out open source. The benefits will  be clear. The savings will be immediate.

HowTo: Reset a Cisco IP Phone to Factory Defaults

Recently a client asked me to lend them a hand with a Cisco IP Phone 7940 that was haning during the boot process.

After some quick research online, I determined that a reset on the device was needed, and the process is really simple.

Begin by unplugging the phone and then reconnecting the power. As soon as the headset key illuminates you need to press and hold the # key. After a few seconds you should see Reset sequence detected. Once that is displayed you have 60 seconds to enter in the following key sequence: 123456789*0#. You will be asked whether to keep the network config or not, press 2 and you should see: Factory reset initiated. You can watch process from beginning to end here.


Using Whaleback Crystal Blue VoIP in Linux

The company that I work for recently ditched its traditional PBX system in favor of a new VoIP service. Our VoIP system is provided and managed by Whaleback Systems. They provide a unique approach to VoIP in the sense that it isn’t an on-premise system or a standard hosted system. Their system is a hybrid of an on-premise and hosted solution, which they state is superior to other VoIP systems because they are able to get the best of both worlds. Either way, this isn’t a Whaleback review, the information provided above is merely a quick attempt to describe the type of system used.

Whaleback offers two types of endpoints to make calls with, a physical phone and a softphone. The current Whaleback softphone is provided by Counter Path. They provide a Windows and Mac OS X versions of their application. That seems decent enough of them. but what if you want to make calls from your Linux box?

Although there are probably countless softphones available for Linux, the default one in the distributions that I prefer include Ekiga. I have used Ekiga for PC to PC calls and found it rather useful. However, I need to make calls to business clients and they need to think that I am calling from my office. Regardless of OS or softphone used, calls placed from a softphone registered with a Whaleback voice server always originate from the physical location or number of the site that the server is located at.

Important Note: Although they are a great group of people, and a few of them use Linux, they do not officially support any softphone other than the ones that they provide. That being said, Whaleback is somewhat unique in that they do not offer a generic softphone download that you can install and configure. All of their softphones come to the user pre-configured with that user’s password, extension, and other information. This is the tricky bit, where do you get the information needed to plug into Ekiga? Answer: You call them and let them know that you are configuring a Linux softphone. Be sure to let them know that you aren’t expecting formal support of any kind. As with most things in life, if you are a polite human, they may help you out. You will need the following information, or at least the parts that you don’t know already: The external IP address that other softphones use to connect to your voice server, the internal IP of your voice server, your extension, and your password. They may be hesitant to give up your password or they may not give it to you at all. This depends on your demeanor and how their day is going.

Now that you have that information, make sure you have Ekiga installed and that you have gone through the configuration wizard. Generally, I accept all of the defaults that are presented to me, although I opt out of the free Ekiga service. Once that is complete, go to Edit -> Accounts. Click on add and enter a friendly name like Whaleback or WB. Your protocol must be set to SIP, not H323. Enter the internal IP address of your voice server into the Registrar field. Enter your extension into the User field and your password into the Password field. Review your settings and then click OK. Close the Accounts windows and go to Edit -> Preferences. Under Protocols -> SIP Settings, enter the external IP address of your voice server in the Outbound Proxy field. Assuming that you have followed these steps and have the right information, you should now be able to make calls.

Important Note: Although this might seem obvious, you must dial calls the same way that you do from a physical phone. In other words, if you have to dial 9 to get an outside line from your desk phone, you must do the same thing on the softphone.

I use this setup frequently from my Dell Mini 9 and my Dell Latitude D630 and love it. Because I am always on the move, my connectivity is typically the nearest open or recently opened ( XD ) WiFi hotspot around. For obvious reasons, WiFi is not ideal for voice as most access points use best effort for packet management. At home I have QoS on my wireless access points so this is much less of an issue. Regardless of the internet connectivity that you have available, you can improve or decrease quality as needed. To do this you simply go to Edit -> Preferences and go to Codecs -> Audio Codecs. You can select and deselect codecs as your needs require. Also note that you can move the codecs up and down in priority. Although all codecs may not be supported by your Whaleback voice server, Ekiga will negotiate the best available codec upon connection/registration.

This setup is so much more convenient than my last one. Happy dialing…