IPS for OpenIndiana and Solaris 11 – UKOUG March

I went to the March LOSUG / UKOUG where Chris Ridd gave a (long) talk about IPS – Image Packagaing System for OpenIndiana and Solaris 11. I have not used IPS so I was interested to see how it differed from the old pkgadd system I am familiar with.

He started out by saying there were little or no design docs for IPS but there are some blog postings by Stephen Hahn, Bart Smaalders and Tim Foster about the original ideas. Unfortunately I have not had time to look for or read them.

The comment was telling though as the impression I got at the end was that IPS was a system which lacked exactly that: a design. As a result, as Chris pointed out, the terminology is odd and key functionality is missing. Security, for example. As I understood it, the main conceptual difference is that unlike other packaging systems there is no “package” as such. What you make is a config file which describes the content, including metadata and how to get the files you need from a repository.

Until I play with it (which might be a while!) I’m not going to pass judgement. It was too much new information for me to absorb in one sitting.

Esxi 4.1 configuration issues

Have been looking at an ESX 4.1 cluster recently in which one host was being a bit truculent. After a BIOS upgrade the host seemed to be behaving itself so after a couple of weeks of stress testing with no issues I added it back into the cluster.

However, nothing would migrate to it and I eventually tracked down three separate issues (note to self):

  1. Moving hosts between clusters can confuse the standard switch configuration. You really need to re-create the standard switches each time you add to a cluster.
  2. An I/P address was wrong (typo)
  3. The hash of the NFS datastore UUID was different. On the other hosts in the cluster the datastore had been added with I/P address and on this one it had been added with NFS server name. ESX essentially thought they were different datastores as 4.1 uses a crude hash to create a UUID (I would have though it should pick up a UUID from the datastore itself).

Caveat implementor.