SlideShare uma empresa Scribd logo
1                       Balanceamento de carga com DNS


    Um Cluster de Balanceamento de Carga é um conjunto de máquinas (duas
    ou mais) nas quais estão sendo executadas aplicações requerida por um número
    muito grande pessoas.

    Um bom Cluster de Balanceamento de Carga deve ter a capacidade de receber
    os pedidos de requisição de serviço de vários clientes e distribuir (balancear a
    carga de trabalho) tais serviços às máquinas que constituem o cluster de forma
    que nenhuma máquina fique sobrecarregada e/ou ociosa.

    Um exemplo simples para se obter este tipo de tecnologia é utilizando um
    servidor DNS (Domain Name System). Sendo que, quando o “cliente” vai
    acessar um serviço na rede este o faz utilizando nomes, e não endereços IPs,
    esta resolução de nomes em endereços IPs se dá via servidor DNS. Assim,
    podemos dizer para um servidor DNS que um dado nome pode ser resolvido por
    vários IPs (várias máquinas).

                  Cliente 1                               Servidor DNS



                Cliente N
                                                            Servidor HTTP 1

                                                    Servidor HTTP 2
2                       Balanceamento de carga com DNS


    Desta forma, podemos dizer para o servidor DNS que o nome www.cluster.com,
    pode ser resolvido por um servidor HTTP 1 (com endereço IP, 200.0.0.1) e por um
    servidor HTTP 2 (com endereço IP, 200.0.0.2), por exemplo. Assim, quando um
    dado cliente tentar acessar www.cluster.com, ele vai ser redirecionado para o
    servidor HTTP 1, quando um segundo cliente tentar acessar o www.cluster.com ele
    pode ser direcionado ao servidor HTTP 2, e assim por diante!

    Para fazermos um cluster de balanceamento de carga simples com o DNS no
    Slackware Linux devemos seguir os seguintes passos:

    obs. Nossa rede vai ser a 192.168.73.0/24. O servidor DNS vai ser o 192.168.73.1,
    e os servidores vão ser o 192.168.73.2 e 192.168.73.3.

    1. Editar o arquivo /etc/named.conf;

    2. Criar o arquivo de zona reversa, no nosso caso vai ser /var/named/caching-
    example/domain.rev;

    3. Criar o arquivo de domínio, no nosso caso vai ser /var/named/caching-
    example/cluster.host;

    4. Iniciar o servidor de nomes (DNS)
    5. Configurar os servidores HTTP.
3                        Balanceamento de carga com DNS
    1. Editar o arquivo /etc/named.conf:
    vi /etc/named.conf

    options {
        directory "/var/named";
    };
    zone "." IN {
        type hint;
        file "caching-example/named.ca";
    };
    zone "localhost" IN {
        type master;
        file "caching-example/localhost.zone";
        allow-update { none; };
    };
    zone "0.0.127.in-addr.arpa" IN {
        type master;
        file "caching-example/named.local";
        allow-update { none; };
    };
    zone "0.73.168.192.in-addr.arpa" IN {
            type master;
            file "caching-example/domain.rev";
    };
    zone "cluster.com" IN {
            type master;
            file "caching-example/cluster.host";
    };
4                         Balanceamento de carga com DNS


    No primeiro passo iremos editar o arquivo /etc/named.conf, neste iremos apenas
    criar as zonas reversa e de domínio e apontar os respectivos arquivos que
    conterão as configurações para esta zona. A parte acrescentada está em negrito.

    2. Criar o arquivo de zona reversa, no nosso caso vai ser /var/named/caching-
    example/domain.rev;

    # vi /var/named/caching-example/domain.rev
    $TTL    86400
    $ORIGIN cluster.com.
    73.168.192.in-addr.arpa         IN SOA servidor.cluster.com. root.cluster.com.
    (
                         &n bsp;   2004101901      ; Serial de sincronização
                         &n bsp;   3H              ; refresh
                         &n bsp;   15M             ; retry
                         &n bsp;   1W              ; expiry
                         &n bsp;   1D )            ; minimum
                  NS dns.cluster.com.

    2       IN      PTR       www
    3       IN      PTR       www
    2       IN      PTR       ftp
    3       IN      PTR       ftp
