Daniel Eran Dilger
Random header image... Refresh for more!

Inside Mac OS X Snow Leopard Server: Apple’s server strategy

Apple server history

Daniel Eran Dilger

Years before Mac OS X 10.0 was first released in 2001, Apple launched Mac OS X Server, targeting its newly acquired Unix-based operating system technology at the education and workgroup server market. Apple has struggled ever since to find a broad server strategy that works. The solution may be as obvious as the iPhone App Store.

Inside Mac OS X Snow Leopard Server: Apple’s server strategy

Mac OS X Server has remained firmly stuck in the background even as Mac OS X has blossomed. Over the last decade of Mac OS X’s development, Apple transformed its legacy Mac operating system from an outdated relic stuck in maintenance mode throughout most of the 90s into a highly regarded system that gets as much or more respect from industry critics as any other desktop operating system.

Apple accomplished something that many others in the industry failed to do: marry the power and familiarity of Unix with accessible ease of use in a commercially successful product. Ray Noorda tried to do this at Novell in the early 90s; Caldera’s OpenLinux also failed to take over the task from Novell ten years ago. United Linux and a series of followup attempts to standardize Linux all failed to accomplish their aims. A variety of efforts to sell Linux to consumers since then have all made very little progress outside of a small niche of hobbyist users.

Apple’s ability to successfully tame Unix, something it largely inherited from Steve Jobs’ NeXT and the years and tens of millions that went into creating what would eventually become Mac OS X at Apple, seemingly should have resulted in tremendous success for Mac OS X Server as well. But that never really happened.

Apple’s miserable server history: 1985 – 1998

Unlike NeXT, Apple never really managed a serious server business. In the mid 80s, Jobs originally had pushed Apple’s management to invest in aggressively selling the Macintosh to businesses following the model of the original Xerox Star machines which the Mac team had drawn many of its original design influences from.

Jobs envisioned a Macintosh Office, where Macs were networked with shared laser printers and file servers. That vision would prove to be well ahead of its time for the mid 80s; after being ousted from Apple, Jobs took his concepts to NeXT and built just that. His original NeXT Computer supplied advanced networking savvy, state of the art desktop laser printing, and delivered the server power of its underlying Unix foundation with ease of use that rivaled or exceeded the Macintosh.

Meanwhile, Apple leisurely shipped AppleShare software for turning a Mac into a dedicated file server; it attempted to shoehorn background services into what was really a simple appliance desktop OS that wasn’t really up to the task. The company also began selling A/UX, a version of Unix with some basic integration with the Mac System 7 desktop. Apple later partnered with IBM to deliver Apple-designed servers running AIX (IBM’s distribution of Unix), targeted as serving Mac clients in education. None of these efforts were taken very seriously.

When Apple acquired NeXT, the small niche of ‘powerful development tools on a Unix foundation’ that NeXT had struggled to assemble in its desperate plans to sell its advanced technology in some fashion ended up being associated with Apple’s own inability to deliver serious server gear or a coherent strategy. The customers NeXT had managed to collect mostly jumped ship, leaving Apple with the NeXT Curse: lots of great technology but no idea how to effectively market it.

Apple server history
Mac OS X Server: 1999 – 2009

Apple’s first plan was to simply drop NeXT’s advanced desktop operating system onto its Mac hardware and present its customers with a single huge upgrade: blazing performance, far greater reliability, powerful server and networking features, advanced development features, and much greater compatibility with foreign computer systems. The new system was code-named Rhapsody, to fit in with Apple’s series of music-related names for Mac OS releases, including the never released Copland and Gershwin as well as Harmony (Mac OS 7.6), Tempo (Mac OS 8), Allegro (Mac OS 8.5), and Sonata (Mac OS 9).

Mac users were suspicious of the new changes Rhapsody would bring, but Apple’s third party developers were furious. Such a plan would require a massive overhaul of their applications, with no guarantee that the new Mac platform would even sell. Their massive resistance resulted in Apple backpedaling to plan B. That involved spending several years merging existing Mac OS procedural development APIs into the new operating system so that existing legacy Mac code from Adobe, Macromedia, and Microsoft could continue to sell “as is” on the new system, with only minimal work from the developers.

