OpenSolaris Elections: Go Vote!

11 Mar '10 - 21:41 by benr

It's that time, make sure you don't forget to Vote in the OpenSolaris annual elections. You'll notice that I'm not going to comment on the issue of the constitution this year, but I do ask for you to consider Octave Orgeron, Joerg Schilling, Peter Tribble, Moinak Ghosh, and all the community guys for OGB. There is a great list of folks on the ballot, including also John Plocher and Dennis Clarke who are fantastic enthusiastic folks.

Frustration

21:05 by benr
root@quatro src$ uname -a
SunOS quatro 5.11 snv_133 i86pc i386 i86pc Solaris

root@quatro src$ pkg search gcc
Segmentation Fault (core dumped)
root@quatro src$ exit
exit
benr@quatro src$ pkg search gcc
Segmentation Fault
benr@quatro src$ pfexec pkg search gcc
INDEX           ACTION   VALUE               PACKAGE
description     set      GCC                 pkg:/SUNWgccruntime@3.4.3-0.97
description     set      GCC                 pkg:/developer/gcc/gcc-libgfortran@4.3.3-0.133
description     set      GCC                 pkg:/developer/gcc/gcc-libssp@4.3.3-0.133
description     set      GCC                 pkg:/developer/gcc/gcc-libgcc@4.3.3-0.133

Why does IPS still suck? Seriously, we can't catch errors before segfaulting? And people wonder why I claim that IPS and AI are so immature. I just can't wait for Oracle to cram this down my throat.

I want SX:CE back. Anybody in MPK17 listening!?!? Stop telling customers they are stupid for using post-install scripts, stop pontificating about how you know better. ZFS made claims to rightness and proved itself. IPS has yet to convince me.... its had years, and still has yet.

Update:

I'm getting email from folks asking about the underlying problem here. The issue is that Python freaks if you have alternate version installed an in your LD_LIBRARY_PATH or PYTHONPATH.

root@quatro ~$ pkg search virsh
Segmentation Fault (core dumped)
root@quatro ~$ unset PYTHONPATH
root@quatro ~$ pkg search virsh
Segmentation Fault (core dumped)
root@quatro ~$ unset LD_LIBRARY_PATH
root@quatro ~$ pkg search virsh
INDEX      ACTION   VALUE               PACKAGE
basename   file     usr/bin/amd64/virsh pkg:/SUNWlibvirt@0.5.11-0.128
basename   file     usr/bin/i86/virsh   pkg:/SUNWlibvirt@0.5.11-0.128

But that's not the point I'm making... the point is that there isn't a wrapper to catch these types of issues. IPS is a critical system utility and shouldn't be derailed by something so simple. Its just immaturity.

FAST 2010 Proceedings Available

06 Mar '10 - 22:28 by benr

I've missed FAST 2010 yet again.... but, good news! The complete FAST 2010 Proceedings (PDF) are available for free. USENIX members can also view the presentation videos online.

SysAdmin's Get It Done

22 Feb '10 - 18:46 by benr

I'm not a huge fan of XKCD, but this is classic:

BTW, if you don't play Call of Duty: Modern Warfare (1 or 2), you should start. Amazing game. Props to my fellow snipers.

Phoronix on "The Five Stages of Benchmark Loss"

08:31 by benr

Phoronix has quickly risen as my favorite review site (along with Anandtech). They focus more on the *NIX world than other sites and have set the bar for a benchmark review site. In particular thanks to the Phoronix Test Suite, a venerable suite of benchmarks beautifully weaved together. Did I mention they like OpenSolaris? That helps too. :)

They recently uploaded a presentation by site founder Michael Larabel entitled: The Five Stages of Benchmark Loss. In it Michael shares his collected experiences on how people react when they dislike benchmark results. As he says, when someone comes out the winner in a benchmark they naturally exclaim, "Of course, we're awesome, thanks." but if they loose all kinds of pain results, which he lays out into 5 stages.

    The five stages are:
  1. Shock
  2. Denial
  3. Discreditation
  4. Analysis
  5. Acceptance

This is, imho, a must listen to recording. It's audio only, the quality is horrible, but get some headphones and battle through. It's absolutely worth it.


