Docker Linux Container - Open vSwitch Containers - Múltiplos Servidores

Neste tutorial, vou abordar de uma forma um pouco mais complexa a configuração do Docker Container. Pensando no conceito de Cloud Computing e também no conceito de múltiplas zonas, resolvi então implementar o Open vSwitch (OVS) no ambiente em que estou estudando.

[ Hits: 17.302 ]

Por: evandro matos couto em 27/05/2015


Ajustando as Bridges



Passo 15: No servidor docker-centos6-5-srv1 no diretório "/etc/docker", será criado um script de configuração do Open vSwitch (OVS).

# cd /etc/docker/
# vim ovs-docker.sh

#!/bin/bash

# IP do servidor Docker 2 ( docker-centos6-5-srv2 ).
REMOTE_IP=192.168.0.229
# Nome da Bridge do Docker - Padrão docker0
BRIDGE_NAME=docker0
# IP da Brdige do Docker - ( docker-centos6-5-srv1 ).
BRIDGE_ADDRESS=172.16.42.1/24

# Configurando

# DESATIVANDO
ip link set $BRIDGE_NAME down
brctl delbr $BRIDGE_NAME
ovs-vsctl del-br br0
#
brctl addbr $BRIDGE_NAME
ip a add $BRIDGE_ADDRESS dev $BRIDGE_NAME
ip link set $BRIDGE_NAME up
#
ovs-vsctl add-br br0
ovs-vsctl add-port br0 gre0 -- set interface gre0 type=gre options:remote_ip=$REMOTE_IP
brctl addif $BRIDGE_NAME br0
ifconfig br0 up

:x!

Passo 16: No servidor docker-centos6-5-srv2 no diretório "/etc/docker", será criado um script de configuração do Open vSwitch (OVS).

# cd /etc/docker/
# vim ovs-docker.sh

#!/bin/bash

#
# IP do servidor Docker 2 ( docker-centos6-5-srv1 ).
REMOTE_IP=192.168.0.227
# Nome da Bridge do Docker - Padrão docker0
BRIDGE_NAME=docker0
# IP da Brdige do Docker - ( docker-centos6-5-srv2 ).
BRIDGE_ADDRESS=172.16.42.2/24

# Configurando

# DESATIVANDO
ip link set $BRIDGE_NAME down
brctl delbr $BRIDGE_NAME
ovs-vsctl del-br br0
#
brctl addbr $BRIDGE_NAME
ip a add $BRIDGE_ADDRESS dev $BRIDGE_NAME
ip link set $BRIDGE_NAME up
#
ovs-vsctl add-br br0
ovs-vsctl add-port br0 gre0 -- set interface gre0 type=gre options:remote_ip=$REMOTE_IP
brctl addif $BRIDGE_NAME br0
ifconfig br0 up

:x!

Se tudo correu bem até aqui, então chegou a hora H. A parte mais interessante do cenário.

Servidor docker-centos6-5-srv1:

[root@docker-centos6-5-srv1 docker]# ifconfig
br0       Link encap:Ethernet  Endereço de HW C2:C6:C6:62:45:4B
          endereço inet6: fe80::c0c6:c6ff:fe62:454b/64 Escopo:Link
          UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:846 (846.0 b)

docker0   Link encap:Ethernet  Endereço de HW C2:C6:C6:62:45:4B
          inet end.: 172.16.42.1  Bcast:0.0.0.0  Masc:255.255.255.0
          endereço inet6: fe80::5c8f:a1ff:fe45:f8ac/64 Escopo:Link
          UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:0
          RX bytes:0 (0.0 b)  TX bytes:468 (468.0 b)

eth0      Link encap:Ethernet  Endereço de HW B2:5F:F5:7F:2B:5E
          inet end.: 192.168.0.227  Bcast:192.168.3.255  Masc:255.255.252.0
          endereço inet6: fe80::b05f:f5ff:fe7f:2b5e/64 Escopo:Link
          UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
          RX packets:88903 errors:0 dropped:0 overruns:0 frame:0
          TX packets:392 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:1000
          RX bytes:12221565 (11.6 MiB)  TX bytes:81218 (79.3 KiB)
          IRQ:24

