Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Skydive ni chanzo wazi, topolojia ya mtandao wa wakati halisi na uchanganuzi wa itifaki. Inalenga kutoa njia ya kina ya kuelewa kinachotokea katika miundombinu ya mtandao.

Ili kukuvutia, nitakupa picha kadhaa za skrini kuhusu Skydive. Hapo chini kutakuwa na chapisho kwenye utangulizi wa Skydive.

Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Chapisha "Utangulizi wa skydive.networkΒ»juu ya Habre.

Skydive huonyesha topolojia ya mtandao kwa kupokea matukio ya mtandao kutoka kwa mawakala wa Skydive. Umewahi kujiuliza jinsi ya kuongeza au kuonyesha katika mchoro wa topolojia vipengele vya mtandao ambavyo viko nje ya mtandao wa wakala wa Skydive au vitu visivyo vya mtandao kama vile TOR, hifadhi ya data, n.k. Hakuna haja ya kuwa na wasiwasi kuhusu hilo tena kutokana na API ya sheria ya Node .

Tangu toleo la 0.20, Skydive hutoa API ya sheria ya Node ambayo inaweza kutumika kuunda nodi na kingo mpya na kusasisha metadata ya nodi zilizopo. API ya sheria ya Node imegawanywa katika API mbili: API ya sheria ya nodi na API ya kanuni ya makali. API ya Node Rule inatumika kuunda nodi mpya na kusasisha metadata ya nodi iliyopo. API ya sheria ya makali hutumiwa kuunda mpaka kati ya nodi mbili, i.e. huunganisha nodi mbili.

Katika blogu hii tutaona matukio mawili ya matumizi, moja ambayo ni sehemu ya mtandao ambayo si sehemu ya mtandao wa skydive. Chaguo la pili ni sehemu isiyo ya mtandao. Kabla ya hapo, tutaangalia baadhi ya njia za msingi za kutumia API ya Kanuni za Topolojia.

Kuunda Node ya Skydive

Ili kuunda nodi, lazima utoe jina la nodi la kipekee na aina halali ya nodi. Unaweza pia kutoa chaguzi zingine za ziada.

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": ""
}

Sasisha Metadata ya Nodi za Skydive

Ili kusasisha metadata ya nodi iliyopo, lazima utoe swali la gremlin ili kuchagua nodi ambazo ungependa kusasisha metadata. Kulingana na ombi lako, unaweza kusasisha metadata ya nodi moja au zaidi kwa kutumia kanuni moja ya nodi.

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')"
}

Kuunda Edge ya Skydive

Ili kuunda ukingo, lazima ubainishe nodi za chanzo na lengwa na aina ya kiungo cha ukingo; ili kuunda nodi ya mtoto, thamani ya aina ya kiungo lazima iwe umiliki; vivyo hivyo, ili kuunda safu ya aina ya kiungo2, thamani ya aina ya kiungo lazima iwe. safu2. Unaweza kuunda kiungo zaidi ya kimoja kati ya nodi mbili, lakini aina ya kiungo lazima iwe tofauti.

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"
  }
}

Kesi ya matumizi ya kwanza

Katika kesi hii, tutaangalia jinsi ya kuonyesha kifaa kisicho cha mtandao katika topolojia ya skydive. Wacha tuzingatie kuwa tuna ghala la data ambalo linahitaji kuonyeshwa kwenye mchoro wa skydive topolojia na metadata muhimu.

Tunahitaji tu kuunda kanuni ya nodi ili kuongeza kifaa kwenye topolojia. Tunaweza kuongeza metadata ya kifaa kama sehemu ya amri ya kuunda, au baadaye kuunda amri moja au zaidi za kanuni za sasisho za nodi.

Tekeleza amri ifuatayo ya sheria ya mwenyeji ili kuongeza kifaa cha kuhifadhi kwenye mchoro wa topolojia.

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"

Tekeleza amri iliyo chini ya sheria ya makali ili kuhusisha nodi iliyoundwa na nodi ya mwenyeji.

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

Baada ya amri zilizo hapo juu, sasa unaweza kuona kifaa kinachoonekana kwenye mchoro wa skydive topolojia na metadata iliyotolewa kama inavyoonyeshwa kwenye picha hapa chini.

Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Kesi ya matumizi ya pili

Katika kesi hii tutaona jinsi ya kuongeza kifaa cha mtandao ambacho si sehemu ya mtandao wa skydive. Hebu tuangalie mfano huu. Tuna mawakala wawili wa skydive wanaoendesha kwenye majeshi mawili tofauti, ili kuunganisha majeshi haya mawili tunahitaji kubadili TOR. Ingawa tunaweza kufikia hili kwa kufafanua nodi za muundo na viungo katika faili ya usanidi, hebu tuone jinsi tunavyoweza kufanya vivyo hivyo kwa kutumia API ya Sheria za Topolojia.

Bila swichi ya TOR, mawakala hawa wawili wataonekana kama nodi mbili tofauti bila viungo vyovyote, kama inavyoonyeshwa kwenye picha hapa chini.

Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Sasa endesha amri zifuatazo za Kanuni za Seva ili kuunda swichi ya TOR na bandari.

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"

Kama unavyoona, swichi ya TOR na bandari zimeundwa na kuongezwa kwa topolojia ya anga, na topolojia sasa itaonekana kama picha iliyo hapa chini.

Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Sasa endesha amri zifuatazo za Edge Rule ili kuunda muunganisho kati ya swichi ya TOR, bandari 1 na kiolesura cha umma cha mwenyeji 1.

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"

Tekeleza amri zifuatazo ili kuunda kiungo kati ya TOR kubadili mlango 2 na kupangisha kiolesura 2 cha umma

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"

Vyama vya umiliki na layer2 sasa vimeundwa kati ya swichi ya TOR na lango, pamoja na uhusiano wa layer2 kati ya mawakala na bandari. Sasa topolojia ya mwisho itaonekana kama picha hapa chini.

Kuongeza nodi kwa topolojia ya Skydive mwenyewe kupitia mteja wa Skydive

Sasa wapangishi/wakala wawili wameunganishwa kwa usahihi na unaweza kujaribu muunganisho au kuunda picha fupi ya njia kati ya wapangishaji wawili.

PS Unganisha kwa chapisho la asili

Tunatafuta watu ambao wanaweza kuandika machapisho kuhusu vipengele vingine vya Skydive.
Gumzo la telegraph kupitia skydive.network.

Chanzo: mapenzi.com

Kuongeza maoni