15

I have no experience with Solaris and asked myself will I ever use it and why would I chose to do so. I couldn't answer that on my own, so here goes..

Please reply stating why exactly do you administer a Solaris box, why you wouldn't do so and anything else related. Answers "I'm stuck with it" are also good :)

1

9 Answers 9

17

We used Solaris (edit Nov 2012: this was in 2009) for software designed to run only on Solaris+Sparc.It is certainly a reliable and robust operating system.However, unless you have an application that offers tremendous advantage when run on Solaris+Sparc, there is no need to go that route.

Undermost circumstances, you will not be using OpenSolaris on production, but the latest Solaris 10 release (May 09 as of now). For someone from a Linux/FOSS background, there is significant effort required to make a Solaris 10 install as "comfortable" as Linux.

Many Solaris gurus I have met are certainly very talented... but are often unaware of how the FOSS packages available from Sunfreeware and OpenCSW can make life easier.

Standard Unix utilities included with Solaris are fully back compatible (another word for back-ward ass). Some Solaris gurus end up installing gnu-tar, wget, gnu-grep and etc for sanity. Some packages are available only as source and not adequately tested by the authors on Sparc. (not all developers have a Sparc box)

Linux/FOSS users are used to patching/upgrading systems using apt/rpm/up2date/ports/yum/whatever. On the other hand, Solaris patching=hell. The most capable Solaris patching tool is actually a 3rd party script, un-supported by Sun. Take your time going through the comments here.

A brilliantly backward-ass "feature" of Solaris is that all package names start with SUNW. (they are working on changing this with OpenSolaris). So lets say you have a package called SUNWfoo Version 1.2. If you release a patch for this package, what would you call it? A rational person not introduced to Solaris would think "SUNWfoo version 1.3". That's wrong, because Solaris patches are for files not packages.

Take a look at this weekly "Sun Patch Club" email that I get. It makes no sense. Compare the Linux/BSD OS update tools and packaging systems and then think about jumping into this.

As for reliability, the most important parameter is your Sys Admin. If your Sys Admin is a Solaris guru but knows nothing about Linux, then Solaris is a great idea. In the hand of a capable Admin, any OS is reliable. But hardware, disk, ram, network equipment will all fail. Once you have a certain number of servers, you will have Sun people coming in to replace something every few weeks. If you go with x86, you will have Dell/HP people coming in. Whats the difference? I don't look at the numbers, but I'm told Sun+Sparc is more expensive.

Many Solaris shops that I've seen are still stuck in 1999. They buy a big expensive Sun box without looking at any performance numbers.("It's expensive, so it must be good.") Three years later, they replace the big box with a bigger box. If your application works best with this strategy, then go ahead with Solaris.

On the other hand you can architect your application to be reliable/scalable/highly-available. If some cool software/hardware on Solaris enables you to increase performance substantially, or be more reliable then go with Solaris. However, you will find that many companies have been able to scale up and scale out their app servers, web servers and DB servers using complete FOSS based technology.

I guess many of these points will be obsolete in a few years when OpenSolaris is ready. As of Nov 2012, Oracle has gutted OpenSolaris, and Solaris 11 is no longer compelling.

