All, I would like propose native functionality into CloudStack to provide a container service through which users out-of-the box can use to launch container based application. Idea is to support ability to orchestrate the resources and automate aspects of setting up container orchestrator through CloudStack. Public IAAS service providers AWS with its ECS [1] and google with GKE [2] already provides ability container applications. Competitive cloud orchestration platforms already have native support for container service. Users of CloudStack both as public cloud providers and users with private clouds will benefit with such functionality.
While container orchestrator of user choice can be provisioned on top of CloudStack (with out CloudStack being involved) with tools like TerraForm[3], Ansible[4] etc, advantage of having native orchestration is giving user a nice cohesive integration. This proposal would like add a notion of first class CloudStack entity called container cluster which can be used to provision resources, scale up, scale down, start and stop the cluster of VM’s on which containerised applications can be run. For actual container orchestration we will still need container orchestrator like docker swarm, marathon, kubernetes, but CloudStack container service can automate setting up of control place automatically. Please see the detailed FS [5], and jira ticket [6]. [1]http://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html [2]https://cloud.google.com/container-engine/ [3] https://github.com/skippbox/ansible-cloudstack [4]https://github.com/chiradeep/terraform-cloudstack-examples/tree/master/kubernetes-coreos-isolated-nw [5] https://cwiki.apache.org/confluence/display/CLOUDSTACK/CloudStack+container+service+functional+specification+and+design+document [6]https://issues.apache.org/jira/browse/CLOUDSTACK-9760