synchronizer alternative flow + typo fixes
Change-Id: Id96b9962f88734eebf046bd654768e9d47341141
This commit is contained in:
parent
5a71558baa
commit
25b89d2a9c
@ -59,13 +59,39 @@ of these synchronizers for scaling purposes.
|
||||
+-----------------------+
|
||||
|
||||
|
||||
Alternative diagram
|
||||
|
||||
::
|
||||
|
||||
|
||||
+-------------+
|
||||
+----------+ +--------------+ get all response | |
|
||||
| entity | | +------------------------------------------------> |
|
||||
+------+ type x <---------------+ <-----------------------------------------------+ Vitrage |
|
||||
| | | polling via | | get all request +----------+ | graph |
|
||||
+-----------------------------+ | +----------+ api or via | | | queue | | |
|
||||
| Openstack services: | | message | Synchronizer | | | +-------------+
|
||||
| Keystone, Nova, <----+ +----------+ queue | <------------------------------+ ^ |
|
||||
| Neutron, Glance, | | entity | | | register for change +----------+
|
||||
| Cinder, Heat <-----------+ type y <---------------+ | notifications over |
|
||||
| | | | | | entities of a specific |
|
||||
| other polling mechanisms: | +----------+ | | type |
|
||||
| Nagios <----+ | | |
|
||||
| Ceilometer | | +----------+ | | entity changes |
|
||||
| | | | entity | | +------------------------------------+
|
||||
| | +------+ type z <---------------+ |
|
||||
| | | | +--------------+
|
||||
+-----------------------------+ +----------+
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Problem description
|
||||
===================
|
||||
|
||||
Enable vitrage and to maintain the most up-to-date view of OS services it samples.
|
||||
Enable Vitrage and to maintain the most up-to-date view of OS services it samples.
|
||||
|
||||
Proposed change
|
||||
===============
|
||||
@ -97,8 +123,8 @@ change notifications
|
||||
- openstack message bus (if installed on openstack)
|
||||
- or to a queue (which would be installed as part of the synchronizer deployment)
|
||||
|
||||
southband interface
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
southbound interface
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
::
|
||||
|
||||
@ -155,10 +181,10 @@ southband interface
|
||||
- method of collection:
|
||||
- retrieve OS service elements list. For the purposes of:
|
||||
- 'get all' - as a response for a 'get all' northbound interface call
|
||||
- run on its own subprocess, separated from the collecting subprocesses (cont.)
|
||||
- run on its own subprocess, separated from the collecting sub processes (cont.)
|
||||
- change notifications - as part of the periodic collection of the latest snapshot
|
||||
- we'd use this method of collection against OS services which doesn't propagates change notification.
|
||||
- run on its own collection subprocesses (**one/more? - TBD**)
|
||||
- run on its own collection sub processes (**one/more? - TBD**)
|
||||
- how to discover a change
|
||||
- once a snapshot is collected, we'd like to know which entity was changed from the latest time a snapshot was taken
|
||||
- in order to enable this, we'd keep a baseline - a data structure which contains for each OS service entity (such as a vm instance), its ID + it latest collection timestamp or a hash which represents its latests state.
|
||||
@ -167,7 +193,7 @@ southband interface
|
||||
- for the purposes of change notifications
|
||||
- this is the easy case, where change notifications are simply passed on to whoever registered for them
|
||||
- type of collection:
|
||||
- against each OS service we'd like to sample, a plugin library would enable BOTH the collection subprocesses and the 'get all' method to retrieve BOTH a complete snapshot of the OS service (all the VM instances / all of the ports / etc.) AND to sample for change notifications, as described above.
|
||||
- against each OS service we'd like to sample, a plugin library would enable BOTH the collection sub processes and the 'get all' method to retrieve BOTH a complete snapshot of the OS service (all the VM instances / all of the ports / etc.) AND to sample for change notifications, as described above.
|
||||
- deployment - as a library
|
||||
|
||||
consumer flow
|
||||
@ -244,8 +270,8 @@ Dependencies
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
||||
**TBD**
|
||||
Unit Tests - Tox
|
||||
Integration Tests - Tempest
|
||||
|
||||
|
||||
Documentation Impact
|
||||
|
Loading…
x
Reference in New Issue
Block a user