Changes/Atomic Cloud Image

From FedoraProject

< Changes
Revision as of 21:54, 7 April 2014 by Red (Talk | contribs)

Jump to: navigation, search

Contents

Docker Cloud Image

Summary

New Fedora product: Fedora Docker Cloud Image - Docker host ready to go.

Owner

  • Name: Cloud SIG / Sandro Mathys
  • Email: red@fedoraproject.org
  • Release notes owner:
  • Product: Docker Cloud Image (duh!)
  • Responsible WG: Cloud

Current status

  • Targeted release: Fedora 21
  • Last updated: 2014-04-05
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

Fedora Cloud agreed to make a base image plus several tailored to specific purposes. This is one of the tailored ones — Docker host ready to go. While basically that simply means only just adding docker-io to the base image, this is (also) intended to be our response to CoreOS. Therefore, depending on further discussion and user input, we might also add etcd and fleet to the mix.

Furthermore, the Cloud SIG considers this their most radical image, riding the very front of the leading edge. (Yeehaw!) Several approaches (read: bonus objectives) are under consideration but not crucial to the product itself:

  • Fedora Atomic Initiative (aka rpm-ostree) to allow for atomic updates. We might further choose to remove yum/dnf from the image in favor of ostree.
  • Replace cloud-init with min-metadata-service, CoreOS' cloud-init or other alternatives. We'd like to find a leaner solution (read: less Requires) and one that is better (or easier) tailored to Fedora.
  • Remove Python from this image to reduce the footprint. Note, that this can only be achieved if yum/dnf AND cloud-init are replaced by other solutions as explained in the above points.

It should be noted that most of these tools are currently under heavy construction but might be ready in time. If they are, it's still up to discussion whether they will be included. If they aren't, we might punt them to F22 or later. Either way, they won't impact the completion of this change's main goals and are only listed for completeness' sake.

Benefit to Fedora

  • Users get a quick and easy way to use/try Docker (containers) in their favorite IaaS cloud.
  • Our answer to CoreOS.
  • Easier for Docker fans to become fans of Fedora, too.

Scope

Regarding the core objective, it's just about creating a new kickstart file (probably even %include-ing the base one) add some minor stuff and make sure it gets built into a new image.

Also, for added security, we'd like to see Docker and SELinux integrate better. There's already work going on about this.

The bonus objectives (i.e. leading edge approaches) further require:

  • ostree to work with SELinux
  • Creating a filesystem tree for ostree that equals the filesystem of the image as created by traditional means
  • min-metadata-service to gain the ability to execute scripts just like cloud-init does
  • CoreOS' cloud-init or other alternatives to be packages (and possibly tailored) for Fedora

Upgrade/compatibility impact

N/A (not a System Wide Change)

How To Test

N/A (not a System Wide Change)

User Experience

N/A (not a System Wide Change)

Dependencies

N/A (not a System Wide Change)

Contingency Plan

If any of the bonus objectives fail to make it in time, we simply go on without them and use the established mechanisms (i.e. what F20 did or what the F21 Fedora Base Cloud Image does) instead.

If all fails, there simply won't be a Fedora Docker Cloud Image product for F21.

  • Blocks product? Yes, Docker Cloud Image (duh!)

Documentation

N/A (not a System Wide Change)

Release Notes

New Fedora product: Fedora Docker Cloud Image!

Docker is an easy to use interface for running application containers on Linux. Fedora is uniquely positioned to provide the best platform for Docker, since this container technology is not a security solution, but can be made reasonably secure when wrapped with SELinux.

TODO: include notes if any of the bonus objectives are included.