This is particularly interesting to me because it strikes at the heart of one of my greatest irritations with the geek world; that is, a total dismissal of benchmarking. Its paradoxical really, as computer scientists we should be preforming experiments with measurable results, analyzing data, using and constructing new tools, etc. But, any time a benchmark result is posted so many dipshits simply exclaim "bullshit, your an idiot" that it makes people incredibly gun shy.

I believe the result is the world of horrible benchmarking tools we have (particularly in the UNIX world) and almost no information on how to effectively benchmark systems and storage. If only we would help each other out by leaving Michael's Stages 2 & 3, "Denial" and "Discreditation" and instead move directly to Stage 4, "Analysis", the world would be a much better, kinder, and more informed place.

For instance, "bonnie++" is said to suck. But how many people can tell you why? "iozone" is said to be great. Again, how many people can tell you why? At some point, most particularly in this area, FUD is ingested and regurgitated on folks just trying to learn something, who in turn become bitter and pass on the pain to a whole new generation.

It is, I believe, the single best example of cynical bitterness and stupidity that rages our industry. To be sure it's part of a larger issue, wherein geeks famously trash this technology or that (consider opinions against Java as another example) which are based in outdated or incomplete information or understanding. It only serves to discourage folks and keep the viral spread of cynicism and stupidity going.

VDbench: The Amazing Swiss Army Knife of Benchmarks

21 Feb '10 - 11:01 by benr

VDbench (so named for its creator, Henk Vandenbergh of Sun Microsystems, formerly StorageTek) is a truly incredible enterprise grade storage benchmark that is free and open source. In celebration of vdbench 5.02's release I thought it time we discuss it.

One of the things I love about VDbench is that its implemented in Java. Its extremely portable (Windows, Solaris, Linux, AIX, OS/X and HP/UX) and includes a both GUI and CLI interfaces. For tools like this I love having a nice soft GUI to help get your feet wet and then a CLI for the real work... makes learning so much easier.

The GUI is accessed using the "-gui" argument (ie: vdbench -gui). Its use simplistic but helps you grasp the essentials. That is, you select some storage device to benchmark, then you modify a workload/run definition which describes what work will be preformed and how, and finally you execute a run.

The CLI is similar conceptually, you create a configuration file in which you define storage devices, workloads and run definitions. To execute the run you pass the config to "vdbench" and away it goes.

Lets start with a super simple config:

*Example 1: Single run, one raw disk

*SD:    Storage Definition
*WD:    Workload Definition
*RD:    Run Definition
*
sd=sd1,lun=/dev/rdsk/c0t0d0s0
wd=wd1,sd=sd1,xfersize=4096,rdpct=100
rd=run1,wd=wd1,iorate=100,elapsed=10,interval=1

First notice that we can insert comments with an asterisk. Next, we have 3 lines here:

  • sd: Storage Device, this maps a name to a given physical device
  • wd: Workload Definition, this describes the workload (read/write/block size/etc) and maps to one or more SD's
  • rd: Run Definition, this describes the run itself, mapping to a workload and describing how it run, such as interval, total length of the run, IOrate constraints, etc.

For simple configurations like that above you'll likely only have these 3 lines, but as you get more complex you'll add them. Try this bigger configuration on for size:

sd=sd1,lun=/dev/rdsk/c0t1d0s0
sd=sd2,lun=/dev/rdsk/c3t0d0s0

wd=randomWrite,sd=sd*,readpct=0,rhpct=0,seekpct=100         
wd=seqWrite,sd=sd*,readpct=0,rhpct=0,seekpct=0
wd=randomRead,sd=sd*,readpct=100,rhpct=0,seekpct=100
wd=seqRead,sd=sd*,readpct=100,rhpct=0,seekpct=0
wd=randomRW,sd=sd*,readpct=50,rhpct=0,seekpct=100

rd=default

* Random Performance Tests
rd=default,el=1m,in=6,forx=(4K),forth=(32),io=max,pause=20
rd=run1_randomReads,wd=randomRead
rd=run2_randomWries,wd=randomWrite
rd=run3_randomMix,wd=randomRW

