|
YOUR FEEDBACK
Did you read today's front page stories & breaking news?
SYS-CON.TV |
TOP LINKS YOU MUST CLICK ON Case Study BitLeap Offsite Backup
How open source software powers mission-critical backup services
Apr. 2, 2007 05:00 PM
Learning how to solve existing problems is one of the keys to developing a successful product. Learning when to turn to the open source community to facilitate innovation is another quality that more and more companies are beginning to realize. The BitLeap story provides a real-world example of how new companies can innovate with open source and thereby create something new and useful.
First of all, interacting in the open source community comes with responsibility. Of course there's the responsibility of abiding by open source license stipulations and publishing code patches and alterations. However, there's a more intrinsic responsibility - simply to share. Open source is about sharing code, of course, but also about sharing ideas, success, pride, and most importantly passion. This is our attempt to stick our heads out from behind our LCD panels for a moment and share all of those facets of our experience at BitLeap with a community we adore, and to demonstrate the power of open source in building the world's first remotely managed Linux-based network server, providing offsite data backup and recovery for SMBs and enterprise. At least we're pretty sure we were first. We failed the Business 101 best practice advice of first identifying a problem your business will solve. In fact, we came up with the solution first and then started thinking about what problem we could solve using it. The exciting challenge for BitLeap is remotely managing servers spread across unpredictable networks thousands of miles apart under someone else's control at a low cost. There is a long list of services that could be provided on this type of managed server platform. We choose data backup and recovery for business. This choice partly reflected our personal interest in tackling the challenge of developing an enterprise-grade data backup solution priced for SMBs. The choice was also motivated by the emerging market created by the salient rise in disaster recovery, offsite storage, and the risks associated with traditional removable media for data backup. Traditionally, data backups have been done to removable media devices like tapes, DVDs, and CDs. Linear backup approaches write down your entire data volume to one of these formats at specified intervals, usually once a day. Depending on the amount of data you're protecting, you might not be able to complete a full copy during a 24-hour period. Incremental backup techniques have helped get more granularity in the backup intervals but they have also increased the restoration hassle by requiring multiple tapes or devices to reconstruct the right data. The other problem is a lack of redundancy; if one tape of disk ever fails (and we know they can), you typically lose data. Advanced disk-based backup that included real-time offsite replication was available when we started out but the price was astronomical and the tools were mediocre. We were inspired to start creating a new kind of data backup solution for businesses. This new solution would let IT administrators and consultants set up automated backups at frequent intervals, which would intelligently capture new and changed data on their network. It would provide an almost immediate local disk-based backup and securely replicate all of their data to multiple offsite locations on redundant RAID-5 storage servers by efficiently using the client's precious Internet bandwidth. Data restores would be easy and fast either directly from the local backup device or from the remote backup locations. Furthermore, we decided all of it should be done at prices that would attract SMBs as well as larger businesses.
Examples of Open Source Integration This is where open source RDBMSes such as MySQL and PostgreSQL come to the plate. Both of these products differ in their feature sets, performance, scalability, and licensing. As a result, BitLeap makes use of both powerful products to store and retrieve hundreds of millions of records while being able to scale to a continually growing (we hope) customer base. To make these database solutions truly scale, we write all of our code on top of a highly abstracted layer that handles database clustering, partitioning, and failover. We learned early on that you can only push a single clustered database system so far and that partitioning the data up into more manageable slices as it grows is the only way to scale while keeping costs down. The challenge of remotely managing hordes of servers on distant networks without the luxury of being onsite, again led us back to open source. Without such a wide array of open source applications available, this task would be insurmountable. At the heart of this equation lies the extremely flexible and innovative Gentoo Linux distro. Gentoo's "do-it-yourself" approach provided an excellent framework to start with when rolling out BitLeap's remotely managed appliance servers (LeapServs) to customers. All of these servers are birthed with PXE boot and are automatically built for each customer using a managed installer. Once built, these units automatically keep themselves up-to-date using an automated, almost organic distribution system run out of BitLeap's own little Capcom. All of the configuration information about every customer server is, of course, stored in the sky to enable easy recovery and replacement if needed. The choice of programming language is especially important early in the development process since it dictates your target platform, scalability, and often the rate at which new features can be deployed. In the open source realm there are literally thousands of programming languages from which to choose. PHP came to our attention because of its increased mainstream acceptance over the past couple of years. We ultimately chose it because its straightforward syntax and flexibility allowed us to share our code base between our front-end Web applications and back-end applications. It's fairly safe to say that BitLeap doesn't use PHP the way most companies typically do; that being primarily for driving dynamic Web sites. In fact, PHP can do so much more than simply outputting HTML markup. Using software written in PHP, LeapServs make network connections to Windows, Netware, Mac OS X, or Unix servers. The LeapServ retrieves the data to be backed up and breaks it down into small chunks for differential analysis. From there, the data is transferred offsite using a custom network protocol that's entirely encrypted, binary-safe, and capable of load balancing, rate limiting, and failover. On the server side of the equation, our PHP-based daemons pre-fork their children and handle hundreds of incoming connections per second from customer LeapServs. We do use PHP to output traditional HTML markup as well since our Web site and customer control panel share the same code base. This ensures tighter integration between the front-end and back-end and reduces duplication. It's great to be able to rely on a high-level language like PHP for quick rollouts and tight collaboration. However, higher-level languages will never replace the performance optimizations achievable by using the lower languages like C or hand-tuning assembly code itself. Therefore, when the execution speed of a specific algorithm is critical to us, we rewrite the algorithm in optimized C with in-line assembly, and build it directly into the PHP source tree. This facility is simply not possible when using comparable closed source solutions
Real-World Impact One such customer example is Motivatit Seafoods out of Houma, Louisiana just south of New Orleans on the Gulf of Mexico. Motivatit is a family-owned business run by people involved in the seafood industry since 1770. They use a revolutionary automatic shucking process that kills bacteria and at the same time creates the highest-quality oyster product available. Motivatit owner Kevin Voisin says he realized it was time to revisit the company's backup strategy after witnessing the destruction caused by Hurricane Katrina. Mr. Voisin liked the ease of use and the fact that he had hardware he could carry with him away from a hurricane and simultaneously know it was being stored offsite. Motivatit currently uses backup technology from BitLeap to protect data from its Windows servers. It doesn't take a massive natural disaster to realize the benefits of having a solid, easy-to-use backup plan in place. Simple mistakes and hardware failures are at the root of most actual data losses, as was in the case when Motivatit recently lost its entire photo gallery data. This event gave Mr. Voisin a chance to see BitLeap's immediate restoration capabilities in action. According to him, "The recent restoration of our photo gallery happened so quickly it was hard to believe it had ever been lost." It's not always practical for an organization to use open source software due to limited internal IT resources and the need for solutions with dedicated customer support. However, companies that are using open source integration to innovate new products with vast features for lower cost are providing a way that all businesses can benefit indirectly from the vast resources available through the open source community.
Giving Back At BitLeap our need to make customizations to the PHP source tree or create open source code patches also provide us with a great opportunity to contribute back to the open source community. Submitting and publishing code modifications made to open source projects make the project itself stronger and can save time for other users with similar needs. The best contribution to the development and adoption of open source software is to create and maintain new projects that solve existing problems. BitLeap's developers are encouraged to explore new ideas of authoring their own projects. As mentioned earlier, one of BitLeap's founding partners created the Cacti open source project, which has grown in popularity with people trying to simplify the management of network devices through centralized RRDtool-based graphing. We're now using the success of that project as a model to release some of BitLeap's internal tools used to manage our company under a new open source project. Maybe someday that will get even more attention than the commercial products we create, who knows? That's the beauty of open source in general. It's an ever-evolving paradigm where not even the original project authors know exactly where a project will end up or what impact it may have on the world.
About BitLeap ENTERPRISE OPEN SOURCE MAGAZINE LATEST STORIES . . .
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
|
SYS-CON FEATURED WHITEPAPERS MOST READ THIS WEEK |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||