It would end up taking nearly five years for Apple to ship a version of Mac OS X that could serve as its official replacement for the old Mac OS, which Apple continued to update and sell in the interim. At the same time, Apple almost immediately shipped the existing Rhapsody as Mac OS X Server 1.0, which was essentially NeXT’s operating system with a minor interface overhaul designed to make it look more like a Macintosh.

Mac OS X Server evolved into a “bonus package” of server tools applied to each new release of the desktop Mac OS X. Those server tools were aimed at managing groups of Macs and providing file and print services. At a time when the “Network Computer” was turning into a raging buzzword, Apple delivered NetBoot as a service of Mac OS X Server, which allowed administrators to boot up iMacs over the network using a single disk image.

Apple’s modern server strategies

Apple continues to sell Mac OS X Server, primarily to its education users, but has never managed to make much of an impact with its server operating system despite its being relatively easy to set up and use. In 2002, Apple debuted the Xserve as its return to selling dedicated server hardware. The new model made some impact in high performance computing but has never been a major part of Apple’s hardware revenues.

Given that Apple is now a major player in serving its own media store with iTunes, the world’s leading mobile software outlet in its App Store, manages a leading HD movie trailers video service, and serves up push messaging and cloud sync services to millions of paying customers, one might wonder why Apple’s own server products haven’t caught on better in the general market for server software.

Apple continues to develop consumer and workgroup server products in a variety of overlapping and complementary areas:

Mac OS X Server: Apple’s server package supplies core network services such as DNS, DHCP, web, file sharing and printing. Directory services supply a level of security and convenience for network services, providing users with secure single sign-on for everything they need to do, all without transmitting their actual passwords over the network.

Collaboration: Mac OS X Server has also expanded in recent releases to offer a series of new workgroup services: calendaring, contacts, wiki collaboration, and of course email and instant messaging. This package offers an alternative to Exchange Server and in some cases SharePoint, although many Exchange admins are quick to revile the product as not being identical in scale and scope to Microsoft’s offerings. Still, Apple’s product costs very little for a group of 100 users, while Microsoft’s popular alternatives quickly add up to cost tens of thousands of dollars.

Mac OS X Server costs
iPhone services: Apple is also integrating Mac OS X Server with its iPhone platform, serving up customized wiki pages to mobile users, supporting a new secure proxy called Mobile Access that allows users to access their Intranet and sync their email, calendars and contacts via SSL without having to manually set up a VPN connection.

Podcasting: A relatively new feature of Mac OS X Server, Podcast Producer, allows schools and companies to set up advanced workflows for digitally taping lectures and events and automatically submitting them to a server system that processes the video, adds corporate titling and video effects, and then distributes the finished product as podcasts via iTunes, QuickTime Streaming Server, or a local media library.

Xgrid: A key feature of Podcast Producer is its integration with Xgrid, Apple’s network distributed processing technology. Xgrid allows a company to set up client machines to accept tasks from the server when they are idle, which results in video processing at supercomputer speeds with zero additional hardware purchases.

Mac OS X Server suffers from a split personality that on one hand seeks to be point and click simple for Mac users, and on the other hand attempts to provide advanced users with a large degree of control. Most users will quickly graduate from the basic “Server Preferences” admin tool and want to dive into the more complex world of Server Admin, but the inherent complications involved with managing a server can overwhelm many Mac users expecting wide open flexibility and sheltered simplicity in the same package, at the same time.

Pro Apps: Apple’s server products have also meshed with the company’s Pro Apps. At the end of 2006, Apple acquired Proximity’s “artbox” products for video asset management, and released the technology as Final Cut Server early last year. The product doesn’t require Mac OS X Server, but can scale up from a workstation to a large installation running on server hardware.

Database: The company’s FileMaker subsidiary quietly makes workgroup database products that similarly don’t require Mac OS X Server, but can scale up from a desktop installation to a server-based network deployment.

Server hardware: Apple continues to sell its Xserve, and expanded its server offerings in designing a relatively low cost Fiber Channel RAID appliance in 2003; it discontinued the effort five years later to delegate its RAID storage sales to a partner.