* Sequential Performance Tests
rd=default,el=1m,in=6,forx=(512K),forth=(32),io=max,pause=20
rd=run4_seqReads,wd=seqRead
rd=run5_seqWrites,wd=seqWrite

Here we use 2 disks instead of one, and we have multiple runs defined. The result is each run going sequentially till its done. So first my random read test goes, when its done my random write test goes, and so on until all 5 runs are done.

Lets look closer at the workloads which may be confusing at first. Consider this: "readpct=100,seekpct=100" This says 100% Read and 100% Random (seek). So that's a random read test. Whats strange at first is how you describe a sequential write test: "readpct=0,seekpct=0". See where you could get confused? There is no "writepct" or "seqpct". This may be odd but has advantages, for instance if you wanted a 60/40 R/W workload which is 50% random it would simply be: "readpct=60,seekpct=50".

Here is a view of the output you'll expect:

# ./vdbench.bash -f benr1 

Vdbench distribution: vdbench501fix1
For documentation, see 'vdbench.pdf'.
                                     
17:24:39.168 input argument scanned: '-fbenr1'
17:24:39.304 Starting slave      
17:24:39.616 All slaves are now connected
17:24:43.007 Starting RD=rd_rg-1; I/O rate: Uncontrolled MAX; Elapsed=10; For loops: threads=64
                                                                                               
Jan 26, 2010 interval        i/o   MB/sec   bytes   read     resp     resp     resp    cpu%  cpu%
                            rate  1024**2     i/o    pct     time      max   stddev sys+usr   sys
17:24:44.070        1   18382.00   143.61    8192  69.87    3.237  311.373   14.003    61.5  57.8
17:24:45.043        2   16803.00   131.27    8192  70.07    3.399  192.972   13.894    67.3  64.8
17:24:46.042        3   18560.00   145.00    8192  69.68    3.599  207.747   14.271    71.9  69.6
17:24:47.033        4   17956.00   140.28    8192  69.67    3.315  194.255   12.589    72.7  70.6
17:24:48.017        5   19263.00   150.49    8192  69.89    3.346  294.203   13.374    73.6  71.2
17:24:49.023        6   17014.00   132.92    8192  69.72    3.502  220.248   13.466    68.7  66.7
17:24:50.041        7   19367.00   151.30    8192  69.49    3.453  301.330   14.010    72.2  70.0
17:24:51.039        8   15713.00   122.76    8192  69.74    4.011  279.812   16.980    61.0  59.2
17:24:52.039        9   18643.00   145.65    8192  70.44    3.230  226.911   13.323    70.8  68.9
17:24:53.021       10   16376.00   127.94    8192  69.82    3.940  224.594   14.232    69.5  67.2
17:24:53.032 avg_2-10   17743.89   138.62    8192  69.84    3.520  301.330   14.015    69.7  67.6
17:24:53.663 Slave localhost-0 terminated                                                        
17:24:53.697 Vdbench execution completed successfully. Output directory: /root/VD/output

In addition to doing raw tests it can also preform filesystem based workloads (similar but more primitive than Filebench in this respect). Using its sister-application "SWAT" you can trace I/O and replay it through vdbench. And all sorts of other crazy fun things. Best of all is that it has a fantastic PDF manual to help you understand all the essentials.

Over the last year or so I've become a huge fan of the tool. Particularly for testing raw storage, its simply awesome to get reliable and repeatable results for device capabilities which can then be used for math in architecting solutions. When you pair up this tool with FileBench you can build a very fine-grained and realistic testbed.

OpenSolaris Election Season is Upon Us

10 Feb '10 - 09:27 by benr

Its that time of year again for OpenSolaris Governing Board (OGB) Elections. This is the time of year that we clean up contributor grants within our meritocracy and generally clean house.

The Annual Report was due Feb 4th but is still in the works. Nominations for OGB will open on Feb 15th and close on Mar 1st. If you are seeking a core contributor grant (and the voting rights that come with it) you need to get that approved by Feb 14th, so look sharp.

Voting itself will open on Mar 8th and close on Mar 22nd with results posted the following day. The new OGB will take office on April 1st (no joke... har har).

You may be asking yourself... will this facade of a governance continue now that Oracle is in charge? So far they haven't taken any steps to intervene or change anything that I'm aware of. Mr. Peter Tribble requested OGB liaison Vincent Murphy to address the matter in January, but if such a response came it happened on the OGB-Private mailing list. (The same mailing list I proposed and voted to have destroyed when I was on the board.)

While I have great respect for many of the people on the board, I maintain that the entity continues to be useless. Attempts on the part of the community to turn the board into a useful platform of leadership have been undermined by persons unnamed time and time again such that for over 2 years its been a complete waste of time. I rejected my nomination to it last year and if nominated this year will do so again. Until the destructive elements within Sun's ranks are removed and real commitments are made there isn't any reason to expend the time on a fools errand. I gave a presentation on the topic 2 years ago and stand by it today: OpenSolaris Governance Presntation at Silicon Valley OpenSolaris Users Group (skip to the 1hour mark for my preso)

Jonathan Says Goodbye via Twitter Haiku

04 Feb '10 - 18:49 by benr

The message was simple:

Today's my last day at Sun. I'll miss it. Seems only fitting to end on a #haiku. Financial crisis/Stalled too many customers/CEO no more

Please post your thoughts on Jonathan's leaving. Its a mixed emotion... on one hand he set some great goals and put a fire under things. A lot of us believed in him. And yet, he failed to execute and ultimately was responsible for Sun's demise. Could someone else have done a better job and still kept the culture alive? I don't know honestly.

I'll continue to stay neutral on the subject and reserve judgment until the behind-the-scenes stories trickle out over the next months and years. Jonathan screwed up, yes, but I think that Jonathan also got screwed himself, more than we realize. Time will tell.

In other news, Oracle is finally doing what has needed to be done for years: Oracle to Revamp Sun Supply Chain. One of the biggest complaints by customers for years has been inability to get timely delivery of systems. Its good to see signs of that era ending.

Also, Project Darkstar & Kenai are being axed. Project Kenai, a SourceForge like project hosting service provided free by Sun, will close its doors on April 2nd 2010. You have untill then to get stuff out. One of the most important projects there, Immutable Service Containers (ISC) has moved to OpenSolaris.org.

OPEN LETTER TO ORACLE: (Open)Solaris Roadmap

02 Feb '10 - 22:06 by benr

Dear Oracle,

Congratulations on the EU approval of your acquisition of Sun Microsystems, Inc. Many of us in the various Sun communities spent years working closely with Oracle products on Sun technology and feel right at home being part to the Oracle family. The business savvy and dedication to customer success will be a welcome change in the direction of all of Sun's technologies.

While the strategy webcasts and FAQs have been fantastic, there are many questions customers have regarding the future of Solaris, OpenSolaris and the technologies within. It's no secret that for several months Oracle has been involved to some degree in Sun engineering directions and therefore it does not seem unreasonable to ask for answers even so soon after the EU green-light.

