Introduction

Docker containers provide app portability across any platform and also provide VM functionality like isolation and resource limits. Yet, they are light weight and provide high density and better performance for workloads.

Many cloud service providers are beginning to consider offering containers as a service to their customers. This will usually be with running Docker containers on top of a Hypervisor technology.

CoreOS is emerging as the most popular choice for host OS to run Docker containers.

By leveraging CoreOS Support in CloudStack, Service Providers and Enterprises will be able to offer Containers as a Service to their customers.

Purpose

Deploy CoreOS guest Vms on CloudStack


References

https://coreos.com/os/docs/latest/booting-on-cloudstack.html

JIRA: 

Template Location: http://dl.openvm.eu/cloudstack/coreos/x86_64/

Branch: coreos branch on https://github.com/kishankavala/cloudstack


Functional Requirements

Assumptions

Design

To support CoreOS while registering templates, below tables need to updated:

guest_os_category - Use existing entry "Other" or add new category "CoreOS"

guest_os - Add new entry for "CoreOS"

guest_os_hypervisor - Entries for all supported hypervisors

 

Once the above entries are added, CoreOS templates can be registered with OS Type - "CoreOS"

Optionally cloud-config can be supplied via userdata (Length is limited to 32768).

Sample cloud-config:

#cloud-config

users:
  - name: deploy
    coreos-ssh-import-github: clouduser
    groups:
      - sudo
      - docker

 

Upgrade

Usage

None

API Changes

None

DB changes

UI Changes

Hypervisors Supported

Open Items