7,540
edits
Changes
no edit summary
my-ingress
</pre>
==Overlay hálózatok==
http://blog.nigelpoulton.com/demystifying-docker-overlay-networking/<br>
A beépített ingress overlay hálózaton felül mi is létrehozhatunk kézzel új overlay hálózatokat. Az overlay hálózatot össze kell rendelni swarm service-ekkel. Ha egy swarm service-t egy overlay hálózathoz rendelünk, akkor az adott service összes konténere (akkor is ha távoli node-okon vannak) képes lesz egymással kommunikálni. Az overlay hálózatot a manager csak azokra a node-okra fogja kiterjeszteni, amik a megadott szolgáltatás konténereit futtatják. Egészen addig csak a manager-en létezik.
Overlay hálózatot csak a manager node-okon lehet létrehozni a '''-d overlay''' kapcsoló használatával. Hozzuk létre az '''over-test''' hálózatot.
<pre>
# docker-machine ssh mg0 docker network create -d overlay over-test
</pre>
Egészen addig, amíg nem rendeljük szolgáltatáshoz az overlay hálózatot, csak a manager node-okon lesz listázható. Figyeljük meg, hogy az mg0-án hoztuk létre, de az mg1-en is látszik:
<pre>
# docker-machine ssh mg1 docker network ls
NETWORK ID NAME DRIVER SCOPE
idf7f51tp95i ingress overlay swarm
...
6hig77pse2xt over-test overlay swarm <<<
</pre>
Viszont a worker1-en nem látszik.
Most hozzuk létre egy új szolgáltatást két replikával, és rendeljük hozzá az új '''over-test''' overlay hálózathoz. A hálózatot a --network kapcsolóval kell megadni. A szolgáltatásneve '''test''' lesz. (Természetesen a manager node-ok egyikén)
<pre>
# docker-machine ssh mg1 docker service create --name test \
--network over-test \
--replicas 2 \
ubuntu sleep infinity
</pre>
Nézzük meg a test szolgáltatás részleteit, hogy lássuk melyik node-okon fut:
<pre>
# docker-machine ssh mg1 docker service ps test
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
ldg4tr5olwmv test.1 ubuntu:latest worker2 Running Running 50 seconds ago
5vxd6u2zgv1d test.2 ubuntu:latest mg0 Running Running 54 seconds ago
</pre>
Láthatjuk, hogy a worker2-on fut az egyik példány.
Listázzuk ki a '''worker2''' docker hálózatait. Láthatjuk, hogy a swarm a '''worke2'''-re is kiterjesztette az '''over-test''' overlay hálózatot.
<pre>
# docker-machine ssh worker2 docker network ls
NETWORK ID NAME DRIVER SCOPE
911906e5a269 bridge bridge local
5125832d68a8 docker_gwbridge bridge local
73a48e5dd720 host host local
idf7f51tp95i ingress overlay swarm
ae8e1b7bd437 none null local
6hig77pse2xt over-test overlay swarm <<<<
</pre>
Innentől kezdve a '''test''' szolgáltatás két konténere elérik egymást a worker2 hálózaton. Próbáljuk ki:
==docker_gwbridge==