En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

Skydive ass en Open Source, Echtzäit Netzwierk Topologie a Protokollanalysator. Et zielt e komplette Wee ze bidden fir ze verstoen wat an enger Netzwierkinfrastruktur geschitt.

Fir Iech ze interesséieren, ginn ech Iech e puer Screenshots iwwer Skydive. Drënner gëtt et e Post op eng Aféierung zu Skydive ginn.

En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

Post"Aféierung fir skydive.network» op Habré.

Skydive weist d'Netzwierktopologie andeems Dir Netzwierkevenementer vun Skydive Agenten kritt. Hutt Dir jeemools gefrot wéi Dir an engem Topologie Diagramm Netzwierk Komponenten addéiere kënnt oder weisen, déi ausserhalb vum Skydive Agent Netzwierk sinn oder Net-Netzwierkobjekte wéi TOR, Datelagerung, asw.

Zënter Versioun 0.20 bitt Skydive eng Node Regel API déi benotzt ka ginn fir nei Wirbelen a Kanten ze kreéieren an d'Metadaten vun existente Wirbelen ze aktualiséieren. D'Node Regel API ass an zwee APIen opgedeelt: d'Node Regel API an d'Rand Regel API. D'Node Rule API gëtt benotzt fir en neien Node ze kreéieren an d'Metadate vun engem existente Node ze aktualiséieren. D'Randregel API gëtt benotzt fir eng Grenz tëscht zwee Wirbelen ze kreéieren, d.h. verbënnt zwee Wirbelen.

An dësem Blog wäerte mir zwee Benotzungsfäll gesinn, vun deenen een en Netzwierkkomponent ass deen net Deel vum Skydive-Netz ass. Déi zweet Optioun ass en Net-Netzwierkkomponent. Virdru kucke mir e puer grondleeënd Weeër fir d'Topology Rules API ze benotzen.

Erstellt e Skydive Node

Fir en Node ze kreéieren, musst Dir en eenzegaartegen Nodenumm an e gültege Nodetyp ubidden. Dir kënnt och e puer zousätzlech Optiounen ubidden.

skydive client node-rule create --action="create" --node-name="node1" --node-type="fabric" --name="node rule1"
{
  "UUID": "ea21c30f-cfaa-4f2d-693d-95159acb71ed",
  "Name": "node rule1",
  "Description": "",
  "Metadata": {
    "Name": "node1",
    "Type": "fabric"
  },
  "Action": "create",
  "Query": ""
}

Update Skydive Nodes Metadaten

Fir d'Metadate vun engem existente Node ze aktualiséieren, musst Dir eng gremlin Ufro ubidden fir d'Knäppercher ze wielen op deenen Dir d'Metadate wëllt aktualiséieren. Wéi Är Ufro kënnt Dir d'Metadaten vun engem oder méi Noden aktualiséieren mat enger eenzeger Node Regel.

skydive client node-rule create --action="update" --name="update rule" --query="G.V().Has('Name', 'node1')" --metadata="key1=val1, key2=val2"
{
  "UUID": "3e6c0e15-a863-4583-6345-715053ac47ce",
  "Name": "update rule",
  "Description": "",
  "Metadata": {
    "key1": "val1",
    "key2": "val2"
  },
  "Action": "update",
  "Query": "G.V().Has('Name', 'node1')"
}

Erstellt e Skydive Edge

Fir e Rand ze kreéieren, musst Dir d'Quell- an Destinatiounsknäppchen an de Linktyp vum Rand spezifizéieren; fir e Kandnode ze kreéieren, muss de Linktypwäert Eegentum sinn; ähnlech, fir e Linktyp Layer2 ze kreéieren, muss de Linktypwäert sinn Layer 2. Dir kënnt méi wéi ee Link tëscht zwee Wirbelen erstellen, awer d'Zort vum Link muss anescht sinn.

skydive client edge-rule create --name="edge" --src="G.v().has('TID', '2f6f9b99-82ef-5507-76b6-cbab28bda9cb')" --dst="G.V().Has('TID', 'd6ec6e2f-362e-51e5-4bb5-6ade37c2ca5c')" --relationtype="both"
{
  "UUID": "50fec124-c6d0-40c7-42a3-2ed8d5fbd410",
  "Name": "edge",
  "Description": "",
  "Src": "G.v().has('TID', '2f6f9b99-82ef-5507-76b6-cbab28bda9cb')",
  "Dst": "G.V().Has('TID', 'd6ec6e2f-362e-51e5-4bb5-6ade37c2ca5c')",
  "Metadata": {
    "RelationType": "both"
  }
}

Éischt Benotzung Fall

An dësem Fall wäerte mir kucken wéi en Net-Netzwierkapparat an der Skydive Topologie ze weisen. Loosst eis berücksichtegen datt mir en Datelager hunn dat an engem Skydive Topologie Diagramm mat e puer nëtzlech Metadaten ugewise muss ginn.

