[openstack-dev] [magnum] Using docker container to run COE daemons

Egor Guz EGuz at walmartlabs.com
Sat Nov 28 00:01:14 UTC 2015


Jay,

"A/B testing" for PROD Infra sounds very cool ;) (we are doing it with business apps all the time, but stuck with canary, incremental rollout or blue-green (if we have enough capacity ;)) deployments for infra), do you mind share details how are you doing it? My concern is that you need at least to change container version and restart container/service, it sounds like typical configuration push.

I agree with Hongbin’s concerns about blindly moving everything in containers. Actually we are moving everything into containers for LAB/DEV environments because it allow us to test/play with different versions/configs, but it’s not the case for PROD because we try to avoid adding extra complexity (e.g. need to monitor Docker daemon itself). And building new image (current process) is pretty trivial these days.

Have you tested slave/agent inside container? I was under impression that it doesn’t work until somebody from Kolla team pointed me to the https://hub.docker.com/u/mesoscloud/.
Also I belive you can try your approach without any changes at existing template, because it’s just start services and adding configurations. So you can build image which has  the same services as Docker containers with
volumes mapped to config folders at host.

―
Egor

From: Jay Lau <jay.lau.513 at gmail.com<mailto:jay.lau.513 at gmail.com>>
Reply-To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Date: Thursday, November 26, 2015 at 16:02
To: "OpenStack Development Mailing List (not for usage questions)" <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Subject: Re: [openstack-dev] [magnum] Using docker container to run COE daemons

One of the benefit of running daemons in docker container is that the cluster can upgrade more easily. Take mesos as an example, if I can make mesos running in container, then when update mesos slave with some hot fixes, I can upgrade the mesos slave to a new version in an gray upgrade, i.e. ABtest etc.

On Fri, Nov 27, 2015 at 12:01 AM, Hongbin Lu <hongbin.lu at huawei.com<mailto:hongbin.lu at huawei.com>> wrote:
Jay,

Agree and disagree. Containerize some COE daemons will facilitate the version upgrade and maintenance. However, I don’t think it is correct to blindly containerize everything unless there is an investigation performed to understand the benefits and costs of doing that. Quoted from Egor, the common practice in k8s is to containerize everything except kublet, because it seems it is just too hard to containerize everything. In the case of mesos, I am not sure if it is a good idea to move everything to containers, given the fact that it is relatively easy to manage and upgrade debian packages at Ubuntu. However, in the new CoreOS mesos bay [1], meos daemons will run at containers.

In summary, I think the correct strategy is to selectively containerize some COE daemons, but we don’t have to containerize *all* COE daemons.

[1] https://blueprints.launchpad.net/magnum/+spec/mesos-bay-with-coreos

Best regards,
Hongbin

From: Jay Lau [mailto:jay.lau.513 at gmail.com<mailto:jay.lau.513 at gmail.com>]
Sent: November-26-15 2:06 AM
To: OpenStack Development Mailing List (not for usage questions)
Subject: Re: [openstack-dev] [magnum] Using docker container to run COE daemons

Thanks Kai Qing, I filed a bp for mesos bay here https://blueprints.launchpad.net/magnum/+spec/mesos-in-container

On Thu, Nov 26, 2015 at 8:11 AM, Kai Qiang Wu <wkqwu at cn.ibm.com<mailto:wkqwu at cn.ibm.com>> wrote:

Hi Jay,

For the Kubernetes COE container ways, I think @Hua Wang is doing that.

For the swarm COE, the swarm already has master and agent running in container

For the mesos, it still not have container work until now, Maybe someone already draft bp on it ? Not quite sure



Thanks

Best Wishes,
--------------------------------------------------------------------------------
Kai Qiang Wu (吴开强 Kennan)
IBM China System and Technology Lab, Beijing

E-mail: wkqwu at cn.ibm.com<mailto:wkqwu at cn.ibm.com>
Tel: 86-10-82451647
Address: Building 28(Ring Building), ZhongGuanCun Software Park,
No.8 Dong Bei Wang West Road, Haidian District Beijing P.R.China 100193
--------------------------------------------------------------------------------
Follow your heart. You are miracle!

[Inactive hide details for Jay Lau ---26/11/2015 07:15:59 am---Hi, It is becoming more and more popular to use docker container]Jay Lau ---26/11/2015 07:15:59 am---Hi, It is becoming more and more popular to use docker container run some

From: Jay Lau <jay.lau.513 at gmail.com<mailto:jay.lau.513 at gmail.com>>
To: OpenStack Development Mailing List <openstack-dev at lists.openstack.org<mailto:openstack-dev at lists.openstack.org>>
Date: 26/11/2015 07:15 am
Subject: [openstack-dev] [magnum] Using docker container to run COE daemons

________________________________



Hi,

It is becoming more and more popular to use docker container run some applications, so what about leveraging this in Magnum?

What I want to do is that we can put all COE daemons running in docker containers, because now Kubernetes, Mesos and Swarm support running in docker container and there are already some existing docker images/dockerfiles which we can leverage.

So what about update all COE templates to use docker container to run COE daemons and maintain some dockerfiles for different COEs in Magnum? This can reduce the maintain effort for COE as if there are new versions and we want to upgrade, just update the dockerfile is enough. Comments?

--
Thanks,
Jay Lau (Guangya Liu)__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



--
Thanks,
Jay Lau (Guangya Liu)

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe<http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe>
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




--
Thanks,

Jay Lau (Guangya Liu)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.gif
Type: image/gif
Size: 105 bytes
Desc: image001.gif
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20151128/a3c62602/attachment.gif>


More information about the OpenStack-dev mailing list