A collection of general questions that have come up here and there.
- Why such emphasis on being able to use multiple implementations of various bits of infrastructure (storage layers, message queues, etc)? Is it a need to have or just a nice to have? Especially with regard to Gnocchi this seems to open up complexity and perhaps more importantly slowness (of development).
AMQP was one of the first things: rabbitmq v. qpid (pushed by Red Hat) and someone else wanted zero-mqp.
That led to pluggable messaging in oslo.messaging
.
Storage driver being pluggable: initially everything used mysql via sql-a but then ceilometer came along with a messy data problem, suggesting document oriented datastore.
Unfortunately legalistic types have issues with the mongodb license (AGPL) so there must be a pluggable infrastructure that makes it possible to not used mongodb.
-
When runnings tests (e.g. tox -epy27
) see a pile of warnings an errors. Most from WSME (Server-side error: "Group by not implemented.".
) but some pipeline deprecations. The concern is not so much that there are errors and warnings, but that they happen and the tests still pass.
-
Republish data writes on message bus?
-
Prefer discussion in comments that are in or not inline?
-
Fixed*: Blew up my access to OS1
-
What's with all the bash?
- What are the strict differences between an alarm, event, sample?
Alarm: encapsulation of a condition pertaining to a statistic over time, which has a state: of in-alarm or unknown. Reflects a question, state reflects the answer.
Event: discrete point in time when sometime happened in the lifecycle of a resource. A service emits an notification.
Sample: datapoint with some metadata
-
Process and "thread" management very visible. Seems like it shouldn't be.
-
An error in the collector (with novaclient) didn't cause a failure. Somehow it was just floated over. This seems bad. There's a bug about this.
-
Why are methods called on the message queue rather than messages sent?
-
Questions from Thursday
-
In my devstack ceilometer event-list
returns nothing. What will make it return something?
-
Why is ceilometer-dbsync
required on first run? Can't slqalchemy
do that for you?
Alarms and Stuff
Heat had a built in autoscaling thing that listened to a cloudwatch type thing and wanted to move because non-ideal (stats gathering inside image itself, cron job that could be killed, credentials problems), so there was some planning: slides video.
ceilometer gathers most of the required data, from outside the instances, on the compute nodes.
the alarm-evaluator waits for threshold to be crossed and calls a sort of webhook: it polls the api service instead of in-pipeline because of multi-dimensional aggregates of data.
can't be in the collector either because of multiple collectors for horizontal scaling