SlideShare a Scribd company logo
1 of 8
Download to read offline
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

More Related Content

What's hot

DNSORC
DNSORCDNSORC
DNSORCdnsorc
 
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...
Análise de Desempenho de Algoritmos de Controle de Congestionamento TCP utili...Felipe Alex
 
Resolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoResolução Parcial - Redes de Computadores - Kurose 6ª Edição
Resolução Parcial - Redes de Computadores - Kurose 6ª EdiçãoRonildo Oliveira
 
Cluster e replicação em banco de dados
Cluster e replicação em banco de dadosCluster e replicação em banco de dados
Cluster e replicação em banco de dadosSuissa
 
Utilizando software livre para alta disponibilidade de sistemas web Java
Utilizando software livre para alta disponibilidade de sistemas web JavaUtilizando software livre para alta disponibilidade de sistemas web Java
Utilizando software livre para alta disponibilidade de sistemas web JavaAdriel Viana
 
Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Evandro Júnior
 
Trabalho q os em redes ips
Trabalho q os em redes ipsTrabalho q os em redes ips
Trabalho q os em redes ipsmorgana
 
APRESENTAÇÃO DE TCC - ESTUDO DE VIABILIDADE DE SERVIDORES EM CLUSTER PARA A A...
APRESENTAÇÃO DE TCC - ESTUDO DE VIABILIDADE DE SERVIDORES EM CLUSTER PARA A A...APRESENTAÇÃO DE TCC - ESTUDO DE VIABILIDADE DE SERVIDORES EM CLUSTER PARA A A...
APRESENTAÇÃO DE TCC - ESTUDO DE VIABILIDADE DE SERVIDORES EM CLUSTER PARA A A...Adriel Viana
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDFrederico Madeira
 
Cluster ha com banco de dados
Cluster ha com banco de dadosCluster ha com banco de dados
Cluster ha com banco de dadosMarcio Jonnes
 
Cluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxCluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxFrederico Madeira
 
Alta Disponibilidade
Alta DisponibilidadeAlta Disponibilidade
Alta Disponibilidadeelliando dias
 
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manadaPostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manadaFabio Telles Rodriguez
 
Clustering Domino8.5
Clustering Domino8.5Clustering Domino8.5
Clustering Domino8.5Rodrigo Duran
 
Alta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdAlta Disponibilidade em Linux com Heartbeat e Drbd
Alta Disponibilidade em Linux com Heartbeat e DrbdFrederico Madeira
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linuxelliando dias
 
Cluster de Alta disponibilidade
Cluster de Alta disponibilidadeCluster de Alta disponibilidade
Cluster de Alta disponibilidadeMarcelo Garcia
 

What's hot (20)

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

Viewers also liked

Redes - VoIP Teoria
Redes - VoIP TeoriaRedes - VoIP Teoria
Redes - VoIP TeoriaLuiz Arthur
 
Gil - Virtualisation and High Availability
Gil - Virtualisation and High AvailabilityGil - Virtualisation and High Availability
Gil - Virtualisation and High AvailabilityLuciano Rocha
 
Vanessa padua voip_analisedemercado_nov2011
Vanessa padua voip_analisedemercado_nov2011Vanessa padua voip_analisedemercado_nov2011
Vanessa padua voip_analisedemercado_nov2011vpadua
 
Voip - Reduzindo custos.
Voip - Reduzindo custos.Voip - Reduzindo custos.
Voip - Reduzindo custos.juninho3169
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internetFrederico Madeira
 
Segurança em Redes de Voz Sobre IP
Segurança em Redes de Voz Sobre IPSegurança em Redes de Voz Sobre IP
Segurança em Redes de Voz Sobre IPFrederico Madeira
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaFrederico Madeira
 
Unidade2 projeto lógico da rede
Unidade2   projeto lógico da redeUnidade2   projeto lógico da rede
Unidade2 projeto lógico da redeLeandro Almeida
 
