With the release of Solaris 10, Sun Microsystems is attempting to revive some of the strength that the Solaris name once carried in the world of unix workstations and servers. At one point, Sun was the dominant name in commercial unix hardware and software. Then came the crash of the dot-com marketplace, so many of whom had heavy investment into Sun in both the hardware & software market.
The crash proved to be a devastating blow to Sun as a company, but not one that they view as insurmountable, and the actions of the past couple of years show this. Solaris 10 is just one more step in the recovery process.
Before we dive into Solaris 10, we need to look at a little bit of history. Until fairly recently, Sun offered two separate products, Solaris was the workstation version of the highly respected and the powerful SunOS that was part of every server, and remains at the core of Solaris. With the release of Solaris 8, that dichotomy was removed. Solaris was the product and it was used on both platforms. During the past two years, Sun has also begun to leverage the Linux technologies into the Solaris platform without losing the tools and features that make Solaris unique.
The problem with these changes is that in order to grasp what Solaris is and what it brings to the table, two perspectives are required, that of the server administrator, and that of the workstation user. These are distinctly different environments, and yet Solaris is tailored to both.
With that said, let’s take a look at the product.
Under the trappings of an X-Windows graphical user interface lies the much improved and updated heart, SunOS 5.10. Most of the functional improvements that benefit both the server and workstation reside here.
Solaris on the Workstation
One of the big things with Solaris 10 is that for the first time in it’s long history, the x86 platform is given a truly equal footing to the Sparc product. Released at the same time as the Sparc platform, it is nearly feature identical to the Sparc product, and the places it is not are all tied to hardware inequalities. Unfortunately, we did not have a Sparc based workstation to test with, so all of our workstation testing was done on an AMD based x86 machine.
Installation is not for the computing rookie, but if you know enough to need Solaris on your workstation, one would hope that you are comfortable with tools like fdisk. The installer ‘feels’ a little clunky, and is probably best compared to the installer of IBM’s OS/2 circa 1994, but since it’s a process that hopefully is done once and not a part of daily usage, we won’t spend any more time talking about it, it’s not easy, but it is usable.
Once installed however, the system becomes much more manageable. During the boot process, the system shows it’s roots with a text based boot process. All modern operating systems do this, some just make more of an effort to hide the arcane messages of the boot process. Unlike competitors, Mac OS X & Windows XP, Solaris makes no effort to expedite the boot process, ideally because there is little need to reboot the system. On the test machine, it boots Linux in about 90 seconds, and Windows XP in about 40 seconds. Solaris takes nearly 2 minutes to arrive at the graphical login screen.
The default login screen is a nice secure affair, and does not adopt the provide a list of users methodology that has become so prevalent, which is a good thing from a security standpoint. It also provides options to perform a remote login from the user interface, something few of the other X-Windows login interfaces do. The login also allow the user to choose between the two different graphical desktop systems provided by default.
The venerable old Open Look Window Manager has been retired for a couple of years now, and from the looks of the things, it’s replacement in the form of the Common Desktop Engine, or CDE, has been placed on life support. From the looks of the defaults, and the general feel of the environment, the Java Desktop System, or JDS, is the desktop of the future for Solaris, and Sun’s Linux offerings.
Using CDE is an experience that has not changed significantly in the years since it was introduced. Existing Solaris users may find it to be a comfortable environment, but it certainly hasn’t seen any major changes or improvements. The one thing that can be said for it is that many of the existing management interfaces for Sun products are designed for it, and therefore enjoy a comfortable look and feel within CDE.
The Java Desktop System is on the other hand, a nice implementation of the GNOME desktop, with many Open Source applications prebuilt and installed, with a few Sun specific tools added in for a nice bonus. The desktop itself is nice, and should feel very comfortable to any Linux user that has spent any time with any of the current distributions. That is where the problems start though.
Adopting so many Linux based technologies in Solaris presents a double edged sword for Sun. It is unlikely to bring in new users, as Linux is perceived to be cheaper and offer the same basic feature set. Many of Solaris’ technical merits will be overlooked by the casual users.
That is unfortunate though, because the platform has so much to offer the workstation user, including the core technologies like DTrace and the Solaris Secure Execution environment. If you have a chance, this is a platform that is well worth investing some time into learning and leveraging on the workstation.
DTrace is a feature that is probably the nicest feature enhancement that targets the Worksation users, particularly developers. Dynamci Tracing, or DTrace, is a compelling technology. With it, it is possible to trace and debug much deeper than traditional code level debuggers. One of the best features however, is the ability to use DTrace on a production level machine, be it a server or workstation to generate trace information about a situation in the applications production environment without contaminating it with developer tools all in real time. While DTrace is not in and of itself unique to Solaris, every major operating system offers trace tools, but none of them available today offer the scope and depth of information as DTrace.
There are a couple of things to keep in mind about Solaris on the workstation though. First and foremost is hardware compatibility. Device support is a little limited on x86 where the sheer volume of odd implementations of the same chipsets frequently make supporting them difficult. It took us 3 tries to find a network card that it liked. Second is the disparity between hardware platforms. x86 hardware is cheap, fast and can be hit or miss on compatibility, Sun’s Sparc based hardware is not cheap, clocked slower, but is dead on for compatibility. For example, and Blade 150 with 256mb of RAM and a 500mhz UltraSparc IIe starts at $1395.00 US, but is going to be ready to go right out of the box, meanwhile a Sun Java Workstation with Solaris 10 using an AMD process starts around $1795.00 US, and appears to be an excellent machine that is supported by Solaris 10, though not installed with it by default.
Solaris on the Server
Server environments is where Solaris, and the enhancements to the underlying SunOS 5.10 really shine. We tested our server configurations on both an AMD based x86 machine and an aging Sun Netra X-1 server. The Netra has been replaced by the Fire V100 in Sun’s hardware lineup, and for $995.00 US, is easily the best steal available for a unix server, given Solaris 10, it’s an even better deal.
Identical to the workstation, installation was non-trivial, but not unusable. Once setup though, these two machines proved to be much closer than expected in performance and usage despite a nearly 800mhz disparity in clock speeds. As a server, we ran PostgreSQL, SendMail and Apache2 on both machines to test performance against that of our identically configured Linux machine. The results are simple. Solaris is marginally slower, with the Netra coming in last place in our tests, but not by much.
What is surprising in this is that these tests where performed in a very basic configuration. However, once we started reconfiguring the Solaris servers to take advantage of advanced features, we didn’t see significant degradation in performance. Specifically Containers, formerly called Zones. Containers are not a new idea, but they are a new implementation of an old design philosophy. Virtualization services have been implemented in high end server platforms for more than a decade with great success on the traditional big iron hardware, particularly in the traditional mainframe world. Solaris 10 brings the implementation to a more granular level and offers excellent performance, even on relatively weak hardware. The downside, is that Containers are an adventure to get set up, and tweaked until you are happy with them.
The other big change here are things that we found difficult to artificially stress and test. In particular, the predictive self-healing technologies. While the technology demo’s look great, until we see it work in practice, it’s just that. What we can say is that once we got the server configured to our satisfaction the machine that we left for long term testing has remained stable and not required any significant maintenance in it’s 6 weeks of usage, a bad network cable that I apparently damaged when I put the server back in the rack being the only problem.
On larger scale hardware and deployments, there is very little question that the application of Containers and Secure Execution have enormous potential for both server consolidation and virtualization. In addition to the long proven reliability of Solaris and it’s underlying SunOS foundation, Solaris 10 looks primed to maintain it’s stake in the server rooms around the world, and perhaps even recover some of the lost marketshare from the dot-com crash.
Solaris 10 is a strong player for Sun’s traditional markets, and will be a compelling upgrade for existing Solaris and SunOS customers during the next 18 months, however, it still has some identity crisis issues when targeting existing Linux customers. It will take some marketing, and exposure to bring in those users. The MacOS X and Windows customers are an even harder sell, as the one glaring area that Solaris 10 doesn’t address is manageability. The easy to use tools for managing the enormous power under the hood simply are not there today.
About the Author
Andy Satori is a private consultant and developer of Mac OS X, Windows and Unix software, having used nearly every major and hobby OS available in the last 15 years, covering DOS, OS/2, Windows, Mac OS, Mac OS X, BeOS, Linux, Solaris & AIX as well as a few others…
If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.