Nova versioned notifications The result of a 3-year journey - - PowerPoint PPT Presentation

nova versioned notifications
SMART_READER_LITE
LIVE PREVIEW

Nova versioned notifications The result of a 3-year journey - - PowerPoint PPT Presentation

Nova versioned notifications The result of a 3-year journey balazs.gibizer@ericsson.com Agenda My new use case The need to overhaul Novas notification interface The journey It is Done so it is DEMO time! Is there


slide-1
SLIDE 1

Nova versioned notifications

The result of a 3-year journey

balazs.gibizer@ericsson.com

slide-2
SLIDE 2

Agenda

  • My new use case
  • The need to overhaul Nova’s notification interface
  • The journey
  • It is Done so it is DEMO time!
  • Is there a next step?
slide-3
SLIDE 3

My simple use case

My monitoring tool needs to know when the administrator disables a nova-compute service due to planned maintenance

slide-4
SLIDE 4

Let’s add a new notification to nova

“We like your idea, but we want to queue this behind sorting out the notifications.”

// May 2015 https://review.openstack.org/#/c/182350

slide-5
SLIDE 5

Let’s plan a shiny new interface

  • Documented
  • Versioned
  • Tested
slide-6
SLIDE 6

{ "priority":"INFO", "event_type":"service.update", "publisher_id":"nova-compute:host1" "payload":{ "nova_object.namespace":"nova", "nova_object.name":"ServiceStatusPayload", "nova_object.version":"1.1" "nova_object.data":{ "availability_zone":null, "binary":"nova-compute", "disabled":false, "disabled_reason":null, "forced_down":false, "host":"host1", "last_seen_up":"2012-10-29T13:42:05Z", "report_count":1, "topic":"compute", "uuid":"fa69c544-906b-4a6a-a9c6-c1f7a8078c73", "Version":23 }}}

slide-7
SLIDE 7

We have a plan

“This is possibly the most detailed spec I've ever read. I really like this proposal, let's get started.”

// Nov 2015 https://review.openstack.org/#/c/224755

slide-8
SLIDE 8

We just need to implement the plan

slide-9
SLIDE 9

Work remaining Work in progress

slide-10
SLIDE 10

Demo

  • Goal
  • Demo setup
slide-11
SLIDE 11

[[post-config|/etc/nova/nova.conf]] [oslo_messaging_notifications] driver = messagingv2 transport_url = rabbit://stackrabbit:admin@100.109.0.10:5672/ [notifications] notification_format = both notify_on_state_change = vm_and_task_state bdms_in_notifications = true

slide-12
SLIDE 12

Can we get rid of the old interface now?

“I'm just having a hard time with the fact so much work has been put into this over the last few years that now everything is transformed but no one is using it, and I don't see many compelling reasons why a project would migrate, especially since the projects that are consuming nova's notifications are mostly working with a skeleton crew of maintainers.”

// Dec 2018 http://lists.openstack.org/pipermail/openstack-discuss/2018-December/000685.html

slide-13
SLIDE 13

Was this work a waste?

slide-14
SLIDE 14

References

  • These slides: http://bit.ly/versioned
  • Notifications in Nova

○ https://docs.openstack.org/nova/latest/reference/notifications.html

  • Code used in the demo

○ https://github.com/gibizer/nova-notification-demo