Mir brauche just eng Node Regel ze kreéieren fir den Apparat an d'Topologie ze addéieren. Mir kënnen Apparat Metadaten als Deel vun der schafen Kommando derbäi, oder spéider een oder méi Update Node Regel Kommandoen schafen.

Fëllt de folgende Hostregelbefehl aus fir e Späicherapparat an den Topologiediagramm ze addéieren.

skydive client node-rule create --action="create" --node-name="sda" --node-type="persistentvolume" --metadata="DEVNAME=/dev/sda,DEVTYPE=disk,ID.MODEL=SD_MMC, ID.MODEL ID=0316, ID.PATH TAG=pci-0000_00_14_0-usb-0_3_1_0-scsi-0_0_0_0, ID.SERIAL SHORT=20120501030900000, ID.VENDOR=Generic-, ID.VENDOR ID=0bda, MAJOR=8, MINOR=0, SUBSYSTEM=block, USEC_INITIALIZED=104393719727"

Fëllt de Kommando ënner der Randregel fir den erstallten Node mam Host Node ze associéieren.

skydive client edge-rule create --src="G.V().Has('Name', 'node1')" --dst="G.V().Has('Name', 'sda')" --relationtype="ownership"

No den uewe genannte Kommandoen, kënnt Dir elo den Apparat siichtbar am Skydive Topologie Diagramm mat de gegebene Metadaten gesinn wéi am Bild hei ënnendrënner.

En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

Zweet Benotzungsfall

An dësem Fall wäerte mir kucken wéi een en Netzwierkapparat addéiere kann deen net Deel vum Skydive-Netz ass. Loosst eis dëst Beispill kucken. Mir hunn zwee Skydive Agenten déi op zwee verschiddene Hosten lafen, fir dës zwee Hosten ze verbannen brauche mir en TOR Schalter. Och wa mir dëst kënne erreechen andeems Dir Strukturnoden a Linken an enger Konfiguratiounsdatei definéiert, loosst eis kucken wéi mir datselwecht maache kënnen mat der Topology Rules API.

Ouni TOR-Schalter erschéngen déi zwee Agenten als zwee verschidde Wirbelen ouni Linken, wéi am Bild hei drënner.

En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

Fuert elo déi folgend Host Regelen Kommandoen fir den TOR Schalter a Ports ze kreéieren.

skydive client node-rule create --node-name="TOR" --node-type="fabric" --action="create"
skydive client node-rule create --node-name="port1" --node-type="port" --action="create"
skydive client node-rule create --node-name="port2" --node-type="port" --action="create"

Wéi Dir gesitt, sinn den TOR-Schalter an d'Ports erstallt an an d'Skydive-Topologie bäigefüügt, an d'Topologie wäert elo kucken wéi d'Bild hei drënner.

En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

Fuert elo déi folgend Edge Rule Kommandoen fir eng Verbindung tëscht dem TOR-Schalter, dem Hafen 1 an der ëffentlecher Interface vum Host 1 ze kreéieren.

skydive client edge-rule create --src="G.V().Has('Name', 'TOR')" --dst="G.V().Has('Name', 'port1')" --relationtype="ownership"
skydive client edge-rule create --src="G.V().Has('Name', 'TOR')" --dst="G.V().Has('Name', 'port1')" --relationtype="layer2"
skydive client edge-rule create --src="G.V().Has('TID', '372c254d-bac9-50c2-4ca9-86dcc6ce8a57')" --dst="G.V().Has('Name', 'port1')" --relationtype="layer2"

Fëllt déi folgend Befehle fir e Link tëscht TOR-Schalterport 2 an Host 2 ëffentlechen Interface ze kreéieren

skydive client edge-rule create --src="G.V().Has('Name', 'TOR')" --dst="G.V().Has('Name', 'port2')" --relationtype="layer2"
skydive client edge-rule create --src="G.V().Has('Name', 'TOR')" --dst="G.V().Has('Name', 'port2')" --relationtype="ownership"
skydive client edge-rule create --src="G.V().Has('TID', '50037073-7862-5234-4996-e58cc067c69c')" --dst="G.V().Has('Name', 'port2')" --relationtype="layer2"

Eegentum an Layer2 Associatiounen ginn elo tëscht dem TOR Schalter an dem Hafen erstallt, souwéi Layer2 Associatiounen tëscht Agenten a Ports. Elo wäert déi lescht Topologie kucken wéi d'Bild hei drënner.

En Node an d'Skydive Topologie manuell iwwer de Skydive Client addéieren

Elo sinn déi zwee Hosten / Agenten richteg ugeschloss an Dir kënnt d'Verbindung testen oder e kuerstste Weefang tëscht den zwee Hosten erstellen.

PS Link zu original Post

Mir sichen no Leit déi Posts iwwer aner Skydive Feature schreiwen kéinten.
Telegram Chat iwwer skydive.network.

Source: will.com

Setzt e Commentaire