[openstack-dev] [nova-docker][ceilometer][heat] Autoscaling docker in openstack
Zane Bitter
zbitter at redhat.com
Fri Apr 17 17:18:55 UTC 2015
On 17/04/15 10:11, VACHNIS, AVI (AVI) wrote:
> Hi,
>
> @Ashish, if the limitation you've mentioned for #1 still exists, I join
> your question how heat auto-scale-group may work w/o ceilometer being
> able to collect docker metrics?
Yeah, you're correct. Approach #2 has exactly the same problem as
approach #1, and adds in a few more.
The solution is either to write a Ceilometer agent for the Nova-Docker
driver, or otherwise jury rig something to push your own custom metrics
into Ceilometer. The cfn-push-stats tool in heat-cfntools might help
with the latter.
> @Sergey, hey. Are you saying that ceilometer do collects metrics on
> docker underlying nova::server resource?
I guess it actually does collect metrics on the OS::Nova::Server that
you're running Docker on (assuming you put in on an OS::Nova::Server),
but that doesn't really help you since all of the containers are
deployed on that server - if the workload on the server gets too high,
then autoscaling will deploy even more containers to it, thus making
things worse :D
cheers,
Zane.
> -Avi
>
> ------ Original message------
>
> *From: *ashish.jain14 at wipro.com
>
> *Date: *Fri, Apr 17, 2015 4:56 PM
>
> *To: *openstack-dev at lists.openstack.org;
>
> *Subject:*Re: [openstack-dev] [nova-docker][ceilometer][heat]
> Autoscaling docker in openstack
>
> Hi Segey,
>
>
> So IIUC approach #2 may still help to autoscale docker on openstack. I
> will try that out and post questions on heat irc thanks.
>
>
> Regards
>
> Ashish
>
> ------------------------------------------------------------------------
> *From:* Sergey Kraynev <skraynev at mirantis.com>
> *Sent:* Friday, April 17, 2015 7:01 PM
> *To:* OpenStack Development Mailing List (not for usage questions)
> *Subject:* Re: [openstack-dev] [nova-docker][ceilometer][heat]
> Autoscaling docker in openstack
> Hi, Ashish.
>
> Honestly I am not familiar with most part of these ways, but can add
> more information from Heat side (item 2).
>
> I am surprised, that you have missed Heat autoscaling mechanism (You
> should look it :) ). It's one of the important part of Heat project.
> It allows to scale vms/stacks by using Ceilometer alarms. There are
> couple examples of autoscale templates:
>
> https://github.com/openstack/heat-templates/blob/master/hot/autoscaling.yaml (with
> LoadBalancer)
> https://github.com/openstack/heat-templates/blob/master/hot/asg_of_servers.yaml
> https://github.com/openstack/heat-templates/blob/master/hot/asg_of_stacks.yaml
> <https://github.com/openstack/heat-templates/blob/master/hot/asg_of_servers.yaml>
>
> <https://github.com/openstack/heat-templates/blob/master/hot/asg_of_servers.yaml>
> It's true, that Docker plugin for Heat create docker server on
> Nova::Server resource. So you may write template Docker resource +
> Server resource (similar on third template) and scale by using
> Ceilometer alarms.
> If you have any questions how to use it, please got to #heat irc channel
> and ask us :)
> Also another way (AFAIK) is to use SoftwareDeployment/Config and deploy
> Server with docker inside (without docker plugin). In this way, I
> suppose, Steve Baker can help with advise :)
>
>
> On 17 April 2015 at 16:06, <ashish.jain14 at wipro.com
> <mailto:ashish.jain14 at wipro.com>> wrote:
>
>
> Hi,
>
> I have been working on running docker on openstack. I had a
> discussion on multiple IRC and IIUC there are 5 different ways of
> running docker on openstack. IIUC currently there is no way to
> autoscale docker on openstack. Please correct me if I am wrong
>
>
> 1) Using nova-docker driver - Running docker as a Nova::Server using
> nova-docker hypervisor
> 2) Using nova-plugin for heat - Running docker using
> DockerInc::Docker::Container
> 3) Using magnum - IIUC no automation as of now, manually it is
> possible. Not enough documentation available
> 4) heat compose - Saw some samples available
> @https://github.com/openstack/heat-templates/tree/master/hot/software-config/elements/heat-config-docker-compose
> 5) Swarm support - Still in development
>
> Issues with each on the above approaches
>
> 1) Using nova-docker driver - IIUC there is no way for ceilometer to
> collect and emit statistics for docker hypervisor. So that mean
> ceilometer does not have any stats available once you switch to
> docker driver.
> This link
> (https://github.com/openstack/ceilometer/tree/master/ceilometer/compute/virt)
> currently does not have anything for docker hypervisor.
>
> 2) Using nova-plugin for heat - Using this approach docker
> containers run on a Nova VM. However I do not see any illustration
> which suggests that you can autoscale using this approach.
>
> 3) Using magnum - Currently only possible by manually invoking it.
>
> 4) heat compose - Sample available at the above link just talks
> about deploying it up but nothing about auto scaling
>
> 5) Swarm Support - Still in dev
>
> While I understand some of these options may enable us during the
> future release to autoscale docker on openstack. But looking
> currently I feel option #1 is most mature(probably) and by plugging
> in a ceilometer inspector for docker hypervisor it may be possible.
> Another approach could be to using cfn-push-stats to probably push
> some stats from docker container.
>
> Please advice through your valued suggestions that time being what
> is the best way to achieve auto scaling for docker on openstack. I
> am ready to contribute to it in the best possible way.
>
> Regards
> Ashish
>
>
>
>
>
>
> The information contained in this electronic message and any
> attachments to this message are intended for the exclusive use of
> the addressee(s) and may contain proprietary, confidential or
> privileged information. If you are not the intended recipient, you
> should not disseminate, distribute or copy this e-mail. Please
> notify the sender immediately and destroy all copies of this message
> and any attachments. WARNING: Computer viruses can be transmitted
> via email. The recipient should check this email and any attachments
> for the presence of viruses. The company accepts no liability for
> any damage caused by any virus transmitted by this email.
> www.wipro.com <http://www.wipro.com>
>
> __________________________________________________________________________
> 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
>
>
> The information contained in this electronic message and any attachments
> to this message are intended for the exclusive use of the addressee(s)
> and may contain proprietary, confidential or privileged information. If
> you are not the intended recipient, you should not disseminate,
> distribute or copy this e-mail. Please notify the sender immediately and
> destroy all copies of this message and any attachments. WARNING:
> Computer viruses can be transmitted via email. The recipient should
> check this email and any attachments for the presence of viruses. The
> company accepts no liability for any damage caused by any virus
> transmitted by this email. www.wipro.com
>
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
More information about the OpenStack-dev
mailing list