Changes between Version 9 and Version 10 of OperationalMonitoring/DataSchema20
- Timestamp:
- 08/27/14 20:43:53 (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
OperationalMonitoring/DataSchema20
v9 v10 1 1 [[PageOutline]] 2 2 3 == JSON Schemas for Replies to REST API calls == 3 == REST calls and JSON Replies for Monitoring Data == 4 5 Monitoring data collectors make REST calls to monitoring datastores. Datastores reply with JSON data that conforms to a JSON schema that is specific to the type of REST call being responded to. 4 6 All of these schemas inherit from the [http://unis.incntre.iu.edu/schema/20120709/networkresource UNIS network resource schema] with the exception of the opsconfig schema. 5 6 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig opsconfig]: operational configuration metadata, including locations of and information about other datastores [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig.schema.jwc opsconfig schema with comments] 7 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/aggregate aggregate]: data about an aggregate (including lists of resources and slivers at that aggregate, and where to look for measurements about the aggregate) [http://www.gpolab.bbn.com/monitoring/schema/20140828/aggregate.schema.jwc aggregate schema with comments] 8 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/node node]: data about a node [http://www.gpolab.bbn.com/monitoring/schema/20140828/node.schema.jwc node schema with comments] 9 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/interface interface]: data about a network interface [http://www.gpolab.bbn.com/monitoring/schema/20140828/interface.schema.jwc interface schema with comments] 10 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/interfacevlan interfacevlan]: data about a tagged VLAN subinterface of a network interface [http://www.gpolab.bbn.com/monitoring/schema/20140828/interfacevlan.schema.jwc interfacevlan schema with comments] 11 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/sliver sliver]: data about a sliver at an aggregate [http://www.gpolab.bbn.com/monitoring/schema/20140828/sliver.schema.jwc sliver schema with comments] 12 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/authority authority]: data about a GENI authority [http://www.gpolab.bbn.com/monitoring/schema/20140828/authority.schema.jwc authority schema with comments] 13 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/slice slice]: data about a slice at an authority [http://www.gpolab.bbn.com/monitoring/schema/20140828/slice.schema.jwc slice schema with comments] 14 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/user user]: data about a GENI user at an authority [http://www.gpolab.bbn.com/monitoring/schema/20140828/user.schema.jwc user schema with comments] 15 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/experiment experiment]: data about an operational monitoring experiment for monitoring the dataplane [http://www.gpolab.bbn.com/monitoring/schema/20140828/experiment.schema.jwc experiment schema with comments] 16 * [http://www.gpolab.bbn.com/monitoring/schema/20140828/data data]: data about time-series measurements. Schema based in part on [http://unis.incntre.iu.edu/schema/20120709/metadata] [http://www.gpolab.bbn.com/monitoring/schema/20140828/data.schema.jwc data schema with comments] 17 * For now, we would use the `ops_monitoring` namespace for operations monitoring, meaning: 18 * When we add monitoring-relevant optional properties to objects, we'll put them in an `ops_monitoring` dictionary 19 * When we setup operations monitoring measurements, we'll give them the eventType `ops_monitoring:<something>` 20 21 === Schema usage example === 22 23 Some example usages of the above schemas follow. These examples assume the following (fictitious) local datastore URLs. These are arbitrary, and any place they appear, they can be replaced by whatever name the deployers prefer. For simplicitly, we show one local datastore per aggregate here, but the architecture does ''not'' require that --- it would be perfectly fine to have one datastore for relational metadata and one for the data itself, or one for certain types of relational metadata and one for others. 7 This page gives examples of these REST calls and responses. 8 These examples assume the following (fictitious) local datastore URLs. 9 For simplicitly, we show one local datastore per aggregate here, but the architecture does ''not'' require that --- it would be perfectly fine to have the data for an aggregate be split among multiple datastores. 24 10 * `https://datastore.geni.net/`: datastore containing configuration data for operational monitoring 25 11 * `https://datastore.instageni.gpolab.bbn.com/`: datastore for gpo-ig aggregate … … 32 18 Aggregates are indexed by GENI-agreed short name. 33 19 20 data about an aggregate (including lists of resources and slivers at that aggregate, and where to look for measurements about the aggregate) 34 21 Example REST call for aggregate gpo-ig: 35 22 {{{ 36 23 https://datastore.instageni.gpolab.bbn.com/info/aggregate/gpo-ig 37 24 }}} 38 Response conforms to the [http://www.gpolab.bbn.com/monitoring/schema/20140828/aggregate# aggregate schema], [http://www.gpolab.bbn.com/monitoring/schema/20140828/aggregate# commented version of the aggregate schema] 25 Response conforms to the [http://www.gpolab.bbn.com/monitoring/schema/20140828/aggregate# aggregate schema], [http://www.gpolab.bbn.com/monitoring/schema/20140828/aggregate# commented version of the aggregate schema]. 39 26 {{{ 40 27 { … … 135 122 ==== Interface call and response ==== 136 123 124 Retrieves information about a network interface, a.k.a. port. 125 137 126 Example REST call for pc1 eth0 (control) at gpo-ig: 138 127 {{{ … … 167 156 168 157 GENI slice authorities are indexed by domain name and described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/authority# the authority schema]. Examples: 169 158 data about a GENI authority 170 159 171 160 Example REST call for authority of ch.geni.net: … … 199 188 ==== Interface-VLAN call and response ==== 200 189 190 data about a tagged VLAN subinterface of a network interface 191 201 192 Example REST call for VLAN 1750 on pc1 eth1: 202 193 {{{ 203 194 https://datastore.instageni.gpolab.bbn.com/info/interfacevlan/instageni.gpolab.bbn.com_interface_pc1:eth1:1750 204 195 }}} 205 Response conforms to the [http://www.gpolab.bbn.com/monitoring/schema/20140828/interfacevlan interfacevlan schema], [http://www.gpolab.bbn.com/monitoring/schema/20140828/interfacevlan.schema.jwc commented version of the interfacevlan schema] 196 Response conforms to the [http://www.gpolab.bbn.com/monitoring/schema/20140828/interfacevlan interfacevlan schema], [http://www.gpolab.bbn.com/monitoring/schema/20140828/interfacevlan.schema.jwc commented version of the interfacevlan schema]. 206 197 {{{ 207 198 { … … 223 214 224 215 GENI users have an ID based on the username and are described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/user# the GENI user schema]. Examples: 216 data about a GENI user at an authority 225 217 226 218 Example REST call for user tupty at ch.geni.net: … … 248 240 249 241 GENI slices have an ID based on the URN and are described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/slice# the GENI slice schema]. 242 data about a slice at an authority 243 250 244 Example REST call for tuptyexclusive slice: 251 245 {{{ … … 280 274 281 275 GENI sliver have an ID based on the URN and are described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/sliver# the GENI sliver schema]. Examples: 276 data about a sliver at an aggregate [http://www.gpolab.bbn.com/monitoring/schema/20140828/sliver.schema.jwc sliver schema with comments] 277 282 278 Example REST call for tuptyexclusive instageni sliver: 283 279 {{{ … … 345 341 346 342 Operational monitoring measures the dataplane with a set of simple tests between aggregates described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/experiment# the operational monitoring experiment schema]. Examples: 343 data about an operational monitoring experiment for monitoring the dataplane 347 344 Example REST call for missouri-ig to gpo-ig experiment: 348 345 {{{ … … 373 370 374 371 Measurements have an opaque ID which is generated by the local datastore which serves them, and must be persistent, so that the caller has the option of asking for the measurement by ID. They are described using the data schema outlined above. Examples: 372 [http://www.gpolab.bbn.com/monitoring/schema/20140828/data data]: data about time-series measurements. Schema based in part on [http://unis.incntre.iu.edu/schema/20120709/metadata] [http://www.gpolab.bbn.com/monitoring/schema/20140828/data.schema.jwc data schema with comments] 375 373 Example REST call for CPU utilization metric on pc1: 376 374 {{{ … … 571 569 }}} 572 570 573 ==== Data about operational monitoring configuration====574 575 Operational monitoring configuration data tells collectors where to find local datastores, and includes relevant metadata (like URNs and metadata about datastore or aggregate types) that collectors can use to decide which datastores to query. It is described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig# the opsconfig schema]. Examples:571 ==== Operational monitoring configuration (opsconfig) call and response ==== 572 573 Operational monitoring configuration data tells collectors where to find local datastores, and includes relevant metadata (like URNs and metadata about datastore or aggregate types) that collectors can use to decide which datastores to query. It is described using [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig# the opsconfig schema]. 576 574 * geni-prod: a hypothetical config datastore listing production aggregates and authorities: 575 operational configuration metadata, including locations of and information about other datastores [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig.schema.jwc opsconfig schema with comments] 576 577 577 Example REST call: 578 578 {{{ 579 579 https://datastore.geni.net/info/opsconfig/geni-prod 580 580 }}} 581 Response :581 Response conforms to the [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig opsconfig schema], [http://www.gpolab.bbn.com/monitoring/schema/20140828/opsconfig.schema.jwc commented version of the opsconfig schema]. 582 582 {{{ 583 583 {