Offering Linux as a service, CoreOS has become the preferred distro for Docker -- and may go a long way toward making data centers more cloudlike
We're all accustomed to software updating itself. Windows has been 
pushing out auto-updates for more than a decade. Then browsers did it, 
then other client-side applications.
But server software? Servers are another story, particularly Linux servers. 
That's because we've treated servers like pets. We’ve carefully tended 
them and invested in redundant power supplies and so on -- anything to 
keep them up and running until we absolutely need to take them down. In 
the Linux and Unix world, a reboot has been an admission of defeat, and OS upgrades have been rolled out as part of a careful plan.
But today, in the cloud era, we’re starting to treat servers like cows: 
If one falls over, that's part of the business. Cloud architecture 
distributes applications and replicates data across many commodity 
servers, so you can pull the plug on one and everything still keeps 
running.
This tectonic shift in the way we view server infrastructure led Alex 
Polvi, CEO of the startup CoreOS, to a realization: If servers can go 
offline temporarily, that means you can push an OS update to them and 
reboot them without ruffling any feathers.
In essence, Polvi thought, this little downtime window would enable him to deliver a Linux operating system as a service.
Polvi derived the idea in part from observations of the browser world. 
When Google Chrome arrived, it automatically updated itself without the 
user's knowledge or permission, vastly accelerating security patching 
and feature additions. As Polvi puts it: "Over a relatively short period
 of time Chrome can move the whole Internet forward."
If you can do that to the front end of the Internet, why not the back end?
Docker to the rescue
As any horrified admin might tell you, the obvious argument against 
auto-updating a server OS is the unpredictable effect it might have on 
server applications.
Here's where Polvi got extraordinarily lucky: “We started working on 
this in about February 2013, right around when the Docker guys started 
working on their stuff.” Docker enables you to package applications and deploy them in Linux containers,
 a form of application virtualization. Containers isolate applications 
from the OS; if an element in the base changes, it doesn’t break all 
your applications.
But aren’t containers simply a feature of the Linux kernel? Here’s Polvi’s reply:
We shipped our first version in August 2013 and included Docker because we need containers to do what we do, so the momentum coming out of Docker created awareness of this whole ecosystem. From the very beginning, there’s been a CoreOS/Docker story going on: Two parts that merged somewhat serendipitously, but they’re both very complementary to one another.
In contrast to other Linux distros, which pile on features for admins, 
CoreOS is bare bones by design. CoreOS doesn’t even have versions: You 
decide whether your servers get updates through the Alpha, Beta, or 
Stable “channels.” The Alpha channel pushes out the absolute latest 
version; as Polvi notes, the Alpha channel pushed out Docker 1.3 two 
hours after it was in release. Beta and Stable are by turns further 
behind, but less likely to experience a glitch.
In creating a server OS that updates itself, Polvi says he’s constructed
 CoreOS around double-buffered updates so his service can atomically 
transition versions easily and roll back if there’s a failure.
You can see why InfoWorld contributor Matt Asay has called CoreOS an existential threat to conventional Linux distros: It completely commoditizes Linux. More than that, says Polvi:
We think we can make the OS effectively irrelevant. I mean, if it’s all auto-updating and takes care of itself, you shouldn’t have to worry about it anymore. CoreOS as an organization is maintaining it for you and you just worry about your application side. And we do it wherever you want it: On cloud, on bare metal, on your laptop. Don’t worry about it. Just focus on running applications.
Red Hat responded to the CoreOS threat by announcing in April that it would release Project Atomic, its own stripped-down, auto-updating distro. Not surprisingly, Polvi sees this as validation of his model.
The cloud computing proposition at its essence is an effort to vastly 
simplify the management of infrastructure -- but building so-called 
private clouds turned out to be very difficult. In offering Linux as a 
service and baking in Docker containers, CoreOS has gone a long way 
toward making data centers more cloudlike. 
Source: http://www.infoworld.com
 
No comments:
Post a Comment