Breyting á default-address-pools endurnúmerar ekki netin sem þú ert þegar með, og að ætlast til þess er einmitt hvernig vandvirk áætlun verður að óvæntri truflun. Stillingin stýrir sjálfvirkri úthlutun fyrir net sem búin eru til eftir að daemoninn er endurræstur með nýju stillingunum. Allt sem þegar er í gangi heldur undirnetinu sem það fékk, því það undirnet er hluti af vistaðri skilgreiningu netsins. Goðsögnin er þægileg því hún bendir til að ein breyting lagaði hvert skörun, og raunveruleikinn er vinna í tveimur hlutum: veldu svið sem er raunverulega laust og flyttu svo netin sem eru það ekki.

Goðsögnin: ein laugabreyting lagar skörunina

Goðsögnin hefur ákveðna mynd. Einhver les að hægt sé að breyta sjálfgefnu laug Docker, breytir henni, endurræsir daemoninn og kemst að þeirri niðurstöðu að gámnetið rekist ekki lengur á við skrifstofu-VPN. Gamla netið er ennþá þar, ennþá tengt og heldur ennþá vistfanginu sem rekst á.

Það sem breyttist er framtíðarhegðun úthlutandans, sem er sannarlega gagnleg og sannarlega takmörkuð. Ný net sem búin eru til án skýrs --subnet eru skorin úr nýju lauginni; þau sem fyrir voru hafa aldrei verið í þeirri laug. Endurræsing endurbyggir ekki net og færir ekki gáma á milli þeirra. Ef einkennin vara áfram eftir breytinguna var breytingin raunveruleg og greiningin ófullnægjandi.

Grunnsvið og úthlutað forskeyti

Stillingarnar hafa tvo reiti sem er auðvelt að rugla saman. base er sviðið sem úthlutandinn sker úr, og size er forskeytislengd hvers úthlutaðs nets, þannig að grunnur 10.10.0.0/16 með stærð 24 úthlutar /24 innan þess /16. Ef hlutverkunum er snúið við verður úthlutunarmynstur sem þú ætlaðir ekki, venjulega eitt gríðarstórt net eða uppþornað laug.

Laug er bókun, ekki sönnun. Docker forðast árekstra sem það sér í leiðarvísitöflu hýsilsins og getur ekki séð VPN sem þú hefur ekki tengst enn.

Þessi takmörkun er öll ástæðan til að velja af ásetningi. Sviðin til að bera saman eru þau sem hýsillinn verður að ná til: skrifstofu-LAN, innri undirnet fyrirtækis-VPN, forskeyti rannsóknarstofu eða staging og hvaða annar gámahýsill sem er á sama overlay. Skrifaðu þau sem CIDR áður en þú snertir daemoninn, því listi í höfðinu sleppir einmitt því sem skiptir máli. Veldu svo grunn sem skarast ekki við neitt þeirra og hafðu listann með uppsetningunni svo næsta manneskja endurtaki ekki æfinguna upp úr minninu.

Gerðu skrá áður en þú velur

Gerðu fyrst skrá yfir það sem er til. docker network ls telur upp netin, og docker network inspect bridge -f '{{.IPAM.Config}}' prentar undirnetið sem tiltekið net notar. Endurtaktu fyrir hvert net sem notandinn skilgreinir, því Compose-verkefni búa til sín eigin og skýrt --subnet í compose-skrá fer alveg fram hjá lauginni.

Síðasti punkturinn er sá sem lifir flutninginn af. Laugabreyting kemur ekki í veg fyrir að kollega festi 172.18.0.0/16 í compose-skrá, og áreksturinn kemur aftur með öðrum höfundi.

Flytja það sem þegar er til

Flutningur núverandi neta er aðskilin, studd aðgerð. Hvert fyrirhaft net verður að búa til aftur með nýju undirneti, sem þýðir að aftengja og endurtengja gámana sem nota það, og endursköpun nets fjarlægir gámatengingar þess í stað þess að færa þær. Varðveittu skrár og stillingar og meðhöndlaðu endursköpunina sem uppsetningu en ekki endurstillingu gagna. Gerðu vinnuna í viðhaldsglugga, því gámarnir á endurbúnu neti endurræsast hvort sem þú skipulagðir það eða ekki.

Fylgdu skjalfestum stillingum daemonsins og endurræsingarferlinu og samhæfðu truflunina. Á hýsli með einum daemon endurræsir systemctl restart docker gáma samkvæmt endurræsingarstefnu þeirra, og það er hegðun sem er þess virði að þekkja fyrirfram en ekki eftir á.

Staðfestu svo hlutina tvo sem breytingin átti að laga. Skoðaðu nýja undirnetið með docker network inspect og staðfestu að það sé innan valda grunnsins, athugaðu svo leiðina að dæmigerðum VPN-áfangastað með ip route get 10.20.30.40 og staðfestu að hún fari þangað sem þú átt von á en ekki inn í brú. Prófaðu líka þjónustuuppgötvun og samskipti gáma á milli, því net sem endurbúið er með annarri vistfærslu getur brotið nafnupplausn á þann hátt sem lítur út eins og forritavilla.

Hvað brotnar enn eftir á

Varanlegi hlutinn er skráin. Hafðu úthlutunarlistann, valda grunninn og stærðina og netin sem voru endurbúin á sama stað og uppsetninguna.

Það að svið sé einkasvið gerir það ekki öruggt til endurnotkunar. 10.0.0.0/8 er einkasvið og líka það sem líklegast er þegar í notkun einhvers staðar á leiðinni, þess vegna er svarið ákveðin bókun en ekki val á einum blokk. Netdokumentation Docker lýsir sjálfvirkri úthlutun undirneta og reitum laugarinnar. Veldu sviðið út frá því sem þú verður að ná til, ekki út frá því sem lítur snyrtilega út.

Tengdir greinar