ZFS and Dtrace are very compelling features. IMO, they are just not compelling enough to ignore Linux/*BSD. ZFS and Containers are not problem free. The "binary-compatibility" argument is not that important with the proliferation of virtualization. Binary-compatibility is also not problem free.

Today Google, Apple (yes Apple), Amazon, Facebook make billions of dollars running massive clusters that run only Linux underneath. 90+% of HPC/Super computer clusters run Linux. At the other end of the spectrum, about a billion+ phones and small devices run Linux.

What could anyone possibly gain, even if it were possible to run the above on Solaris? Or in other words, what are these people losing, by not running on Solaris? Clearly, ZFS, Zones, Dtrace etc is not compelling enough for them, to outweigh any negatives. The answers to these questions, should help you answer the original question "Why".

3
  • +1 - a really great, informative post.
    – Karolis T.
    Jun 12, 2009 at 5:56
  • Many of the concerns you raise about packaging and patches are void in Solaris 11. It introduces a whole new repository based packaging system known as IPS which is really good. Also Solaris 11 has become very GNU-like so a Linux person should quickly feel at home. Jul 24, 2013 at 23:20
  • @unixhacker2010 There are reasons why Solaris 11 has not had traction since release. The biggest being Oracle. This discussion is about reasons why one should use Solaris. I think any relation to Oracle is by default a reason not to use it. One might have better luck with Illumos: wiki.illumos.org/display/illumos/illumos+Home
    – Not Now
    Jul 25, 2013 at 4:05
13

Solaris does have a number of qualities that are pretty nice. I don't run Solaris much and I'm not that experienced with it so I'm sure others will have a bigger list than this.

Here are a few that I can think of.

  • Solaris has a lot of nice tech under the hood that you can't find anywhere else. Such as ZFS, DTRACE, Comstar, Crossbow, Containers. You can find ZFS in BSD's and OSX Server.
  • It's supported for 10 years.
  • It's binary stable. Meaning that programs written for Solaris 2 still run on Solaris 10 today without any changes on both x86 and Sparc.
4
  • 3
    +1 for crossbow and other features not only one of those "ZFS is cool posts" Jun 11, 2009 at 20:22
  • 1
    Technically, Solaris 10 is in the same branch as Solaris 2.* (generally SunOS 5), that's why they're compatible. Since the Solaris 2 numbering scheme went 2.4, 2.5, 2.6, 7, 8, 9, 10), it's a little less impressive than it seems at first to say Solaris 2 and Solaris 10 maintained binary compatibility (but no less true)
    – jj33
    Jun 11, 2009 at 20:34
  • dtrace is available on OS X (either by default, or with the Developer Tools, I don't recall)
    – dbr
    Jun 11, 2009 at 21:47
  • dtrace is available on all OS X 10.5+ installations, always. Apple's Instruments tool for debugging applications, which uses dtrace under the hood, comes with XCode, but the basic components are all there regardless.
    – Dan Udey
    Jun 12, 2009 at 7:04
7

Solaris is reliable. In 12 years of running Solaris on Sparc, I've never had a kernel panic unless there is faulty hardware. For Linux I've seen vast numbers of kernel panics due to kernel bugs.

I also can't recall having to power cycle a Solaris box because it wouldn't respond. I've always been able to get something back from it and recover the system - probably not an issue on a small server, but when you look at how long an E10k or E20k took to boot, you really don't want to be forced to powercycle. I've seen linux boxes becoming wedged on too many occasions to count.

Having said that, I use linux for damn near everything, from an nlsu2 as a print/file server, up to fairly beefy servers. Solaris can't cover most of this hardware. Solaris has it's place, but it's becoming a real niche now.

3

Chicken and egg problem, you should be familiar with the technology and its particular advantages to use it in the right position, but if you have never used it you don't know these very advantages.

For me the number one reason for deploying Solaris was that some of my clients demand a service contract for all there software and hardware with a penalty clause in it. Only the bigger companies can afford a legal department which sets up a contract that gives you warm and fuzzy feeling but in the end is not responsible for anything.

However Solaris is IMHO a solid OS and has some very nice features, but if you don't use these features and you don't require a legal contract for the stuff you use, why not use the OS you actually are the most comfortable with.

1

Before I answer your question, let me just say that I would never actively select Solaris as an operating system on any new project. Linux just offers so much more that's missing in Solaris unless you take a lot of pains to install all the GNU stuff to emulate what is there by default in Linux. That being said, there's two things that would possibly make somebody other than me select Solaris:

  1. DTrace - This is the most awesome OS instrumentation tool you could possibly imagine. If you're ever stuck trying to track down some kind of performance bottleneck, doing it without DTrace is like finding an outhouse without a flashlight.

  2. Niagara Processors - On a very small subset of extremely multi-threaded server applications, Niagara can give you some pretty good price/power/performance ratios. This subset grows smaller every day though, as Intel has been able to eat away most of it by just producing good general-purpose hardware.

1

Several reasons. I'm stuck with it. The customer wanted it. It's the only thing that runs on SPARC processors(1). But mostly in the environments I hit it in, it is because that's the way it was set up ten years ago, and there's been no reason to change it.

Traditionally Solaris has scaled much better than the alternatives. And when I mean scale, I mean up to dozens or more processors, and tens of GB of RAM. It wasn't just the best way to get scale like that, it was the only way.

Add to that superior portability (binaries that ran on old SPARC processors also run on new ones), a company that was really behind their computers and software, and Sun was a winner in many ways.

Maybe not so much today, and that makes me a little sad.

Footnote:

(1) Yes I know Linux runs on SPARC processors, but it is vanishingly rare to find outside of a lab or a basement. Just like Solaris x86 used to be vanishingly rare the same way.

1

At this point we only run it for vendor support. Almost all of our non-home-grown phone stuff is Solaris only (specifically all of our class-5 phone switches and our dedicated VOIP soft-switches all run in java on Solaris).

We also maintain some Solaris boxes from an old part of our billing system that we don't have source code to and we've never really been bothered to rewrite them for Linux. We used to feel more comfortable running our Oracle DB's on Solaris, but as time passed, Linux became more stable, and we felt more comfortable with our own understanding of Linux, we migrated them.

One reason to run Solaris was how good Sun hardware was for NEBS compliance. A/B power, 2n+1 redundancy on a lot of stuff - it wasn't fast, but it would survive a decent earthquake, which is more important for telephony usually.

In general I really liked Solaris, I liked it's stability, tidiness, length of OS support, binary compatibility, etc. Around 2002 though, the price/performance curve for Solaris/SPARC vs. Linux/x86 was insane. It would take an awful lot now to go back to Solaris.

1

Solaris is Unix like os which is designed for enterprise servers like where robust applications and database is deployed where io/throughput is very high and needs the server 24x7 up and less down time. Mostly ZFS feature is amazing which works like RAM where you don't need to manage any io operation and all the running io can be managed while data disk is live and where down time is never compromised. In short its wonderful os till now specially when its deployed on SPARC based servers.

1
  • 2
    Solaris isn't "Unix like". It is UNIX, in that it conforms to the Single Unix Specification. Nov 27, 2012 at 19:17
0

I have a friend that's deployed OpenSolaris specifically to use the canonical implementation of ZFS.

3
  • What can ZFS offer greater than XFS has? (besides XFS having a bug in 2.6.27 which sometimes freezes the server:) )
    – Karolis T.
    Jun 11, 2009 at 20:19
  • ZFS: really cheap snapshots, volume manager & raid are part of the FS (may be a pro OR con) Additionals: really cool network stack, personally i like the notion of their role based security system. Jun 11, 2009 at 20:21
  • 3
    Comparing ZFS to a traditional filesystem is like showing up to a gun fight with a knife. :) Beyond the list of features that Server Horror mentioned it also guarantees data integrity. Can do background scrubbing, uses SSD as an additional layer of read cache, replication using zfs send and receive, and on disk compression. And in the near future it will also support data deduplication and on disk encryption. Jun 11, 2009 at 20:29

Not the answer you're looking for? Browse other questions tagged .