SAN software: It continues to sell Xsan, a software product designed to allow multiple servers or clients to access a networked storage appliance at once as a local drive (called a “Storage Area Network”), rather than as a network file server; this allows for multiple servers to share the same storage pool and provides for advanced fallback, so that a server can fail and a secondary backup system can take over, reading the same storage (such as its email or database store) rather than requiring a backup recovery.

Cloud services: It has become fashionable to ridicule Apple for being behind in the scramble to announce “cloud services” initiatives, but Apple has been operating .Mac and its rebranded MobileMe to a population of a few million paying customers. The original rollout of MobileMe in tandem with iPhone 2.0 was flawed, but Apple quickly took steps to correct problems and has delivered competitive push messaging and online services that have expanded in innovative ways at regular intervals. The company added iDisk access to cloud files from the iPhone and iPod touch, and created new “Find my iPhone” messaging, remote lock and wipe features that very few other consumer mobile devices can claim.

Leveraging third party server support

Apple’s biggest problem with its server offerings may be that the company is trying to run the entire show. There are some third party server products designed for use with Mac OS X Server, including IBM’s Informix Dynamic Server for online transaction processing, or Oracle’s Database 10g product. Users are also free to install their own open source projects and develop their own custom server apps using the tools Apple bundles with Server, including Perl, PHP, Ruby and Rails.

What Mac OS X Server is really missing however is a third party ecosystem of supporting players who have a vested interest in selling the operating system. IBM and Oracle are supporting Mac OS X largely just to cover the bases. Apple lacks any real motivation for third parties to actually deliver server software solutions based on Mac OS X technologies.

That could change if the company adopts an iPhone App Store for its server platform, something the company is also expected to do for its desktop Mac platform. Currently, Apple bundles a variety of open source engines into Mac OS X Server and presents a cohesive administration interface for them with Server Admin, along with a dramatically scaled down admin tool called Server Preferences, which is designed for the entry level users with only the most basic needs.

Server Admin as an App Store

This modular architecture could easily be retrofitted to support third party server applications simply by adding a download and configuration storefront adapted from iTunes. Open Source developers could customize existing products to integrate with Mac OS X’s directory services in order to inherit existing user accounts and permissions and to make it easy to secure the server using the existing interface in Server Admin for setting Service Access Control Permissions to limit administrative rights to individual server features.

Just as with the iPhone, this would instantly create a viable market for developing server applications on Apple’s platform. There are a variety of third party server opportunities that would sell Mac OS X Server along with Xserve hardware, but which Apple is unlikely to ever address on its own:

Phone PBX: Office telephony systems are notoriously expensive, but open source projects like Asterisk make it relatively easy to replace dedicated phone systems with a Unix-based server. With a Mac OS X Server Apps Store, there are plenty of companies that would jump at the opportunity to sell ready to go systems that only required plugging in some phone hardware and downloading a server app with a customized Server Admin pane for configuration. It would be easy to deeply integrate office phones with iChat messaging, Bonjour discovery, unified mailbox messaging, and other features that typically cost ridiculous sums from other sources. That application alone would result in thousands of Xserve sales as companies dumped their old PBX systems to go digital with a cost effective, open, and inexpensive system

Specialized Media Servers: Apple bundles its aging QuickTime Streaming Server with Icecast-style MP3 Internet radio streaming, but third parties could provide a variety of alternatives that offered specialized media server features, including a shrink-wrapped solution for serving up HTTP Live Streaming video feeds to iPhone clients. Again, competing server software developers could offer a download package to configure background services that are easy to setup and use in Server Admin. This again would sell many users on the virtue of buying an Xserve as a ready to go solution to media serving needs, from Internet broadcasting to teleconferencing.

Document and media asset management servers: Apple provides basic AFP, SMB, and NFS file serving. Lots of users have special needs for cataloging specialized documents or media assets. Apple’s own Final Cut Server could be sold as a plugin module to Mac OS X Server for central administration. Again, third parties would sell Xserves for Apple as the vehicle for their offerings.