5                       Balanceamento de carga com DNS

    Bem como nossa idéia é apenas fazer um simples servidor de DNS balancear
    carga e não montar um servidor real de DNS, o arquivo de zona reversa não vai
    ser construído e configurado a risca é vai servir apenas de referencia.

    O próximo passo é criar o arquivo de domínio:


    3. Criar o arquivo de domínio, no nosso caso vai ser /var/named/caching-
    example/cluster.host;
    vi /var/named/caching-example/cluster.host
    $TTL 86400
    @    IN SOA   servidor.cluster.com. root.servidor.cluster.com. (
                   2004101901    ;Serial de sincronização
                   3H      ; refresh
                   15M      ; retry
                   1W      ; expiry
                   1D )       ; minimum
            NS dns.cluster.com.
            IN MX 10 cluster.com.

    localhost       IN A    127.0.0.1
    cluster.com.    IN A    192.168.73.1
    dns             IN A    192.168.73.1
    www             IN A    192.168.73.2
                     IN A    192.168.73.3
    ftp             IN A    192.168.73.2
                    IN A    192.168.73.3
6                       Balanceamento de carga com DNS


    Bem, é justamente o arquivo de domínio que vai fazer o esquema de
    balanceamento de carga, observe que na entrada do www temos um endereço IP
    que é o 192.168.73.2 e logo na seqüência temos uma entrada em branco que faz
    referencia também ao www, mas indica o IP 192.168.73.3. O mesmo acontece
    com o servidor ftp.

    4. Iniciar o servidor de nomes (DNS):
    # sh /etc/rc.d/rc.bind start


    5. Configurar os servidores HTTP:

    Nas máquinas que serão os servidores HTTP inicie o apache com o comando:
    apachectl start. É aconselhável criar paginas diferentes em cada servidor HTTP,
     para que seja observado a alternância entre os servidores (gerada pelo servidor
    DNS). É também interessante criar um servidor FTP para fazer testes também, tal
    servidor deve ser iniciado pelo inetd.

    Observação, lembre para fazer o balanceamento de carga os clientes devem ter
    como servidor DNS primário, o servidor DNS que você acabou de criar! No Linux
    teremos que editar o arquivo /etc/resolv.conf e colocar a seguinte linha
    nameserver 192.168.73.1.
7                      Balanceamento de carga com DNS


    Agora que você configurou o servidor DNS para que este faça o balanceamento de
    carga, vamos fazer alguns testes e responder a algumas perguntas:

    1. Utilizando o ping verifique qual é a ordem em que o servidor DNS vai fazer o
    balanceamento.

    2. Agora usando um browser acesse várias vezes o servidor, e verifique qual é a
    ordem de acesso aos servidores HTTP. Tente utilizar vários browsers ao mesmo
    tempo, tal como: Firefox, konqueror, Seamonkey, lynx, links, etc.

    3. Faça também testes com os servidores FTP, fazendo acessos via browsers e
    principalmente via linha de comando, observando a ordem de balanceamento.

    4. Corte a conexão de um dos servidores e observe como o servidor trata a
    indisponibilidade de tal servidor. Ele redireciona conexões para um servidor
    inativo ou não? O que acontece quanto o servidor voltar a ativa?

    5. De acordo com o que você pesquisou nas questões acima responda qual é o
    esquema de balanceamento que o DNS utiliza? Se possível relacione com algum
    algoritmo de balanceamento de carga.

    6. Quais foram as vantagens e desvantagens observadas quanto ao uso do DNS
    para fazer o balanceamento de carga?
8         Balanceamento de carga com DNS


    fim

Mais conteúdo relacionado

