All good things (opensolaris) must come to an end

This past weekend I unsubscribed from my last opensolaris mailing list. While reflecting on where technology is heading, I had to take a few minutes to reflect on where things were just a few years back. I remember vividly the day that the website came online. After the announcement came out, I spent 24 straight hours signing up for mailing lists, reading documentation and reviewing the source code for a number of utilities. This had been all too easy with Linux, since all of the code and documentation was available in the public domain. But when the Solaris source came online, I felt like a 4-year old in a HUGE candy store.

Over the next few months I saw the community start to grow at a decent pace. The first opensolaris books (OpenSolaris Bible and Pro Opensolaris) were published, Solaris internals was updated to take Solaris 10 and opensolaris into account and every major trade magazine was writing something about opensolaris. Additionally, our local OpenSolaris users group was starting to grow in size, and I was beginning to make a number of good friends in the community. All of these things got me crazy excited about the opensolaris community, and I wanted to jump in and start helping out any way I could.

After pondering all of the things I wanted in opensolaris, I came up with a simple change that would allow me to get familiar with the development model. The change I proposed and coded up would allow dd to print the status of the copy operation if a SIGUSR1 signal was received. This feature was available on my FreeBSD and Linux boxes, so I wanted to see it on my Solaris hosts as well. I went through the hassle of filling out a form to submit code and then I sent my changes over to my sponsor. He replied stating that he would look things over and get back to me. That was the last time I heard from him and my follow up e-mail didn’t receive a response either.

I am not the type of person to pester someone to do something, so I didn’t sent another e-mail to request status. This of course let to my proposal dying a silent death. :( This was the first thing that led me to wonder if opensolaris would truly flourish, since all of the source code enhancements I had made to other projects were added back within days (and usually the authors were grateful). Since I knew contributing code was most likely not going to work, I decided to be active on the forums and propose changes that would better Solaris. This is when I started to get the impression that most of the design and development was happening behind closed doors, and not out in the open. Linux has prided itself on openness when it comes to design and development, so once again I started to question whether opensolaris would flourish.

So fast forward to the recent announcement by Oracle that opensolaris design and development would not be happening out in the open. In my opinion this never really occurred in the past, so I wasn’t one bit surprised by this announcement. They want to capitalize on the product (Solaris) they bought, and I can’t really fault them for that. Some people appear to have been caught off guard by this announcement, but the second Oracle bought Sun I figured open development would most likely stop. My only remaining question was what would happen to Solaris? Will Oracle eventually scrap it in favor of Linux? The cost to support two operating systems has to be relatively large, and I have to assume that there are some folks at Oracle who are evaluating this.

The Oracle announcement appears to have stirred some things up, and a number of new things came about as a result of it. The Illumos project was erected with it’s goal of making opensolaris development open. While this is a great idea in theory, I’m skeptical that the project can truly succeed without Sun/Oracle engineering. The amount of code in Opensolaris is rather large, and I have to assume that you would need an army of engineers to design, develop and QA everything to make it battle ready. I truly wish this project the best, and hope it gets the momentum it needs to succeed (Garrett D’Amore is a sharp dude, so the source is definitely in good hands!).

About a year ago I ditched Solaris in favor of Redhat Linux, which appears to be a growing trend amongst my SysAdmin friends. I like that Linux development is truly open, and the distributions I use (RHEL, CentOS and Fedora) provide the source code to the entire Operating System. The Linux distributions I use also have a large number of users, so getting answers to support or configuration issues is typically pretty easy to do. There is also the fact that the source is available, so I can support myself if no one happens to know why something is behaving a specific way.

This post wasn’t meant to diss Solaris, OpenSolaris or Illuminos. I was purely reflecting on the road I’ve traveled prior to embracing Linux and giving up hope in the opensolaris community. Hopefully one day Oracle will make all of the awesome Solaris features (DTrace, ZFS, Zones, Crossbow, FMA) available to the Linux community by slapping a GPLv2 license on the source code. I would love nothing more that to have all of the things I love about Linux merged with the things I love about Solaris. This would be a true panacea as far as Operating Systems go! :)

Keeping up to date with opensolaris developments

If you are like me, you like to keep up with the latest Solaris happenings. For the latest putbacks into opensolaris, you can check out the genunix putback page:

Genunix putback log

To keep up with new ARC case submissions, you can keep an eye on the PSARC page:

PSARC page