Montagem de Cabos Cross e Crossover
Montagem de Cabos Cross e CrossoverMontagem de Cabos Cross e Crossover
Montagem de Cabos Cross e CrossoverRaquel Kinupp
 
Voip introduction
Voip introductionVoip introduction
Voip introductiondaksh bhatt
 
VOIP Presentation
VOIP Presentation VOIP Presentation
VOIP Presentation tofael1
 
Voip powerpoint
Voip powerpointVoip powerpoint
Voip powerpointGW1992
 
Voice over IP (VoIP)
Voice over IP (VoIP)Voice over IP (VoIP)
Voice over IP (VoIP)Peter R. Egli
 
Voice Over IP (VoIP)
Voice Over IP (VoIP)Voice Over IP (VoIP)
Voice Over IP (VoIP)habib_786
 
História da comunicação
História da comunicaçãoHistória da comunicação
História da comunicaçãoHelena Coutinho
 
Trabalho Power point
Trabalho Power point Trabalho Power point
Trabalho Power point Helena13dias
 

Viewers also liked (17)

Redes - VoIP Teoria
Redes - VoIP TeoriaRedes - VoIP Teoria
Redes - VoIP Teoria
 
Gil - Virtualisation and High Availability
Gil - Virtualisation and High AvailabilityGil - Virtualisation and High Availability
Gil - Virtualisation and High Availability
 
Vanessa padua voip_analisedemercado_nov2011
Vanessa padua voip_analisedemercado_nov2011Vanessa padua voip_analisedemercado_nov2011
Vanessa padua voip_analisedemercado_nov2011
 
Voip
VoipVoip
Voip
 
Voip - Reduzindo custos.
Voip - Reduzindo custos.Voip - Reduzindo custos.
Voip - Reduzindo custos.
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internet
 
Segurança em Redes de Voz Sobre IP
Segurança em Redes de Voz Sobre IPSegurança em Redes de Voz Sobre IP
Segurança em Redes de Voz Sobre IP
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da Telefonia
 
Unidade2 projeto lógico da rede
Unidade2   projeto lógico da redeUnidade2   projeto lógico da rede
Unidade2 projeto lógico da rede
 
Montagem de Cabos Cross e Crossover
Montagem de Cabos Cross e CrossoverMontagem de Cabos Cross e Crossover
Montagem de Cabos Cross e Crossover
 
Voip introduction
Voip introductionVoip introduction
Voip introduction
 
VOIP Presentation
VOIP Presentation VOIP Presentation
VOIP Presentation
 
Voip powerpoint
Voip powerpointVoip powerpoint
Voip powerpoint
 
Voice over IP (VoIP)
Voice over IP (VoIP)Voice over IP (VoIP)
Voice over IP (VoIP)
 
Voice Over IP (VoIP)
Voice Over IP (VoIP)Voice Over IP (VoIP)
Voice Over IP (VoIP)
 
História da comunicação
História da comunicaçãoHistória da comunicação
História da comunicação
 
Trabalho Power point
Trabalho Power point Trabalho Power point
Trabalho Power point
 

Similar to Balance carga DNS simples

Para se configurar um servidor de dns no free bsd
Para se configurar um servidor de dns no free bsdPara se configurar um servidor de dns no free bsd
Para se configurar um servidor de dns no free bsdAnderson Batista Batista
 
Relatório de configuração e instalação do dns no ubuntu 1
Relatório de configuração e instalação do dns no ubuntu 1Relatório de configuração e instalação do dns no ubuntu 1
Relatório de configuração e instalação do dns no ubuntu 1Xavier Billa
 
Implementandoservidordnsnowindows2003
Implementandoservidordnsnowindows2003Implementandoservidordnsnowindows2003
Implementandoservidordnsnowindows2003fernandomeschini
 
DNS – domain name system
DNS – domain name systemDNS – domain name system
DNS – domain name systemMariana Amorim
 
Instalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu serverInstalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu serverAparicio Junior
 
