background preloader

CoreOS

Facebook Twitter

Docker derailed? CoreOS’s rabble rousing might work. Right as Docker prepared to kick off DockerCon Europe 2014, CoreOS -- creators of a Docker-powered variant of Linux -- came out with a radical suggestion: Docker has problems, so try our container technology instead!

Docker derailed? CoreOS’s rabble rousing might work

The timing of CoreOS's announcement couldn't have been more awkward for Docker, and Docker wasn't shy about defending its position as an industry incumbent and technology leader, as well as insisting it had solutions in the works for many of the stated problems. But the question remains whether CoreOS has legitimate points to make and whether it'll take a full-blown schism in the Docker community to solve them.

The argument against The problems CoreOS cited revolve mainly around the architecture of Docker. It depends on a single daemon that requires root privileges to run, it has become top-heavy and unwieldy (does a software containerization system need a network overlay, too?) The argument in favor. CoreOS: Dump Docker for our more secure replacement. Every great movement goes through a schism.

CoreOS: Dump Docker for our more secure replacement

In the span of a little more than a year, Docker has allowed dev and ops alike to rethink how applications are hosted, deployed, and maintained. But not everyone has been happy with the fruits of the project. CoreOS, the company that used Docker containers to create a different type of Linux distribution, is among the disgruntled. The company's next project is to create a new container -- much to Docker's chagrin, it seems. CoreOS. CoreOS is an open source lightweight operating system based on the Linux kernel and designed for providing infrastructure to clustered deployments, while focusing on automation, ease of applications deployment, security, reliability and scalability.

CoreOS

As an operating system, CoreOS provides only the minimal functionality required for deploying applications inside software containers, together with built-in mechanisms for service discovery and configuration sharing.[6][7][8][9] Overview[edit] CoreOS uses systemd as its primary init system, with tight integration between it and various CoreOS' internal parts.[6][15] Updates distribution[edit] For additional security and reliability of updates, CoreOS employs FastPatch as a dual-partition scheme for its read-only root filesystem, meaning that the operating system updates are performed as a whole and installed onto a passive secondary root partition, which becomes active upon reboot or kexec. Cluster infrastructure[edit] Deployment[edit] Using etcd with CoreOS. Cluster-Level Container Deployment with fleet. Today I'd like to introduce our latest project, fleet. fleet builds on etcd and systemd to provide a distributed, fault-tolerant platform for deploying applications on CoreOS clusters.

Cluster-Level Container Deployment with fleet

The Basics With fleet, you can treat your CoreOS cluster as if it shared a single init system. It encourages users to write applications as small, ephemeral units that can easily migrate around a cluster of self-updating CoreOS machines. Architecture User job requests kick off a bidding process by the machines in the cluster. Read more about the architecture on Github. So... what can it actually do? Deploy docker containers on arbitrary hosts in a clusterDistribute services across a cluster using machine-level anti-affinityMaintain N instances of a service, re-scheduling on failureDiscover machines running in the clusterAutomatically SSH into the machine running a job Demo The API keys used in this video were revoked before it was posted — free AWS isn't a feature of CoreOS.

Subgun-http.1.service Amazon Learn More. Booting with PXE. CoreOS is currently in heavy development and actively being tested.

Booting with PXE

These instructions will walk you through booting CoreOS via PXE on real or virtual hardware. By default, this will run CoreOS completely out of RAM. CoreOS can also be installed to disk. Configuring pxelinux This guide assumes you already have a working PXE server using pxelinux. Setting up pxelinux.cfg When configuring the CoreOS pxelinux.cfg there are a few kernel options that may be useful but all are optional: rootfstype=tmpfs: Use tmpfs for the writable root filesystem. This is an example pxelinux.cfg file that assumes CoreOS is the only option. Default coreosprompt 1timeout 15 display boot.msg label coreos menu default kernel coreos_production_pxe.vmlinuz append initrd=coreos_production_pxe_image.cpio.gz cloud-config-url= Here's a common cloud-config example which should be located at the URL from above: You can view all of the cloud-config options here.

Booting with iPXE. CoreOS is currently in heavy development and actively being tested.

Booting with iPXE

These instructions will walk you through booting CoreOS via iPXE on real or virtual hardware. By default, this will run CoreOS completely out of RAM. CoreOS can also be installed to disk. Configuring pxelinux iPXE can be used on any platform that can boot an ISO image. To illustrate iPXE in action we will qemu-kvm in this guide. Choose a Channel CoreOS is released into alpha and beta channels. Setting up the Boot Script. CoreOS. CoreOS is Linux for Massive Server Deployments.