If you would prefer to get e-mail notifications for putbacks and new PSARC cases, you can sign up on the opensolaris mailing list page.

A completely (local) diskless datacenter with iSCSI

Being able to boot a machine from SAN isn’t exactly a new concept.  Instead of having local hard drives in thousands of machines, each machine logs into the fabric and boots the O/S from a LUN exported via fiber on the SAN.  This requires a little bit of configuration on the Fiber HBA, but it has the advantage of no longer dealing with local disk failure.

In OpenSolaris Navada build 104 on x86 platforms, iSCSI boot was incorporated.

If you have a capable NIC, you can achieve the same results of “boot from SAN” as fiber, but without the additional costs of an expensive fiber SAN network.  Think of the possibilities here —

Implement a new AmberRoad Sun Storage 7000 series NAS device like the 7410 exporting hundreds iSCSI targets for each of your machines, implement ZFS Volumes on the backend, and leverage the capability of ZFS snapshots, clones, etc with your iSCSI root file system volumes for your machines.  Even if your “client” machine mounts a UFS root filesystem over iSCSI, the backend would be a ZFS volume.
Want to provision 1000 machines in a day?  Build one box, ZFS snapshot/clone the volume, and create 1000 iSCSI targets.  Now the only work comes in configuring the OpenSolaris iSNS server with initiator/target parings.   Instant O/S provisioning from a centrally managed location.

Implement two Sun Storage 7410 with clustering, and now you have a HA solution to all O/Ses running in your datacenter.

This is some pretty cool technology.  Now, you have only one machine to replace disk failures at, instead of thousands, at a fraction of the cost it would take to implement this on Fabric!  Once this technology works out the kinks and becomes stable, this could be the future of server provisioning and management.

OpenSolaris IPS repository offerings growing

I’m really glad to see the OpenSolaris IPS repositories growing with the amount of available packages.  Large network repositories of thousands of software packages make Fedora and Ubuntu the great, easy to use Linux distributions that they are.  Extending the amount of packages available to OpenSolaris just builds upon this usability!

A graph explaining the IPS repository structure, the forum post showing how to enable the pending repository, and a complete list of the 1708 pending IPS repository packages can be found here.

The OpenSolaris community really needs people to assist in finding / submitting any found bugs within these packages.  If you were looking for a way to assist the OpenSolaris community, here’s your chance!

Sun tech days recap

This week I was fortunate to attend Sun tech days. I had a great time attending the technical sessions, and discussing a wide variety of technology topics with other admins and Java developers. Some of the highlights from tech days included a 4-hour training session on web 2.0 technologies (AJAX, REST, CSS, MAKI, etc.), a session on the AMD Opteron processor, an interesting talk on new features in Netbeans 6, and a thought provoking session on using the Netbeans profiling tools to gain greater visibility into how Java applications are using memory and CPU resources (I came out of this session with a number of new ideas on how to profile applications, which I will share with others once I have working code). I was also able to attend a Q&A with James Gosling, but was disappointed that the presenter didn’t ask some of the questions I had submitted.

But my favorite part of tech days had to be the opensolaris users group meeting, which included a presentation by Ian Murdock. Ian is a recent addition to the opensolaris community, and his thoughts on how to make Solaris and opensolaris more accessible to the common user are spot on! Ian has a bumpy road ahead of him to achieve his vision, and to get the opensolaris community to work together towards a common goal. Hopefully people will take the time to listen to Ian before judging him. Not only does he have the virtues (e.g., proven leadership, good listener, open minded, etc.) required to lead the monumental task of restructuring the opensolaris community for the better, but he has a number of awesome ideas for expanding it and making it more accessible to folks who have written off opensolaris. Welcome to the opensolaris community Ian!

Jumpstarting VMWare fusion clients

I updated my jumpstart server last weekend, and wanted to test out the new bits I added. All of the systems I use for testing were tied up, so I decided to jumpstart a VMWare fusion client. By default, VMWare fusion will create and present an Intel pro series adapter to the guest. There appears to be a bug in VMWare fusion that slows PXE booting on clients that use this adapter to a craaaaawl. For a reason yet undetermined, switching to the vlance driver seems to work around whatever issue is present in VMWare fusion. To switch drivers, you can edit your guest’s VMX file and replace the existing Ethernet adapter settings with the following:

ethernet0 = “vlance”

After the adapter setting is updated, things should be significantly faster (at least they were for me!).