· Home of “Community Software for Solaris” ( CSW ) |
|||||
|
|
Blastwave - The Free & Open Software Service for Solaris Users
Some HistoryMy name is Dennis Clarke and this is the story of how Blastwave sprang into existence. If you bear with me you will see where your money goes if you choose to contribute.A lot of people love the Solaris Operating System because it allows their critical business processes to run forever. That equates to a good night sleep. Few things in this world are better than a business process that keeps running and you don't need to worry about insignificant details like disk failures or power supplies failing because these days Solaris 10 is so rock solid. Like a lot of people I wanted my favorite “freeware” or “shareware” to run on it also. Not just for games either. Even by the late 90's there were large repositories of free software out there for UNIX people. The trick was getting it to run on your system hardware such that all those dependencies and layers of code worked together neatly. I have wasted long nights building software binaries that all seemed to need different versions of this code or that code. It seemed as if there were no unified approach. Worse was the fact that a lot of Solaris users were doing this, by themselves, wasting endless hours trying to get Apache and MySQL built on Solaris 2.5.1 for x86 on some Compaq Proliant 6000 or Solaris 2.5.1 on a Sparc 1000E server or Solaris 7 on an E10000 or Solaris 8 on a Sun Ultra 1 170E. We needed to use the Sun Workbench tools or Forte 6 Update 2 compiler tools which were not cheap at all. All these Solaris users were working alone. When they did have a nice clean build running they had to repeat the process all over again on some other server that was slightly different. Something was needed to make life easier. BlastwaveAfter years of talking with various people I was contacted through the Solaris Community grapevine by Philip Brown. We both agreed that something needed to be done. We had various thoughts about how to create a community project that would help Solaris users and Phil had the brilliant idea to model something after the Debian project. I thought this was a great idea and a good way to start. We would take freely available software source code and build a software stack that is also freely available. The project must be community based in that anyone could join and become involved in the project. We would provide free infrastructure and all tools. The vision and the dream was that Solaris users would work together to help other Solaris users. The software would be made available for free. Free means free. It will cost nothing to get it and nothing to use it and you could freely redistribute the software packages. Another key concept is that all our software would be built according to standards and delivered to the Solaris world with a new tool modeled after the Debian project apt-get.In October of 2002 we started with something real. A Sun Ultra 1 170E workstation was acquired and I installed Solaris 8 on it. After all the basic patches were done I called upon my friend Rich Teer to setup email services while I ran off to get an IBM Netfinity 5000 server for Solaris on x86. Phil Brown was busy installing the Forte 6 Update 2 compilers and then began to build the first community software ( CSW ) packages for immediate release. On the 26th of October 2002 we went live with the blastwave.org website. By the end of that month we had 219 hits to the site. Mostly from ourselves looking at it. ![]() The original Sun Ultra 1 170E blastwave.org server ![]() Blastwave.org Website has 219 Hits October 2002 Growth and More GrowthThe project website went live on the 26th of October and we had our first member join the very next day. Cyril Plisko joined on the 27th of October 2002 and has never left. We all poured in long hours working on the site and the software. It was not long before word got around. People discovered that they could join this project. They discovered that they could install the software easily. Regardless of how complex the dependency tree. A simple “pkg-get install apache” would download the packages in SVR4 pkg format, uncompress the packages, install it as well as every dependency that one needed to be up and running. Often times the software would even be started for you. The Blastwave build of the Apache web server has always been a favorite for this reason. By February of 2003 we had 124 software packages and 26,000 hits to the web site that month. Growth in membership, software stack size and popularity continued non-stop and by January of 2004 we crossed the 100,000 hits per month barrier. There were some 8400 unique users resulting in 1GB of software downloaded daily. I switched the site to a full T1 of bandwidth and then watched as we saturated it.We needed to expand our operations to dedicated build servers into what we call the “stack”. The Blastwave build stack needed centralized storage and backup as well as client servers that were for software package builds exclusively. Because we have our own build infrastructure we know what the patch revision level is as well as the state of the builds produced. We also enable the community member to drift from build server to build server with a common NFS shared workarea as well as a distinct home directory on every server. The web server needed to be upgraded and our central NFS server was a running joke for a long while : ![]() The Old Blastwave NFS server The picture of medusa ( above ) shows you that I used a SCSI controller for each disk and that ensured us that we had both speed as well as redundency. It was pitiful really. Blastwave was a pile of computers all over a folding table with central NFS being served by a ten year old Sun Ultra 2. I then bought a collection of Sun Netra T1 servers as well as SCSI controller option cards for them. Over time I also acquired Sun Netra D130 SCSI Array enclosures and managed to build a very nice new NFS server with six 72GB SCSI disks striped and mirrored across controllers and D130 arrays. In order to address the need for dedicated Solaris 10 build servers I acquired an IBM e325 dual Opteron server, an Appro dual Opteron server, a Sun V210 server with dual 1GHz UltraSparc processors as well as a Sun 280R with dual 900MHz procs. As you can imagine we really needed a real rack for all this gear : ![]() Power failures and power problems in general were wrecking havok with our stability so I also went and purchased large APC UPS units with extended runtime battery packs. If you look closely at the load LEDs below you will see we are at 90% on one unit and 60% on the other : ![]() Dual APC 3000VA UPS with Extended Runtime Battery Packs Those rack pictures are about five months old or more. The entire Blastwave build stack now includes multiple websites and fills a 42U rack from top to bottom plus some networking equipment on the roof of the rack. We use a 10Mbps ethernet speed connection to the internet. Now here comes the part that is really amazing. Please take a look at the following graphs : ![]() Blastwave Website Total Hits" > ![]() Blastwave Website Unique Visits" > We are past the one million hits a month stage. This is one web site only and does not measure the Blastwave Subversion Repository or the Polaris Project sites. The last item that really reveals the true nature of the Blastwave project is the amount of software being downloaded from our forty two mirror sites. Here then are some summary numbers from no more than eight mirrors : ![]() Blastwave Software Downloads - x86 or AMD64 ![]() Blastwave Software Downloads - Sparc We would be quite safe to state that Blastwave provides 1.5 million software package downloads per month worldwide. In actual fact we are being conservative in that number. The growth in adoption of Solaris 10 across both Sparc and x86 architectures is having a profound effect on Blastwave. We can easily extract software usage trends based on architecture and Solaris revision. Such data would reveal the steady adoption of Solaris 10 as well as the foundation of Solaris 8 based Sparc servers. Such analysis is beyond the scope of what I wanted to discuss today. It would be quite safe to say that Blastwave has been successful in creating a community based software service that creates and freely distributes software for Solaris™ users worldwide. The objectives of the Blastwave Project are the very same that they were in 2002. We shamelessly built this project with the Debian project in mind. The Debian Social Contract, as drafted by Bruce Perens and the Debian developers is a fine example to follow. For the sake of clarity I will enumerate key guidelines :
The list is not yet complete nor fully detailed. The Blastwave project is no longer a startup operation nor in its infancy. Therefore we will document, discuss and ratify our guidelines for operation in the near future. The primary objective of this project was to provide an open community based service to the Solaris Community. Clearly we have succeeded. Free Software is Free. Growth Costs MoneyFree software must remain freely available to whomever wants it or needs it. By the very definition of “free” it must not have a price. Free software has its greatest value because anyone anywhere can download it, use it, redistribute it and gain benefit from it. If we were to put a price on these software packages then we would destroy the real value in them; their freedom! It has been my intent and vision from day zero to always ensure that any Solaris user on either x86 or Sparc would have access to this software regardless if they are inside a multi-billion dollar corporation or in their basement with used hardware bought from eBay. Freedom means more than just “no costs attached” Freedom means anyone can join in. Free software is not ever to be blemished with a cost that would pervert or destroy its real value.The primary problem is that all this infrastructure and growth costs money. Lots of it. The monthly fee for both the 10 Mbps connection and power is roughly $1200 a month. The hardware costs are quite real and they are above and beyond the monthly fixed costs. Bandwidth abuse or spikes in usage will drive costs upwards past contractually agreed limits. We all agree that free software should be free. But someone has to pay the costs for the infrastructure. The graphs above show a community of many thousands of users. Some of those users are actually sysadmins inside billion dollar corporations. Some are people in their basement with piles of used hardware. If just 1% of the entire user base, just one person in one hundred, were to donate $50, or a company donates $500 or $1000 then we will be here doing this great service for everyone. Please know that any contribution is welcome and your name will be added to the sponsors page. Forever. A special word to Sun authorized partners and resellers; good advertising rates are available and your message will not only be seen by forty thousand sysadms a month but you will be recognized as a supporter of this open source community project. Support this project if you can. Thank you. Dennis Clarke Director Blastwave.org |
|||||||