Customer Relationship Management: Companies pay through the nose to set up expensive, complex CRM solutions. With Apple supplying the server hardware and supporting operating system services, CRM vendors could taylor CRM offerings to deeply integrate into companies’ existing resources and provide Apple with the CRM services savvy that it lacks.

Search and Web Services: Apple’s included Wiki collaboration services are easy to use, but there is lots of unaddressed potential in web services that Mac OS X Server could supply if it provided a third party platform for vendors. Google could adapt its own search technology to match its own expertise with Apple’s in hardware. Other wiki providers, other web development tools, and even other blogging and e-procurement software could be wedded to Apple’s server operating system, marrying Apple’s core competency as a platform vendor with the specialized skills of third party developers.

There are too many other specialized server application opportunities to even mention them all. Currently, the market for server software revolves around custom development, resulting in either very expensive solutions or completely free FOSS based solutions that are out of the reach of anyone who lacks development savvy or the resources to acquire it.

Apple advertises Mac OS X Server as “open source made easy.” The next step will be making third party server apps accessible to Apple’s core markets, and alternatively, to spread Apple’s offerings into markets that currently see little relevance in the brand. To do that, Apple needs a build a market and leverage third party expertise.

  • deemery

    Another possible use for OS X Server is to build a home/small office server. That’s basically how I use OS X Server in my home office. The big problem with OS X Server is how hard it is to debug/troubleshoot. Too often you get messages like ‘your request cannot be handled at this time’. Apple has done some amazing things to bring various Unix/Linux based products together, but they’re all put together in one specific way. So debugging approaches that work on other Unix/Linux systems don’t necessarily align with Apple’s approach.

    Configuring Server is much more difficult than it should be. I’ve been stymied each time and had to hire a consultant to do it. Things have to be set up a certain way in a certain order… Right now I have Leopard Server (for internal use including LDAP/mobile accounts) running on an Intel Mini, and Tiger Server (for external facing websites) running on an old G4/933. The only problem that machine has is it’s been getting hammered by password guessers..

    But starting with version 5.6 or so, Mobile accounts finally started working correctly. That’s what I have on my laptop. When it’s connected on the home network, periodically it will connect and back itself up to the server. For a couple of versions of OS X.5, this stopped working altogether, but a later release fixed whatever was causing my problems.

    I have not tried Snow Leopard server, my experience is with Tiger and Leopard server products.

  • Pingback: Roadmap for MAC OS X Server « Chicago Mac/PC Support()

  • Didier

    Nobody seems to know what to do with OSX server in the real world not even Apple is promoting it to the public.

    It could be a good platform for small business but how would they be aware of it existence ?

    Where do you find training at a reasonable price and more on the user level ?

    Still a lot of work to do to make it really useful for Humans (as opposed to computer’s geeks)


  • MarkDemma

    There are 2 major obstacles to OS X server being adopted in any significant way into anything other than the smallest of companies. I’ve experienced these first hand because lord knows I’ve tried before. The biggest, and this is pretty much a show stopper, is the fact that Apple have no Enterprise support channel whatsoever at this time. I ran into this head on recently when trying to get a company owned MacBook Pro serviced recently. I ended up having to go into one of the retail stores and fight the lines there to get it serviced. There is no process in place to do RMAs or get on site service of parts. Apple seem to recongnise these deficiencies by offering to sell you spares kits for servers, but this is really only a solution for really small shops. To really be viable as a server vendor, Apple would first have to either build their own Enterprise support structure, or farm it out. I would imagine the first option would be quite costly and the latter simply not an option for a company that likes to control every aspect of their operation.
    The second major problem with using Apple as a server product is the extremely narrow band of server / storage offerings they make available. They simply don’t scale. You’d end up having to go to other vendors for all your storage beyond the small local drives and for anything requiring more power than you could get out of a 1U box.
    So you’d still have to have, for instance, Sun, IBM or HP boxes around for running your Database or, gods forbid, Exchange, etc. It just makes more sense to buy your 1U generic application / web servers from Sun, IBM, HP, or better yet these days, run a bunch of virtualized servers on a big box. It doesn’t make any sense to have to train your people to manage OS X server on top of knowing Unix / NT / Linux – which they probably know already.

    Now again, I like Apple products to the point that our VP Ops calls me a “fan boy” … but being realistic here… unless Apple were willing to pump enough money into A- building an enterprise support structure (and sales for that matter) and B- expanding the product range then they really won’t be a viable option for anything other than small businesses. And I think they know this and are fine with it. Honestly if they were to pump that sort of money into building Enterprise support it would starve other divisions to get into an already crowded marketplace that doesn’t have nearly as much markup as they enjoy with consumer level products.

  • ChuckO

    Apple advertises Mac OS X Server as “open source made easy.”

    Why is this so or what does this mean?

  • Hakalau Tom

    Dan, please fix the link to the “Hardware Costs” Figure. It now links to a blow up of to the next figure. Thanks.

  • http://www.adviespraktijk.info Berend Schotanus

    This is a nicely written article with deep historic knowledge and sympathetic ideas for the future. But I don’t know…

    The thing is that servers are such strange beasts somewhere in between visible, material end-user devices and abstract non-material cloud services. They smell like old-fashioned brick and mortar mainframes from a time when buying a computer involved making a building for it as well.
    The power of Apple lies in selling those good looking mostly portable end-user devices that connect seamlessly to invisible but still understandable services. In providing those services Apple is pragmatic in deploying both centralized server-like solutions and decentralized peer to peer technologies like Bonjour.
    One of the main attractions from Apple to me is that they are able to think in decentralized solutions. I am very happy my iPhone is syncing to my own computer and not to a Danger/Sidekick-like distant server. Apple devices are smart: they can interact with their environment but don’t require any centralized server or service to be up and running. Apple has been able to providing many network services by annihilating the server altogether: you can make a network printer by connecting any printer to an AirPort Express, you can get centralized back-up by buying a Time Capsule. Other traditional server functions have been upscaled to specialized firms like Google and Yahoo due to the possibilities of the internet.

    Sure, if you are a cloud company you will need physical servers. But you will probably be able to solve the mysteries of building a computer of raw components as well. You will be likely to use things like Unix / Linux / Asterisk / Apache and what would be the added value of the famous Apple veneer?

    Yes, it would be gorgeous to build business solutions upon OS-X because OS-X is such a great system. It is great that there is OS-X Server that is still kept alive anyway. But I find it hard to imagine where the added value would be between decentralized device based solutions on one side and highly specialized distant cloud services on the other side.

  • http://www.adviespraktijk.info Berend Schotanus

    On second thought I want to revise my opinion that servers don’t matter. An important reason for companies to use servers instead of the cloud could be to protect their mission critical data. An important reason why just personal devices is not enough would be to enable a further level of collaboration.

    The reason I was rather negative about servers is that in my own career I have only worked with crappy dull servers that didn’t do what you really wanted and required a work around as soon as possible. Basically I have never seen them doing more than printing, email and filesharing. Of course this is the very same reason why Dan is enthusiast about the cool new 3rd party server apps he is proposing.

  • MipWrangler

    Dan, I think you are on to something here. Having easy access to install services on a server box could save effort and even be a selling point, especially if those services are easy to administer and customers have access to enterprise class support.

    In your article you note that there are some FOSS server “titles” for OS X, but one thing I was surprised you didn’t mention, as it may strengthen your argument, is that many of the FOSS operating systems have exactly what you propose for OS X already. Debian derivatives have apt, and PackageKit. RedHat derivatives have yum. BSD derivatives (and some Linux distros like gentoo) have ports. Indeed there is a version of ports for OS X called macports. Most of these tools even have one or more GUIs built on top of them. There is even an GUI for macports called Porticus.

    GUI administration plugins isn’t new to the FOSS world either. Both gnome and kde have facilities to do this. Admittedly I’m not sure how often they are used given many who manage FOSS servers are comfortable (in many cases prefer) using the command line to interact with the machines.

    I think you make a good case for what value Apple could bring to the table so no need to repeat. It will be interesting to see if Apple finds this to be a large enough revenue stream to pay attention.

  • pedrocandrade

    Interesting article, Daniel.

    Any clues as to where I could find a background on Microsoft’s Server strategy? It would be helpful to compare.