lo        Link encap:Loopback Local
          inet end.: 127.0.0.1  Masc:255.0.0.0
          endereço inet6: ::1/128 Escopo:Máquina
          UP LOOPBACKRUNNING  MTU:65536  Métrica:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:0
          RX bytes:336 (336.0 b)  TX bytes:336 (336.0 b)

Servidor docker-centos6-5-srv2:

[root@docker-centos6-5-srv2 docker]# ifconfig
br0       Link encap:Ethernet  Endereço de HW BE:2E:38:27:3B:4E
          endereço inet6: fe80::bc2e:38ff:fe27:3b4e/64 Escopo:Link
          UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
          RX packets:26 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:0
          RX bytes:1972 (1.9 KiB)  TX bytes:1126 (1.0 KiB)

docker0   Link encap:Ethernet  Endereço de HW BE:2E:38:27:3B:4E
          inet end.: 172.16.42.2  Bcast:0.0.0.0  Masc:255.255.255.0
          endereço inet6: fe80::4f5:7eff:fef4:9309/64 Escopo:Link
          UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
          RX packets:26 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:0
          RX bytes:1608 (1.5 KiB)  TX bytes:748 (748.0 b)

eth0      Link encap:Ethernet  Endereço de HW FE:25:F3:EF:2D:35
          inet end.: 192.168.0.229  Bcast:192.168.3.255  Masc:255.255.252.0
          endereço inet6: fe80::fc25:f3ff:feef:2d35/64 Escopo:Link
          UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
          RX packets:90419 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1162 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:1000
          RX bytes:12366852 (11.7 MiB)  TX bytes:199184 (194.5 KiB)
          IRQ:24

lo        Link encap:Loopback Local
          inet end.: 127.0.0.1  Masc:255.0.0.0
          endereço inet6: ::1/128 Escopo:Máquina
          UP LOOPBACKRUNNING  MTU:65536  Métrica:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
          colisões:0 txqueuelen:0
          RX bytes:336 (336.0 b)  TX bytes:336 (336.0 b)

Aparentemente, as redes foram configuradas com sucesso.

Página anterior     Próxima página

Páginas do artigo
   1. Definição / Cenário
   2. Configuração do OpenvSwitch
   3. Instalando o Docker
   4. Ajustando as Bridges
   5. Testando
   6. Criando os Containers
   7. Testando o ambiente
Outros artigos deste autor

HAproxy + Stunnel (https) + CentOS 6

Nagios 4 com Check_MK 1.2.5i3 no CentOS 6.5 x64

Instalação do Nagios Core no CentOS 5.5

Alta disponibilidade: CentOS 6 - configurando os pacotes DRBD com gfs2 - parte 1

Clonagem de HDs com o PHANTOM & UDPCAST no CentOS

Leitura recomendada

O comando LS de A a Z

Jabberd2 - Completo e sem mistérios

Convertendo os Arquivos de Temas do Windows (.themepack) em Pacotes de Wallpapers Úteis para o Linux

Inkscape - Introdução (parte 2)

Instalar o Composer - Framework para o Ginga - NCL

  
Comentários
[1] Comentário enviado por removido em 28/05/2015 - 21:24h

Excelente artigo, obrigado por publicá-lo.

*Gostei deste Open vSwitch, solução bem interessante.

------------------------------------------------------
¿? -> keyboard Error: No Keyboard Present, PRESS F1 to continue.

[2] Comentário enviado por vandocouto em 28/05/2015 - 21:52h

:)
Mais sobre docker e cloud visite o meu blog.
http://tutoriaisgnulinux.com

Abs,
Evandro Couto.

[3] Comentário enviado por cesarufmt em 01/06/2015 - 10:37h

Estou estudando esse tema (docker). Muito bom seu artigo. Obrigado pela contribuição! o/

[4] Comentário enviado por Lisandro em 28/06/2016 - 13:02h

Massa. Ótimo artigo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts