Wednesday, 3 June 2009

ZFS spared me a lot of time and saved my data (once more)

Yes. Since I was introduced to it, almost every day something remembers me that I'm running the Solaris OS and its ZFS file system.

While developing part of the architecture for the .NET application I'm working on I decided to take a (freaky) break. I stopped my virtualized Windows instance (run on Sun xVM VirtualBox, of course), I put the kettle on the hob, put a coffee spoon of Gunpowder green tea on the teapot, and... launched a:

$ VBoxManage modifyhd winxp.vdi --compact

I went to the kitchen, waited the canonical 2 minutes watching tea leafs opening and releasing their flavor in the water, returned to my desk and: nothing could go worse than that. I just hit VirtualBox bug number 3864. The operation had failed and the hard disk image, as far as I could see, was greatly damaged. Windows wouldn't start correctly and would force a chkdsk on the entire disk. A great number of errors were found and the hard disk was not fixed.

Fortunately enough, since I use ZFS, I'm missing no backup. Every night, at least, a script snapshots a set of filesystems and sends a replication stream to another server where the ZFS stream is received (if you're wondering, the answer is "No, I don't use the Time Slider (yet)). I just had to send back the last saved snapshot and my VDI image was as good as this very same morning. Data? Well, I'm prudent enough to periodically save all of my work in a Subversion server I set up.

Once day more I'm happy to run ZFS.

Tuesday, 2 June 2009

OpenSolaris 2009.06 has been released


Innovate on OpenSolaris
This is the kind of news many people was waiting for: the third release of the OpenSolaris OS, OpenSolaris 2009.06, has been released. You can read the announcement here.

A quick summary of the new features, as reported from the official site, are:
If you were already using Solaris Express Community Edition you may have already tried these features. Nevertheless, I think it's time to burn a CD and give a try to this new release. Personally, I dropped OpenSolaris after trying 2008.11 for a couple of reasons (no sparse zones, incompatibility with some Sun products) but I'm really curious to try this new release: every iteration has been a great surprise and a very positive experience, so far.

As soon as I try it, I'll post a review. Meanwhile, you can download the OpenSolaris OS here.

Loreena McKennitt forced to cancel festival appearance in Fez, Morocco

Today I received this news: Loreena canceled her appearence at the Festival of World Sacred Music, which will be held in Fez, Morocco. Loreena McKennitt official website reports the news quoting Loreena:

I’m facing a grave family emergency and being away from home at this time is not an option. It is most difficult to make this unprecedented decision to cancel a concert so close to its date.

I planned to go there with my girlfriend, it would have been the opportunity to see Loreena's concert and to visit Fez, a city I visitied twice and that I liked very much. Unfortunately (well, that's what I thought...) the agency was not able to provide us an accommodation on time and that's why we opted for Crete.

I'm really sorry to hear about Loreena's troubles, whatever they be. So many time she accompanied me through the journey of my life, comforting me through the embrace of the music I'd love most, speaking to my soul as only few friends can do. It's time to pay my dues.

I wish everything went fine for you.

Sunday, 31 May 2009

The first sunbath of 2009

Yes. A little late, maybe.

I need to get my skin ready for Crete's sun and just one week is left. Precautions must be taken and the block where I live is equipped with a beautiful pool in the middle of a carefully looked after lawn.

My masochistic ego came out and at two o'clock in the afternoon I wore my bathing costume and went to the lawn. The day was perfect: the sun was burning but many clouds walking in the sky contributed to many 5 minutes' breaks during which a fresh wind gave relax to the skin. A couple of cold showers every thirteen minutes also helped to keep my skin temperature at a reasonable level. A couple of hours later I returned home, had the last cold shower and I'm now preparing to go out and drink a beer.

Folks, this is life: I was missing sunny days a lot!

Holidays in Crete

Have you ever thought about about the oldest greek civilization, the Minoans? Have you ever daydreamed about Knossos palace, Theseus, the Minotaur, the labyrinth, or the escape from Crete of Daedalus and Icarus?

Well, I've done many times and it was time for me to visit Crete. I'm very excited at the idea of returning to Greece and Crete just seems the right choice to spend this week of June. Crete is the 5th largest island of the Mediterranean Sea after Sicily, Sardinia, Cyprus and Corsica. In common imagery, Crete is the homeland of the eldest Greek civilization, the Minoans, some myths of whom got to us through Homer's Odyssey and Greek mythology.

We'll arrive at the Chania (Χανιά) Airport next Saturday in the morning. We'll rent a car and hit the road to Rethymno (Ρέθυμνο), where we'll we have dinner before reaching our destination, Panormos, a small Venetian-style village at 20 km. from Panormos.

Unfortunately, we'll stay in Crete just 7 days, which are probably the required minimum to begin to feel the place and to start to forget Madrid's M{30,40,42,50}. I haven't planned the vacations with full details, yet, but at a very minimum I want to pay a visit to Rethymnon, Heraklion and the Knossos' palace archaeological site. Also, I want to spend one day on a wild beach on the south of the Island. The only things I'll bring from Spain will be a good selection of sun and after-sun creams to protect and quench the thirst of my skin.

There will be no cellular phone, no computer. Every silicon-based device will be banned with the only exception of the GPS.

I'm really looking forward going away from Madrid!

Sunday, 10 May 2009

Sleepless nights in Brussels

I really hoped that the next time I'd visit Brussels would be on vacations but Murphy's law never fail and my colleagues called me for help, and there I flew.

Long story short, because I don't even feel like talking about Microsoft SQL Server: performance of a brand-new system was really bad (well, nothing strange, that's why we had planned performance and stress tests...) and deadlocks started to appear.

So here I am, and this morning it's the new system Big Bang. A couple of sleepless night profiling and optimizing the application and everything seems ready to go.

Friday, 8 May 2009

Sparing disk space with ZFS clones while setting up a developer environment for multiple users

I have got some Solaris 10 workstations which are shared by a bunch of users which daily develop their application in the native Solaris 10 OS. Every user has to be able to log in in whichever machine and use his own environment. For this reason we took the usual approach of setting up NFS remote mounting of home directories and managing user accounts in an LDAP.

The developers also use a virtualized Windows and a virtualized Debian GNU/Linux during their duties and the initial deploy of the workstations didn't take into account the viability of accessing via NFS files as big as xVM hard disks. Replicating hard disk images was an issue and saving workstations hard disk space was another: with an average 15 GB per hard disk (OS and applications fully configured), per OS, per user, the 200 GB hard disk that equips the workstations seemed insufficient.

In this case, and in all the cases where you can share at least an initial set of data, ZFS helped us solving this problem. ZFS clones are filesystems generated from a snapshot of another ZFS filesystem. Initially a clone consumes no space and, as modifications starts to be applied, it begin to diverge from the snapshot it was generated from and starts allocating space. In our case, I snapshotted the initial installation of Sun xVM VirtualBox, I created a clone per user and set the mountpoint of the ZFS filesystem into the user home directory:
# zfs snapshot virtualbox/installation/dir@initial
# zfs clone virtualbox/installation/dir@initial virtualbox/users/name-0
...
# zfs clone virtualbox/installation/dir@initial virtualbox/users/name-n
# zfs set mountpoint=/export/name-0/.VirtualBox virtualbox/users/name-0
...
# zfs set mountpoint=/export/name-n/.VirtualBox virtualbox/users/name-0
ZFS clones spared me a lot of troubles and, moreover, every user has got a dedicated filesystems for its VirtualBox with all of the advantages provided by ZFS such as snapshots, restores and backups. We used the same approach to provide a common set of low-volatility filesystems to our users such as big SVN repositories and documentation directories.