PDF
Tópicos - Cluster de Balanceamento de Carga
PPTX
PDF
Tópicos - Redes para Cluster de Alta Performance
DOCX
PDF
Linux Network Fault Tolerance
PPT
Controle de congestionamento tcp
PDF
Definições E Correlações Dhcp dns smtp e ntp
ODP
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS
Tópicos - Cluster de Balanceamento de Carga
Tópicos - Redes para Cluster de Alta Performance
Linux Network Fault Tolerance
Controle de congestionamento tcp
Definições E Correlações Dhcp dns smtp e ntp
Redes de computadores II - 6.Noções de Controle de Congestionamento e QoS

Mais procurados (20)

PPTX
DNSORC
PDF
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
PDF
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
PPT
Cluster e replicação em banco de dados
PPTX
Qualidade do Serviço (QoS)
PDF
Utilizando software livre para alta disponibilidade de sistemas web Java
PPTX
Aula 3 (alta disponibilidade)
PPT
Trabalho q os em redes ips
PDF
APRESENTAÇÃO DE TCC - ESTUDO DE VIABILIDADE DE SERVIDORES EM CLUSTER PARA A A...
PDF
Alta Disponibilidade utilizando Pacemaker e DRBD
PDF
Cluster ha com banco de dados
PPTX
QoS Totolink
ODP
Cluster de Alta Disponibilidade em Linux
PDF
Alta Disponibilidade
ODP
PostgreSQL Transformando um elefante numa manada
ODP
Clustering Domino8.5
PDF
linux lvs
PDF
Alta Disponibilidade em Linux com Heartbeat e Drbd
PDF
Alta Disponibilidade na Prática utilizando servidores Linux
PPT
Cluster de Alta disponibilidade
DNSORC
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Cluster e replicação em banco de dados
Qualidade do Serviço (QoS)
Utilizando software livre para alta disponibilidade de sistemas web Java
Aula 3 (alta disponibilidade)
Trabalho q os em redes ips
APRESENTAÇÃO DE TCC - ESTUDO DE VIABILIDADE DE SERVIDORES EM CLUSTER PARA A A...
Alta Disponibilidade utilizando Pacemaker e DRBD
Cluster ha com banco de dados
QoS Totolink
Cluster de Alta Disponibilidade em Linux
Alta Disponibilidade
PostgreSQL Transformando um elefante numa manada
Clustering Domino8.5
linux lvs
Alta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade na Prática utilizando servidores Linux
Cluster de Alta disponibilidade
Anúncio

Destaque (17)

PDF
Redes - VoIP Teoria
PDF
Gil - Virtualisation and High Availability
PPTX
Vanessa padua voip_analisedemercado_nov2011
PPTX
DOCX
Voip - Reduzindo custos.
PDF
Proteja seus dados em casa e na internet
PDF
Segurança em Redes de Voz Sobre IP
PDF
Redes VoIP - O Futuro da Telefonia
PDF
Unidade2 projeto lógico da rede
ODP
Montagem de Cabos Cross e Crossover
ODP
Voip introduction
PPTX
VOIP Presentation
PPTX
Voip powerpoint
PDF
Voice over IP (VoIP)
PPT
Voice Over IP (VoIP)
PPTX
História da comunicação
PPTX
Trabalho Power point
Redes - VoIP Teoria
Gil - Virtualisation and High Availability
Vanessa padua voip_analisedemercado_nov2011
Voip - Reduzindo custos.
Proteja seus dados em casa e na internet
Segurança em Redes de Voz Sobre IP
Redes VoIP - O Futuro da Telefonia
Unidade2 projeto lógico da rede
Montagem de Cabos Cross e Crossover
Voip introduction
VOIP Presentation
Voip powerpoint
Voice over IP (VoIP)
Voice Over IP (VoIP)
História da comunicação
Trabalho Power point
Anúncio

Semelhante a Tópicos - Cluster de Balanceamento de Carga com DNS (20)

