[one-dev] Docker - OpenNebula - Megam

Megam Systems gomegam at megam.co.in
Thu Jun 19 08:25:44 PDT 2014


Dear Carlo,

Thank your very much for pointing out CoreOS.  As we have tiny
containers running we would have SSH/Logs/Metrics/VNC issues as before.
And the stood-up containers should be user restricted. A design is
needed to support "multi tenant containers in a single VM" in a better way.

Ofcourse if the design is "single VM = single user playing with
containers then we are ok". This is what Google Compute Engine does
today in their Docker support.

CoreOS provides a cluster where we could launch Docker containers. I see
we can run CoreOS in KVM today : http://bit.ly/1ioAvEV/
So going by supporting CoreOS in OpenNebula, we need to make CoreOS run
in OpenNebula, and an agent needs to be there inside CoreOS to fully fix
this problem.

VNC is something I think isn't possible in container virtualization for
now. If there are solutions for it,  I would be glad to hear.

-- 
Cheers,
Megam Systems; http://www.gomegam.com
email : gomegam at megam.co.in; twitter: @megamsystems
web   : http://www.gomegam.com  | try   : https://www.megam.co
blog  : http://blog.me gam.co    | github: https://github.com/megamsys

On Wednesday 18 June 2014 09:27 PM, Carlo Daffara wrote:
> First of all, many thanks to the guys at Megam for their work.
> May I propose an intermediate solution? Instead of forcing OpenNebula to handle Docker
> directly, it may be easier to use a thin OS designed to run Docker directly in an optimized way.
> A good example is CoreOS (http://coreos.com/using-coreos/docker/ ) that does have the advantage that can be managed directly through
> the Opennebula infrastructure, and eventually linked to OneFlow for more in-depth integration.
> This way it would allow for integrating other thin-OSes like OSv ( http://osv.io/ ) that as an alternative targets specifically Java applications.
> regards
> carlo daffara
> cloudweavers ltd
>
> ----- Messaggio originale -----
> Da: "Javier Fontan" <jfontan at opennebula.org>
> A: "Megam Systems" <gomegam at megam.co.in>
> Cc: dev at lists.opennebula.org
> Inviato: Mercoledì, 18 giugno 2014 17:50:11
> Oggetto: Re: [one-dev] Docker - OpenNebula - Megam
>
> Hi,
>
> I'm happy to find this email as I've been tinkering with Docker and
> LXC recently.
>
> There are a lot of discussions these days about Docker. I see it as a
> nice way to package and deploy apps but I'm not really sure it fits
> into OpenNebula. I really want to be wrong on this.
>
> The second proposal (starting up VMs with docker prepared) is straight
> forward. It requires an image with the software prepared and maybe
> some context scripts that do some kind of configuration so an external
> user can call its docker daemon and start new containers.
>
> The first one is a bit more problematic. Even if creating the drivers
> to manage docker instances is relatively easy (but time consuming)
> there is a problem I couldn't find a solution. VMs usually can be
> reached using ssh or VNC. Containers don't have VNC server and with
> the Docker philosophy of one app per container you also lose ssh. In
> OpenNebula there is not another way of reaching those containers. The
> containers will run and do its duty but when something does not work
> as expected you can not attach to it to change something and features
> like getting the logs from the app are gone.
>
> It may be possible to add some sort of layer to do this. Maybe an ssh
> in some host configured like a git server [1] that starts some docker
> command instead of a shell. Anyway, this seemed too far fetched for a
> pet project and moved to LXC that is more similar to a VM.
>
> Maybe with a bit more heads on the problem we can find an architecture
> that makes Docker right at home in OpenNebula.
>
> Cheers
>
> [1] http://gitolite.com/gitolite/glssh.html#restricting-shell-accessdistinguishing-one-user-from-another
>
> On Wed, Jun 18, 2014 at 3:56 PM, Megam Systems <gomegam at megam.co.in> wrote:
>> Dear All,
>>
>> Docker 1.0 was released recently. Megam is a cloud automation engine,
>> and would like to support this feature.  With the latest release Docker
>> uses libcontainer.
>>
>> Our *vision* is to enable and simplify running Docker container images
>> using Megam on OpenNebula.
>>
>> *Terminology:*
>>
>>   * Docker container image  : A tiny image which can be unwrapped and
>>     run by "Docker"
>>   * Docker container : An instance that is  created as a result of
>>     running the Docker container image.
>>   * Docker service : A regular Ubuntu or Wheezy VM spinned off by
>>     OpenNebula having the "docker" executable installed.
>>
>>
>> Docker helps to run container images  very quickly.  A Docker container
>> image is built by an user. So an user builds the Docker container image
>> and stores it in a docker registry (this can be public or private).
>>
>> An example Docker container image can hold  "apache2" or "postgresql".
>> Recommendation by Docker is to run just one process.
>>
>> There are 2 ways in integrating it to OpenNebula.
>>
>>  1. Docker as a hypervisor which would spin of the user's container
>>     image in the OpenNebula host.
>>  2. A Docker service which is stood-up and shared by an user. Multiple
>>     Docker container can run inside the stood-up Docker service. The
>>     Docker service will  be owned by the user and the user can stand-up
>>     multiple Docker container in it.
>>
>>
>> We would like to hear the communities feedback and thoughts in taking it
>> forward.
>>
>> Also how are you using Docker today ? How would like to see it being
>> used in OpenNebula or using an orchestrator on top of OpenNebula like Megam.
>>
>> If you haven't started on using Docker, what are the use cases you are
>> exploring its use ? What is your wish list for the above integration  ?
>>
>>
>>
>> --
>> Cheers,
>> Megam Systems; http://www.gomegam.com
>> email : gomegam at megam.co.in; twitter: @megamsystems
>> web   : http://www.gomegam.com  | try   : https://www.megam.co
>> blog  : http://blog.megam.co    | github: https://github.com/megamsys
>>
>>
>> _______________________________________________
>> Dev mailing list
>> Dev at lists.opennebula.org
>> http://lists.opennebula.org/listinfo.cgi/dev-opennebula.org
>>
>
>



More information about the Dev mailing list