Gestión de redes y datos en Docker (incluido el clúster de Docker Swarm y la gestión de datos de Docker)

8 Gestión de redes y datos en Docker

8.1Administración de red predeterminada de Docker

Use docker network ls para enumerar todas las redes en Docker

imagen-20220118150210329

(1) Demostrar el método de gestión de red de un puente

docker ejecutar -itd --name=networktest ubuntu

(2) Use el comando de vista de red para ver los detalles de la red

imagen-20220118152236357

8.1.2 Introducción a la red personalizada

1. Red en puente

Una red basada en puente personalizada es una buena opción para una red pequeña con un solo host, pero para una red grande, considere usar una red de clúster de superposición personalizada.

2. Red de superposición en el clúster Swarm

Se aplica solo a los nodos del clúster que requieren el servicio

3. Complementos de red personalizados

8.1.3 Red puente personalizada

1. Crea una red personalizada

docker red crear --driver puente aislado_w

imagen-20220118153713215

2. Use un contenedor de administración de red personalizado

ventana acoplable ejecutar --network=aislado_w -itd --name=nwtest busybox

imagen-20220118153922657

3. Agregue administración de red al contenedor

docker red trabajo conectar puente nwtest

4. Desconecte la conexión de red del contenedor

docker red desconectar isolated_w nwtest

5. Eliminar red personalizada

docker red rm aislado_w

8.1.4 Red de comunicación entre contenedores

1. Crea un contenedor

docker run -itd --name=container1 busybox

docker run -itd --name=container2 busybox

ventana acoplable ejecutar --network=aislado_w -itd --name=container3 busybox

docker red conectar aislado_w container2

2. Ver la dirección del contenedor

imagen-20220118154617046

Después de ingresar a través de la ventana acoplable adjuntar contenedor2, puede ver que hay dos tarjetas de red dentro del contenedor, correspondientes a las direcciones IP 172.17.0.5 y 172.18.0.4 respectivamente

3. Prueba de comunicación del contenedor

ventana acoplable adjuntar contenedor1

ping -w 4 172.18.0.4

imagen-20220118155134117

El contenedor 2 puede hacer ping a otros contenedores

8.2 Clúster Docker Swarm

Docker Swarm es una herramienta de administración de clústeres nativa de Docker que puede crear y administrar un clúster de Docker directamente desde el cliente de Docker.

1. Fácil de crear y administrar clústeres

2. Ampliable

3. Gestión de expansión automática de red multi-host de Jiqun

4. Proporcione la función de descubrimiento de servicios

5. Equilibrio de carga

6 Soporte de actualización retrasada y reversión del servicio

8.2.2 Uso de Docker Swarm

1. Preparar tres máquinas virtuales

imagen-20220118160743396

Instalar ventana acoplable por separado

2. Cree un clúster
docker swarm init --advertise-addr 192.168.56.10 (su propia dirección IP)
imagen-20220118160930350

imagen-20220118161059500

Ver información sobre el clúster predeterminado

3. Agregar nodos trabajadores al clúster de DockerSwarm

To add a manager to this swarm, run the following command:

docker swarm join --token SWMTKN-1-1ra9ujfvc34cpmtii7rvgetpi9vw7cvqa7n9jmw50huiv0oet8-be2ida3oef7jph13a5ykr8uem 192.168.56.10:2377



To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-1-1ra9ujfvc34cpmtii7rvgetpi9vw7cvqa7n9jmw50huiv0oet8-7oy2sgq5b5o1o9xvjvt98awm4 192.168.56.10:2377

imagen-20220118161702878

Se unió con éxito al clúster

imagen-20220118161820267

4. Implementar servicios en el clúster de Docker Swarm

docker service create --replicas 1 --name helloworldswarm alpine ping docker.com

Las instrucciones de administración de servicios comienzan con docker service Las instrucciones de administración de contenedores comienzan con docker container

5. Ver los servicios en el clúster de enjambre de Docker

servicio acoplable ls

servicio docker inspeccionar helloworldswarm

servicio acoplable ps helloworldswarm

6. Cambie la cantidad de réplicas de servicio en el clúster de Docker Swarm

escala de servicio docker helloworldswarm=5

servicio acoplable ps helloworldswarm

imagen-20220118162445213

Ver la distribución específica y el funcionamiento de cinco copias de servicio en tres nodos

7. Eliminar servicio

servicio acoplable rm helloworldswarm

8. Acceso a los Servicios

El servicio implementado anteriormente no expone directamente el puerto de servicio al mundo exterior, y el mundo exterior no puede acceder a él normalmente.

imagen-20220118162645355

Se agregó una red impulsada por Ovarlay en comparación con la que no es de clúster. En el lanzamiento del servicio de publicación de clústeres, si no hay una red específica, el valor predeterminado es usar la red de entrada para conectarse. En el desarrollo real, se usarán --replicas para impulsar la red para los servicios de administración.

(2) manager1 crea una red personalizada:

docker network create --driver overlay my-multi-host-network

docker service create --network my-multi-host-network --name my-web --publish 8080:80 --replicas 2 nginximagen-20220118163441560

imagen-20220118163528041

De esta forma, se despliega nginx

8.3 Gestión de datos de Docker

Si quieres entender el mecanismo de almacenamiento de docker, debes partir de la relación entre imagen, contenedor y almacenamiento de datos

La capa de imagen creada por las instrucciones contenidas en el dockerfile se superpone capa por capa, y se agregará una capa de contenedor encima de la capa de imagen; varios contenedores creados en base a la misma imagen pueden compartir la imagen, pero varios contenedores quieren compartir los mismos datos Almacenar datos fuera del contenedor.

8.3.1 Método de almacenamiento de datos de Docker

los volúmenes se almacenan con el sistema de archivos host

enlazar montajes de almacenamiento a cualquier ubicación en el sistema host

Los montajes tmpfs solo se permiten en la memoria del sistema host y no se escriben en el sistema de archivos del host.

8.4 Gestión de volúmenes de datos de volúmenes

8.4.1 Ventajas del volumen de datos Volúmenes

Los volúmenes de datos son más fáciles de respaldar y migrar que los montajes vinculados

Los volúmenes de datos se pueden administrar mediante la CLI de Docker y la API de Docker

Los volúmenes de datos están disponibles en contenedores de Linux y Windows

Comparta datos de forma más segura entre varios contenedores

8.4.2 Uso de volúmenes de datos de volúmenes

1. Crear y administrar volúmenes de datos

volumen docker crear mi-vol

volumen acoplable ls

Comprobar el volumen de datos

imagen-20220118183855199

Eliminar volumen de datos

2. Inicie el contenedor y monte el volumen de datos

(1) Ver contenedores nativos y volúmenes de datos

ventana acoplable ps -a ventana acoplable volumen ls

imagen-20220118184243495

(2) Inicie el contenedor y monte el volumen de datos

docker run -d -it --name devtest --mount source=my-vol,target=/app busybox:latest

Cabe mencionar que cuando el volumen de datos no existe cuando se crea el contenedor, Docker lo creará automáticamente.

(3) Verifique los detalles del contenedor

comando docker inspect para ver los detalles del contenedor. Ver principalmente información de montaje de datos

(4) Ver el archivo de contenedores en el directorio como usuario raíz

imagen-20220118185215885

(Este artículo son las notas del Capítulo 8 de la fundación de la arquitectura de microservicios)

Supongo que te gusta

Origin blog.csdn.net/qq_21561833/article/details/122764624
Recomendado
Clasificación