...
NERDS stand for Network Enterprise Resource Discovery System. A collaborative effort between initially NORDUnet and Stockholm University to collect reusable data about "stuff" on our networks. The collected data is saved in a JSON format by the producers. The thought is that you then can create consumers for data that was collected by someone else or use a producer that you have not written yourself.
https://github.com/fredrikt/nerdsImage Removed
Gliffy Diagram |
---|
size | M |
---|
name | nerdsPhilosophy |
---|
pagePin | 1 |
---|
|
Code Block |
---|
title | NERDS JSON structure |
---|
|
{
"host": {
"name": "hostname-or-other-unique-identifier",
"version": 1,
"name-of-producer": { ... any private data ... }
}
}
|
...
Code Block |
---|
title | JSON data from the Alcatel ISIS producer |
---|
|
{
"host": {
"alcatel_isis": {
"data": {
"ip_address": "",
"link": "",
"name": "NU-TUG-LM-02",
"osi_address": "4700230000000100010001000100206066D6F81D",
"ots": "NA",
"type": "ne1626LM"
},
"name": "NU-TUG-LM-02",
"neighbours": [
{
"metric": "12",
"name": "NU-ORE-TSS-01"
}
]
},
"name": "NU-TUG-LM-02",
"version": 1
}
}
|
...
All nodes have a SQL node handle to make it easy to use regular Django reusable apps like Django Comments or Taggit.
The nodes also have a node type that is stored in the SQL database.
Code Block |
---|
| pythonnonepython |
---|
| none |
---|
title | NodeHandle model properties |
---|
|
class NodeHandle(models.Model):
# Handle <-> Node data
handle_id = models.AutoField(primary_key=True)
node_id = models.BigIntegerField(blank=True, unique=True,
editable=False)
# Data shared with the node
node_name = models.CharField(max_length=200)
node_type = models.ForeignKey(NodeType)
node_meta_type = models.CharField(max_length=255,
choices=NODE_META_TYPE_CHOICES)
# Meta information
creator = models.ForeignKey(User, related_name='creator')
created = models.DateTimeField(auto_now_add=True)
modifier = models.ForeignKey(User, blank=True, related_name='modifier')
modified = models.DateTimeField(auto_now=True)
.
.
methods
|
http://git.nordu.net/?p=norduni.git
https://portal.nordu.net/display/NI/
Graph Data Model
...
...
...
Actual Data in model
...
1200 | name | Actual data in model |
---|
|
...