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/

Reply via email to