Phase 3: Smaller Yet
After a year of running Astlinux on the VIA box I decided that I was due for a project. I knew that I didn’t need any PCI slots as I was no longer using physical interfaces to bring in analog lines. There would be no PCI slots required in the new host platform.
I had been so happy with m0n0wall running on the Soekris Net4501 that I decided to try Astlinux running on the slightly faster Soekris Net4801. In theory that would free up the VIA box to be upgraded and re-tasked as a file server for music.
It’s worth noting that Digium didn’t launch their Asterisk Appliance Developers Kit until September of 2006, and their Asterisk Appliance itself in early 2007. Astlinux-on-Soekris hardware was an idea that was truly out in front of the trend.
The Soekris Net4801 was a good platform for running Astlinux. However, there was a limit to how much I could use G.729. The 266 MHz Geode CPU could only handle two simultaneous channels of transcoding. This was perhaps not ideal, but it turned out that it wasn’t a big problem.
Not long after we put the Net4801 system into service we were able to get an upgrade to our DSL service. We went from 1.5M x 768k to 2.2M x 1.0M. This improvement reduced the need for using the G.729 codec, which made using Astlinux on the Net4801 even more practical.
I had finally achieved my Asterisk nirvana. Our local Asterisk server was dead silent, cool running and drew only 15 watts. It booted from a CF card and stored configs & VM to a USB key. It went from off to fully functional in under 90 seconds, with no user intervention. It was nearly perfect.
Phase 4: Small…But Faster!
One of the problems of being someone who likes to tinker is that I tend to be restless. Just as I complete a project I am already considering ways that I could improve it if I were to do it again. So it was that when someone gifted me a box of HP T5700 series thin clients that were due to be recycled I saw an opportunity to rework the Astlinux server, yet again.
I received a box eight identical HP T5700s from a friend who was an IT manager for a local company. They were actually about to pay Dell to recycle these little goodies. In saving the devices from that fate I spared the company that expense.
One of the projects for the T5700s was a music server, which I documented here. But before I undertook that project I first used one as the basis of an Astlinux system.
The Net4801 and the T5700s are similar in many respects. However, the T5700 has a 1 GHz Transmeta CPU, giving it enough grunt to perform transcoding or run a heavier Asterisk distribution, like Ward Mundy’s PBX-In-A-Flash.
They also had the advantage of having a traditional VGA port and on-board audio should I decide I need to use chan_console. They also have an array of standard ports including 4 x USB, serial and parallel.
The T5700s normally boot from a flash “Disk-On-Module” (aka DOM.) I elected to make minimal changes to the one that would host Astlinux. I removed the DOM and built a USB key with an Astlinux image. Then I set the T5700 BIOS to boot from USB devices first. Thus my Astlinux server booted from a USB key.
The T5700 was an improvement over the Net4801 only in that it was more convenient. I could perform admin functions with a keyboard and monitor directly connected. It had more CPU power, but I doubt that I ever truly need that. It draws about 12 watts of power, is completely fanless…but so was the Net4801.
So in my time using Asterisk I made use of four different D.I.Y. servers. From a re-purposed tower I refined my host platform based upon my needs and the evolution of my personal definition of an “Asterisk appliance.”
The trend was “green” as it constantly moved in the direction of using less power and operating cooler, so requiring less use of air conditioning. It was also about reliability in that systems without spinning disks or fans are inherently less likely to fail.
Here’s a synopsis of my personal definition of appliance:
- Physically small
- Low power consumption (<15 watts)
- Low heat output
- Boots to a fully functional state on application of power with no user intervention
By the summer of 2008 I had decided to abandon the use of a local PBX, instead favoring a hosted PBX service. The reasons for this are many, but the biggest one being the ability to rely upon someone else to administer the system in my absence. Shortly after I made that decision for myself my employer decided to follow the same path, using the same provider, and putting me in charge…so I’m back on the hook again…at least in a small way.
While this might seem like the end of this tale, it’s actually the beginning. I’ve been intending to take a look at the current landscape of Asterisk Appliances, including some DIY approaches that I’ve recently seen. Understanding what I value in an “appliance” is critical to appreciating any comments that I might offer on those other approaches.
This post has laid the foundation for whatever comes next.