First, and of foremost concern, is the future of the Solaris product for enterprise customer, currently "Solaris 10". Will there be a Solaris 11? (It would fit nicely with Oracle's scheme, btw.) Will it be compatible with existing Solaris technologies (Jumpstart, SysV PKGs, etc) or will the existing path to scrap these technologies in favor of new and unproven solutions created within the OpenSolaris platform be chosen instead?

Please understand that until recently customers could choose the traditional product (Solaris 10), the advanced development product (OpenSolaris Distribution), or use the bridge between these two worlds: Solaris Express Community Edition(SX:CE). However, with SX:CE's recent retirement Solaris shops are forced to make a choice: go forward and accept uncomfortable and disruptive changes of OpenSolaris Distro or fall back into the technically inferior but fully supported and well understood Solaris 10. Sadly, some are opting to leave all together due to a lack of direction.

Decisions need to be made and customers need guidance in order to make them. Consistent with Sun's legacy, the OpenSolaris project has been phenomenally successful in empowering customers and driving innovation, however management has continually failed to produce a coherent roadmap for enterprises to bank on.

Therefore, I would humbly ask that Oracle definitively provide guidance on the following:

  • A roadmap for enterprise Solaris customers
  • Guarantees with regard to the well-being and sustained viability of OpenSolaris as an Open Source community (independent of "OpenSolaris" as a distribution)
  • Future support and development for Solaris virtualization technologies, namely xVM (the best Xen solution in the industry thanks to ZFS, Crossbow, FMA, etc.) and Containers (the best Xen alternative in the industry), with respect to how they will compliment, supplement or be replaced by "Oracle VM"

I look forward to these details which will hopefully put an end to the Solaris FUD and put us back on a path of profitable and productive growth, for the sake of the community, customers, and Oracle itself.

Ben Rockwood
(Open)Solaris Developer & Evangelist

Transition & Closure as Oracle Takes the Con

29 Jan '10 - 15:13 by benr

On Jan 27th Sun, as an independent company, died and Oracle's reign begins. No time was wasted. As you no doubt have noticed by now, sun.com redirects to Oracle.com, which is in keeping with its acquisition history... but even so it happened quicker than I expected. No time being wasted.

Oracle hosted a 5 hour (yes, 5) event in Redwood City (Oracle HQ) to lay out its strategy for Sun.

  • Charles Phillips: Welcome and Oracle + Sun: Transforming the Industry
  • John Fowler: Hardware Strategy
  • Thomas Kurian: Software Strategy
  • Edward Screven: Operating Systems and Virtualization
  • Juergen Rottler: Customer Service and Support Strategy
  • Jeff Epstein: Operational Strategy
  • Larry Ellison: Oracle + Sun

Find all the above webcasts, both full and highlights, plus slide decks, here: Oracle + Sun: Transforming the IT Industry. If you only watch one, make sure to watch the final webcast with Larry which is an open Q&A.

(Selfish note: Joyent's logo is on the customers slide in the Operating Systems and Virtualization presentation. w00t.)

This is followed up by a Oracle + Sun Welcome Event world tour beginning in March. Look for an event near you.

In addition, several webcasts have been produce in the last couple weeks discussing technologies and the strategy going forward. Find them all here: Oracle + Sun Product Strategy Webcast Series.

So onto the guys who got us here in the first place.

Jonathan returns to blogging, "With the passing of that milestone, I can once again speak freely", in Where Life Takes Me Next.... He tells us how great things will be now that he's not running the company, points us to his Twitter feed, and yet again extols the brilliance of Greg Papadopoulos.

Now, I probably shouldn't pick a fight with Mr. Papadopoulos, but here goes. We hear again and again how brilliant this guy is... but look where we are. Seriously, how can you stand on the ruins of a fallen empire saved only because a neighbor took pity on us, and then tell us how brilliant one of the guys in charge was? I know I'm going to regret saying that, but he should have been smart enough to beat some sense into folks. I digress....

Scott McNealy, who took over for Jonathan either because the job wasn't getting done or because he wanted to take credit for "saving" the company (I'm not sure which yet; maybe both), sent out a old-skool company wide memo: Subject: Thanks for a great 28 years. Best summary of the situation was: "This is a very powerful merger. And way better than some of the alternatives we were facing. " Then he starts threading in capitalism, almost blaming but not blaming, the system as a whole for stacking the deck. I sense a story behind it all.

Scott gives us the answer to the horrible question "Why?!?!" We all know it, but its good to hear him admit it: "And though we did not monetize our inventions as well as we could have..." Under. Statment. Of. All Time.

Haiti: Fact Finding Mission, Churches Helping Churches

25 Jan '10 - 18:56 by benr

A coalition of churches quickly formed following the quake in Haiti, Churches Helping Churches, made up of several churches including Pastor Mark Driscoll of Mars Hill Church in Seattle. They went on site last week to assist the churches in Haiti and assess the needs.

Yesterday Pastor Mark preached a special sermon which told the entire story of his trip. If your interested in the situation on the ground in Haiti and particularly in the state of the churches there watch the sermon here: 32 Hours in Haiti

If you would like to help the churches in Haiti to continue helping the people of Haiti please consider a donation to churcheshelpingchurches.com.

Larry Gets What Larry Wants: Sun Now Oracle

21 Jan '10 - 17:36 by benr

Its all over folks. Oracle buys Sun, EU approved.

There will be a Oracle + Sun Strategy Update Webcast on Wed the 27th, so make sure to tune in for that. The invite was sent out yesterday, so looks like Oracle got early notice.