This Time Self-Hosted
dark mode light mode Search

Apple’s Biggest Screwup — My favourite contender

Many people have written about Apple’s screwups in the past — recently, the iPad Mini seems to be the major focus for about anybody, and I can see why. While I don’t want to argue I know their worst secret, I’m definitely going to show you one contender that could actually be fit to be called Apple’s Biggest Screwup: OS X Server.

Okay, those who read my blog daily already know that because I blogged this last night:

OS X Server combines UNIX’s friendliness, with Windows’s remote management capabilities, Solaris’s hardware support, and AIX software availability.

So let’s try to dissect this.

UNIX friendliness. This can be argued both positively and negatively — we all know that UNIX in general is not very friendly (I’m using the trademarked name because OS X is actually using FreeBSD which is UNIX), but it’s friendlier to have an UNIX server than a Windows one. So if you want to argue it negatively, you don’t have all the Windows-style point-and-click tools for every possible service. If you want to argue it positively, you’re still running solid (to a point) software such as Apache, BIND, and so on.

Windows’s remote management capabilities. This is an extremely interesting point. While, as I just said, OS X Server provides you with BIND as DNS server, you’re supposed not to edit the files by hand but leave it to Apple’s answer to the Microsoft Management Console — ServerAdmin. Unfortunately, doing so remotely is hard.

Yes because even though it’s supposed to be usable from a remote host, it requires that you’re using the same version on both sides, and that is impractical if your server is running 10.6, and your only client at hand is updated to 10.8. So this option has to be dropped entirely in most cases — you don’t want to keep updating to the latest OS your server, but you do so for your client, especially if you’re doing development on said client. Whoops.

So can you launch it through an SSH session? Of course not, because despite all people complaining about X11, the X protocol, and SSH X11 forwarding, are a godsend for remote management, if you have things like very old versions of libvirt and friends, or some other tool that can only be executed on a graphical environment, you only need another X with an SSH client and you’re done.

Okay so what can you do? Well, the first option would be to do it locally on the box, but that’s not possible, so the second best would be to use one of the many remote desktop techniques — OS X Server comes with Apple’s Remote Desktop server by default. While this is using the VNC standard 5900 port… it seems like it does not work with a standard VNC client such as KRDC. You really need Apple’s Remote Desktop Client, which is a paid-for proprietary app. Of course you can set up one of many third party apps to connect to it, but if you didn’t think about that when installing the server, you’re basically stuck.

And I’m pretty sure that this does not limit itself to the DNS server, but Apache, and other servers, will probably have the same issues.

Solaris’s hardware support. This should be easy, if you ever tried to run Solaris on real hardware, rather than just virtualized – and even then … – you know that it’s extremely picky. Last time I tried it, it wouldn’t run on a system with SATA drives, to give you an idea.

What hardware can OS X Server run on? Obviously, only Apple hardware. If you’re talking about a server, you have to remove from the equation all their laptops, obviously. If it’s a local server you could use an iMac, but the problem I’ve got is that it’s used not locally but at a co-location. The XServe, which was the original host for OS X Server, is now gone forever, and that leaves us with only two choices: Mac Pro and Mac Mini. Which are the only ones that are sold with that version of OS X anyway.

The former hasn’t been updated in quite a long time. It’s quite bulky to put at a co-location, even though I’ve seen enough messy racks to know that somebody could actually think about bringing it there. The latter actually just recently got an update that makes it sort of interesting, by giving you a two-HDDs option…

But you still get a system that has 2.5”, 5400 RPM disks at most, with no RAID, and that’s telling you to use external storage if you need anything difference. And since this is a server edition, it comes with no mouse or keyboard, just adding those means adding another $120. Tell me again why would anybody in their sane mind use one of those for a server? And no don’t remind that I could have an answer on the tip of my tongue.

For those who might object that you can fit two Mac Minis on 1U – you really can’t, you need a tray and you end up using 2U most of the time anyway – you can easily use something like SuperMicro’s Twins that fits two completely independent nodes on a single 1U chassis. And the price is not really different.

The model I linked is quote, googling, at around eighteen hundreds dollars ($1800); add $400 for four 1TB hard disks (WD Caviar Black, that’s their going price as I ordered, since last April, eight of them already — four for Excelsior, four for work), you get to $2200 — two Apple Mac Minis? $2234, with mouse and keyboard that you need (the Twin system has IPMI support and remote KVM, so you don’t need them).

AIX’s software availability. So yes, you can have MacPorts, or Gentoo Prefix, or Fink, or probably a number of other similar projects. The same is probably true for AIX. How much software is actually tested on OS X Server? Probably not much. While Gentoo Prefix and MacPorts cover most of the basic utilities you’d use on your UNIX workstation, I doubt that you’ll find the complete software coverage that you currently find for Linux, and that’s often enough a dealbreaker.