Slides NGINX - Sistemas Distribuídos
Slides NGINX - Sistemas DistribuídosSlides NGINX - Sistemas Distribuídos
Slides NGINX - Sistemas Distribuídosvinycesar
 
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration SampleValdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration SampleValdir Adorni
 
Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02DP7
 
funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internetMarco Pinheiro
 
Redes prática - DNS Bind
Redes prática - DNS BindRedes prática - DNS Bind
Redes prática - DNS BindLuiz Arthur
 
Invasão de servidor ftp
Invasão de servidor ftpInvasão de servidor ftp
Invasão de servidor ftpPraiero Oo
 
Giovaneli_-_Apresentação_ DNS ANYCAST.pdf
Giovaneli_-_Apresentação_ DNS ANYCAST.pdfGiovaneli_-_Apresentação_ DNS ANYCAST.pdf
Giovaneli_-_Apresentação_ DNS ANYCAST.pdfEwersonLuizOliveira
 
Dextra Sistemas: Novidades do PostgreSQL 9.0
Dextra Sistemas: Novidades do PostgreSQL 9.0Dextra Sistemas: Novidades do PostgreSQL 9.0
Dextra Sistemas: Novidades do PostgreSQL 9.0Dextra
 

Similar to Balance carga DNS simples (20)

Para se configurar um servidor de dns no free bsd
Para se configurar um servidor de dns no free bsdPara se configurar um servidor de dns no free bsd
Para se configurar um servidor de dns no free bsd
 
Relatório de configuração e instalação do dns no ubuntu 1
Relatório de configuração e instalação do dns no ubuntu 1Relatório de configuração e instalação do dns no ubuntu 1
Relatório de configuração e instalação do dns no ubuntu 1
 
(16) dns
(16) dns(16) dns
(16) dns
 
Ppdns
PpdnsPpdns
Ppdns
 
Implementandoservidordnsnowindows2003
Implementandoservidordnsnowindows2003Implementandoservidordnsnowindows2003
Implementandoservidordnsnowindows2003
 
DNS – domain name system
DNS – domain name systemDNS – domain name system
DNS – domain name system
 
Instalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu serverInstalação e configuração servidor dns - ubuntu server
Instalação e configuração servidor dns - ubuntu server
 
Linux - DNS
Linux - DNSLinux - DNS
Linux - DNS
 
Slides nginx
Slides nginxSlides nginx
Slides nginx
 
Slides NGINX - Sistemas Distribuídos
Slides NGINX - Sistemas DistribuídosSlides NGINX - Sistemas Distribuídos
Slides NGINX - Sistemas Distribuídos
 
Aula 4 infraestrutura - 14012012
Aula 4   infraestrutura - 14012012Aula 4   infraestrutura - 14012012
Aula 4 infraestrutura - 14012012
 
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration SampleValdir Adorni - Infra and S.A.N Assessment Integration Sample
Valdir Adorni - Infra and S.A.N Assessment Integration Sample
 
Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02
 
funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internet
 
Tutorial dnssec201205
Tutorial dnssec201205Tutorial dnssec201205
Tutorial dnssec201205
 
Redes prática - DNS Bind
Redes prática - DNS BindRedes prática - DNS Bind
Redes prática - DNS Bind
 
Invasão de servidor ftp
Invasão de servidor ftpInvasão de servidor ftp
Invasão de servidor ftp
 
Giovaneli_-_Apresentação_ DNS ANYCAST.pdf
Giovaneli_-_Apresentação_ DNS ANYCAST.pdfGiovaneli_-_Apresentação_ DNS ANYCAST.pdf
Giovaneli_-_Apresentação_ DNS ANYCAST.pdf
 
Dextra Sistemas: Novidades do PostgreSQL 9.0
Dextra Sistemas: Novidades do PostgreSQL 9.0Dextra Sistemas: Novidades do PostgreSQL 9.0
Dextra Sistemas: Novidades do PostgreSQL 9.0
 
Apache
ApacheApache
Apache
 

More from Luiz Arthur

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

More from Luiz Arthur (20)

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

Balance carga DNS simples

  • 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