Vaatimukset: Haluan määrittää itsenäisen LAN-IP-osoitteen Docker-kontille reitittimen DHCP-palvelun kautta, jotta kehitetty ASP.NET Core -sovellus voidaan ottaa käyttöön useille palvelimille (sovellus täytyy sijoittaa useille palvelimille korkean käytettävyyden saavuttamiseksi), ja sitten ne voidaan siirtää toisilleen. Jotkut sovellukset, erityisesti vanhat sovellukset tai verkkoliikennettä valvovat, odottavat yhdistävänsä suoraan fyysiseen verkkoon. Tässä tapauksessa voit käyttää macvlan-verkkoajuria määrittääksesi MAC-osoitteen jokaisen kontin virtuaaliverkkorajapinnalle, jolloin se näyttää fyysiseltä verkkorajapinnalta, joka yhdistyy suoraan fyysiseen verkkoon. Tässä tapauksessa sinun täytyy määrittää fyysinen liitäntä Docker-isännässäsi macvlanille. Ja. Macvlanin aliverkot ja portit. Voit jopa eristää verkkosi eri fyysisellä verkkoliitännällä.
Ensiksi sinun täytyy asettaa isäntäkoneen fyysinen verkkokorttiSallii "promiskuiteettitilan" tilanEsimerkiksi, käyttäen ESXI:tä esimerkkinä, aseta virtuaalinen kytkin seuraavasti:
Järjestelmän ympäristö on seuraava:
CentOS Linux -julkaisu 7.9.2009 (Core) Docker versio 20.10.20, build 9fdeb9c
Asenna Docker-palvelu CentOS 7:n palvelimelle. (jätetty pois)
Pystyttäänet.ipv4.ip_forward = 1Voit tarkastella nykyistä konfiguraation sysctl -a -a:n kautta, jos se ei ole 1, muokkaa se arvoon 1, opetus on jätetty pois. Pääasiallinen tarkoitus on selvittää, voidaanko yhden verkkokortin vastaanottama tieto välittää toisille verkkokorteille, kun Linux-isännällä on useita verkkokortteja, ja jos se on asetettu arvoon 1, voidaan toteuttaa pakettien välitys.
Kun Docker-palvelu on asennettu, luo macvlan-verkko seuraavalla komennolla:
--ip-range: Päätettiin määrittää osajoukko Docker 192.168.50.192/27, joka on 32 osoitteen alue alkaen 192.168.50.192 ja päättyen 192.168.50.223. --gateway: Aseta yhdyskäytävän osoite, yleensä reitittimen IP-osoite, aseta se tilanteesi mukaan -o vanhempi: Vanhemman käyttöliittymän, joka on isännän fyysisen NIC-kortin nimi, voidaan tarkastella IP A:n kautta todellisen tilanteen mukaan.
Kun luominen on valmis, voit tarkastella sitä seuraavalla komennolla:
Kokeile käynnistää busybox-kontti ja perustaa verkko uudella macvlanilla seuraavalla komennolla:
Vinkki: Tarvittaessa anna astiaIP-osoitteen asettamiseen käytetään --ip-parametria, esimerkiksi: --ip=192.168.50.210
Voit tarkastella kontin IP-osoitetta käyttämällä seuraavaa komentoa:
Tietenkin voit myös mennä kontin sisälle katsomaan sitä seuraavalla komennolla:
MeKäytä muita koneita LAN-verkossa, yritä pingata kontin IP-osoite, voit huomata, että voit pingata, kuten alla olevassa kuvassa näkyy:
Katsoessasi reitittimen IP- ja MAC-kartoitustaulukkoa näet, että docker-kontin MAC/IP-osoite on sama kuin reitittimessä, kuten alla olevassa kuvassa näkyy:
Kokeile käynnistää Redis-kontti uudelleen ja perustaa uusi MacVLAN-verkko seuraavalla komennolla:
CentOS-isännällä itsessään on myös käynnissä redis-sovellus ja se käyttää porttia 6379, ja luomme redis-konttisovelluksen, joka käyttää myös porttia 6379, eliSamaa isäntäporttia 6379 kuuntelee kaksi eri IP-osoitetta, yritä katsoa, toimiiko se.
Testitulokset toimivat normaalisti, kuten alla olevassa kuvassa näkyy:
Varat
Hyperlinkin kirjautuminen on näkyvissä.
|