Nebula advertise_addrs au static_host_map: chagua kwa mmiliki
Ramani tuli hudumishwa na kila peer inayoiita; anwani iliyotangazwa huchapishwa na mwenyeji. Chagua kwa yule anayejua kituo cha mwisho.
Mipangilio static_host_map na advertise_addrs yote huweka anwani mbele ya peer, na hujibu maswali tofauti. Moja ni faili ya ndani inayoorodhesha anwani ya overlay na kituo cha mwisho cha underlay cha kupiga. Nyingine ni mwenyeji anayewaambia minara yake vituo vya mwisho vya ziada vinavyoweza kumfikia. Umiliki ndio tofauti halisi: ramani huhudumiwa na wote wanaohitaji, na tangazo na mwenyeji mwenyewe.
Amua kwa yule anayemiliki taarifa
| Setting | Where it lives | Best for |
|---|---|---|
static_host_map | Every peer that needs the entry | Bootstrap endpoints, deliberately fixed paths |
advertise_addrs | The host's own config | Endpoints the host cannot otherwise discover |
Kila peer inayobadilika katika faili tuli ya kila peer ni kazi ya matengenezo inayokua kwa mraba wa kundi. Hiyo ndiyo sababu ya kivitendo ya kuchukua mpangilio mwingine wakati mwenyeji mwenyewe anajua jibu.
Swali la umiliki pia hutabiri kitakachotokea anwani inapobadilika. Kwa ramani tuli, mtu anapaswa kukumbuka kila peer inayoshikilia ingizo la zamani. Kwa tangazo, mwenyeji huchapisha kituo kipya cha mwisho na minara yake huipitisha, kwa hivyo mabadiliko hubaki ya ndani kwenye mashine iliyohama.
Bootstrap bado inahitaji ingizo tuli
Mteja anapaswa kufikia angalau mnara mmoja kabla ya kumuuliza mtu yeyote kuhusu peer wengine. Kuruka kwa kwanza hakuwezi kutoka kwa ugunduzi, kwa hivyo hutoka kwa ingizo tuli katika usanidi wa mteja. Rekebisha ingizo hilo moja na overlay iliyobaki inaweza kufundishwa.
Ingizo la ramani huunganisha anwani ya Nebula na kituo kimoja au zaidi cha mwisho cha IP au DNS kinachofikika na bandari. Kuweka minara hapo ni kawaida; kuweka kila peer hapo ndio mtindo unaozea vibaya, kwa sababu kila peer mpya inamaanisha kuhariri faili kwenye mashine ambazo huenda usizidhibiti. Weka orodha fupi vya kutosha kwamba mtu bado anaweza kuithibitisha kwa kuisoma.
Tangaza wakati mwenyeji anajua kituo cha mwisho
Mwenyeji aliye nyuma ya uelekezaji wa bandari anafikika kwa anwani ya umma ambayo haijatengwa kwa kiolesura chochote chake. Hawezi kugundua anwani hiyo kwa kujiangalia mwenyewe. advertise_addrs inamruhusu kuchapisha kituo cha mwisho kupitia minara yake ili peer wengine wajifunze njia inayofanya kazi kweli. Mpangilio upo kwa sababu hii hasa kwamba mwenyeji ndiye upande pekee unaojua kwamba ramani ilifanywa.
Tumia anwani na bandari ambazo peer wengine wanaweza kufikia kweli. Hoja hiyo hiyo inatumika kwa mwenyeji mwenye njia kadhaa za mtandao, ambapo njia moja inapendelewa kwa peer kwenye mtandao fulani. Tangazo ni taarifa kuhusu underlay, si ombi la kitu chochote. Ramani inapobadilika, sasisha tangazo kwa mwenyeji na acha ugunduzi uibebe, badala ya kuhariri faili tuli kwenye kundi lote.
Tangazo si ufikivu
Kuchapisha kituo cha mwisho hakuundi kanuni ya uelekezaji ya kipitisha, hakufungui firewall ya juu na hakufanyi jina la DNS litatuliwe. Hizo ni sehemu tofauti za kazi, na tangazo sahihi lenye uelekezaji wa bandari unaokosekana hutoa hasa hitilafu uliyokuwa ukijaribu kurekebisha. Tangazo ni dai kuhusu ufikivu, si utaratibu unaouthibitisha.
Kagua njia kutoka nje kabla ya kulaumu ugunduzi. Peer inayojifunza kituo cha mwisho lakini haiwezi kukamilisha handshake ina tatizo la uelekezaji au uchujaji kwenye underlay, na kurudia anwani hiyo hiyo katika mipangilio yote mawili hakutabadilisha hilo.
Weka anwani ya overlay kando na kituo cha mwisho
Cheti cha nodi hutambua anwani yake ya Nebula. Anwani zilizotangazwa ni za mtandao wa chini, na zinaweza kubadilika bila kugusa cheti. Kutoa cheti kipya na IP nyingine ya overlay ni operesheni tofauti, na matokeo yake kwa kila uhusiano wa uaminifu uliobana ule wa zamani. Weka mabadiliko mawili kando katika runbook, la sivyo uhamishaji wa kituo cha mwisho utarekodiwa kama utoaji upya.
Triage inapokwama, tenganisha tabaka mbili kwa uwazi: ugunduzi hurejesha kituo cha mwisho kinachotarajiwa, na handshake inakifikia? Ikiwa ugunduzi ni sahihi na pakiti zinashindwa, tatizo liko chini ya overlay. Ikiwa ugunduzi si sahihi, tatizo liko kwenye ramani au tangazo, na marekebisho yanahusika hapo.