DOCX
Para se configurar um servidor de dns no free bsd
DOC
Relatório de configuração e instalação do dns no ubuntu 1
PDF
(16) dns
PDF
Implementandoservidordnsnowindows2003
PPTX
DNS – domain name system
PDF
Instalação e configuração servidor dns - ubuntu server
PDF
Linux - DNS
PDF
Slides NGINX - Sistemas Distribuídos
PDF
Slides nginx
PDF
Aula 4 infraestrutura - 14012012
XLS
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
PDF
Unidade1ainternet 110928173442-phpapp02
 
PDF
funcionamento da internet
PDF
Tutorial dnssec201205
PDF
Redes prática - DNS Bind
PDF
Invasão de servidor ftp
PDF
Giovaneli_-_Apresentação_ DNS ANYCAST.pdf
PPTX
AULA Resumo AV - ARA0370 - PROTOCOLOS DE REDES DE COMPUTADORES.pptx
PDF
Dextra Sistemas: Novidades do PostgreSQL 9.0
Para se configurar um servidor de dns no free bsd
Relatório de configuração e instalação do dns no ubuntu 1
(16) dns
Implementandoservidordnsnowindows2003
DNS – domain name system
Instalação e configuração servidor dns - ubuntu server
Linux - DNS
Slides NGINX - Sistemas Distribuídos
Slides nginx
Aula 4 infraestrutura - 14012012
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
Unidade1ainternet 110928173442-phpapp02
 
funcionamento da internet
Tutorial dnssec201205
Redes prática - DNS Bind
Invasão de servidor ftp
Giovaneli_-_Apresentação_ DNS ANYCAST.pdf
AULA Resumo AV - ARA0370 - PROTOCOLOS DE REDES DE COMPUTADORES.pptx
Dextra Sistemas: Novidades do PostgreSQL 9.0

Mais de Luiz Arthur (20)

PDF
Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
PDF
Desafios da cibersegurança - ontem, hoje e amanhã
PDF
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
PDF
NAPSOL
PDF
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
PDF
Detecção de alertas de segurança em redes de computadores usando redes sociai...
PDF
Evaluating the Utilization of Twitter Messages as a Source of Security Alerts
PDF
Análise de Mensagens de Segurança Postadas no Twitter
PDF
match making e propaganda na web
PDF
Mineração de dados no Gmail e Facebook
PDF
Invasao kernel.org
PDF
Núcleo do Linux (Kernel Linux)
PDF
Palestra Ferramentas de Segurança Open Source v.2
PDF
Palestra mau uso da tecnologia
PDF
UTFPR-inventario-patrimonio-laboratorio-e105
PDF
01 programação - introdução computação
PDF
Bibliografia recomendada - programação C
PDF
Bibliografia recomendada-programacao-python
PDF
Bibliografia recomendada-seguranca
PDF
Bibliografia recomendada-redes
Pint of Science - Cibersegurnça x ciberameaças: Até onde você está seguro?
Desafios da cibersegurança - ontem, hoje e amanhã
Slides - Uma abordagem autonômica para mitigar ciberataques em redes de compu...
NAPSOL
Uma Arquitetura Autonômica para Detecção e Reação a Ameaças de Segurança em R...
Detecção de alertas de segurança em redes de computadores usando redes sociai...
Evaluating the Utilization of Twitter Messages as a Source of Security Alerts
Análise de Mensagens de Segurança Postadas no Twitter
match making e propaganda na web
Mineração de dados no Gmail e Facebook
Invasao kernel.org
Núcleo do Linux (Kernel Linux)
Palestra Ferramentas de Segurança Open Source v.2
Palestra mau uso da tecnologia
UTFPR-inventario-patrimonio-laboratorio-e105
01 programação - introdução computação
Bibliografia recomendada - programação C
Bibliografia recomendada-programacao-python
Bibliografia recomendada-seguranca
Bibliografia recomendada-redes

