On Thu, Aug 28, 2014 at 12:08 PM, Nirmal Fernando <nirmal070...@gmail.com> wrote:
> > > > On Thu, Aug 28, 2014 at 8:14 AM, Lakmal Warusawithana <lak...@wso2.com> > wrote: > >> Hi devs, >> >> I did some research on $subject and IMO kurburnetes integration going to >> be worthwhile thing. Below is the possible way of integration and some >> benefits. >> >> Kuburnetes provide docker provisioning (orchestration), scheduling across >> docker host cluster, Self-healing mechanisms, such as auto-restarting, >> re-scheduling, and replicating containers. IMO we should used them without >> inventing the wheel. I was there in Linixcon and google heavily use this in >> large-scale. in current state they are creating 2 million new dockers >> weekly using kuburnetes. >> >> So, with kurburnetes we can handover docker management scheduler to >> kurburnetes without handling in autoscaler. which mean we are not going to >> have deployment policies and partitions docker in stratos. Only there is >> auto scaling policy. But it will not change for VM based cartridges which >> currently has. >> >> We can extend jclouds for support kurburnetes, mean we may no need to >> used docker api, instead we need to have kurburnetes API. >> > > What about having two modes as in, in order to manage VMs, we use Jclouds > API and in order to manage Containers, we use Kubernetes API ? > > This way, we can directly right a Java client to Kubernetes API and no > need to map Jclouds' concepts to Kubernetes (which may be hard, since > Kubernetes really not a IaaS). > > +1, that will be easy > >> WIth docker, we are doing to have two mode, dockers top of VM and dockers >> top of bare-metal.(its simple version is dev env) >> >> Below is the initial design we can consider. >> >> - need to have global docker registry for a stratos deployment >> >> >> - cartridge definition should have a docker file attached related to >> the cartridge. e.g if PHP cartridge definition, should attached php docker >> file. IMO we should used same for any other type, like puppet, it should >> attached puppet module (location) and we can dynamically install this >> module into puppet master, which Raj and Lasindu suggest in separate >> thread. So this going to be generic, while deploying cartridge definition, >> we are expecting related docker, puppet, .etc files for that cartridge and >> dynamically setup. >> - then we can build docker file and upload (push) image into global >> (for stratos) docker registry. >> - we can consider docker service is MT service in Stratos. >> - above docker cartridges available for application deployment only >> after docker MT host cluster available in VM mode or generally after >> dynamically registering kuburnetese endpoint. >> - In bare metal we can manually register kurburnetes end point. >> - So in the VM mode, we can have cartridge definition for docker host >> cluster (IMO we can used coreOS+keburnetes) and can deploy as MT service. >> it can have min, max and auto scaling, deployment polices. >> - With the MT service deployment, it will create docker host cluster. >> All monitoring and scaling will happen normal way. >> - in MT docker host service up, it will dynamically register >> kuburnetes endpoint for docker deployment >> - After end point register, docker application deployment available >> for all pushed docker cartridges which in the global docker registry. >> - In case of having multiple kuburnetes endpoint user can choose any >> available docker cluster while deployment docker applications. also user >> can define min max for his docker application while in the creation time >> and can change any time. Also can attached the auto scaling policy >> - communicate to kuburnetes endpoint for orchestrate required >> dockers. Kuburnetes will take care of rest. >> - update the topology with the member endpoints >> - individual docker application can scale depending on assign auto >> scaling policy. >> - In the bare-metal mode, without MT mode, we can just register >> kuburnetes end point and then same way to create dockers. >> >> This is initial though of design, please share your thought. Need to draw >> some pictures, will work on that. and IMO we should have a hangout session, >> badly need a white board for these kind of discussions >> >> thanks >> >> >> -- >> Lakmal Warusawithana >> Vice President, Apache Stratos >> Director - Cloud Architecture; WSO2 Inc. >> Mobile : +94714289692 >> >> - Blog : http://lakmalsview.blogspot.com/ >> >> >> > > > -- > Best Regards, > Nirmal > > Nirmal Fernando. > PPMC Member & Committer of Apache Stratos, > Senior Software Engineer, WSO2 Inc. > > Blog: http://nirmalfdo.blogspot.com/ > -- Lakmal Warusawithana Vice President, Apache Stratos Director - Cloud Architecture; WSO2 Inc. Mobile : +94714289692 Blog : http://lakmalsview.blogspot.com/