[openstack-dev] [Ceilometer] Scale deployment
Srikanth Vavilapalli
srikanth.vavilapalli at ericsson.com
Tue Jan 10 00:21:34 UTC 2017
Thanks Gordon for your inputs, Quick follow-up question: I see few new alternatives existing in place of ceilometer mongo storage: Gnocchi and Panko. Are these recommended data storage options from now on for Ceilometer? Also, I suppose Gnocchi and Panko needs to be deployed on a separate node in a cluster mode to support scale and performance. Plz let me know if otherwise.
Thanks
Srikanth
-----Original Message-----
From: gordon chung [mailto:gord at live.ca]
Sent: Monday, January 09, 2017 6:58 AM
To: openstack-dev at lists.openstack.org
Subject: Re: [openstack-dev] [Ceilometer] Scale deployment
On 08/01/17 07:28 PM, Srikanth Vavilapalli wrote:
>
> - Deploying database cluster on separate nodes with sharding
> and replica-sets enabled
>
we don't recommend you use ceilometer storage since it's deprecated and hasn't been worked on for over a year.
>
>
> My questions are:
>
> 1. How to determine the number of ceilometer-agent-notification
> that I should deploy? For example I have 3 node environment to deploy
> ceilometer where a 3-node RabbitMq cluster is running. Should I deploy
> three ceilometer-agent-notification each of them pointing to 3-node
> rabbitmq cluster or can I deploy 1 or 2 notification agents that can
> fetch the messages from rabbitmq nodes? Is there any guidline for this?
i don't think there is a guide line. a single agent for 3 nodes is suffice. i would probably just suggest you monitor notifications.* queues and if they start lagging, add more notification agents as required. i believe a single agent can handle hundreds of notifications per second.
>
> 2. How do the ceilometer-agent-notification distribute the
> received messages from rabbitmq among themselves? Is it round robin
> among all messages or share the load at rabbitmq exchange levels? For
> example if rabbitmq cluster is deployed with N number of exchanges
> where telemetry data is sent equally among all these exchanges, can I
> partition the rabbitmq exchanges such that each notification agents
> process a subset of exchanges?
notification agents just greedily grab from queues it's subscribed to when it can. it'll then requeue them (if you have multiple agents and
workload_partitioning) enabled.
>
> 3. Do I need to deploy "ceilometer-collector" daemon also in
> multiples in order to handle the load coming from
> ceilometer-agent-notifications and to write to database replicas?
>
ceilometer collector is not a required service and probably just adds
more load to your rabbitmq. you can send data directly from notification
agent using direct:// publisher (or one of the aliases if you're master.)
only suggestion i have off top of head is to enabled batching (set
batch_size, batch_timeout in notification agent)
cheers,
--
gord
__________________________________________________________________________
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