Changes between Version 19 and Version 20 of OperationalMonitoring/DataSchema


Ignore:
Timestamp:
02/11/14 15:17:10 (10 years ago)
Author:
chaos@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • OperationalMonitoring/DataSchema

    v19 v20  
    9696
    9797These 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, i've shown 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.
    98  * `https://datastore.instageni.gpolab.bbn.com/`: datastore for gpo-ig
     98 * `https://datastore.geni.net/`: datastore containing configuration data for operational monitoring
     99 * `https://datastore.instageni.gpolab.bbn.com/`: datastore for gpo-ig aggregate
     100 * `https://datastore.ch.geni.net/`: datastore for ch.geni.net authority
     101
     102==== Data about operational monitoring configuration ====
     103
     104Operational monitoring configuration data tells aggregators where to find local datastores, and includes relevant metadata (like URNs and metadata about datastore or aggregate types) that aggregators can use to decide which datastores to query.  It is described using [http://www.gpolab.bbn.com/monitoring/schema/20140131/opsconfig# the opsconfig schema].  Examples:
     105 * geni-prod: a hypothetical config datastore listing production aggregates and authorities:
     106{{{
     107{
     108  "$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140131/opsconfig#",
     109  "id": "geni-prod",
     110  "selfRef": "https://datastore.geni.net/opsconfigs/geni-prod",
     111  "ts": 1391192685740849,
     112  "aggregates": [
     113    {
     114      "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm",
     115      "amtype": "protogeni",
     116      "href": "https://datastore.instageni.gpolab.bbn.com/aggregates/gpo-ig"
     117    }
     118  ],
     119  "authorities": [
     120    {
     121      "urn": "urn:publicid:IDN+ch.geni.net+authority+ch",
     122      "href": "https://datastore.ch.geni.net/authorities/ch.geni.net"
     123    }
     124  ]
     125}
     126}}}
    99127
    100128==== Data about an aggregate ====
     
    216244}}}
    217245
     246==== Data about a slice authority ====
     247
     248GENI slice authorities are indexed by domain name and described using [http://www.gpolab.bbn.com/monitoring/schema/20140131/authority# the authority schema].  Examples:
     249 * ch.geni.net:
     250{{{
     251{
     252  "$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140131/authority#",
     253  "id": "ch.geni.net",
     254  "selfRef": "https://datastore.ch.geni.net/authorities/ch.geni.net",
     255  "urn": "urn:publicid:IDN+ch.geni.net+authority+ch",
     256  "ts": 1391192685740849,
     257  "users": [
     258    {
     259      "urn": "urn:publicid:IDN+ch.geni.net+user+tupty",
     260      "href": "https://datastore.ch.geni.net/users/tupty"
     261    }
     262  ],
     263  "slices": [
     264    {
     265      "urn": "urn:publicid:IDN+ch.geni.net:gpo-infra+slice+tuptyexclusive",
     266      "href": "https://datastore.ch.geni.net/slices/ch.geni.net_gpo-infra_slice_tuptyexclusive"
     267    }
     268  ]
     269}
     270}}}
     271
     272==== Data about a GENI user ====
     273
     274GENI users have an ID based on the username and are described using [http://www.gpolab.bbn.com/monitoring/schema/20140131/user# the GENI user schema].  Examples:
     275 * tupty at ch.geni.net:
     276{{{
     277{
     278  "$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140131/user#",
     279  "id": "tupty",
     280  "selfRef": "https://datastore.ch.geni.net/users/tupty",
     281  "urn": "https://datastore.ch.geni.net/users/tupty",
     282  "ts": 1391192685740849,
     283  "authority": {
     284    "urn": "urn:publicid:IDN+ch.geni.net+authority+ch",
     285    "href": "https://datastore.ch.geni.net/authorities/ch.geni.net"
     286  },
     287  "fullname": "Tim Exampleuser",
     288  "email": "tupty@example.com"
     289}
     290}}}
     291
     292==== Data about a GENI slice ====
     293
     294GENI slices have an ID based on the URN and are described using [http://www.gpolab.bbn.com/monitoring/schema/20140131/slice# the GENI slice schema].  Examples:
     295 * tuptyexclusive slice:
     296{{{
     297{
     298  "$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140131/slice#",
     299  "id": "ch.geni.net_gpo-infra_slice_tuptyexclusive",
     300  "selfRef": "https://datastore.ch.geni.net/slices/ch.geni.net_gpo-infra_slice_tuptyexclusive",
     301  "urn": "urn:publicid:IDN+ch.geni.net:gpo-infra+slice+tuptyexclusive",
     302  "uuid": "8c6b97fa-493b-400f-95ee-19accfaf4ae8",
     303  "ts": 1391192685740849,
     304  "authority": {
     305    "urn": "urn:publicid:IDN+ch.geni.net+authority+ch",
     306    "href": "https://datastore.ch.geni.net/authorities/ch.geni.net"
     307  },
     308  "created": 1391626683000000,
     309  "expires": 1391708989000000,
     310  "members": [
     311    {
     312      "urn": "urn:publicid:IDN+ch.geni.net+user+tupty",
     313      "href": "https://datastore.ch.geni.net/users/tupty",
     314      "role": "lead"
     315    }
     316  ]
     317}
     318}}}
     319
     320==== Data about a GENI sliver ====
     321
     322GENI sliver have an ID based on the URN and are described using [http://www.gpolab.bbn.com/monitoring/schema/20140131/sliver# the GENI sliver schema].  Examples:
     323 * tuptyexclusive instageni sliver:
     324{{{
     325{
     326  "$schema": "http://www.gpolab.bbn.com/monitoring/schema/20140131/sliver#",
     327  "id": "instageni.gpolab.bbn.com_sliver_26947",
     328  "selfRef": "https://datastore.instageni.gpolab.bbn.com/slivers/instageni.gpolab.bbn.com_sliver_26947",
     329  "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+sliver+26947",
     330  "uuid": "30752b06-8ea8-11e3-8d30-000000000000",
     331  "ts": 1391192685740849,
     332  "aggregate": {
     333    "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+authority+cm",
     334    "href": "https://datastore.instageni.gpolab.bbn.com/aggregates/gpo-ig"
     335  },
     336  "slice_urn": "urn:publicid:IDN+ch.geni.net:gpo-infra+slice+tuptyexclusive",
     337  "slice_uuid": "8c6b97fa-493b-400f-95ee-19accfaf4ae8",
     338  "creator": "urn:publicid:IDN+ch.geni.net+user+tupty",
     339  "created": 1391626683000000,
     340  "expires": 1391708989000000,
     341  "resources": [
     342    {
     343      "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc1",
     344      "href": "https://datastore.instageni.gpolab.bbn.com/nodes/instageni.gpolab.bbn.com_node_pc1",
     345      "is_exclusive": false
     346    },
     347    {
     348      "urn": "urn:publicid:IDN+instageni.gpolab.bbn.com+node+pc2",
     349      "href": "https://datastore.instageni.gpolab.bbn.com/nodes/instageni.gpolab.bbn.com_node_pc2",
     350      "is_exclusive": false
     351    }
     352  ]
     353}
     354}}}
     355
    218356==== Measurements used for the use cases ====
    219357