[openstack-dev] [Ceilometer] Scale deployment
gordon chung
gord at live.ca
Mon Jan 9 14:57:31 UTC 2017
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
More information about the OpenStack-dev
mailing list