distributed app Composition put together parts of application Scheduling run each bit on appropriate machine Networking ensure everyone can talk to each other Storage persist data
Replication controller manage lifecycle of pods enforce number of running pods across cluster rolling updates Replication controller pod pod pod pod pod
address for a set of pods can integrate with local DNS act as basic load balancers… …or create external load-balancers via cloud-provider integration Service pod pod pod pod pod
Cloud-config Works great with CoreOS Easy to re-use Need to rely on configuration management to make it fully functional * Ansible * Puppet-on-Coreos (https://github.com/jumanjihouse/puppet-on-coreos) +