Último (11)

PDF
Manejo integrado de pragas na cultura do algodão
PPTX
Utilizando code blockes por andre backes
PPTX
Tipos de servidor em redes de computador.pptx
PPTX
Design - Introdução a Gestalt e teoria das formas
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Eng. Software - pontos essenciais para o início
PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Manejo integrado de pragas na cultura do algodão
Utilizando code blockes por andre backes
Tipos de servidor em redes de computador.pptx
Design - Introdução a Gestalt e teoria das formas
Arquitetura de computadores - Memórias Secundárias
Viasol Energia Solar -Soluções para geração e economia de energia
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Eng. Software - pontos essenciais para o início
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf

Tópicos - Cluster de Balanceamento de Carga com DNS

  • 1. 1 Balanceamento de carga com DNS Um Cluster de Balanceamento de Carga é um conjunto de máquinas (duas ou mais) nas quais estão sendo executadas aplicações requerida por um número muito grande pessoas. Um bom Cluster de Balanceamento de Carga deve ter a capacidade de receber os pedidos de requisição de serviço de vários clientes e distribuir (balancear a carga de trabalho) tais serviços às máquinas que constituem o cluster de forma que nenhuma máquina fique sobrecarregada e/ou ociosa. Um exemplo simples para se obter este tipo de tecnologia é utilizando um servidor DNS (Domain Name System). Sendo que, quando o “cliente” vai acessar um serviço na rede este o faz utilizando nomes, e não endereços IPs, esta resolução de nomes em endereços IPs se dá via servidor DNS. Assim, podemos dizer para um servidor DNS que um dado nome pode ser resolvido por vários IPs (várias máquinas). Cliente 1 Servidor DNS Cliente N Servidor HTTP 1 Servidor HTTP 2
  • 2. 2 Balanceamento de carga com DNS Desta forma, podemos dizer para o servidor DNS que o nome www.cluster.com, pode ser resolvido por um servidor HTTP 1 (com endereço IP, 200.0.0.1) e por um servidor HTTP 2 (com endereço IP, 200.0.0.2), por exemplo. Assim, quando um dado cliente tentar acessar www.cluster.com, ele vai ser redirecionado para o servidor HTTP 1, quando um segundo cliente tentar acessar o www.cluster.com ele pode ser direcionado ao servidor HTTP 2, e assim por diante! Para fazermos um cluster de balanceamento de carga simples com o DNS no Slackware Linux devemos seguir os seguintes passos: obs. Nossa rede vai ser a 192.168.73.0/24. O servidor DNS vai ser o 192.168.73.1, e os servidores vão ser o 192.168.73.2 e 192.168.73.3. 1. Editar o arquivo /etc/named.conf; 2. Criar o arquivo de zona reversa, no nosso caso vai ser /var/named/caching- example/domain.rev; 3. Criar o arquivo de domínio, no nosso caso vai ser /var/named/caching- example/cluster.host; 4. Iniciar o servidor de nomes (DNS) 5. Configurar os servidores HTTP.
  • 3. 3 Balanceamento de carga com DNS 1. Editar o arquivo /etc/named.conf: vi /etc/named.conf options { directory "/var/named"; }; zone "." IN { type hint; file "caching-example/named.ca"; }; zone "localhost" IN { type master; file "caching-example/localhost.zone"; allow-update { none; }; }; zone "0.0.127.in-addr.arpa" IN { type master; file "caching-example/named.local"; allow-update { none; }; }; zone "0.73.168.192.in-addr.arpa" IN { type master; file "caching-example/domain.rev"; }; zone "cluster.com" IN { type master; file "caching-example/cluster.host"; };
  • 4. 4 Balanceamento de carga com DNS No primeiro passo iremos editar o arquivo /etc/named.conf, neste iremos apenas criar as zonas reversa e de domínio e apontar os respectivos arquivos que conterão as configurações para esta zona. A parte acrescentada está em negrito. 2. Criar o arquivo de zona reversa, no nosso caso vai ser /var/named/caching- example/domain.rev; # vi /var/named/caching-example/domain.rev $TTL 86400 $ORIGIN cluster.com. 73.168.192.in-addr.arpa IN SOA servidor.cluster.com. root.cluster.com. ( &n bsp; 2004101901 ; Serial de sincronização &n bsp; 3H ; refresh &n bsp; 15M ; retry &n bsp; 1W ; expiry &n bsp; 1D ) ; minimum NS dns.cluster.com. 2 IN PTR www 3 IN PTR www 2 IN PTR ftp 3 IN PTR ftp
  • 5. 5 Balanceamento de carga com DNS Bem como nossa idéia é apenas fazer um simples servidor de DNS balancear carga e não montar um servidor real de DNS, o arquivo de zona reversa não vai ser construído e configurado a risca é vai servir apenas de referencia. O próximo passo é criar o arquivo de domínio: 3. Criar o arquivo de domínio, no nosso caso vai ser /var/named/caching- example/cluster.host; vi /var/named/caching-example/cluster.host $TTL 86400 @ IN SOA servidor.cluster.com. root.servidor.cluster.com. ( 2004101901 ;Serial de sincronização 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum NS dns.cluster.com. IN MX 10 cluster.com. localhost IN A 127.0.0.1 cluster.com. IN A 192.168.73.1 dns IN A 192.168.73.1 www IN A 192.168.73.2 IN A 192.168.73.3 ftp IN A 192.168.73.2 IN A 192.168.73.3
  • 6. 6 Balanceamento de carga com DNS Bem, é justamente o arquivo de domínio que vai fazer o esquema de balanceamento de carga, observe que na entrada do www temos um endereço IP que é o 192.168.73.2 e logo na seqüência temos uma entrada em branco que faz referencia também ao www, mas indica o IP 192.168.73.3. O mesmo acontece com o servidor ftp. 4. Iniciar o servidor de nomes (DNS): # sh /etc/rc.d/rc.bind start 5. Configurar os servidores HTTP: Nas máquinas que serão os servidores HTTP inicie o apache com o comando: apachectl start. É aconselhável criar paginas diferentes em cada servidor HTTP, para que seja observado a alternância entre os servidores (gerada pelo servidor DNS). É também interessante criar um servidor FTP para fazer testes também, tal servidor deve ser iniciado pelo inetd. Observação, lembre para fazer o balanceamento de carga os clientes devem ter como servidor DNS primário, o servidor DNS que você acabou de criar! No Linux teremos que editar o arquivo /etc/resolv.conf e colocar a seguinte linha nameserver 192.168.73.1.
  • 7. 7 Balanceamento de carga com DNS Agora que você configurou o servidor DNS para que este faça o balanceamento de carga, vamos fazer alguns testes e responder a algumas perguntas: 1. Utilizando o ping verifique qual é a ordem em que o servidor DNS vai fazer o balanceamento. 2. Agora usando um browser acesse várias vezes o servidor, e verifique qual é a ordem de acesso aos servidores HTTP. Tente utilizar vários browsers ao mesmo tempo, tal como: Firefox, konqueror, Seamonkey, lynx, links, etc. 3. Faça também testes com os servidores FTP, fazendo acessos via browsers e principalmente via linha de comando, observando a ordem de balanceamento. 4. Corte a conexão de um dos servidores e observe como o servidor trata a indisponibilidade de tal servidor. Ele redireciona conexões para um servidor inativo ou não? O que acontece quanto o servidor voltar a ativa? 5. De acordo com o que você pesquisou nas questões acima responda qual é o esquema de balanceamento que o DNS utiliza? Se possível relacione com algum algoritmo de balanceamento de carga. 6. Quais foram as vantagens e desvantagens observadas quanto ao uso do DNS para fazer o balanceamento de carga?
  • 8. 8 Balanceamento de carga com DNS fim