Live data from Hacker News

Why the data center needs an operating system

radar.oreilly.com

71–80 of 102 posts

Re: Why the data center needs an operating system

#71
post #32

I definitely wouldn't consider Mesos to be anything like an operating system for the datacenter. That's just marketing language and confuses things. Mesos is basically an application scheduler. It doesn't manage the base operating systems or machine provisioning. Mesos is concerned with ensuring that one or multiple applications are launched and running on a cluster of machines. The Saltstack framework is the only th…

Mesos itself doesn't do scheduling - it merely does allocation and allows applications built on top of it to schedule to workload.

Re: Why the data center needs an operating system

#72
post #26

It's interesting and great to see this stuff take center stage more and more. Those lucky enough to work at places like Twitter, Google, Facebook and other large tech companies will have already seen how this kind of thing dominates the datacenter's there and has been at the core of their systems for many years. People on the outside though are rarely exposed to this concept of datacenter scale computing aside from t…

> Google SREs by last count were 1 engineer to 1000 machines That number does not seem particularly impressive, if it is accurate. Even "traditional" well-run enterprise IT organizations are often in the 1 admin/SRE to 600-ish machines, so I have a hard time seeing that Google can only do ~2x as good at their scale and with their level of focus. 1 SRE to 5k machines, 10k machines, that makes more sense to me.

It doesn't matter how high scale google gets, hard drives still fail at the same rate.

Re: Why the data center needs an operating system

#73
post #67

Earlier quoted context omitted.

The problem with this is that singular systems require a lot of engineering effort and produce interesting side effects when you attempt to make them reliable. Any singular system is going to fail.

Ok, get two huge systems instead of a datacenter of small systems. You still have made great strides in reducing complexity.

and sharing state between them? or ensuring that only one is doing things when only one should be doing things? (STONITH needs to be implemented somehow)

the performance penalties you enjoy if you go down the shared disk path (which is still going to be a fun failure when it does fail)

Re: Why the data center needs an operating system

#74

Earlier quoted context omitted.

While I take your point, "local" is a leaky concept inside a data-center. On a fast network, "in cache on the neighboring computer" can be closer than "on my hard drive" for most purposes. It seems like what might be ideal would be a specification language that doesn't care where things are, an implementation that tries to deal with that automagically, and a way to specify portions (to all) precisely that is checked…

Absolutely. In-core on a neighboring machine can be accessed in less than 1ms. On-disk on the local machine (or any machine) can take tens of seconds.

"On-disk on the local machine (or any machine) can take tens of seconds"

Surely you meant 10's of milliseconds. But even so, fastest SSD random access latencies are in sub-millisecond ranges.

Re: Why the data center needs an operating system

#75
This stuff is very confuse, and it confuses all the HN commenters even more.

There is no such thing as a datacenter OS.

Simplification: An OS is a kernel and it's associated base software.

The kernel drives the hardware. You need to talk to disks. Memory. what not. Kernel is needed. You need to talk to the kernel and tie these components together. You write software. Boom, you have an OS.

A datacenter isnt a disk and memory and devices. its a bunch of computers which themselves drive these devices.

If you invented a "datacenter" with a bunch of disks and an API to drive them, then a bunch of CPUs and an API to drive them, and so on, you'll end up with a supercomputer and a single, unreliable, unsafe OS (which is exactly why nobody makes super computers anymore. They make clutsters of computers. Cheaper, more reliable. Clusters. Ie... datacenters).

The only thing that could be needed is a universal API for resource access. Need a db? Here's an API. Need disk space? Here's an API. and so on.

This is exactly what AWS is and does. S3 doesnt expose the OS. Its just a filesystem API. ELBs arent an OS. They're a load balancer API.

It turns out that below that, there's an actual traditional OS because thats the way it works reliably.

You have other ways to interconnect these systems in smarter ways (see plan9) but its always running a "regular" OS in the end, too.

Re: Why the data center needs an operating system

#76
post #51

Earlier quoted context omitted.

ha ha only serious http://www.catb.org/jargon/html/H/ha-ha-only-serious.html It's VAXocentrism for the 21st century. http://www.catb.org/jargon/html/V/vaxocentrism.html

Interesting to think that the assumptions of C as a language evolved mostly against the VAX architecture. It seems that if the VAX doesn't make a distinction, then C doesn't (tend to) have any concept of that distinction either. Examples: - Pointer types are basically fungible in C (otherwise there would be no void-ptr type) - There's no compile-time knowledge of the segment a pointer references to prevent you from d…

Against the PDP-11, which the VAX directly descended from, but yes. Unix and C were written for the PDP series.

Re: Why the data center needs an operating system

#77
post #56
post #51

Earlier quoted context omitted.

Interesting to think that the assumptions of C as a language evolved mostly against the VAX architecture. It seems that if the VAX doesn't make a distinction, then C doesn't (tend to) have any concept of that distinction either. Examples: - Pointer types are basically fungible in C (otherwise there would be no void-ptr type) - There's no compile-time knowledge of the segment a pointer references to prevent you from d…

Actually C disallows converting function pointers to/from void pointers.

Can you get away with that in pre-ANSI C? I wouldn't be surprised.

Re: Why the data center needs an operating system

#79
This screams Erlang all over the place: "portable", common API everywhere, automatic aggregation of resources, processes spawning wherever there is a CPU too a little bit too idle, process isolation...

I'm no Erlang expert, but it seems to me all the fundamental bricks are here (and were for multiple decades!) to build this "datacenter platform".

Re: Why the data center needs an operating system

#80
post #61
post #58

The article's premise is a poor introduction to the project. Sure, reinvent MOSIX if you want :) but don't pretend it'll serve more than a niche of a niche. Firstly, "distributed computing is the norm"? It's just not. Most businesses & app authors will never need to care about ultra-distributed computing, with all its problems and trade-offs. You can move faster with "local-only" computing and scale vertically very c…

> Secondly, who cares about "wasted" resources of a whole underutilised server when reliable dedicated servers are so cheap, and in such plentiful supply? The people bankrolling Google / Facebook / Twitter's electricity bills seem to care quite a bit. There is another trope that gets repeated often, (and this is not even remotely directed at you, just a digression hopefully somewhat on topic) "performant languages ru…

At Google scale it matters, sure. But most companies aren't Google scale. Writing your single-company 100-user CRUD webapp in Java or C++ "for performance" is the ultimate false economy.

/I used to work for a company that had a big Java app. We laughed at our client who needed 60 Rails servers to deliver worse performance than our single-instance app. But they probably saved more on dev costs than they spent on servers.

Post reply on HN