Slashdot Mirror


Large Scale Management - Linux vs Solaris?

A not-so anonymous, Anonymous Coward asks: "I work for a college that offers undergraduate computer science classes, and the school would like to add a new lab with about a hundred computers for students to use, for various class projects. After some non-trivial effort, we convinced the school to set up a Unix lab rather than a Windows one. However, we can't decide whether to go for Solaris or Linux. Regardless of the cost of hardware, I couldn't get agreed with my colleagues about the amount of efforts required to manage a hundred of Linux PCs vs. a hundred Sparc boxes. I believe that there are many Slashdot readers are actual managers for labs like this if not in large scales. What are your experiences of managing Linux PCs versus traditional Solaris boxes?"

"My detailed questions are:

1. Compared between these two different systems, how easy to maintain the software for all these machines (including re-installation, patching, and updating)? What software do you use to make these management jobs easier?

2. Are there any fundamental differences between managing a large group of linux PCs and managing a large group of Solaris boxes?"

10 of 113 comments (clear)

  1. UMich experience + radmind by More+Trouble · · Score: 5, Informative
    We manage large clusters of both Solaris and Linux machines. We are in the middle of moving all of the UMich central infrastructure to Linux, mostly for cost reasons. The main difference is that Sun hardware is better in a lights-out environment. For a lab environment, this shouldn't be an issue. As far as OS speed, simplicity, and flexibility, I think Linux beats Solaris hands down. And Intel hardware is way cheaper and faster than Sun hardware at the low end.

    As far as how we manage our clusters, the answer is the same for Solaris, Linux, and for the matter Mac OS X: radmind. Check it out. It integrates tripwire and filesystem management. We use it for installation, patching, and updating.

    :w

  2. Other than installation and patching... by devphil · · Score: 5, Informative


    ...Linux largely wins. The Solaris kernel is much more mature than Linux (instantly earning me a boatload of kneejerk flames on slashdot), but their userspace tools are crap. The desktops shipped with Solaris are ugly and awkward to use, and getting KDE or Gnome to build and run properly can be an exercise in frustration if you're not familiar with Sun's way of doing things.

    On the flip side, installing a hundred Solaris boxes is trivial using their JumpStart programs. A new client system RARPs an IP address from the server, downloads a small kernel from the server, NFS mounts a copy of the installation packages from the server, and does a hands-free install. It's extremely flexible and has been ion production use for years. For Linux you're stuck with walking around with CDs, or using some kludge from sourceforge, or a less-well-tested solution like whatever redhat uses.

    Along the same lines, Sun's patching utility is designed with remote-boot or diskless clients in mind. You apply the patch once to the directory tree being used, and you're done. Something similar can be done with diskful clients. Linux binary packages mostly assume that the machine is on its own, so each box will want to download from a remote site and store a local copy, leading to atrocious workarounds like an NFS-shared /var/cache.

    Honestly, it doesn't make much difference. You'll be writing wrapper scripts and custom solutions either way. The difference will be in other factors, like cost of hardware or price of support or political games with the rest of the organization. Having managed groups of both kinds of systems in a production environment for years, I would probably recommend Linux to someone who is asking for recommendations. Not because it's inherently superior, but because you seem more comfortable with it.

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
    1. Re:Other than installation and patching... by dfreed · · Score: 5, Informative

      Debian.
      Cron apt updates installed packages on the schedule you specify. apt-proxy sits between you and the net and keeps a local mirror of the packages requested, so 100 requests = 1 outside request. Plus you can add your own custom packages to it so that your machines are configured properly. Upgrades? Well by hand it's
      apt-get -y dist-upgrade. The stable branch is just that, and the testing branch is really production ready for most definitions of production. Please remember red hat != linux, it is just a distribution with bad package management; but not anywhere near as bad as Solaris package management.
      Why is Solaris worse?
      1. Solaris does not do reverse dependency checks beyond the parent level.
      2. There is no tool to verify that all the proper packages are installed prior to installing a new one.
      3. Sun knows this and their help desk acknowledges that it is a known issue. They also indicate that there is not plan at this time to fix the problem.

  3. Why not Mac OS X? by plsuh · · Score: 5, Interesting
    Not to start a flamewar, but genuinely curious about why you're not considering Mac OS X for this lab? It has some nice features for a CS lab.
    • Free GUI dev tools (XCode) built on top of gcc
    • XCode's fix and continue and zero link systems for speeding up debugging
    • XCode's distributed build system
    • Cocoa API for rapid application development
    • BSD-based OS at the lowest levels
    • Perl, Python, Apache, PHP pre-installed
    • JDK 1.4.1
    • Oracle, Sybase, MySQL all available natively
    • Nice low-level PowerPC arch with lots of registers for teaching asm classes
    • Altivec SIMD beats the living daylights out of MMX/SSE/etc in terms of both speed and clean architecture
    • Source code to Darwin layer available for free under open source license
    • Multithreaded OS all the way down into the multithreaded kernel
    • Rootless X11 server that utilizes hardware accel an optional install.
    • Vendor-supported Netboot/NetInstall with Mac OS X Server for easy lab maintenance
    • Panther (10.3) can tie into LDAPv3, NetInfo, NIS, Active Directory, and Kerberos-based directory service networks natively out of the box
    • Tons of open source software available via either Fink or DarwinPorts
    • BONUS - can install MS Office, ThinkFree Office, or AppleWorks and allow non-geeks to use the machines for writing papers, etc.

    Apple's prices for higher education are quite reasonable, especially compared to low end Sun-Solaris-Sparc. What say you?

    --Paul
  4. As an Undergrad Comp Sci Major.... by Prien715 · · Score: 3, Interesting

    I'd honestly prefer linux. Three reasons:

    1) Home Use: It's something you could give people to use on their own computer. The knowledge they learn using Linux in the lab won't be lost. They can go home and install whatever distro you choose if they wish. Whether they do their project in the lab or in the dorm room, they can have exactly the same setup -- if they so choose.

    2) Better user interface. Sure you can install Gnome on solaris but most people hoenestly don't.

    3) Better Performance/Price ratio: Price is always a factor and is correlated with performance. I couldn't stand the way matlab ran on some solaris blades which weren't updated due to cost. I eventually sucked it up and installed it on my own machine because I couldn't stand waiting literally five minutes for the machine to tell I made a syntax error. (And to all you profs out there: please, PLEASE, test your projects. My class was assigned a project using an (O) N^N algorithm. He hadn't attempted implementing the method, but it would've taken well over 3 months on a 20 proc Sun machine to run our assigned data set.)

    --
    -- Political fascism requires a Fuhrer.
  5. Re:Go with Linux by innosent · · Score: 4, Informative

    No, don't use Knoppix/Gnoppix, it will actually make things harder to administer. The best route here is to use a local hard drive for swap, /tmp, and machine-specific /etc/localmachine files, but have a root (read-only) NFS mount from a central server, as well as the user (/home/xx, read/write) mounts. Use a good caching filesystem for /etc, /usr, /bin, /sbin, and /opt (read-only), and you'll cut back on the network traffic. This makes upgrading easy, keeps the students files accessible from any machine, and means that things like kernel upgrades, security patches, etc. only need to be done once. Just set up the root mount as a directory on the server, and set the tftp/bootp servers up. Get decent ethernet cards in all the machines (that allow booting from tftp), and you're done.

    As for which operating system to use, it really doesn't matter, but why pay for licenses if you don't need to? If the PHB's don't like Linux, use Solaris, but otherwise there's no reason to use a commercial Unix. If you feel that you need to, put Solaris on the main server, with Linux clients, but realise that this may limit you on caching filesystem choice. As for what to install, use GDM/KDM for logins, install both Gnome and KDE, and Evolution, Mozilla, OpenOffice.org, and whatever other apps (oregano/spice, verilog, anjuta, jdk, etc...) you need, and you should be set. Set links on the shared /etc to /etc/localmachine/xx for any files you need to. This actually seems like a good situation for something like Gentoo or *BSD, since you'll probably be very selective in what software is installed, and need to keep up with security patches/new versions. Allow users to mount the cdrom drives (on their local machines), floppies, and usb disks, but don't allow the machines to boot any other way than tftp.

    --
    --That's the point of being root, you can do anything you want, even if it's stupid.
  6. UC Berkeley uses Solaris by Dan+Farina · · Score: 4, Informative

    I don't know if it means a whole lot to you, but the computer labs at UC Berkeley use Solaris and Sun Rays (little dumb terminals.)

    The package has worked very well for me as a student, and I would think/hope that Sun Rays are cost effective and an easy boxed dumb terminal solution. (Since I've never had such a demand, I don't know how much they cost and such.)

    Our web site also runs on Solaris.

    I find it rather ironic, but I somewhat thought how appropriate it would be that we'd use a BSD of some sort. Speaking of which, you should really look at BSD as an option -- it isn't nearly as edgy as Linux, and when you're hacking away on the common file server you do NOT want the thing to crash on a few hundred rabid CS undergraduate students close to deadline.

    My vote:
    -Solaris for a paid for good dumb-terminal option (Comes with the benefits of cost/having to maintain one server, and the obvious downsides of the server failure...which shouldn't be too hard to prevent if there is good supporting staff for that one machine)
    -*BSD is more solid/mature overall but may require some more screwing around with and doesn't offer a nice, out of the box, trouble free dumb terminal solution as Sun Rays do.
    -Linux is fine, lots of people use it personally and we have many Linux support groups, but for the big servers that have to be solid more than perform at the bleeding edge, I would put a cautious vote against this vs. the other two options above.

    Lastly, thank you for fighting and not selling another CS lab to Windows. Students I think will be better prepared at large when exposed to a non-toy operating system and are forced to use it to at least some productive degree. I myself log in via SSH from an XP box and run Exceed (X Windows server), start up emacs, and between that, a GDB buffer, and the terminal, I may as well be sitting at a lab computer. (with lag, as would be expected but not bad at all)

  7. Hardware, not software by Fished · · Score: 3, Insightful
    Having administered computer labs running both Linux and Solaris, I think you'll find that software is less important than hardware. PC hardware tends to be cheap and inconsistent - I have not encountered any PC hardware that gives the day-to-day reliability of even a crappy Sun like an Ultra 5. In terms of Software, you just get a lot more out of the box with Linux that you will spend weeks downloading and compiling on Solaris. For example, KDE, GNOME, a modern version of perl, StarOffice, etc. all come stock with a Linux distro, but have to be added to Solaris.

    On the other hand, there's no reason you have to run Linux on Intel. You could get Macs, as one person suggested, or even load Linux on Solaris. Of course, if you get Macs, why not run OSX? Frankly, I think OSX is the nicest UNIX variant out at the moment, it runs everything you'd expect UNIX to run, AND it has two important bonuses for your purposes: (1) Microsoft Office available and (2) the NextStep programming environment (Cocoa), which is widely regarded as one of the finest ever made. It is also very managable, includes good and robust Java support, and Apple does a good job with updates and the like.

    --
    "He who would learn astronomy, and other recondite arts, let him go elsewhere. " -- John Calvin, commenting on Genesis 1
  8. Solaris. Use. Solaris. by nbvb · · Score: 3, Interesting

    Single Vendor Support.

    Hardware, software, servers. All one phone number.

    It matters. Anyone who says it doesn't has too much free time on their hands.

    A Sun system breaks, great, you call Sun, they come out and fix it. Then, if it was the HD that failed, you type "boot net - install", come back in an hour, and you have a fully working machine.

    Besides this, if done right, a Sun lab is a "WOW!" factor.

    When I attended Montclair State University, most labs were PC & Mac. We had one SPARC lab -- SPARCstation 5's & 20's.

    That was the "WOW" lab. Whenever the Dean needed to take someone on a tour, that was the lab they stopped in.

    And I have to tell you, as an undergraduate, it was DAMNED cool to work on Sun workstations ...

    Forget that KDE/GNOME/whatever bullshit argument. CS students will use whatever they have. It's *GOOD* for them to get exposed to other environments, whether it be OpenWindows/CDE (as it was in my day... Solaris 2.5.1) or CDE/GNOME or whatever.

    A desktop is a desktop. Forget this "it's familiar" or "it's easy" bullshit.

    What difference does the desktop interface make to people who are majoring in CS?

    If it does, they should reexamine why they're there.

  9. Go both for better education. by jellomizer · · Score: 3, Insightful

    If you are concerned with the educational value. I would suggest that you use both. Half Sun and Half Linux. Using Both platforms helps teach the students the difference and similarities between the two platforms. As well any programming differences. But the two platforms are similar enough to install the same set of GNU tools. You want your students to go into the market place with a good verity of platform knowledge. Plus if a class needs all Suns or all Linuxes they can just SSH to each other and open a remote X display for any GUI tools that they need. This helps encourage good platform independent programming.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.