For example, I happen to have these two Apple servers (don’t ask!). How do I monitor them? Neither Munin nor NRPE are easy to set up on OS X so they are yet unmonitored, and I’m not sure if I’ll ever actually monitor them. I’d honestly replace them just for the sake of not having to deal with OS X Server anymore, but it’s not my call.

I think Apple did quite a feat, to make me think that our crappy HP servers are not the worst out there…

Comments 10
  1. Just a quick addition: you can access any ARD-enabled Mac including any OSX server instance with the screen sharing app included by default in /System/Library/CoreServices. A bit hard to find, but works great. You don’t get the manual bandwidth adaption options included in the ARD client, but usually, you don’t need those anyway.

  2. Umm you know you it also allows VNC connections. System Prefs>Sharing>Remote Management(Remote Desktop)>Computer Settings>VNC viewers may control screen with password (password optional but suggested).

  3. That’s always _if_ you know to do that when you have it at hand. If you end up trying to manage something that somebody already put in place at a co-location that’s soon going to be on the other side of the globe for you, the fact that there is such a setting doesn’t help.feepk, I remember there was something like that but I couldn’t find it again, I’ll see if that thing works here this time around…

  4. Ok there are so many glaring holes in this dissection it’s comical.1. You can remote manage a 10.8 and 10.7 Server with the 10.8 Server tools. 10.6 you can do 10.5 and 10.4. If you are using the most current OS for development VNC is your friend (See above).2. You can also put 2x 256GB SSD’s in the mini for much faster than 5400rpm speeds. You don’t NEED the keyboard and mouse. On the 10.5 or 10.6 Server disks there was a program to remote install os x server. It’s now a default app in the utilities folder.3.http://http://www.amazon.com/Macrack-Mini... (1U 2 mini’s $169)4. You don’t NEED a mouse and keyboard. If you WANT them you can pick up any $5 bargain basement usb keyboard and mouse you want it’ll work.5. SNMP is your friend.

  5. You can’t remote a 10.6 server with 10.8 server tools, which is the problem I’m having.Sure you can put SSD, but what about that anyway? The price it has is outrageous for most of the stuff you’d use a mac mini as a server for, if you want high performance you get something better than a mac mini anyway.And yes, as I said you can technically put it in 1U … but how about when you need to take one down? It also only works for the latest versions that don’t use the powerbrick — if for whatever reason you have a Mac Mini _with_ the powerbrick, then you’re back to 2U. Guess what I have in front of me?And by the way if you say “SNMP is your friend”, you never had to monitor real servers — I guess that’s why you can’t see how OS X Server is a puny failure.

  6. @Flameeyes: As Jonahan mentioned, Mac OS X machines support VNC out of the box. Sure, the easiest way to enable it is through the GUI. However, it IS possible to SSH into the box and enable VNC through the command line. I know because I had to do it once. It took a lot of Googling, but there are 1 or 2 relatively simple commands to enable VNC, and then I was able to connect from my Linux box via a standard VNC client.Easy when you know how. Regrettably, I didn’t write down how to turn on VNC from the command line. But don’t give up hope– it can be done.

  7. Here, we go (top Google hit for ‘mac os x enable vnc from command line’):http://technotes.twosmallco…I’m not in a position to test it right now, but I hope it can solve your problem. I remember when I was tearing my hair out over this same problem a few years ago (“I want to test this Mac bug fix right now but I won’t be sitting at my physical Mac machine again until next week!”).

  8. Thanks Mike, that helps! I did find a number of posts telling how to enable it with the GUI, but didn’t catch that one.It still makes it no better than Window is for half the stuff you either have to have a VNC connection or google up some esoteric command…

  9. No sane company would claim “AIX’s software availability” as a positive point to their system. I’ve had the pleasure of being a system administrator in a department that isn’t IT, so I get to sit and watch the actual IT department bumble around with an AIX 7 server. It doesn’t help that the administrator of that server is one of the “it must be a package from the vendor or nothing” types and doesn’t know how to compile his own software or write scripts. As such, he’s stuck with IBM’s “AIX Toolbox for Linux Applications” package, full of such gems as cURL 7.9.3, released in 2002, which doesn’t even support FTPS. Then again, I suppose it could have been a joke of some sort that Apple’s PR department took too seriously.

  10. Yes I can talk about AIX as well. OS X is in much better shape for software availability at least from my point of view – writing this on an old iMac and really pondering on the decision of to switch those power7 box to linux – unfortunately not Gentoo. I want a linux-ppc64 prefix 🙁

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.