(off topic - Penguin) What's wrong and right with Linux. Nov 1, 1999
By Steven J. Vaughan-Nichols, Sm@rt Reseller
Can You Trust This Penguin? Cheaper Than You Think Linux's Holes Fear Of Heights Loose Links What Else Did We Forget? Desktop Linux? Learning To Samba The Bottom Line
Let's get real. we all know there's a ton of Linux hype out there. A day does not go by without another vendor declaring Linux support. But there's also a lot of fear, uncertainty and doubt about Linux. In this exclusive report, Sm@rt Reseller cuts through the hoopla and reveals where Linux plays best, and where its use should be avoided. Some of our findings--based on our internal tests and interviews with key Linux experts--may surprise you.
Certainly, Linux has momentum. Shipments of the operating system are expected to increase 25 percent annually through 2003, predicts International Data Corp. But those numbers can be misleading. Linux has yet to take root on the desktop and lacks many high-end features that Unix proponents take for granted.
Still, Linux has some clear strengths. With Samba for file serving and Apache for Web serving, it has proven to be a robust solution for file, print and Web servers. It's also an important operating system for network appliances, whether they are simple file servers or complete Internet solutions like Rebel.com's Net Winder OfficeServer, where stability and remote administration are top requirements.
Conventional wisdom says Linux is incredibly stable. Always skeptical, we decided to put that claim to the test over a 10-month period. In our test, we ran Caldera Systems OpenLinux, Red Hat Linux, and Windows NT Server 4.0 with Service Pack 3 on duplicate 100MHz Pentium systems with 64MB of memory. Ever since we first booted up our test systems in January, network requests have been sent to each server in parallel for standard Internet, file and print services. The results were quite revealing. Our NT server crashed an average of once every six weeks. Each failure took roughly 30 minutes to fix. That's not so bad, until you consider that neither Linux server ever went down. This test, coupled with our technical staff's extensive Linux and NT experience, leads us to believe that Linux truly is more stable than NT on uniprocessor servers.
Cheaper Than You Think
Linux also is cheap--but you may not realize how cheap. Install Linux on a server, and all of your customers can access that server for free. By contrast, nearly all other server operating systems require client access licenses. Those licenses can cost anywhere from $30 to $40 per desktop. Multiply that "per seat" license by 50 users, and suddenly the price tag for a non-Linux environment jumps from $1,500 to $2,000.
Your customers can't beat Linux when it comes to hardware costs, either. With Linux, any low-end Pentium server (heck, even many 486s) still can be a workhorse. Try any of the other major network operating systems on an aging Pentium box and see how far you get. Not even Microsoft has the guts to begin a Windows 2000 discussion here. Although Linux is considered a potential Windows killer, it's important to remember that it's also a threat to Unix variants. There's a reason why IBM, SCO and Sun Microsystems are moving quickly to Linux compatibility. All of those vendors have no choice, since many Unix resellers are taking the Linux plunge--at least on the low end.
Part of the reason for that is Linux already has many of Unix's client-server and host-based applications. With almost all major DBMSes now shipping, at least their database engines on Linux, the future looks especially bright for e-commerce, vertical-market resellers and even application service providers.
Linux's Holes
Even as major software developers embrace Linux, however, some office applications will lag. For example, Lotus is porting Domino Server (Notes' heart) to Linux; the Notes client for Linux is still a rumor. It's also unclear how many, and when, Notes developers will port their APIs to Linux. You must make sure that your customers' enterprise programs, especially those that are NT-based, will be available on Linux before doing the penguin hop.
Even if Linux clears the app hurdle, it stumbles when it comes to high-end networking. That's because the OS lacks numerous advanced features, such as a journaling file system (JFS). It also offers only basic support for symmetric multiprocessing (SMP), clustering and storage-area networks (SANs). Those holes should leave "true" Unix to dominate the high-end market for the foreseeable future.
Virtually all of the Linux experts we conferred with for this article agree that Linux needs a JFS, which would vastly improve reliability. With a JFS, a file server that crashes after someone accidentally cuts off the power (OK, we admit it has happened here) can be up and running with its files intact and restored in a few minutes. If your customer considers any length of downtime intolerable after a "normal" crash, a JFS is a must.
JFS is an architecture that logs all changes made to the file system. Introduced by IBM in AIX, JFS provides both additional speed and added security for high-end server operating systems by enabling them to check and restore files based on the operating system's own "memory" of the correct file ordering.
JFS could find its way into Linux, under the guise of the ext3 file system. Ext3, as blessed by Linus Torvalds himself, will be upward-compatible with the current ext2 file system, but is a few months from deployment. Silicon Graphics' open-source XFS file system also could make the grade as a JFS for Linux. Still, don't expect to see either of those file systems in commercial deployment until mid-2000, at the earliest.
Fear Of Heights
Linux also has scalability limits. Though commercial releases include SMP support, they don't cut the mustard for some customers.
"Linux has a hard time scaling much beyond two or four CPUs," concedes Aaron McKee, strategic products manager for TurboLinux Inc. "These configurations are far more common than some may give credit to."
SMP improvements are coming. Erik Troan, director of engineering at Red Hat, says the forthcoming Linux 2.4 kernel handles SMP "much, much better." The new kernel will be available in source code this month, but it won't find its way into commercial Linux releases until February. Still, scalability is relative. On low-powered, uniprocessor servers, Linux wipes the floor with both Windows NT and NetWare. We proved that in at least two recent head-to-head product reviews.
The story is dramatically different on high-end SMP servers. Here, NT outpaces Linux at file serving, and Solaris outraces them both in Web serving.
The moral of the story? Customers that need multiple low-end servers for basic networking likely will be quite satisfied with Linux. If you choose to recommend the SMP path, NT currently beats Linux for file serving, and Solaris outpaces both of them at Web serving.
Loose Links
Linux has at least two other shortcomings on the high end. Clustering technology for the operating system remains in its infancy, and SAN capabilities are, for the most part, nonexistent.
Just ask Open Source Initiative leader Eric Raymond. "[Linux] clustering is still bleeding-edge experimental," he concedes.
TurboLinux has a proprietary clustering product that works well in informal tests, but most Linux developers would like to see an open-source solution with better fail-over support.
As is, clustering fail-over support and process migration still needs work. For today, you should recommend and sell clustered Linux solutions only if you have a clustering guru on staff. It's not for the faint of heart or those new to Linux. If your customer demands clustering, IBM's AIX is likely the better option.
Linux also has weaknesses on the SAN front. The operating system does not score well when it comes to support for shared-storage options, whether done with Fibre Channel or SCSI. Work is being done toward both approaches, but you won't see results from that effort anytime this year.
A related problem is the use and management of logical storage volumes. As long as the file system is relatively fixed to the physical drive, neither Linux, nor any other operating system, is going to achieve six-figure (99.9999 percent) reliability, which is the magic number for many demanding e-commerce customers.
SGI's Irix file system, XFS, has a logical volume manager that might be able to divorce logical drives from actual hard drives. In theory, that will allow resellers to add and subtract physical drives without downtime.
However, XFS's logical volume manager may end up being a proprietary value-add, according to SGI lead engineer Jeremy Allison. If that is so, Linux developers will need to hack a solution on their own.
What Else Did We Forget?
In the Windows world, you can never have enough memory. But Torvalds insists that 2GB of memory is all that an x86-based Linux ever will demand. If you need more, he quips, there's always Alpha hardware, which Red Hat Linux supports. In theory, that combo scales to 8GB.
Other Linux supporters, like McKee from TurboLinux, claim that Linux for x86 needs a higher memory limit. "Some large Unix-based database servers, for example, are typically outfitted with 4GB, 8GB, or even more memory," he notes.
Large memory support isn't expected to debut in the Linux 2.4 kernel. However, you can expect to see it by mid-2000.
Linux also has shortcomings on the administration front. While Computer Associates and other systems-management vendors race to bring Linux into the managed operating-system fold, more work needs to be done.
"There is a robust set of SNMP tools and capabilities with Linux," asserts TurboLinux's McKee. "[But] most of these tools have not been tightly integrated into the operating system, and configuration can be a bit unintuitive for new users."
Indeed, without some manual configuration, McKee says a Linux box can appear as a black hole within most corporate networks that use network-management applications, such as Hewlett-Packard's OpenView and IBM's Tivoli .
Desktop Linux?
Notice how we've been concentrating on Linux as a server operating system? There's good reason. Desktop Linux--despite the K Desktop Environment (KDE) and Gnome graphical user interfaces (GUI)--still falls short of the Windows and MacOS competition. Themes, by which the desktop is made to look and feel like other operating systems or your customers' own unique GUIs, help, but the real problems lie in the lack of solid underlying tools.
Erik Troan, director of engineering for Red Hat, puts it well: "You start with a lack of applications. Corel is working [to correct this] with its complete Corel Office Suite, as is Sun with Star Office." But today, Troan concedes, he "still has to use second-tier checkbook applications, and we still need strong presentation software."
Why is that so? Because Linux lacks a unified desktop infrastructure API, a la Windows 9x. "With nothing similar to Microsoft's Common Object Model," says Troan, "it's harder to write end-user GUI applications." Until Linux has a common object layer, writing desktop applications will continue to be slow.
Enter Inprise's Delphi and Corel's forthcoming Kylix rapid application development (RAD) for C, C++ and Delphi. Kylix also will implement the Borland Visual Component Library (VCL), giving Linux an object-style layer. For Windows or Mac developers who want to do a little work with Linux, those are exactly the kind of packages needed to start porting applications to Linux.
Meanwhile, Corel is leading the way to an end-user-friendly GUI. Based on what we've seen, it looks like Corel could improve Linux's GUI by the end of this year.
And for a business deployment, Corel's Linux and WordPerfect Suite for Linux may be all the applications an office customer needs.
Whether any businesses will be willing to swap out Windows and Microsoft Office for Corel's Linux alternatives remains to be seen.
Learning To Samba
Strictly speaking, Samba, the open-source Common Internet File System (CIFS) file and print server, isn't a Linux product at all. Samba also can be found providing Windows NT file and print services for FreeBSD, SCO UnixWare and even Solaris (thanks to Veritas Software Corp.).
With Samba, almost any Unix machine can be transformed into an NT server, at least from an end user's viewpoint. Samba also is fast. In our recent review of Samba, we found that on modest single-processor systems, Samba's NT services ran rings around NT's own services.
Samba isn't perfect, but most horror stories about its use are exaggerated. Reports of corporations being halted in their tracks by someone placing a Samba system in an NT network as a primary domain controller (PDC) are completely misleading. Any NT network would come to a howling halt with NT systems dueling for PDC superiority. As an ordinary server or a backup domain controller (BDC), a Samba-equipped Linux box works as smooth as silk on NT networks. In one Sm@rt Reseller branch office, we've been running a pair of Samba boxes with NT PDC and BDC boxes since March. During that time, we've never seen a hint of a conflict.
Fast, stable and secure--so what needs improvement? Lots of things, according to Jeremy Allison, a leading Samba developer and SGI engineer.
Support for Samba as a PDC is a major, ongoing issue, which is "'bloody hard." NT printer-driver support is almost there, but almost only counts with horseshoes and hand grenades--not printers.
Another "exciting" project is WinBind. When successful, WinBind will replace Linux user and group authentication with NT PDC access. In brief, Samba users will have only a single log-in for access to all CIFS, NT, and Samba file and print services. Currently, on hybrid NT/Unix networks, a user must log in to the Linux box and then log in to the NT side to access all available drives.
Samba also currently lacks the ability to map NT access control lists (ACLs) to Portable Operating System Interface for Unix (Posix) ACLs. But, it can map NT ACLs to standard Unix permissions. For many potential customers--especially federal government offices--Posix compliance will make Samba solutions much more compelling.
As it sits, Samba only works with the ASCII character set. SGI's Allison is working to build Unicode support into Samba. Unicode is an ASCII superset used to represent up to 65,356 characters instead of ASCII's 256. That is important because Unicode is the character representation set of choice for most non-Roman alphabets. Practically speaking, Samba will become more viable for international customers after that change is implemented.
Finally, the Samba team isn't just working on making Samba a better NT than NT within its range. The group already is working on Windows 2000 "down- level" compatibility--the same level of Windows 2000 interoperability that NT 4 will have under Windows 2000 networks.
Face it: Thanks to Samba, Microsoft-style file-and-print serving is now as ubiquitously available on Unix servers as it is on NT. Even better, it's faster than NT on modest servers--and more stable.
Advantage: Samba.
Can You Trust This Penguin? The Bottom Line
All things considered, Linux makes a great server operating system from the low end up to middle tier. Assuming Linux can run the applications your customers need, it's very hard to beat in those markets.
On the desktop and in the enterprise arena, however, Linux continues to have its problems. And, despite the endless reams of hype, we don't expect that to change anytime soon.
Saint Or Sinner?
Halos: Cheap Fast Stable
Horns: Limited SMP support Lacks JFS/Advanced storage options Limited clustering support
Total Cost Of Ownership (TCO)
Data: Cost of a 50-user Windows 9x network that accesses file and print services via Caldera Linux or Windows NT. Also, minimal server configuration assumed... The following is where the home page is. zdnet.com
My only contact is a request for permission to post a specific article.
Note: Do not copy or reference this SI Doug A K post, per see below.
Copyright (c) 1999 ZDNet. All rights reserved. Reproduction in whole or in part in any form or medium without express written permission of ZDNet is prohibited. ZDNet and the ZDNet logo are trademarks of Ziff-Davis Inc. |